2.6 KiB
2.6 KiB
Trellis 0.6.12 升级设计
1. 升级边界
升级分为两个独立但必须一致的对象:npm 全局安装的 @mindfoldhq/trellis CLI,以及仓库中由 trellis update 管理的 .trellis/、.codex/、.agents/ 和 AGENTS.md 模板。@mindfoldhq/trellis-core 由 CLI 包依赖并与 CLI 同版本发布,不单独在项目中新增依赖。
2. 冲突处理策略
先用 0.6.12 CLI dry-run 确认变更,再运行 trellis update --create-new --migrate。自动更新文件接受上游版本;本地修改文件按下表处理,禁止 --force:
| 文件 | 决策 |
|---|---|
.trellis/scripts/common/task_context.py |
合入上游 warning → warning_message 修复,保留其余本地行为 |
.trellis/config.yaml |
保留 session_auto_commit: false、codex.dispatch_mode: inline 和项目注释,吸收 0.6.12 有价值的配置说明 |
.trellis/.gitignore |
保留 workspace/ 忽略;上游 sidecar 仅删除该项目规则,不接受 |
.trellis/workflow.md |
保留文件头部 hyb-oa overlay;其余上游模板无实质差异时不重写 |
AGENTS.md |
在既有项目规则之后加入受管 TRELLIS:START/END 指引块,不覆盖现有规则 |
trellis-channel command reference |
仅空白差异,不制造功能性提交 |
升级后删除所有 .new sidecar;保留 CLI 自动创建的忽略型备份,直到验证完成。模板 hash 只由 CLI 更新,不手工编辑。
3. 自动更新面
接受 0.6.12 对以下运行时的上游更新:
- 活动任务清理使用已解析 session key,避免错误清除 fallback/歧义会话。
- Git helper 增加可选超时;session context 对自动 polyrepo 探测设置仓库数量与 Git 探测时间边界。
- Codex hook 独立按 UTF-8 解码输入。
- Codex implement/check/research agent 在注入输出被截断时优先读取保存的完整 hook 输出。
4. 状态与兼容
- 更新期间不运行
task.py archive,不迁移或删除任何 task。 - 当前升级 task 保持 planning,直到用户批准本设计后才
task.py start。 - 报销 task 仍保持
in_progress;升级 task 完成后可恢复该任务为当前 session 指针,不改变其业务状态。 - 若升级验证失败,先停止,不用
--force修复;必要时把 CLI 降回0.6.9,并从 CLI 生成的备份恢复本轮涉及的受管文件。
5. 安全与输出
升级不访问生产系统,不读取 Secret 或个人资料。命令输出和提交仅包含版本、固定文件名、PASS/FAIL 与公开的上游变更摘要,不记录完整本地路径。