AI Native 手册
坑库

分段审过了,还要整分支终审

每个阶段单独审过,不代表合在一起没问题。防止跨阶段、跨文件的交互 bug 混进主干

亲历产品组织阶段 · 发布更新于 2026-10-16
分享到 X
一句话规则

多阶段的功能合并前,必须对整个分支做一次终审

发生了什么

一个多阶段的功能,每个阶段完成时,我都让另一个模型家族单独审一轮,发现的问题也都修了。

合并前,我对整个分支相对 main 的全部改动又做了一次终审,结果又抓出 5 个深层 bug。它们不在任何一个阶段的 diff 里,而是出在跨文件的交互上。

为什么会这样

分阶段审查,每次看的都是局部 diff。每一段在自己的上下文里都是对的,bug 藏在段与段之间:

  • 后面的阶段改了前面阶段依赖的函数签名、默认值或数据形状
  • 一个约束横跨好几个文件,没有哪一次 diff 能同时看到它的全部
  • 早期阶段的审查结论,在后续改动之后已经过期,却没人重审

这和单元测试与集成测试的关系一样:每个零件都合格,装起来不一定能用。

怎么做

合并前看整个分支。三个点表示“从分叉点算起”的全部改动:

git diff --stat main...HEAD   # 先看范围
codex review --base main      # 整个分支交给另一个模型家族审

codex review --base 不能再附加自定义提示词,它会按自带的审查标准看整个分支。内置的 /code-review 后面跟 PR 号,也能审整个 PR。

换一个新会话来审。做阶段审查的会话装满了各阶段的细节,也容易沿用之前“已经审过”的结论。

点名要看的交互:共享状态、调用约定、错误处理链路,以及阶段之间的假设有没有被后来的改动推翻。这些写进终审的提示词里(用 codex exec 或 gstack 的 /codex 发起;codex review --base 带不了自定义提示词)。

把终审写进 PR 模板,作为合并关卡:

- [ ] 整分支终审:已做,发现 N 个问题,已处理 N 个

相关

本页目录