恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

Claude Code /code-review 查找角度之 Angle A:逐行 diff 扫描的正确性审查方法论

  • 首页
  • 资讯中心
  • /
  • Claude Code /code-review 查找角度之 Angle A:逐行 diff 扫描的正确性审查方法论

相关资讯

LinuxCNC 下 XHC WHB04B-6 无线手轮(MPG 手脉)HAL 组件:协议逆向、HAL 引脚与完整配置指南 2026/10/5 1:55:10
Kaset macOS 音乐播放器开发者指南:Swift Testing 测试体系与 Mock 客户端实战教程 2026/10/5 1:55:10
Ripple Community Wallet多链资产管理教程:XRP、ETH、BNB、MATIC与自定义ERC-20代币统一管理 2026/10/5 1:55:10

最新资讯

埃森哲粤语Android工程师岗:面试逻辑、技术栈与生存指南
K-mer原理与实战:基因组分析的原子级标尺
K-mer原理与实战:基因组分析的计量基石
AWS ECS特权模式实战:在托管实例上安全启用privileged容器
AWS ECS上使用EC2托管实例运行特权任务实操指南
网络安全评估工具设计:从端口扫描到规则匹配的工程实践

今日推荐

第26课:OpenClaw|日志审计与问题诊断:把日志链路改到 TaoToken 的排查清单
YOLOv5 OBB旋转框训练实战:从DOTA数据准备到调参避坑全流程
Zeron 终端、Worktree 与 Diff 面板:像 IDE 一样查看并驱动你的代码变更

本周热门

MR25H40CDF + PIC18F65K40:工业记录仪高可靠存储实战
基于STM32的数控恒压恒流电源设计:从硬件到PID调参全解析
LT9211 MIPI重定时器原理与双路扇出实战指南

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

Claude Code /code-review 查找角度之 Angle A:逐行 diff 扫描的正确性审查方法论

发布时间:2026/10/5 1:55:10
Claude Code /code-review 查找角度之 Angle A:逐行 diff 扫描的正确性审查方法论 文档提示工程人工智能【免费下载链接】claude-code-system-promptsAll parts of Claude Codes system prompt, 27 builtin tool descriptions, sub agent prompts (Plan/Explore/Task), utility prompts (CLAUDE.md, compact, statusline, magic docs, WebFetch, Bash cmd, security review, agent creation). Updated for each Claude Code version.项目地址https://gitcode.com/gh_mirrors/cl/claude-code-system-prompts点击查看免费下载/code-review是 Claude Code 内置的代码审查斜杠命令其完整提示词按阶段拆分存储在system-prompts/目录下而本篇文章讲解的正是其中查找阶段finder-angle phase的第一个角度Angle A —— 逐行 diff 扫描line-by-line diff scan。它规定了 Agent 如何把 PR 的每一行变更当作潜在缺陷的引爆点来审视是整套审查流水线中召回真实 bug 的第一道防线。读完本文你将掌握 Angle A 的核心检查清单八类运行时正确性缺陷、它的封闭函数阅读规则以及它如何与其余查找角度、三态验证阶段配合共同构成可复用的 AI 代码审查方法论。一、Angle A 在 /code-review 流水线中的位置要理解 Angle A先要看清/code-review的整体流水线。从仓库中的多个分片提示词可以还原出它的完整骨架Diff 获取阶段diff gathering phase先取到待审查的统一 diff例如git diff {upstream}...HEAD已提交变更叠加git diff HEAD未提交变更或直接使用git diff main...HEAD及命令行传入的目标分支。查找阶段finder-angle phase运行多个相互独立的查找角度finder angles每个角度以不同视角产出候选发现candidate findings每个角度最多上报 8 条。验证阶段verification phase由验证 Agent 将每条候选分类为 CONFIRMED / PLAUSIBLE / REFUTED 三态之一。缺口扫尾阶段gap sweep phase系统性检查是否遗漏了某类问题。输出阶段按严重度排序以结构化格式上报并受最大条数MAX_FINDINGS约束。Angle A 正是查找阶段中与逐行阅读 diff对应的那个角度其权威定义位于 agent-prompt-code-review-part-1-base-finder-angles.md同时被 skill-code-review-correctness-finder-angles.md 作为共享查找角度块复用并被 agent-prompt-code-review-part-3-extra-high-and-maximum-effort-modes.md 在 extra-high / maximum 努力模式下引用。二、Angle A 的核心方法论两条阅读规则Angle A 对 Agent 的指令可以用两句话概括规则一逐 hunk、逐行读完整个 diff。规则二对每个 hunk再通读它所在的整个封闭函数enclosing function。第二点是 Angle A 最容易被忽略、也最有价值的设计。它明确规定了被改动函数中那些未被改动的行同样在审查范围内。理由是PR 重新暴露了这些行或者 PR 未能修复它们——例如一个函数此前就存在 off-by-one本次改动虽然没碰那一行但改动改变了输入边界使得既有缺陷被激活这仍然是本次审查应当捕获的问题。因此Angle A 对每一行的追问方式是统一的什么样的输入input、状态state、时序timing或平台platform会让这一行代码出错这个四问框架把审查从这行代码对不对静态、缺乏上下文提升为什么条件下这行会错动态、面向可复现触发场景这为后续验证阶段产出 CONFIRMED能说出触发它的输入/状态及错误输出奠定了基础。三、Angle A 的八类运行时正确性缺陷清单Angle A 明确要求查找以下八类运行时正确性缺陷这是全文的核心检查清单缺陷类别典型形态说明反向/错误条件inverted/wrong conditionsif (a b)写成if (a b)写成条件方向或边界符错误导致分支逻辑与意图相反差一错误off-by-one循环边界/使用不当、索引越界常见于数组遍历、切片、页码计算空值/未定义解引用null/undefined deref对可能为null/undefined的值直接调用方法或取属性需结合相邻行判断该值是否可能缺失缺失await异步函数调用后未await拿到的是 Promise 而非结果会导致时序竞态或类型错误假值零值检查falsy-zero checks用if (!value)判断数字 0 或空字符串等合法值JS 等语言中 0、、NaN均为假值被误判为缺失变量复制粘贴错误wrong-variable copy-paste复制一段代码后未改名引用的是上一个变量的值常出现在相似度高的相邻代码块中catch 中吞掉错误error swallowed in catchcatch 块为空、仅打日志或忽略异常错误未传播掩盖真实故障使上层无法感知未转义的正则元字符unescaped regex metachars将用户输入直接拼入正则.、、(等未转义导致匹配语义改变或 ReDoS 风险这八类问题全部是可以从 hunk 本身观察到的运行时正确性缺陷runtime-correctness bugs这正是 Angle A 乃至整个查找阶段的定位它与纯风格、命名、性能、缺测试等审查维度严格区分。在 agent-prompt-code-review-part-2-low-effort-mode.md 中这一点被进一步强调不审查风格、命名、性能、缺失测试以及任何 hunk 之外的内容——同时在 hunk 可见范围内还要额外标记复制了 diff 上下文中已存在 helper 的新代码以及diff 遗留下的死代码。四、与其余查找角度的协同从 A 到 E 的多视角覆盖Angle A 只是查找阶段的第一个角度。当审查强度提升时Agent 会并行运行更多独立角度并且禁止让一个角度的结论压制另一个角度——若两个角度因不同理由标记同一行两条候选都要记录见 agent-prompt-code-review-part-3-extra-high-and-maximum-effort-modes.md。仓库中其余角度的定义可以帮助你理解 Angle A 的边界Angle B —— 移除行为审计员removed-behavior auditor见 skill-code-review-angle-b-removed-behavior-auditor.md。针对 diff 中删除或重写的每一行说出它原本保障的不变量或行为再去新代码中寻找该不变量是否被重建找不到就是候选被移除的守卫、被丢弃的错误路径、被收窄的校验、被删除的覆盖真实场景的测试。Angle A 关注改动的行Angle B 关注被删掉的行。Angle C —— 跨文件追踪器cross-file tracer见 skill-code-review-angle-c-cross-file-tracer.md。对被改动的函数用 Grep 找到所有调用方检查改动是否破坏调用契约新增前置条件、返回形状改变、新增异常、时序/顺序依赖同时反向检查被调方——同一 PR 中的并行改动是否使某个调用变得不安全。Angle D —— 语言陷阱专家language-pitfall specialist见 skill-code-review-angle-d-language-pitfall-specialist.md。针对 diff 所用语言/框架的经典陷阱专项扫描例如 JS 的假值零值与强制转换、闭包捕获循环变量Python 的可变默认参数、晚期绑定闭包Go 的 nil map 写入、range 变量捕获以及 SQL 注入、时区/DST 漂移、浮点相等比较。Angle E —— 包装/代理正确性wrapper/proxy correctness见 skill-code-review-angle-e-wrapper-proxy-correctness.md。当 PR 新增或修改包装类型缓存、代理、装饰器、适配器时检查每个方法是否忠实转发到被包装实例而不是绕回注册表/会话/全局——例如持有delegate字段的缓存提供者若通过session.get(...)而非delegate.get(...)解析 ID会重新进入缓存或造成递归同时检查包装器是否转发调用方实际使用的全部方法。可以看到Angle A 是广度优先的逐行地毯式扫描而 BE 各自承担删除语义调用链契约语言陷阱包装转发这些纵深视角。extra-high / maximum 努力模式会运行10 个独立查找角度5 个正确性角度 3 个清理角度 1 个海拔角度 1 个约定角度每个最多 8 条候选。五、候选产生之后三态验证与 recall 偏置Angle A 等角度产出的只是候选随后进入验证阶段由验证 Agent 将每条候选归入三态之一见 agent-prompt-code-review-part-4-three-state-verification-phase.mdCONFIRMED确认——能说出触发它的输入/状态以及错误的输出或崩溃并引用具体代码行。PLAUSIBLE可能——机制真实存在但触发条件不确定时序、环境、配置需说明什么能确认它。REFUTED反驳——事实错误代码并非如此表述或在别处已有守卫引用能证明反驳的代码行。值得注意的是验证阶段对召回率的偏置。在 agent-prompt-code-review-part-5-recall-biased-verification-phase.md 中规则明确为PLAUSIBLE 优先plausible by default不得因为候选太推测性或依赖运行时状态就反驳它——只要状态是现实的例如并发竞态、稀有但可达路径上的 nil/undefined错误处理、冷缓存、缺失可选字段、把假值零值当缺失、代码未排除边界上的差一错误、重试风暴/部分失败、丢失锚点的正则/白名单这些都应判为 PLAUSIBLE。而 REFUTED 只有在能从代码本身构造出反证时才成立事实错误引用实际代码行、类型/常量/不变量层面可证明不可能、本 diff 中已有守卫引用守卫、或纯风格且无可观察影响。在 recall 模式下只要有一条非 REFUTED 的投票发现就成立不允许因不确定而丢弃——漏掉的 bug 会随版本上线宁可多暴露是这一阶段的设计哲学。这也解释了为什么 extra-high / maximum 努力模式被描述为55 angles × 8 candidates → 1-vote verify → sweep → 限制条数的 JSON 输出。六、努力模式决定 Angle A 的用法从 low effort 到 maximum同一个 Angle A在不同努力等级下的执行强度差异巨大Low effort 模式见 agent-prompt-code-review-part-2-low-effort-mode.md流水线被压缩为1 次 diff 扫描 → 不验证 → 最多 4 条发现。第 1 轮只调用一次工具读取 unified diffgit diff {upstream}...HEAD; git diff HEAD覆盖已提交与未提交变更或用git diff main...HEAD/ 传入的目标并跳过测试与夹具相关 hunktest/、spec/、__tests__/、*_test.*、*.test.*、fixtures/、testdata/——测试文件变更在本等级不审查。第 2 轮从 hunk 本身即可观察的运行时正确性 bug 中挑选就是 Angle A 的八类清单不启动子 Agent、不读完整文件并按严重度从高到低上报若没有合格项则输出空发现数组。Extra-high / maximum 模式Angle A 升级为 10 角度并行方案之一配合独立角度互不压制、单票通过的三态验证和缺口扫尾目标是为召回而审查reviewing for recall——此时捕获真实 bug 比避免误报更重要漏掉的 bug 会随版本上线见 agent-prompt-code-review-part-3-extra-high-and-maximum-effort-modes.md。这一对比说明Angle A 的八类清单在不同努力等级下始终是运行时正确性缺陷的基准参照系变化的只是执行广度读多少行、是否追踪调用方、并行角度数量和验证强度。七、输出衔接让 Angle A 的发现可落地Angle A 产出的候选最终要通过结构化工具上报。根据仓库提示词中的输出契约每个发现条目应包含file—— 文件路径line—— 行号summary—— 完整摘要short_summary—— 不超过 60 字符的短摘要failure_scenario—— 具体的失败场景描述上报以{level, findings}结构在单次工具调用中完成按严重度降序排列如果没有合格发现则调用工具并传入空 findings 数组而不是把发现再以文本形式重复输出。这一契约确保 Angle A 的逐行判断能被下游验证阶段和最终报告直接消费也让每条发现都带有可复现的失败场景——这正是三态验证中 CONFIRMED 状态所要求的能力能说出触发输入/状态与错误输出并引用代码行。八、实践要点总结把未改动的行纳入审查改动所在函数的既有缺陷属于本 PR 的审查范围因为它可能被重新暴露或未被修复——这是 Angle A 区别于普通 diff 阅读的核心。对每一行执行四问什么输入、状态、时序或平台会让这行出错这一问法直接服务于后续的 CONFIRMED / PLAUSIBLE 判定。牢记八类清单反向条件、off-by-one、空值解引用、缺失await、假值零值检查、变量复制粘贴错误、catch 吞错、未转义正则元字符——它们是快速扫描的锚点。按努力等级调整深度low effort 只做单遍 hunk 扫描且跳过测试文件高等级模式则让 Angle A 与 BE 角度并行、互不压制并配合 recall 偏置验证宁可多报不可漏报。输出保持结构化每条发现携带file、line、summary、short_summary≤60 字符与failure_scenario保证可被验证阶段与报告环节直接使用。若想深入阅读原文定义与配套实现可直接查看 Angle A 定义、共享查找角度块、三态验证阶段、recall 偏置验证、low effort 模式 与 extra-high/maximum 模式在 Claude Code 的对应版本ccVersion 2.1.160 起中这套角度体系随/code-review命令持续演进。赞分享文档提示工程人工智能【免费下载链接】claude-code-system-promptsAll parts of Claude Codes system prompt, 27 builtin tool descriptions, sub agent prompts (Plan/Explore/Task), utility prompts (CLAUDE.md, compact, statusline, magic docs, WebFetch, Bash cmd, security review, agent creation). Updated for each Claude Code version.项目地址https://gitcode.com/gh_mirrors/cl/claude-code-system-prompts点击查看免费下载相关推荐Deep Code Review面向正确性缺陷的 Apache Cassandra 深度代码审查方法论deep-review Skill 实战指南Deep Code Review面向正确性缺陷的 Apache Cassandra 深度代码审查方法论deep review Skill 实战指南 dee数据库分布式数据库大数据后端Claude Code /code-review 中等强度审查提示词全解8 个查找角度、单票三态验证与 ≤8 条精确发现Claude Code /code review 中等强度审查提示词全解8 个查找角度、单票三态验证与 ≤8 条精确发现 system_prompts_lea文档知识库ARIS 跨模型审查实战用 Codex 主执行 Claude Code CLI 审查的 claude-review MCP 桥接方案ARIS 跨模型审查实战用 Codex 主执行 Claude Code CLI 审查的 claude review MCP 桥接方案 导读 本文讲解 AAI 技能/插件AI 评测科研人工智能MCP 服务dsh-plugin上一篇Metallb日志结构化配置使用Fluent Bit解析日志下一篇AI-Infra-Guard Skill 扫描详解基于 LLM Agent 的 Skill 安全审计与 T01–T09 风险分类实战创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号