SuperAPI AI 工具集

release

通用与其它

查看项目

更新于 10-15 21:10

技能介绍

用途:为 OpenWork 执行发布(cut a release),由「Release App」工作流(.github/workflows/release-macos-aarch64.yml)构建、签名并发布桌面应用资产到 GitHub Release。完整手册见 docs/RELEASING.md。版本只存在于 git tag 中,package.json 固定为 0.0.0-dev,CI 在构建时用 scripts/release/stamp-version.mjs 写入标签版本,发布不产生任何提交。发布完成的判定是运行变绿且 GitHub Release 已发布(非草稿),而非标签创建。

发布前检查:在打标签前,针对 dev 列出上一个稳定标签以来标题或正文匹配 fix(app)|crash|blank|white screen|regression|first launch 的开放 PR,以及该窗口内创建或更新的所有 fork PR;再扫描任意时间的 fork PR 中描述崩溃或启动失败的条目。对每个 PR 决定:先合并、明确记录后照常发布、或标记为不相关;空列表也要记录。未记录决定就不得打标签。

切版本:pnpm release:cut(默认 patch)、pnpm release:cut minor、pnpm release:cut --version 0.19.0、pnpm release:cut:watch;等价命令 gh workflow run "Release App" --repo different-ai/openwork -f bump=patch。运行会解析下一个版本、在 origin/dev HEAD 创建标签并校验、写入版本、构建 18 个 electron 矩阵、发布 npm + Daytona + AUR,并将草稿转为公开。

加急路径(仅管理员):git tag vX.Y.Z <sha> 后 git push origin vX.Y.Z;未在 dev 上的提交会触发事后审查 issue。

监控与恢复:gh run list / gh run watch 查看运行;用 gh workflow run "Release App" -f tag=vX.Y.Z 重跑已有标签。已发布后的恢复运行只重放 npm、AUR、Daytona,跳过桌面构建与 updater 清单合并;重建会重新签名安装包,若在 publish-release 前失败会导致 latest*.yml 指向不存在的字节,引发 sha512 校验失败,应作为下一个补丁发布。

校验:gh release view vX.Y.Z --json assets 检查资产(如 openwork-mac-arm64-X.Y.Z.dmg、openwork-mac-x64-X.Y.Z.dmg、openwork-win-x64-X.Y.Z.exe 及 latest*.yml),curl -sI 抽查下载 URL,确认 npm view openwork-server version 一致;发布后用 validate-a-release 技能验证 mac-arm64 zip。限制:桌面安装包修复只能通过新发布触达用户;AUR 与 Daytona 为非阻塞通道;原生工作区依赖需保持同一主版本。