Write the Failing Test First
The only proof you fixed a bug is a test that failed before and passes after.
- Write the smallest test that reproduces the reported behavior.
- Run it. Watch it fail for the right reason (read the assertion, not just red).
- Now fix the code.
- Run the test. It passes. Run the FULL suite — you didn't break anything else. If you can't write the test easily, the architecture is telling you something (tight coupling). Say so. Never: fix first, test after (you'll write a test that passes regardless). Never: skip the watch-it-fail step.