关于 quality-gate
quality-gate 是一项代码审查流程技能,面向希望在开发过程中及合并前发现缺陷的 Agent。它规定审查前置条件、提交范围和问题处理要求。
主要功能
- 01审查前检查测试、提交状态与范围
- 02记录审查的起止提交 SHA
- 03按严重程度处理审查发现
- 04为委派任务和合并设置审查关卡
适用场景
- 01委派执行的每项任务完成后审查
- 02重要功能完成后检查变更
- 03合并到主干分支前审查
- 04受阻或大型重构前获取审查意见
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ noobygains/ godmode --skill quality-gate安装后在 Claude Code 中输入/quality-gate确认已加载。
附带文件code-reviewer.md
详细介绍
质量关卡
调度代码审查 Agent(agents/code-reviewer.md),在缺陷扩散前将其找出。
核心原则: 尽早检查,频繁检查。
首要指令
未经审查,不得合并
没有例外。没有变通办法。没有捷径。
准入流程
启动审查前,请确认:
- 当前分支上的测试套件全部通过
- 所有更改均已提交(工作树干净)
- 已确定 BASE_SHA 和 HEAD_SHA
- 能够说明构建了什么以及原因
- 知道要依据哪项计划或规范进行审查
- 已正确界定审查范围(单个任务还是批次)
如果有任何一项不满足,请先解决,再请求审查。
何时启动
必须:
- 在委派执行工作流中的每项任务完成后
- 完成重要功能后
- 合并到主干分支前
可酌情启动,但建议:
- 遇到阻碍时(外部视角往往能帮你打破僵局)
- 开始大型重构前(建立基线)
- 解决棘手缺陷后
如何启动
1. 获取提交范围:
BASE_SHA=$(git rev-parse HEAD~1) # or origin/main
HEAD_SHA=$(git rev-parse HEAD)
2. 启动代码审查子 Agent:
使用 Agent 工具调度代码审查 Agent(agents/code-reviewer.md)。填写 code-reviewer.md 中的模板。
模板占位符:
{WHAT_WAS_IMPLEMENTED}— 刚刚构建的内容{PLAN_OR_REQUIREMENTS}— 应满足的要求{BASE_SHA}— 起始提交{HEAD_SHA}— 结束提交{DESCRIPTION}— 简要说明
3. 处理审查结果:
- 立即解决 Critical 级别的问题
- 继续推进前解决 Important 级别的问题
- 将 Minor 级别的问题记录下来,留待后续处理
- 如果审查者有误,请提供证据并提出异议
演练
[Just completed Task 3: Add data validation layer]
You: Initiating quality gate before proceeding.
BASE_SHA=$(git log --oneline | grep "Task 2" | head -1 | awk '{print $1}')
HEAD_SHA=$(git rev-parse HEAD)
[Launch code-reviewer agent (agents/code-reviewer.md)]
WHAT_WAS_IMPLEMENTED: Input validation and sanitization for all API endpoints
PLAN_OR_REQUIREMENTS: Task 3 from docs/plans/api-hardening-plan.md
BASE_SHA: c4e19a7
HEAD_SHA: 8b2f305
DESCRIPTION: Added validateRequest() and sanitizeInput() with 5 rule types
[Subagent returns]:
Strengths: Comprehensive rule coverage, solid test assertions
Issues:
Important: Missing rate-limit header on validation error responses
Minor: Hardcoded threshold (50) for payload size check
Assessment: Ready to proceed after addressing Important item
You: [Fix rate-limit header]
[Continue to Task 4]
认知陷阱
| 自我安慰 | 事实 |
|---|---|
| “改动很小,不需要审查” | 小型差异也会引发大规模故障。审查所有改动。 |
| “我已经进行了全面测试” | 测试和审查能发现本质上不同类别的问题。 |
| “审查会拖慢进度” | 修复生产事故对进度的拖累要大得多。 |
| “审查者看不懂这段代码” | 如果审查者看不懂,下一位工程师也看不懂。 |
| “我会在下一个 PR 中统一审查” | 质量债务会不断累积。现在审查,否则以后要付更多利息。 |
集成
godmode:delegated-execution:
- 每项委派任务完成后都要审查
- 在缺陷层层扩散前将其找出
- 解决问题后再开始下一项任务
godmode:task-runner:
- 每批任务完成后都要审查
- 收集反馈、应用修正,然后继续
临时开发:
- 合并前审查
- 遇到阻碍时审查
护栏
禁止:
- 以“这很简单”为由跳过审查
- 忽视 Critical 级别的问题
- 未解决 Important 级别的问题就继续推进
- 没有证据就否定有效的技术反馈
- 仍有 Critical 或 Important 级别的问题未解决时合并更改
必须:
- 委派执行中的每项任务完成后都要审查
- 每份审查请求都包含 BASE_SHA 和 HEAD_SHA
- 立即处理 Critical 级别的问题
- 对有异议的反馈提供代码或测试证据
- 反馈含糊时请求澄清
流程图
START: Work finished
|
+-- Suite green? --NO--> Fix tests first
| |
| YES
| |
+-- Changes committed? --NO--> Commit changes
| |
| YES
| |
+-- Determine BASE_SHA and HEAD_SHA
| |
+-- Launch code-reviewer agent (agents/code-reviewer.md)
| |
+-- Wait for results
| |
+-- Critical items? --YES--> Fix now, re-review
| |
| NO
| |
+-- Important items? --YES--> Fix before advancing
| |
| NO
| |
+-- Log Minor items for later
| |
+-- ADVANCE to next task
审查者模板见:quality-gate/code-reviewer.md
评论
支持 Markdown