Use a test-driven implementation loop for code changes. Use when the user asks for TDD, wants safer changes, is fixing a bug with a reproducible case, or is adding behavior that can be captured with focused tests before implementation.