详细背景
PR #131 的流程中,第一次运行:
make pr-submit TITLE="策略:兼容模拟盘缺失参数"
流程正确停在 stale local review fragments:
DISPATCH_REQUIRED: local-review: standards fragment head is stale; local-review: standards fragment diff is stale; local-review: spec fragment head is stale; local-review: spec fragment diff is stale
reason_code: FRAGMENT_MISSING
phase: submit_fragments
retryable: true
next_actions:
- dispatch review agents to regenerate fragments
需要先澄清:#120 已经解决了底层安全能力问题。当前仓库已有:
.local/pr-flow/review-fragments-handoff.json,能给出 current head、current diff、目标 fragment 和 builder 输入模板。
build-review-fragment,能把结构化 reviewer verdict 安全落成 current-head fragment。
- head/diff 校验、P0/P1 lifecycle、Security metadata 校验等约束。
本 issue 不认为 #120 失败,也不要求用脚本替代 agent review 能力。脚本不能替代 Standards / Spec / Security 的判断,也不能自动从旧 fragment、聊天总结或空 completion 推断 pass。
本 issue 记录的是 #120 之后仍存在的体验/编排问题:当 stale fragments 发生时,主 agent 仍需要执行较多机械步骤:
- 读取 handoff。
- 派发 Standards / Spec 子 agent。
- 等待并判断 reviewer 结论。
- 单独完成 Security review 判断。
- 把 reviewer verdict 整理为 payload。
- 调用 builder 写入 fragments。
- 再次运行
pr-submit。
这些步骤本身合理,但手工衔接成本较高,容易消耗时间和 token,也容易在 payload 字段、reviewer 标识、security metadata 等地方出现机械错误。
产品解决方案
优化 stale local review fragments 的 agent 接手体验:让 pr-submit 输出更清晰、更可执行的 agent handoff,而不是试图自动替代 agent review。
目标是让 agent 更少做机械拼装,更多做必须由 agent 完成的判断:
- Standards / Spec 是否无发现或有什么 finding。
- Security diff 风险和 verdict。
- P0/P1 finding 是否 fixed / false_positive / open。
不改变的边界:
详细技术实现方案
- 改进
review-fragments-handoff.json 的可读性和可执行性:
- 每个 role 给出明确的 agent task prompt。
- 明确 fixed point、diff command、changed files、目标 fragment path。
- 明确 payload 必填字段和允许值。
- 增加 agent-only payload skeleton 生成能力,但只生成待填模板:
- 自动填 current head / diff / source / target path。
- reviewer、verdict、findings、security_review 仍必须由 agent 填写。
- skeleton 明确标记 TODO,不能直接通过 builder。
- 改进
pr-submit 的 next_actions:
- 区分“必须重新 review”的 diff stale 和“可 refresh”的 same-diff head stale。
- 输出下一步建议命令和 handoff 路径。
- builder 错误信息更贴近 agent 操作:
- 缺 reviewer、缺 security tool、head/diff mismatch 时给出具体修复字段。
- 增加回归测试:
- stale diff handoff 包含 role-level task prompt。
- payload skeleton 不能直接写 fragment。
- skeleton 自动填 head/diff,但 verdict 必须由 agent 提供。
- Security skeleton 缺 verdict/tool 时 builder 拒绝。
- same-diff head stale 路径仍不强迫重新 review。
Acceptance criteria
Blocked by
#120 已完成。本 issue 是 #120 后续体验优化,不是底层能力缺失修复。
详细背景
PR #131 的流程中,第一次运行:
流程正确停在 stale local review fragments:
需要先澄清:#120 已经解决了底层安全能力问题。当前仓库已有:
.local/pr-flow/review-fragments-handoff.json,能给出 current head、current diff、目标 fragment 和 builder 输入模板。build-review-fragment,能把结构化 reviewer verdict 安全落成 current-head fragment。本 issue 不认为 #120 失败,也不要求用脚本替代 agent review 能力。脚本不能替代 Standards / Spec / Security 的判断,也不能自动从旧 fragment、聊天总结或空 completion 推断 pass。
本 issue 记录的是 #120 之后仍存在的体验/编排问题:当 stale fragments 发生时,主 agent 仍需要执行较多机械步骤:
pr-submit。这些步骤本身合理,但手工衔接成本较高,容易消耗时间和 token,也容易在 payload 字段、reviewer 标识、security metadata 等地方出现机械错误。
产品解决方案
优化 stale local review fragments 的 agent 接手体验:让
pr-submit输出更清晰、更可执行的 agent handoff,而不是试图自动替代 agent review。目标是让 agent 更少做机械拼装,更多做必须由 agent 完成的判断:
不改变的边界:
详细技术实现方案
review-fragments-handoff.json的可读性和可执行性:pr-submit的next_actions:Acceptance criteria
pr-submit输出能区分 diff stale 与 same-diff head stale 的下一步。Blocked by
#120 已完成。本 issue 是 #120 后续体验优化,不是底层能力缺失修复。