What problem does it solve? Stateful logic often ends up as scattered booleans, repeated shape assumptions, and branching spread across files, which creates accidental complexity and invalid states. This Skill guides you to encode the domain in a structure so invalid states become unrepresentable and branches disappear. ## Core Features & Use Cases - Structure Selection: Replaces scattered conditionals with state machines, typed models, lookup tables, discriminated unions, reducers, or domain-organized modules. - Guarded Application: Requires a concrete situation, trigger evidence, and a decision to change before acting, and returns a HOLD instead of guessing when inputs are missing. - Cut-First Defaults: Prefers the smallest structural change, deletes before adding, and refuses decorative principle citations that change no decision. - Use Case: When a new feature would grow an existing if/else chain by one more branch or add a second boolean that must stay in sync with the first, apply this Skill to model the lifecycle as a state machine instead. ## Quick Start Apply the model-the-domain principle to refactor this module's scattered boolean flags and branching into a single state machine structure.