执行步骤
1. 获取变更
执行 git --no-pager diff HEAD。若 diff 为空,提示用户暂存代码后重试。若变更文件过多,优先审查核心业务文件。
2. 按五个维度审查
功能正确性
- 空值/边界/异常处理是否完备;多线程共享变量是否同步。
架构设计
- 职责是否单一;依赖方向是否合理;是否面向接口编程。
可读性
- 命名是否清晰;注释是否解释 Why 而非 What;函数是否过长、嵌套是否过深。
性能
- 循环内是否有 I/O 操作;连接/流是否释放;是否一次性加载过多数据。
安全与可观测
- 输入是否校验;SQL 注入风险;敏感接口权限;日志是否脱敏。
3. 输出格式
针对有问题的维度,按以下格式输出:
文件:xxx(行号)
- 问题描述:xxx
- 严重等级:P0(阻塞)/ P1(建议修复)/ P2(可后续优化)
- 修改建议:xxx
无问题的维度标注“✅ 无异常”即可。
约束
- 只输出审查结果,不修改代码(除非用户明确要求)。
- 每个问题必须附带具体文件路径和行号,禁止笼统表述。
- 使用建设性语气。