OpenMax · AI 代码审查工具
AI 代码审查工具:更快发现问题,最终判断仍由开发者负责
自动检查代码缺陷、安全风险、测试覆盖和可维护性,为开发者提供有依据的建议,但是否合并仍由团队决定。
工作流概览
针对选定代码差异,结合现有测试和获批扫描结果准备带代码行引用的问题,供工程师在合并前核验。
- 读取代码变更与仓库上下文
- 运行已配置的检查工具
- 检查缺陷、风险与测试缺口
先选择一个已明确代码权限、分支保护、测试证据和审查负责人的代码库及审查类型。
这套工作流可以做什么
自动检查代码缺陷、安全风险、测试覆盖和可维护性,为开发者提供有依据的建议,但是否合并仍由团队决定。
先选一个代码仓库和一种边界清楚的 PR 类型,并明确编码规范、测试证据、审核人和合并条件。安全问题、架构变更、影响生产的代码、例外批准和最终合并决定,仍由具备相应资质的工程师负责。
工作流如何运行
01
读取代码变更与仓库上下文
加载 PR 差异、相关文件、审查规则、测试结果以及当前可用的仓库信息。
02
运行已配置的检查工具
调用团队批准的 linter、扫描器和项目规则,并区分工具结果与模型提出的判断。
03
检查缺陷、风险与测试缺口
在可访问范围内寻找可能的逻辑错误、安全问题、回归风险、可维护性问题和缺失测试。
04
整理有优先级的审查意见
引用具体代码,说明推理依据与不确定性,并给出可执行的复核或修改建议。
05
由工程师复核并决定是否合并
合格工程师验证问题、处理分歧和例外,并始终保留最终合并权限。
上线前需要明确的控制项
| 控制领域 | 智能体负责 | 团队负责 |
|---|---|---|
| 指标 | 跟踪被采纳的问题、误报、后续发现的漏检问题和首次审查用时。 | 按代码库、语言、规则集和风险等级复盘人工修正情况。 |
| 复核 | 根据指定差异、测试结果和获批扫描输出,准备带代码行引用的审查意见。 | 安全、架构、生产影响、例外接受和合并决定由合格工程师负责。 |
| 异常 | 差异、测试结果、生成代码边界或扫描结果缺失或互相矛盾时,将审查标记为未完成。 | 涉及安全或判断不明确的问题交由相应代码负责人处理。 |
| 证据 | 记录提交版本、变更代码行、规则或扫描来源、问题理由和不确定性说明。 | 保留审查人修改、处置结论、豁免记录以及最终合并或修复决定。 |
| 恢复 | 代码库或扫描器连接失败时不得给出“未发现问题”的结论,并明确未覆盖的检查。 | 恢复失败检查,对覆盖缺口安排人工审查,并针对同一提交重新运行。 |
试点前后应做什么
上线前
上线前,先选一个代码仓库和一种边界清楚的 PR 类型,并明确编码规范、测试证据、审核人和合并条件。
上线后
上线后,按代码库和风险等级评估被采纳的问题、误报、后续发现的漏检问题以及首次审查用时。
用 OpenMax 连接这套工作流
使用 OpenMax 整理初步审查证据和修复建议,但安全、架构与合并决定仍由工程师作出。
常见问题
AI 代码审查工具试点应从哪里开始?
先选一个代码仓库和一种边界清楚的 PR 类型,并明确编码规范、测试证据、审核人和合并条件。
哪些决定必须由人员负责?
安全问题、架构变更、影响生产的代码、例外批准和最终合并决定,仍由具备相应资质的工程师负责。
应如何评估试点效果?
按代码库和风险等级评估被采纳的问题、误报、后续发现的漏检问题以及首次审查用时。