How it works
- 1
Read
We look through the code files related to the bug.
- 2
Prove
We write a test that fails, showing the bug is real.
- 3
Try many
Six different fixes are written at the same time.
- 4
Check
Every fix goes through the same four checks.
- 5
Choose
Of the fixes that pass, the smallest change wins.
The four checks
- Runs — The program still starts without errors.
- Stops the bug — The failing test now passes.
- Old tests pass — Nothing that worked before is broken.
- Tests untouched — The fix didn't cheat by changing the tests.