第15章 代码评审与质量治理
第9章确立了独立验证原则,第10章进一步说明,人类监督应当设置在目标确认、风险接受和结果验收等关键决策点,而不是介入智能体的每一步具体操作。将这两条原则落实到代码评审中,还需要回答一组更具体的问题:谁来评审智能体生成的代码,评审依据从哪里产生,哪些问题必须阻断提交,哪些问题可以记录后继续处理,以及自动化检查与人工判断应当如何分工。
代码评审的独立性不能仅由评审者和作者是否为同一主体决定。让未参与实现的评审者在较少受生成过程影响的上下文中检查代码,有助于减少对既有方案的路径依赖,但把评审任务交给同一模型的另一次调用,或者简单更换一个智能体,并不会自动形成可靠的独立验证。真正的独立性来自预先确定的验收标准、不随实现结果改变的证据来源、清楚分离的角色权限,以及重要判断由能够承担后果的人确认。
本章把代码评审放在质量治理的整体框架中讨论。首先介绍批判与反思相分离的两阶段评审方式,说明如何让评审者提出具体、可验证的质疑,再由作者根据证据作出修正或回应;随后讨论重新建立评审上下文能够提供什么价值,以及它不能解决哪些共同盲点。在此基础上,本章进一步说明如何按照风险和处置要求对评审发现进行分级,哪些规则适合交给格式检查、静态分析、依赖审计和安全扫描等自动化工具,哪些问题仍然依赖对业务意图、架构边界和剩余风险的人工判断。最后,本章以Writer与Reviewer模式为基础,讨论代码评审如何从人工协作逐步发展为受控的自动化门禁。
读完本章,读者应能为智能体参与的开发流程设计一套分层评审机制,区分确定性检查与语义判断,按照风险处理评审发现,并理解自动化门禁的适用范围。评审的目的不是给代码生成增加一道形式化手续,而是在改动规模和生成速度提高之后,把有限的人类判断力集中到正确性、安全性、架构一致性和风险接受等真正需要负责的环节。