Use it only when there are meaningful test boundaries.
- Choose the most useful public behavioral boundary.
- Write and run one vertical slice test to confirm the red state.
- Implement the minimal behavior and run it to confirm the green state.
- Refactor without changing behavior.
Test behavior, not internal implementation, and avoid distorting production code solely for tests. If there is no useful boundary, do not force TDD. Report the red command/result, the green command/result, and the behavior implemented.