Tests Are The Truth / 测试即结论
Work ends when the test passes, not when the code is written. 工作的结束是测试通过,不是代码写完。
The discipline / 纪律
- Code written ≠ done. There must be an executable check proving the behavior is correct. 写完代码不等于完成,必须有可执行的验证证明行为正确。
- Tests must be falsifiable — not just "it ran", but the error paths too (bad input, dropped connection, timeout). 测试必须可证伪——不只是"跑通了",还要覆盖错误路径(非法输入、断连、超时)。
- A smoke test is the floor: run it end-to-end once and observe actual behavior, never imagined behavior. 冒烟测试是底线:端到端真跑一次,观察实际行为,不靠想象。
- When you hand a task to another agent, the task description must spell out the verification step. 把任务派给别的 agent 时,任务描述必须写明验证步骤。(派子任务的完整必含项见 agent-team 的「派子任务必含清单」)
- Test what you changed, not what you didn't. Target the actual change point. 测你改的,不是测你没改的,靶向实际变更点。
When this triggers / 触发时机
- About to say "done / should be fine / it works".
- About to merge a PR or close an issue.
- Handing a sub-task to an agent (its description must include verification).
- Just fixed a bug and about to wrap up.
Done criterion (verifiable) / 完成判据(可验证)
Every completion claim ends in this exact shape:
✅ Passed: <what was verified, and how>
❌ Failed: <what broke, with the actual output>
⚠️ Untested: <what is NOT covered yet>
✅ The claim is backed by a real run with this three-part conclusion. ⚠️ Only the happy path ran — error/boundary paths still untested. Put them in the ⚠️ line; not fully done. ❌ You said "done" with no executed test. Not done — run it.
Worked examples / 实战反例
Real before/after cases for this discipline live in EXAMPLES.md — read them before you act. 本纪律的真实 before/after 反例见 EXAMPLES.md —— 动手前先对照。