SwiftRelay

← 全部冲刺笔记

绿灯前的那一圈:Claude Haiku 4.5 首轮代码审查清单

模型分段计时ZH

首轮审查要拦住的是哪几类问题

一份变更在进主干之前,真正危险的往往不是算法写错,而是三类低级失误:边界条件没覆盖、错误路径被吞掉、公共接口悄悄改了签名。这三类问题人工审阅最容易看漏,因为它们藏在大段样板代码和测试夹具里,读到第三屏时眼睛已经疲劳。

首轮代码审查的任务很明确:把低噪声、高确定性的问题先摘出来,让后续的人工审阅和深度模型审阅只关心设计取舍、依赖方向与性能影响。把审查拆成两层,人和模型才能各司其职。

可以把这一轮想成发车前的试跑:不追求跑得最快,只求确认刹车、转向和信号灯都在。Claude Haiku 4.5 在这个位置上的价值在于它足够轻,可以跟着小步提交一起跑,而不必等团队攒出一整批待审变更。问题在冒出的当下被指出来,修复成本最低。

另一个容易忽略的点是上下文成本:首轮审查只需要读 diff 以及它周围的几百行代码,范围收得越小,提示词里能塞进的项目约定就越多,输出自然越贴近你们自己的写法。

同一份变更,两种第一遍读法

拿一个典型场景做对照:给支付模块加一段重试分支,改动两百行上下,夹带配置项、单元测试和一处日志调整。同一份改动,交给两个不同的入口,得到的东西差别很明显。

  • 把整段变更一次性交给深度模型:它会从架构、抽象层次和长期维护的角度给建议,输出长而全面,但需要人工再筛一遍才知道哪条必须现在改,更适合放在合并前的最后一道关口。
  • 先用 Claude Haiku 4.5 跑第一遍:它更贴近可验证的事实,比如某个错误码没有被处理、测试里缺一条失败分支、配置默认值和注释对不上,输出短,直接能转成评审意见。

两种读法的差别不在于谁更懂代码,而在于什么时候该用谁。前置这一遍的价值是过滤:它把明显的缺口挡在门外,深度复核就不会把时间花在补分号级别的问题上。

并行跑一次对照也很划算:同一个改动同时送进两个入口,把两边都提到的问题标记为高优先级,只有一边提到的留给人工判断。这个小技巧能帮你校准提示词模板,而不是靠感觉。

需要注意的是,首轮审查适合拿事实清单,不适合拿“这段设计是否优雅”的判断。涉及重构边界、跨服务契约这类问题,交给 Claude Opus 5.5 在合并前做一次深读,结论会更稳。

把首轮审查挂进现有工具链

SwiftRelay 是一个按量计费的模型中转服务,覆盖 Claude、GPT、Gemini、DeepSeek、Kimi、GLM、Qwen、Grok 等模型,可以和 Claude Code、Codex、Gemini CLI 以及任何 OpenAI 兼容 SDK 一起使用,接入成本主要在配置,不在改造。

  • 在 Claude Code 与 Gemini CLI 里,接口地址只填裸主机 https://api.fastapirelay.com。
  • 在 OpenAI 兼容 SDK 里,在同一个主机后面补上 /v1。
  • 计费按令牌用量结算,没有订阅;新账号有少量赠送额度,邀请好友还能拿到其充值金额的 14%。

接进流水线时,建议给这一步单独的只读权限和固定的输入模板:变更说明、改动内容、相关测试文件名、项目约定(比如错误必须带上下文、日志里禁止出现用户标识)。模板越具体,首轮输出越贴近你的代码规范,而不是泛泛的最佳实践。

如果你们已经有人工评审的分支保护规则,把首轮审查挂在同一个检查点上即可,不需要改部署,也不需要额外的常驻服务。

把输出拆成阻断项与建议项

首轮审查最怕产出一大段散文。与其让模型自由发挥,不如约定它只吐三类结果:必须修的阻断项、可以顺手改的建议项、以及一句确认没问题的放行备注。

  • 阻断项必须包含文件名、行号、触发的约定条款和最小修复思路。
  • 建议项只列一到三条,宁缺毋滥,避免评审意见稀释重点。
  • 放行备注写清这一轮看过的范围,比如已覆盖错误路径与配置一致性,方便人工接手时知道哪些已经查过。

把这份清单直接贴进合并请求的评论区,评审者的第一眼就是差异点,而不是原始改动。日积月累,这份格式还能沉淀成团队自己的检查清单:新成员照着读一遍,就能知道你们在意什么。

注意别把首轮审查当成代码生成器:它的职责是指出缺口,补丁仍然由提交者来写,这样评审记录里才会留下作者自己的思路。

绿灯之前的检查清单与明确建议

把这一圈跑通只需要四件事:确定首轮只做事实检查、把输入模板写死、给输出分好阻断与建议、在合并前留一次深度复核。做完这四步,评审节奏就从人盯每一行,变成模型筛、人拍板。

明确建议是:把 Claude Haiku 4.5 安在每次推送之后做首轮代码审查,把深度模型的额度留给合并前的设计复核和疑难问题,按量计费正好贴合这种频繁轻调用、偶尔重调用的用量曲线。

如果你还没有可用的接口账号,现在就注册 SwiftRelay,把这份检查清单跑进你的下一次合并请求。

接着读

又来跑一圈?登录