→ Mini Codex
Outcome: loop-engine 新增 review-merger(与 board_claimer 对称的另一半):轮询活跃仓中 park-ai-bot 的 open 非 draft PR,机械执行判断舱审合清单——①解析 PR body 的 Validation 证据(缺失→评论打回);②diff 红线扫描(secrets / workflows / CODEOWNERS / 部署配置 / 真钱执行路径);③S/M 判定;全部通过→approve(校验 reviewDecision)→squash merge→签名评论 Reviewed & merged by review-merger under Park's standing delegation;触红线→只评论标注 @zinan92 等 Park 亲合。运行于 MBP(zinan92 凭据),显式启停,不开机自启,每笔动作留审计。
Why now: Park 2026-07-21 拍板:执行位全部 Codex 化,Wendy 转 architect/external advisor。当前 Wendy 在 session 内轮询审合是临时脚手架,需被产品化替换。「合闸机械化」方向已获 Park 亲批(红线清单永远排除在自动化之外,归 Park)。
验收标准:
大小: M | 禁区: 不得自动合并红线项;不得弱化 fail-closed;merge 冲突不自动解决,评论打回执行侧。
Risk
low
Allowed Files
loop-engine/bin/review_merger.py
loop-engine/bin/loopctl.py
loop-engine/tests/test_review_merger.py
loop-engine/README.md
decision-log.md
Verification Commands
→ Mini Codex
Outcome: loop-engine 新增 review-merger(与 board_claimer 对称的另一半):轮询活跃仓中 park-ai-bot 的 open 非 draft PR,机械执行判断舱审合清单——①解析 PR body 的 Validation 证据(缺失→评论打回);②diff 红线扫描(secrets / workflows / CODEOWNERS / 部署配置 / 真钱执行路径);③S/M 判定;全部通过→approve(校验 reviewDecision)→squash merge→签名评论
Reviewed & merged by review-merger under Park's standing delegation;触红线→只评论标注 @zinan92 等 Park 亲合。运行于 MBP(zinan92 凭据),显式启停,不开机自启,每笔动作留审计。Why now: Park 2026-07-21 拍板:执行位全部 Codex 化,Wendy 转 architect/external advisor。当前 Wendy 在 session 内轮询审合是临时脚手架,需被产品化替换。「合闸机械化」方向已获 Park 亲批(红线清单永远排除在自动化之外,归 Park)。
验收标准:
大小: M | 禁区: 不得自动合并红线项;不得弱化 fail-closed;merge 冲突不自动解决,评论打回执行侧。
Risk
low
Allowed Files
loop-engine/bin/review_merger.py
loop-engine/bin/loopctl.py
loop-engine/tests/test_review_merger.py
loop-engine/README.md
decision-log.md
Verification Commands
git diff --check