You ask the agent for a fix. It comes back fast: "Done — the button shows now." The diff looks plausible, so you move on. Two hours later the button is still invisible. The diff was real; the result was not. Somewhere between the code and the screen, a stale cache or a CSS override quietly ate it — and nobody looked.
That gap has one cause: the agent handed you a claim and you accepted it as evidence. A confident "done" is the cheapest thing a model produces — it costs nothing and proves nothing. Watch what changes when you make proof the price of saying "done":
✕ Without the rule
✓ With the rule
Drop it into your CLAUDE.md — global, or per project. It costs the agent a few seconds per change and saves you the half-day of unwinding a fix that never ran. Where it earns the most is the second time you hear "still broken": that sentence means the first diagnosis was wrong, not under-applied — so the rule makes the agent re-diagnose from the observed output instead of re-patching the same guess.