Skip to content

[TestAgent][Nightly][ubuntu-tokenless] bug: raw 通道打包漏 opencode adapter,0.8.x 起非 RPM 安装缺该 adapter 与 manifest 声明 #3322

Description

@zhangtaibo

Component

tokenless

Bug Description

raw(anolisa install)通道的 tokenless 发布包漏打 opencode adapter:OpenCode adapter 自 0.8.0 起在源码与 CHANGELOG 中正式提供(commit 1233cfc,2026-08-06),manifest.json.in 也声明了 opencode 段,但 raw 通道打包脚本的显式文件清单从未包含 opencode/*,导致 Ubuntu 24.04 等非 RPM 通道安装的 tokenless 0.8.2 上没有 opencode adapter 目录、manifest.json 无 opencode 声明。OpenCode 用户在该通道完全无法启用 tokenless(RPM 通道正常)。

Steps to Reproduce

ssh root@<ECS-IP>   # Ubuntu 24.04,经 anolisa install 通道安装 tokenless

tokenless --version
# tokenless 0.8.2(>= 0.8.0,按 CHANGELOG 应含 OpenCode adapter)

ls /usr/local/share/anolisa/adapters/tokenless/
# claude-code codex common dsh hermes openclaw qoder qwencode qwenpaw
# —— 没有 opencode

grep -c opencode /usr/local/share/anolisa/adapters/tokenless/manifest.json
# 0(manifest 亦无 opencode 段;源码 manifest.json.in:111-125 有)

Actual Behavior

连续 3 次稳定复现:adapter 目录与 manifest 中 opencode 均缺失(确定性打包产物问题,非运行时 flaky)。任何 opencode 相关入口(如 tokenless 的 adapter detect/install 脚本)在该通道无从谈起——文件不存在。

Expected Behavior

与 RPM 通道及源码一致:adapters/tokenless/opencode/(plugin.js + scripts/detect.sh、install.sh、uninstall.sh)随包安装,manifest.json 含 opencode 段(detect/install/uninstall 三个入口指向 opencode/scripts/*)。

Root Cause

src/tokenless/packaging/raw/package.sh:93-109:raw 通道打包用显式 require_file 清单枚举 adapter 文件(dsh/hermes/qoder/claude-code/codex/qwencode/qwenpaw/common 全在列),没有任何 opencode/ 条目* → stage 目录不含 opencode,产物 manifest.json 同步缺失。同文件族的 packaging/raw/verify-release.py(发布校验清单,87-101 行检查 qwencode/qwenpaw 等)同样未覆盖 opencode,因此发布校验也不会拦截该缺失。触发条件:任何 raw 通道安装;0.8.0(2026-09-06 发布,含 OpenCode adapter 的 CHANGELOG 条目)起即存在。

Suggested Fix

  1. package.sh 的 require_file 清单补 opencode/plugin.js、opencode/scripts/{detect,install,uninstall}.sh(对齐源码 adapters/tokenless/opencode/ 实际内容);
  2. verify-release.py 校验清单同步补 opencode 条目,防回归;
  3. 重发 raw 通道包(或在下一个 0.8.x patch 带上),Ubuntu 等通道 anolisa upgrade tokenless 后可用。

Environment

  • OS: Ubuntu 24.04.4 LTS(x86_64)
  • Component: tokenless
  • Package: tokenless 0.8.2(anolisa install 通道,raw)

Additional Context

  • 稳定性: 连续 3 次稳定复现(2026-09-17),打包产物确定性缺失
  • 发现来源: Nightly 自动化测试 Ubuntu 24.04 非 RPM 通道验证(run 2026-09-17),adapter 脚本契约用例失败暴露
  • 对照: RPM 通道与源码树均含完整 opencode adapter

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

component:tokenlesssrc/tokenless/priority:p2Normal: planned product or engineering worktype:bugA confirmed defect or incorrect behavior

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions