用途:在声称任务完成、提交代码、创建 PR 或报告成功之前,强制先运行验证命令并检查输出与退出码,用证据支撑结论。适用于已有 lint、test、build、typecheck 等命令的代码项目。\n\n主要能力:
- 验证循环:任务完成→运行验证命令(lint/test/build/typecheck)→未通过则反思、修复、重跑,无上限,直到全部通过;不允许在失败状态下报告完成或询问是否跳过。
- 失败反思:先说明根本原因、遗漏点、修复方案及其新风险,再改代码。
- 回归守卫:修改后先跑已有测试确认无回归;指标改善但已有测试失败时优先修复回归(最多 2 次尝试),不修改已有测试。
- 原子性自检:单次变更涉及超过 5 个文件应暂停评估拆分;用一句话描述变更,若需用“和”连接不相关操作则拆分提交。
- 体积检查:文件/类超过 300 行评估拆分,超过 400 行必须按职责拆分;函数/方法超过 40 行评估拆分,超过 60 行必须拆分(生成代码、大型测试夹具、迁移脚本、协议常量表例外)。
- 四级验证深度:存在、真实(非 stub/TODO/placeholder)、连接(被调用)、数据流(真实数据流过);未通过任一级视为未完成。\n- 需求追踪:若有 requirements.md,逐条交叉检查需求实现,确认非目标未被实现,核对 tasks.md 完成标准与 contract.json 中的 verifyMode、reviewer/tester 关注边界。\n- 状态证据文件:准备最终收尾时调用 scripts/closeout-state.mjs write 写 .helloagents/.ralph-closeout.json,含 requirementsCoverage 与 deliveryChecklist(均需 status 为 PASS/BLOCKED 和 summary);review-first 时先确认 .helloagents/.ralph-review.json 由 scripts/review-state.mjs write 写成;ui.visualValidation.required=true 时必须由 scripts/visual-state.mjs write 写 .ralph-visual.json;advisor.required 或 ui.styleAdvisor.required=true 时须有 .ralph-advisor.json 且结论 clean;报告完成前调用 scripts/turn-state.mjs write 写 kind=complete、role=main,阻塞或等待时写 kind=waiting/blocked 及 reasonCategory 与 reason。\n- 五步证据链:识别命令、运行、阅读完整输出与退出码、确认输出支持声明、附带证据报告。\n\n验证命令来源:.helloagents/verify.yaml 中的 commands(优先);package.json 的 lint/test/typecheck;pyproject.toml 的 ruff/mypy/pytest。.helloagents/ 按项目级存储路径理解;project_store_mode=repo-shared 时 verify.yaml、方案包与 DESIGN.md 按已注入的项目知识/方案目录解析。\n\n限制:资料未提供安装命令、依赖、平台支持、授权与价格信息。连续 3 次以上验证失败时激活 hello-debug 的卡住升级机制;声称完成时若无实际文件变更(git diff 为空),不能声称产出文件类任务完成。具体命令与脚本参数以资料描述为准,缺失项暂未提供。