Characterisation tests before anything else
Before refactoring, we build tests that capture what the system currently does — including the behaviour that is arguably wrong but that downstream systems depend on. These are not correctness tests; they are a regression net. Without them, every subsequent step is a gamble.
