SuperAPI AI 工具集

comprehensive-review

编程与开发

查看项目

更新于 10-16 02:24

技能介绍

用途

Comprehensive Review 是一个代码审查技能,用于在功能实现完成后、创建 PR 之前,对代码进行系统化的自查。其核心理念是:自查能在问题到达他人之前发现问题。该技能具有硬性要求:审查产物必须发布到 GitHub issue,并由钩子强制执行。

主要能力

该技能围绕 7 项审查标准展开:

  1. 盲点(Blindspots):检查边界情况、错误路径、并发、状态、依赖变化。例如空数组导致除零、外部服务失败、竞态条件等。
  2. 清晰度/一致性(Clarity/Consistency):检查命名、结构、复杂度、模式一致性、是否会让读者意外。
  3. 可维护性(Maintainability):检查耦合、内聚、重复、测试覆盖、可扩展性。
  4. 安全风险(Security Risks):检查输入验证、认证、授权、数据暴露、注入(SQL、XSS、命令注入)、依赖安全。若改动了安全敏感文件(auth、api、middleware 等),必须调用 security-review 技能进行更深入分析。
  5. 性能影响(Performance Implications):检查算法复杂度、数据库查询(N+1、缺失索引、全表扫描)、内存、网络、缓存。
  6. 文档(Documentation):检查公共 API、参数、返回值、错误、示例、非显而易见决策的说明。
  7. 标准与风格(Standards and Style):检查命名、格式、模式、类型(无 any)、包容性语言、IPv6 优先、lint 通过。

使用方式

审查流程分为六步:

  1. 准备:通过 git diff --name-only HEAD~1 获取变更文件列表,通过 git diff HEAD~1 获取完整 diff,并用 grep 检查是否存在安全敏感文件。
  2. 逐项审查:对 7 项标准逐一审查所有变更代码,记录问题并判定严重程度(Critical/Major/Minor)。
  3. 检查安全敏感:若改动了任何安全敏感文件,调用 security-review 技能或 security-reviewer 子代理,将结果纳入产物,并在产物中标记“Security-Sensitive: YES”。
  4. 记录发现:按标准分类记录所有发现,使用复选框标记。
  5. 处理所有发现:使用 apply-all-findings 技能修复每个问题;无法修复的,使用 deferred-finding 技能创建跟踪 issue 并在产物中链接。不允许“无跟踪 issue 的延期”。
  6. 发布产物到 issue(强制):使用 gh issue comment 命令,以指定格式(包含 REVIEW:START/END 注释、属性表、标准结果表、已修复发现表、延期发现表、汇总表)将审查产物作为评论发布到 GitHub issue。产物中“Unaddressed”必须为 0,“Review Status”必须为 COMPLETE。

严重程度分为三级:Critical(安全问题、数据丢失、崩溃,合并前必须修复)、Major(重大 bug、性能问题,合并前必须修复)、Minor(风格、清晰度、小改进,合并前应修复)。

适用场景

该技能适用于功能实现完成后的代码审查环节,尤其适合需要强制审查留痕、与 GitHub issue 工作流集成的团队。它由 issue-driven-development 技能在 Step 9 调用,并依赖 review-scope、apply-all-findings、security-review、deferred-finding 等技能,同时受 review-gate 技能和 PreToolUse 钩子强制执行。

限制

该技能要求审查产物必须发布到 GitHub issue,且未发布产物时 review-gate 和 PreToolUse 钩子会阻止 PR 创建。所有发现必须修复或带跟踪 issue 延期,不允许无跟踪的延期。涉及安全敏感文件时,security-review 为强制步骤。