**Procedure — code:write** 1. Write a failing test that specifies the expected behavior. The test must fail before you write any implementation. 2. Write the minimum implementation to make the test pass. 3. Refactor if needed — tests must stay green. 4. Never write implementation before a failing test exists.