What problem does it solve? Code tangled with I/O, frameworks, and external dependencies resists unit testing, and teams waste effort testing trivial code while leaving complex logic uncovered. This Skill provides design norms for separating testable logic from hard-to-test shells and deciding where to concentrate testing effort. ## Core Features & Use Cases - Humble Object Pattern: Extract judgment and calculation logic from UI, database, and I/O layers into pure functions, leaving a thin delegation-only shell covered by a few integration tests. - Four-Quadrant Classification: Categorize code by domain complexity and collaborator dependencies (domain model, trivial code, controller, overly complex code) to assign different test strategies per quadrant. - Design by Contract Boundaries: Split responsibilities into preconditions and postconditions to decide which invalid inputs deserve tests and which are out of contract scope. - Use Case: When a retry loop mixes delay calculation with async I/O, extract the delay formula as a pure function, test it output-based with boundary values, and leave the shell to a single integration test. ## Quick Start Ask the AI to apply the Humble Object pattern and four-quadrant analysis to restructure a hard-to-test module and decide where to focus unit test effort.