用途:verify-gate 是内循环的验证步骤,在实现工作完成后、标记“完成”前运行项目的编译、测试与 lint 命令,为代码是否真正可用提供机器信号。它位于 [implementation] → verify-gate → simplify-and-harden → self-improvement 流水线中,失败时进入修复循环并把诊断交给 self-healing。
主要能力:按顺序发现并运行项目验证命令,依次执行编译/类型检查、测试、lint(可用 --skip-lint 跳过)、项目自定义检查,以及结果验收。发现来源包括 CLAUDE.md/AGENTS.md 等指令文件的 Verification 段、package.json 脚本(存在 bun.lock 时优先 bun run,pnpm-lock.yaml 优先 pnpm run,yarn.lock 优先 yarn)、Makefile/Justfile、Cargo.toml、pyproject.toml、go.mod、deno.json 等。若无法发现命令,会询问用户一次并建议在项目指令文件中添加 ## Verification 段。
使用方式:失败时解析错误输出中的文件路径、行号与信息,只做最小修复,重跑失败阶段;默认每阶段最多 3 次尝试(--fix-limit N 可配置),计数按修复尝试而非唯一错误累加,达到上限即停止并报告。修复循环总预算不超过原实现工作量的 20%。全部通过输出 PASSED 信号,耗尽则输出 BLOCKED。可通过 .verify-gate.yml 或指令文件中的 verify-gate 段配置 build、test、lint、type_check、fix_limit、skip_lint、test_scope。支持用 gh-aw 的 mcp-scripts 定义自定义验证工具,作为 lint 之后的 Phase 4 运行。
适用场景:任何实现工作完成后、运行 simplify-and-harden 前、修复独立审查发现后,或需要机器验证的绿色信号时。
限制:不审查代码质量、不检查安全、不验证规格符合性、不修改或新增测试、不运行未改动代码的测试(除非测试运行器不支持范围限定)。若环境无法观察所需结果,须记录验收缺口,该标准不能报告 PASSED。