文章摘要
某团队优化代码审查合并机制,引入AI承担大部分代码阅读评审工作,将人工收缩至方向决策、高风险代码审核等五个核心场景。这套分层体系设置了多智能体投票过滤无效意见、按风险分级审批等设计,落地后,今年6-9月该团队代码库合并请求量翻倍,回滚比例下降超40%,实现效率与质量双提升。

如今AI在代码开发流程中的作用持续深化,某团队近期优化了代码审查与合并机制,实现了效率与质量的双重提升。今年6到9月,该团队维护的代码库中,合并请求的数量翻了一倍多,而被回滚的比例反而下降了超过40%。他们没有放弃人工审查,而是将大部分代码阅读工作交给人工智能,让人力聚焦在真正需要人工介入的核心环节。

每一次代码变更从工程师的工作场景出发,需要经过多道验证关卡:在提交合并请求之前,AI会自动运行测试、构建与代码检查工具,还会由全新上下文的子智能体复审代码差异;在合并请求阶段,除了必要的持续集成、AI代码评审与独立安全评审,还会加入按风险等级划分的人工审批;代码合并时,合并队列会在最新主分支上重新运行所有检查,避免两个通过的合并请求合并后出现问题;合并之后,功能开关会先对内部员工开放,逐步向稳定通道过渡,出现问题时可以随时回滚。

这套体系的核心是分层而非设限,有几个关键设计:评审标准被明确写在项目文件中,相关规则会被AI加载用于评审;AI评审的结论需要通过投票机制确认,多个智能体并行查找问题,另一组智能体对每条发现投票,只有足够多认为是真问题才会发布,过滤掉风格、清理类无效意见,效果是收到实质性评审意见的合并请求比例从16%提升到54%;人工审批的等级由变更的风险决定,而非提交者的身份。

团队将历史上引发事故的合并请求连同修复与回滚记录收集起来,由熟悉代码的工程师确认每个问题,建成评测集,评审器每天用它测试,调整提示词、更换工具、升级模型都会参考评测集的分数变化;噪声的度量同样务实,按作者对每条评论的实际反应分类,优先级是先抓真bug再减少评审轮数,因为智能体作为作者时,无效评论会导致额外提交与评审。

针对之前出现的多轮拉扯问题,团队加入了收敛机制,评审最多三轮,之后只复审新的代码差异,按bug类别整体修复,不重复已发布的发现,效果明显。

团队将人工环节收缩到五个核心场景:一是决策是否要做这件事,包括方向、品味和范围,这些是机器无法替代的;二是高风险代码,比如计费、自动更新、CI工作流相关代码;三是架构设计,需要成为他人参考的范式;四是评审时读证据,包括测试输出、命令执行记录、截图等;五是对结果负责,每个上线的变更都有具体的人兜底。

传统代码审查的另一个职能是建立团队对代码库的共同理解,在AI承担大部分阅读工作后,这个职能通过按需生成代码讲解来延续,想了解某块代码,几分钟就能拿到反映当前代码状态的讲解,甚至可以生成可视化工具辅助学习。

以上内容不代表本平台立场,仅供读者参考