现象
官方 npm 已发布到 2.1.235,本仓库最新 Release 停在 v2.1.223(缺 2.1.224–2.1.229、2.1.231–2.1.235 共 11 个版本)。
对 2.1.224+ 跑 fetch-and-process.mjs 会在提取步骤报错:
Error: ENOENT: no such file or directory, open 'dist/2.1.235/.tmp/extract/darwin-arm64/src/entrypoints/cli.js'
at verifyNodeCompat (scripts/verify-node-compat.mjs:85:16)
根因
从 v2.1.224 起,官方 Bun SEA 二进制的内嵌虚拟文件系统布局扁平化了:cli.js 不再位于 src/entrypoints/cli.js,而是直接在提取根目录(同级还有 audio-capture / computer-use / image-processor 等 .node 模块)。
scripts/fetch-and-process.mjs 中两处硬编码了旧路径(verifyNodeCompat 入参与 patchFile 入参)。
验证
在 fork 上做了最小修复(旧路径存在则用旧路径,否则回退到根目录 cli.js)后:
- 2.1.235 全部 9 平台 CI 构建通过,P1/P3/P5/P6/P7/P8/P9 全部正常应用(P2 模式已消失,由 polyfill 兜底),AST 校验通过
- darwin-arm64 本地安装冒烟通过:
node cli.js --version → 2.1.235 (Claude Code),交互会话正常
另外顺手给二进制下载加了 curl --retry:CI 上遇到过一次 CDN 瞬时 SSL 错误(curl exit 35)导致整个多平台构建失败。
修复 PR 随后附上。
现象
官方 npm 已发布到 2.1.235,本仓库最新 Release 停在 v2.1.223(缺 2.1.224–2.1.229、2.1.231–2.1.235 共 11 个版本)。
对 2.1.224+ 跑
fetch-and-process.mjs会在提取步骤报错:根因
从 v2.1.224 起,官方 Bun SEA 二进制的内嵌虚拟文件系统布局扁平化了:
cli.js不再位于src/entrypoints/cli.js,而是直接在提取根目录(同级还有 audio-capture / computer-use / image-processor 等 .node 模块)。scripts/fetch-and-process.mjs中两处硬编码了旧路径(verifyNodeCompat 入参与 patchFile 入参)。验证
在 fork 上做了最小修复(旧路径存在则用旧路径,否则回退到根目录
cli.js)后:node cli.js --version→2.1.235 (Claude Code),交互会话正常另外顺手给二进制下载加了
curl --retry:CI 上遇到过一次 CDN 瞬时 SSL 错误(curl exit 35)导致整个多平台构建失败。修复 PR 随后附上。