breaking-drivenlisted
Install: claude install-skill OutlineDriven/odin-claude-plugin
# Breaking-driven development
## Contract
| Field | Bound contract |
|---|---|
| Trigger | The user says "this module is bloated", "rewrite this properly", or "break it and rebuild". |
| Authority | Reversible local: writes only VCS-tracked targets (destructive changes; show the exact set before mutation); rollback is version control. No remote mutation. |
| Side effect | Deletes obsolete implementation and residue, writes the replacement, and adds essential-behavior tests. |
| Done | Consumer contract preserved, every divergence classified, residue absent, and verifier green. |
## Inputs
A named path or identified target must be supplied or named in the request and defines the whole job. Optionally, a blank invocation or explicit repo-wide wording surveys the repo and works through a ranked list one target at a time.
## Procedure
1. **Pick the target.** A named path goes straight to step 2. Survey only on explicit repo-wide intent, ranking candidates by bloat signal, size, duplication, indirection depth, branch density, then work the list in order. Any identifiable target scopes to itself; escalating a named grievance into a whole-tree campaign is this skill's worst failure, and trigger phrasing alone cannot tell a single target from a sweep. Done when: a single target is selected or a ranked survey list is produced on explicit repo-wide intent.
2. **Classify the surface.** Inventory consumers. Mark **interior** (every caller in-tree, nothing persisted or shipped) or