principles/principle-redesign-from-first-principles/SKILL.md
name: principle-redesign-from-first-principles description: "Apply when integrating a new requirement into an existing design. Redesign as if the requirement had been a foundational assumption from day one, instead of bolting it on."
Redesign From First Principles
When integrating a change, don't bolt it onto the existing design. Redesign as if the requirement had been there from the start; the result should look like what you would have built knowing it on day one.
Why: Bolt-ons compound. Each one adds a seam the next reader must decode, and three bolt-ons later the design no one would have chosen is load-bearing. The redesign is usually cheaper than it looks — most of the code survives; it is the shape that changes.
Pattern:
- Read all affected files and understand the current design holistically before writing anything.
- Ask: "if we were writing this from scratch with this requirement, what would we build?"
- Propagate the change through every reference: types, docs, examples, the rationale sections that explain the old shape.
- Think about the redesign holistically, then deliver it incrementally — verifiable units, not one big-bang diff.
Distinct from solution-space, which checks what a platform you don't own
already models before you build glue on it. This principle applies to designs
you do own.
