Redesign from First Principles
Trigger
When integrating a new requirement into a design that keeps fighting it.
Rule
Design the shape you would choose if the requirement had existed from day one, then migrate toward that shape.
Application
- Name the concrete decision this principle changes.
- Apply the rule to that decision, not as a decorative citation.
- Prefer evidence from the current repository/runtime over generic preference.
- If the principle conflicts with an explicit user constraint, keep the constraint and state the tradeoff.