麻烦发一个i新版本
🤖 Powered by ework · qwen3.8-27b
新版本发布分支已就绪:PR #401 — release: v1.18.1(https://github.com/ranxianglei/opencode-acp/pull/401)
v1.18.1 内容(补丁版本,纯文档,无运行时代码变更):
paper/
paper/figures/
本 PR diff:仅簿记 —— package.json 1.18.0 → 1.18.1、中英 CHANGELOG 条目、devlog(5 文件)。
package.json
本地验证全绿:
check-pr.sh
按规范我不执行合并 —— 请人工合并 PR #401。合并后 release.yml 会自动打 tag v1.18.1 → npm publish(latest)→ 创建 GitHub Release,无需其他操作。
release.yml
v1.18.1
latest
一句话总结:发布了 v1.18.1(内容为论文预印本入库的纯文档补丁),验证全绿,等你点合并即可自动发版。
本项目先发一个stable版本
已建好 promote-stable PR:#433
做了什么:把 npm stable tag 从 1.14.26 提升到 1.18.1(当前 latest)。合并后 CI 自动执行 npm dist-tag add opencode-acp@1.18.1 stable,无需人工操作。
stable
npm dist-tag add opencode-acp@1.18.1 stable
为什么:stable 自 9 月 3 日(#358)后一直停在 1.14.26,落后 latest 七个版本;而 README 的安装命令是 opencode plugin opencode-acp@stable --global,走 @stable 的用户缺 v1.17.0 的 context-limit 安全网 + budget guard(修 #346/#347)和 v1.17.1 的性能修复(transform 13.6s → 1.2ms)。v1.18.1 已在 latest 上跑了两天(#401,纯文档补丁),验证充分。
opencode plugin opencode-acp@stable --global
本 PR 内容:纯 bookkeeping,零代码改动(devlog only),不动 package.json 版本号。本地验证:check-pr 全绿、typecheck/build 干净、测试 1265/1267(两个失败是本沙箱 /tmp 只读挂载导致的相关测试硬编码路径问题,master 上既有,CI 不受影响)。
注:#403(Windows 路径分隔符修复)在 v1.18.1 之后才合入,会随下一个 patch 版本发布,不阻塞本次提升。
请自行合并(PR 合并仅限人工操作):#433 —— 一句话:把滞后的 stable tag 同步到已验证的 v1.18.1,纯记录性改动无代码风险,可以合并。
[bot] 🏷 补充:PR #433 的三个 CI workflow 已全部通过 —— PR Checks ✅(分支名/devlog/changelog-skip)、CI ✅(typecheck + 1267 tests + build,Node 22/24 矩阵)、PR Build Artifact ✅。本地那两个测试失败确认仅是沙箱 /tmp 只读问题,CI runner 上全绿。
一切就绪,等人工合并即可:https://github.com/ranxianglei/opencode-acp/pull/433(合并后 CI 自动执行 npm dist-tag add opencode-acp@1.18.1 stable)。一句话:stable tag 提升到已验证的 v1.18.1,纯记录性改动、CI 全绿,可以合并。
发新版本
[bot] 🏷 v1.18.2 发布 PR 已就绪:#440
包含内容(v1.18.1 之后合入 master、尚未发布的两个 bug 修复):
mNNNNN <垃圾>
protectedFilePatterns
normalizePath()
本分支只含版本号 bump + 双语 CHANGELOG + devlog,零其他改动。本地验证:check-pr 全绿、typecheck/build 干净、测试 1290/1292(2 个失败是沙箱 /tmp 只读问题,master 既有,CI runner 不受影响)。
合并后 CI 自动打 tag v1.18.2 并发布到 npm latest(stable 保持 1.18.1 不动,需要时再单独提升)。请自行合并(PR 合并仅限人工操作):#440 —— 一句话:发布含两个 bug 修复的 patch 版本 v1.18.2,纯 bookkeeping 改动、本地验证通过,可以合并。
https://github.com/ranxianglei/opencode-acp/actions/runs/36737443321 失败了
[bot] 🏷 已定位并修复,PR:#474
根因(已查证,非偶发):失败的 run 36737443321 是 "Release (one-click)",版本解析(自动 1.18.2 → 1.18.3)和 Drift guard 都通过了,死在 Bump version 步骤——该步骤用「精确旧版本号字符串」在 package.json 和 package-lock.json 里同时做替换,而 master 的 package-lock.json 还停留在 "version": "1.16.0":v1.16.0 之后的每次 release PR(1.17.0 → 1.18.2)都只改了 package.json,lockfile 漂移了五个版本。needle 找不到 → exit 1。这是潜伏的时间炸弹,下次发版必炸。
package-lock.json
"version": "1.16.0"
PR #474 内容(零运行时代码改动):
packages[""]
.version
version
::warning::
行为变更(有意):旧行为 = 两文件版本漂移时 Bump 直接失败(release 中止);新行为 = 自动修复 lockfile 到目标版本并打 warning。理由:标准 release 流程(AGENTS.md §5.4.2)从不同步 lockfile,旧行为注定复发;修复+告警优于因簿记漂移中止发布。
验证:新 Bump 脚本逐字模拟——同步态最小 diff;漂移态(即本次失败现场)自动修复成功(旧脚本在此处 exit 1);YAML 解析 ✓、check-pr 全绿 ✓。
合并后请重跑 "Release (one-click)"(留空版本号即自动 1.18.2 → 1.18.3 并发布):#474 —— 一句话:修复了 one-click release 因 package-lock.json 版本漂移而必然失败的问题(lockfile 同步回 1.18.2 + Bump 步骤改幂等),纯 CI/簿记改动无代码风险,可以合并。
为什么失败了 #480
[bot] 🏷 为什么失败(已查证 job log):PR #480 是 one-click release 的 fallback PR(直推 master 被分支保护挡住后自动开的),它只含版本 bump(package.json/lock 1.18.3 → 1.18.4)。而 pr-validation 按 AGENTS.md §5.4.2 要求三样产物,workflow 一样都没生成,于是必挂三项:
pr-validation
devlog/2026-10-15_release-v1.18.4/REQ.md
devlog/2026-10-15_release-v1.18.4/WORKLOG.md
CHANGELOG.md
CHANGELOG.zh-CN.md
不是代码问题——test/build/e2e 全绿,只有门禁这一项红。
已修复:我直接在 PR #480 分支上补齐了产物(commit c2e0020b,零代码改动):两份 CHANGELOG 的 ### v1.18.4 条目(内容 = #478/#479 图片归档特性 + cascade blanket-apply 防护,细节按提交记录写全)+ devlog REQ/WORKLOG。本地 check-pr 已全绿,CI 会在新 head 上重跑 pr-validation。
c2e0020b
### v1.18.4
系统性问题已立项:#481 —— master 有分支保护、直推被挡是常态,fallback 几乎是唯一路径,所以每次一键发布都会卡在同一处,「一键」实际要加一轮人工补件。issue 里给了三个方案(A: workflow 自动生成产物骨架+CHANGELOG 初稿,推荐;B: 门禁豁免,不推荐;C: 维持现状写进文档),等你拍板。
v1.18.4 行为变更提醒(发版须知):本版默认开启图片归档(compress.images.enabled=true)——≥16KB 的 data-URL 图片每轮落盘到会话 images 目录、折叠摘要里追加重读指针行;此前这些图片折叠时被静默丢弃。不需要可设 enabled:false 完全回到旧行为。
compress.images.enabled=true
enabled:false
下一步:合并 #480 合并仅限人工)→ release.yml 自动打 tag + 发布 npm v1.18.4。一句话:失败原因是 one-click 的 fallback PR 缺门禁要求的 devlog/CHANGELOG,产物已补齐、CI 将转绿,可以合并。
Activity
ranxianglei commentedon Sep 15, 2026
麻烦发一个i新版本
ranxianglei commentedon Sep 15, 2026
新版本发布分支已就绪:PR #401 — release: v1.18.1(https://github.com/ranxianglei/opencode-acp/pull/401)
v1.18.1 内容(补丁版本,纯文档,无运行时代码变更):
paper/下英文 + 中文两版预印本、paper/figures/六张配图及生成脚本、两个 README 的 MIT 开放获取标注与链接。本 PR diff:仅簿记 ——
package.json1.18.0 → 1.18.1、中英 CHANGELOG 条目、devlog(5 文件)。本地验证全绿:
check-pr.sh✓(分支名 / devlog / changelog 版本串)按规范我不执行合并 —— 请人工合并 PR #401。合并后
release.yml会自动打 tagv1.18.1→ npm publish(latest)→ 创建 GitHub Release,无需其他操作。一句话总结:发布了 v1.18.1(内容为论文预印本入库的纯文档补丁),验证全绿,等你点合并即可自动发版。
ranxianglei commentedon Sep 17, 2026
本项目先发一个stable版本
ranxianglei commentedon Sep 17, 2026
已建好 promote-stable PR:#433
做了什么:把 npm
stabletag 从 1.14.26 提升到 1.18.1(当前latest)。合并后 CI 自动执行npm dist-tag add opencode-acp@1.18.1 stable,无需人工操作。为什么:stable 自 9 月 3 日(#358)后一直停在 1.14.26,落后 latest 七个版本;而 README 的安装命令是
opencode plugin opencode-acp@stable --global,走 @stable 的用户缺 v1.17.0 的 context-limit 安全网 + budget guard(修 #346/#347)和 v1.17.1 的性能修复(transform 13.6s → 1.2ms)。v1.18.1 已在 latest 上跑了两天(#401,纯文档补丁),验证充分。本 PR 内容:纯 bookkeeping,零代码改动(devlog only),不动 package.json 版本号。本地验证:check-pr 全绿、typecheck/build 干净、测试 1265/1267(两个失败是本沙箱 /tmp 只读挂载导致的相关测试硬编码路径问题,master 上既有,CI 不受影响)。
注:#403(Windows 路径分隔符修复)在 v1.18.1 之后才合入,会随下一个 patch 版本发布,不阻塞本次提升。
请自行合并(PR 合并仅限人工操作):#433 —— 一句话:把滞后的 stable tag 同步到已验证的 v1.18.1,纯记录性改动无代码风险,可以合并。
ranxianglei commentedon Sep 17, 2026
[bot] 🏷 补充:PR #433 的三个 CI workflow 已全部通过 —— PR Checks ✅(分支名/devlog/changelog-skip)、CI ✅(typecheck + 1267 tests + build,Node 22/24 矩阵)、PR Build Artifact ✅。本地那两个测试失败确认仅是沙箱 /tmp 只读问题,CI runner 上全绿。
一切就绪,等人工合并即可:https://github.com/ranxianglei/opencode-acp/pull/433(合并后 CI 自动执行
npm dist-tag add opencode-acp@1.18.1 stable)。一句话:stable tag 提升到已验证的 v1.18.1,纯记录性改动、CI 全绿,可以合并。ranxianglei commentedon Sep 19, 2026
发新版本
ranxianglei commentedon Sep 19, 2026
[bot] 🏷 v1.18.2 发布 PR 已就绪:#440
包含内容(v1.18.1 之后合入 master、尚未发布的两个 bug 修复):
mNNNNN <垃圾>片段,旧 sanitizer 只剥标签导致其持久化进 DB 并重新污染上下文;现在只截断行首的未来引用(数值 ≥ 待分配值),对合法引用零误伤;protectedFilePatterns静默失效修复 ——normalizePath()搜的是两字符字符串而非单反斜杠,归一化在 Windows 上是 no-op。本分支只含版本号 bump + 双语 CHANGELOG + devlog,零其他改动。本地验证:check-pr 全绿、typecheck/build 干净、测试 1290/1292(2 个失败是沙箱 /tmp 只读问题,master 既有,CI runner 不受影响)。
合并后 CI 自动打 tag v1.18.2 并发布到 npm
latest(stable 保持 1.18.1 不动,需要时再单独提升)。请自行合并(PR 合并仅限人工操作):#440 —— 一句话:发布含两个 bug 修复的 patch 版本 v1.18.2,纯 bookkeeping 改动、本地验证通过,可以合并。ranxianglei commentedon Sep 30, 2026
https://github.com/ranxianglei/opencode-acp/actions/runs/36737443321 失败了
ranxianglei commentedon Sep 30, 2026
[bot] 🏷 已定位并修复,PR:#474
根因(已查证,非偶发):失败的 run 36737443321 是 "Release (one-click)",版本解析(自动 1.18.2 → 1.18.3)和 Drift guard 都通过了,死在 Bump version 步骤——该步骤用「精确旧版本号字符串」在
package.json和package-lock.json里同时做替换,而 master 的package-lock.json还停留在"version": "1.16.0":v1.16.0 之后的每次 release PR(1.17.0 → 1.18.2)都只改了package.json,lockfile 漂移了五个版本。needle 找不到 → exit 1。这是潜伏的时间炸弹,下次发版必炸。PR #474 内容(零运行时代码改动):
package-lock.json重新同步 1.16.0 → 1.18.2(top level +packages[""]),立即解锁;.version→ 按文件原缩进 re-serialize)。round-trip 序列化对两个文件验证过字节级一致,diff 永远只限 version 行;顶层缺version字段仍 fail-fast;::warning::(lockfile ≠ package.json 时可见但不阻断)。行为变更(有意):旧行为 = 两文件版本漂移时 Bump 直接失败(release 中止);新行为 = 自动修复 lockfile 到目标版本并打 warning。理由:标准 release 流程(AGENTS.md §5.4.2)从不同步 lockfile,旧行为注定复发;修复+告警优于因簿记漂移中止发布。
验证:新 Bump 脚本逐字模拟——同步态最小 diff;漂移态(即本次失败现场)自动修复成功(旧脚本在此处 exit 1);YAML 解析 ✓、check-pr 全绿 ✓。
合并后请重跑 "Release (one-click)"(留空版本号即自动 1.18.2 → 1.18.3 并发布):#474 —— 一句话:修复了 one-click release 因 package-lock.json 版本漂移而必然失败的问题(lockfile 同步回 1.18.2 + Bump 步骤改幂等),纯 CI/簿记改动无代码风险,可以合并。
ranxianglei commentedon Oct 15, 2026
为什么失败了 #480
ranxianglei commentedon Oct 15, 2026
[bot] 🏷 为什么失败(已查证 job log):PR #480 是 one-click release 的 fallback PR(直推 master 被分支保护挡住后自动开的),它只含版本 bump(package.json/lock 1.18.3 → 1.18.4)。而
pr-validation按 AGENTS.md §5.4.2 要求三样产物,workflow 一样都没生成,于是必挂三项:devlog/2026-10-15_release-v1.18.4/REQ.md缺失devlog/2026-10-15_release-v1.18.4/WORKLOG.md缺失CHANGELOG.md/CHANGELOG.zh-CN.md未更新不是代码问题——test/build/e2e 全绿,只有门禁这一项红。
已修复:我直接在 PR #480 分支上补齐了产物(commit
c2e0020b,零代码改动):两份 CHANGELOG 的### v1.18.4条目(内容 = #478/#479 图片归档特性 + cascade blanket-apply 防护,细节按提交记录写全)+ devlog REQ/WORKLOG。本地 check-pr 已全绿,CI 会在新 head 上重跑 pr-validation。系统性问题已立项:#481 —— master 有分支保护、直推被挡是常态,fallback 几乎是唯一路径,所以每次一键发布都会卡在同一处,「一键」实际要加一轮人工补件。issue 里给了三个方案(A: workflow 自动生成产物骨架+CHANGELOG 初稿,推荐;B: 门禁豁免,不推荐;C: 维持现状写进文档),等你拍板。
v1.18.4 行为变更提醒(发版须知):本版默认开启图片归档(
compress.images.enabled=true)——≥16KB 的 data-URL 图片每轮落盘到会话 images 目录、折叠摘要里追加重读指针行;此前这些图片折叠时被静默丢弃。不需要可设enabled:false完全回到旧行为。下一步:合并 #480 合并仅限人工)→ release.yml 自动打 tag + 发布 npm v1.18.4。一句话:失败原因是 one-click 的 fallback PR 缺门禁要求的 devlog/CHANGELOG,产物已补齐、CI 将转绿,可以合并。
[-]发布新版本专用[/-][+]For new version release only | 发布新版本专用[/+]