verification-before-completion
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseVerification Before Completion
完成前的验证
Overview
概述
Claiming work is complete without verification is dishonesty, not efficiency.
Core principle: Evidence before claims, always.
Violating the letter of this rule is violating the spirit of this rule.
在未进行验证的情况下宣称工作已完成是不诚信的行为,而非高效之举。
核心原则:始终坚持先有证据,后下断言。
违反规则的字面要求即违反规则的精神实质。
The Iron Law
铁律
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCEIf you haven't run the verification command in this message, you cannot claim it passes.
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE如果未运行此消息中提及的验证命令,你不得宣称工作已通过。
The Gate Function
把关流程
BEFORE claiming any status or expressing satisfaction:
1. IDENTIFY: What command proves this claim?
2. RUN: Execute the FULL command (fresh, complete)
3. READ: Full output, check exit code, count failures
4. VERIFY: Does output confirm the claim?
- If NO: State actual status with evidence
- If YES: State claim WITH evidence
5. ONLY THEN: Make the claim
Skip any step = lying, not verifyingBEFORE claiming any status or expressing satisfaction:
1. IDENTIFY: What command proves this claim?
2. RUN: Execute the FULL command (fresh, complete)
3. READ: Full output, check exit code, count failures
4. VERIFY: Does output confirm the claim?
- If NO: State actual status with evidence
- If YES: State claim WITH evidence
5. ONLY THEN: Make the claim
Skip any step = lying, not verifying在宣称任何状态或表达满意之前:
- 确定:用什么命令可以证明该宣称?
- 运行:执行完整的命令(全新、完整的执行)
- 读取:查看完整输出,检查退出码,统计失败次数
- 验证:输出是否能证实宣称?
- 若不能:说明实际状态并附上证据
- 若能:在宣称时附上证据
- 只有完成以上步骤后:才能做出宣称
跳过任何步骤=撒谎,而非验证
Common Failures
常见错误
| Claim | Requires | Not Sufficient |
|---|---|---|
| Tests pass | Test command output: 0 failures | Previous run, "should pass" |
| Linter clean | Linter output: 0 errors | Partial check, extrapolation |
| Build succeeds | Build command: exit 0 | Linter passing, logs look good |
| Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
| Regression test works | Red-green cycle verified | Test passes once |
| Agent completed | VCS diff shows changes | Agent reports "success" |
| Requirements met | Line-by-line checklist | Tests passing |
| 宣称内容 | 所需验证 | 不充分的依据 |
|---|---|---|
| 测试通过 | 测试命令输出:0失败 | 之前的运行结果、“应该能通过” |
| 代码检查器无问题 | 代码检查器输出:0错误 | 部分检查、推断 |
| 构建成功 | 构建命令:退出码0 | 代码检查器通过、日志看起来正常 |
| 漏洞已修复 | 针对原症状的测试通过 | 代码已修改、假设已修复 |
| 回归测试有效 | 已验证红-green循环 | 测试通过一次 |
| Agent已完成任务 | VCS差异显示有变更 | Agent报告“成功” |
| 需求已满足 | 逐条核对检查清单 | 测试通过 |
Red Flags - STOP
危险信号 - 立即停止
- Using "should", "probably", "seems to"
- Expressing satisfaction before verification ("Great!", "Perfect!", "Done!", etc.)
- About to commit/push/PR without verification
- Trusting agent success reports
- Relying on partial verification
- Thinking "just this once"
- Tired and wanting work over
- ANY wording implying success without having run verification
- 使用“应该”、“可能”、“似乎”等词汇
- 在验证前表达满意(如“太棒了!”、“完美!”、“完成了!”等)
- 未进行验证就准备提交/推送/创建PR
- 信任Agent的成功报告
- 依赖部分验证
- 抱有“就这一次”的想法
- 因疲惫而想结束工作
- 任何暗示未经过验证就取得成功的表述
Rationalization Prevention
避免自我合理化
| Excuse | Reality |
|---|---|
| "Should work now" | RUN the verification |
| "I'm confident" | Confidence ≠ evidence |
| "Just this once" | No exceptions |
| "Linter passed" | Linter ≠ compiler |
| "Agent said success" | Verify independently |
| "I'm tired" | Exhaustion ≠ excuse |
| "Partial check is enough" | Partial proves nothing |
| "Different words so rule doesn't apply" | Spirit over letter |
| 借口 | 实际要求 |
|---|---|
| “现在应该能正常运行了” | 运行验证命令 |
| “我很有信心” | 信心≠证据 |
| “就这一次” | 没有例外 |
| “代码检查器通过了” | 代码检查器≠编译器 |
| “Agent说成功了” | 独立进行验证 |
| “我累了” | 疲惫≠借口 |
| 部分检查就够了” | 部分验证毫无意义 |
| “换种说法规则就不适用了” | 精神重于字面 |
Key Patterns
关键模式
Tests:
✅ [Run test command] [See: 34/34 pass] "All tests pass"
❌ "Should pass now" / "Looks correct"Regression tests (TDD Red-Green):
✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
❌ "I've written a regression test" (without red-green verification)Build:
✅ [Run build] [See: exit 0] "Build passes"
❌ "Linter passed" (linter doesn't check compilation)Requirements:
✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
❌ "Tests pass, phase complete"Agent delegation:
✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
❌ Trust agent report测试:
✅ [Run test command] [See: 34/34 pass] "All tests pass"
❌ "Should pass now" / "Looks correct"✅ [运行测试命令] [显示:34/34通过] “所有测试通过”
❌ “应该能通过了” / “看起来没问题”回归测试(TDD红-Green):
✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
❌ "I've written a regression test" (without red-green verification)✅ 编写→运行(通过)→还原修复→运行(必须失败)→恢复修复→运行(通过)
❌ “我已经写了回归测试”(未进行红-green验证)构建:
✅ [Run build] [See: exit 0] "Build passes"
❌ "Linter passed" (linter doesn't check compilation)✅ [运行构建命令] [显示:退出码0] “构建通过”
❌ “代码检查器通过了”(代码检查器不检查编译情况)需求:
✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
❌ "Tests pass, phase complete"✅ 重新阅读计划→创建检查清单→逐项验证→报告差距或完成情况
❌ “测试通过,阶段完成”Agent委托:
✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
❌ Trust agent report✅ Agent报告成功→检查VCS差异→验证变更→报告实际状态
❌ 信任Agent的报告Why This Matters
重要性
From 24 failure memories:
- your human partner said "I don't believe you" - trust broken
- Undefined functions shipped - would crash
- Missing requirements shipped - incomplete features
- Time wasted on false completion → redirect → rework
- Violates: "Honesty is a core value. If you lie, you'll be replaced."
基于24次失败案例的经验:
- 你的人类搭档说“我不信你”——信任破裂
- 发布了未定义的函数——会导致崩溃
- 发布了未满足需求的功能——功能不完整
- 因虚假的完成宣称浪费时间→重新调整→返工
- 违反了:“诚信是核心价值观。如果你撒谎,你将被替换。”
When To Apply
适用场景
ALWAYS before:
- ANY variation of success/completion claims
- ANY expression of satisfaction
- ANY positive statement about work state
- Committing, PR creation, task completion
- Moving to next task
- Delegating to agents
Rule applies to:
- Exact phrases
- Paraphrases and synonyms
- Implications of success
- ANY communication suggesting completion/correctness
始终在以下场景前应用本规则:
- 任何形式的成功/完成宣称
- 任何表达满意的行为
- 任何关于工作状态的正面表述
- 提交代码、创建PR、标记任务完成
- 进入下一个任务
- 委托Agent执行任务
本规则适用于:
- 确切的表述
- 改写和同义词
- 暗示成功的表述
- 任何表明工作已完成/正确的沟通
The Bottom Line
底线
No shortcuts for verification.
Run the command. Read the output. THEN claim the result.
This is non-negotiable.
验证没有捷径。
运行命令。查看输出。然后再宣称结果。
这是不容协商的。