1.5 KiB
Feature 集成
stdout 出现 INTEGRATION_REQUIRED=<feature>@integrated 后,先读 main_loop.py integrate --help。
只在全局锁下处理严格 integration frontier;后序 feature 即使完成也不得越序。
feature 必须先显式吸收最新 main,再完成 feature verification、main candidate verification 和
最终双轴 review。收到 RETRY: feature needs main sync 时同步后全部重跑;不得自行 merge 或
绕过 frontier。
merge 冲突令该 feature integration blocked,但不阻止后续 ticket 开发;必要时用
main_loop.py block-feature 记录边界,解决后用 main_loop.py release-feature。
三道证据门禁
三个独立门禁,不能互相替代:feature、main candidate 和 review 都必须是 fresh UTF-8 JSON
artifact,精确字段以 integrate --help 为准。调用 main_loop.py integrate 时只提交 frontier
feature、已验证的 FEATURE_HEAD、feature verification、main verification 和 review;
skipped ticket 还必须显式授权 partial integration。收到 NOOP/RETRY 仍按 stdout 处理。
持久化最终状态
集成成功后,先完成 merge commit,再只暂存 .scratch/<feature>/ 及确被改写的
.scratch/queue.md,提交 final workflow state;不要运行 git add .scratch,不得 amend/squash。
保持 .main-loop.json 的 integration_commit 指向 MAIN_INTEGRATION_COMMIT,解析并报告全部
WARNING 与残留 worktree。已集成 feature 的重试必须幂等。