"Done" is the most expensive word in software. It usually means "it worked when I tried it". We make it mean something a machine can check.
The test is written first
Each task defines its acceptance checks before any code exists. That ordering matters: a test written afterwards tends to describe what the code happens to do, rather than what the spec asked for.
Green is the only signal
A milestone is not complete because it looks complete. The pipeline runs the suite from a clean clone — no caches, no artifacts carried over — and a milestone nobody can reproduce cannot be approved.
You keep the suite
The tests ship with the code. That is what keeps the product provable after we are gone, and it is the difference between owning software and merely possessing it.