First Principles Review
Purpose
Use this as a lightweight decision review before another Aegis workflow makes a
directional choice. It is a compositional skill, not a standalone workflow.
Do not replace brainstorming, systematic-debugging, writing-plans,
requesting-code-review, or verification-before-completion. Use it to clean
the decision surface those skills will act on.
When this review materially changes the direction, surface Aegis Visibility
in natural prose: name the first principle, dropped assumption, smallest
sufficient path, or owner / retirement falsifier that changed the decision.
Keep it advisory and task-specific; do not turn the lens into approval
authority or a generic skill trace.
Use When
- The user asks for first principles, first-principles thinking, or Occam's
razor.
- A design, plan, or fix has multiple plausible paths and unclear selection
criteria.
- The task has ambiguous goals, competing constraints, or product/architecture
direction risk.
- Debugging is drifting into repeated fixes, fallback growth, duplicate owners,
consumer-side patches, or "just add another branch" reasoning.
- A review finds that the implementation may be locally correct but directionally
wrong.
Do Not Use
- Simple Q&A, status checks, tiny wording/config edits, or clearly bounded
single-owner changes.
- Mechanical execution of an approved plan unless a new directional conflict
appears.
- As a required step for every task, every turn, or every TDD cycle.
Five-Line Review
Answer only what is needed, usually in five short lines:
First Principle: What irreducible outcome must this satisfy?
Non-negotiables: What constraints cannot be broken?
Assumptions to Drop: What is habit, inherited shape, or unproven preference?
Smallest Sufficient Path: What is the least complex path that satisfies the first principle?
Escalation Signal: What finding would require spec/design/architecture review?
When the direction depends on a new mechanism or an unfamiliar domain, insert
one optional line between path and escalation:
Known Prior Art: proven external pattern worth adopting or adapting to project
constraints (cite source), or `unknown` when precedent cannot be verified here
For repair choices, "smallest" means smallest sufficient stable repair, not the
smallest textual diff:
Minimality Check:
- Smallest textual diff:
- Correct owner:
- Bug class fixed:
- New branch/fallback added:
- Old path retired or scheduled:
- Verdict: sufficient repair | local patch | needs first-principles review
Decision Hygiene Review
Use this escalation only when a design, fix, or plan needs endorsement before it
is written into a spec or implementation plan.
Escalate from the five-line review when any of these risk signals appear:
- multiple plausible paths and no clear selection criteria
- a new owner, duplicate owner, fallback, adapter, or compat-only carrier
- an old path that may need delete-first handling or a retirement trigger
- an unverified assumption that the proposal depends on
- user language such as "more elegant", "long-term stable", "first
principles", or "Occam"
- a plan could encode the wrong owner, abstraction, compatibility boundary, or
retirement schedule
- an existing object, behavior, responsibility, contract, or relationship may
be reinterpreted, narrowed, replaced, or retired, and the proposal could lose
a legitimate role or explicit reference while removing invalid authority
Use this compact shape:
First-principles invariants:
- Non-negotiable goal:
- Non-negotiable constraints:
- Historical assumptions to delete:
Bounded preservation reminder:
- Evidence-backed behavior that must remain correct:
- Highest-risk counterexample:
- Material unknown / uninspected surface:
- Known explicit anchors / upstream-downstream refs and disposition:
- Role-before-value ambiguity, if any:
Owner / retirement matrix:
- New canonical owner:
- Old owner:
- Compat-only carrier:
- Delete-first / retirement trigger:
Falsification matrix (evaluate in order; stop at the first failing gate):
- Gate 0 - Premise evidence (stage-graded): design stage accepts spec/logic
refs; implementation/runtime stage requires log, telemetry, or test
evidence. No evidence -> park as watch-listed, do not enter value
evaluation.
- Gate 1 - Decidability: no obtainable evidence to judge it -> park as a
watched falsifier, do not act.
- Gate 2 - Value (any one): lowers future fix probability / shrinks the
solution set / exposes a missing actionable acceptance criterion / the same
broken assumption is reused elsewhere. Passing here still requires
gates 3-5.
- Gate 3 - Cost match: change cost vs business priority, costed at the
current stage; a valid but deferred counterexample is recorded in the owner
doc, never parked orally.
- Gate 4 - Goal regression: the constrained solution still meets the original
goal; re-read the accepted-constraint list at existing checkpoints (design
review, plan approval, pre-completion verification).
- Gate 5 - Minimize then classify: boundary-shaped destructive claims must be
minimized first; premise attacks classify as destructive directly.
Classes: destructive (refactor/retirement track) | supplementary (boundary
constraint) | watch-listed (falsifier). Conflicting counterexamples are
decided by business-goal ranking, never by stacking constraints.
- Gate 6 - Adoption trace: the cheapest checkable form (regression test for
destructive; contract, assertion, or checklist line for supplementary),
written into the existing owner doc.
Verdict:
- Adopt / revise / reject / needs evidence:
- Blocking gaps:
- Next evidence:
Architecture Integrity Lens
Use this narrower lens when a proposal is executable but may still encode the
wrong owner, abstraction, contract boundary, or retirement path. It is advisory
method-pack output and may be embedded inside Decision Hygiene Review when
that is enough.
Trigger it when any of these appear before approach selection, task
decomposition, review, or completion-risk reporting:
- responsibilities may overlap or a canonical owner is unclear
- the smallest diff adds a caller-side fallback, guard, adapter, or compat-only
carrier
- an existing source-of-truth or contract could solve the class of problem at a
higher level
- a stale owner, fallback, or old path may keep carrying real logic
- the work makes a long-term stability, "cleaner architecture", or
higher-level simplification claim
Use this compact shape:
Architecture Integrity Lens:
- Invariant: What must remain true for the system to be coherent?
- Canonical owner / contract: Which owner, contract, or source-of-truth should carry the behavior?
- Responsibility overlap: What duplicate owner, caller-side patch, fallback, or stale path might still carry real logic?
- Higher-level simplification: Can the problem be solved at the owner / contract / source-of-truth layer instead of by another local branch?
- Retirement / falsifier: What old path retires, or what evidence would disprove this architecture judgment?
- Responsibility / capability boundary: Which invalid authority retires, and
does the same carrier still serve a separately evidenced legitimate role?
- Verdict: proceed | revise design | split owner | return to baseline | needs ADR/baseline sync
Bounded preservation reminder is a risk-triggered reasoning aid, not a
universal artifact or an exhaustive behavior inventory. Inspect the smallest
relevant contract, consumer, test, or history evidence. Preserve, rebind,
retire, or reject each known explicit reference; state unresolved relationships
as unknown instead of re-inferring them or claiming semantic completeness. The
Method Pack does not build an authoritative relationship graph, prove
referential integrity or input lineage, calculate complete behavior coverage,
or issue a runtime gate.
Do not run this lens for every low-risk task. If it does not change the
decision surface, return to the active workflow immediately.
Composition
- With
brainstorming: run before approach selection when the request is broad,
ambiguous, likely to inherit a poor product shape, or involves owner /
retirement / fallback / adapter risk. Use Decision Hygiene Review or the
narrower Architecture Integrity Lens before recommending or selecting an
approach when those signals appear.
- With
systematic-debugging: run after evidence shows repeated fixes, fallback
growth, duplicate owners, or consumer-side patching.
- With
writing-plans: run before task decomposition when the plan could encode
the wrong owner, abstraction, compatibility boundary, fallback, adapter, or
retirement schedule. If the approved spec did not already cover this, use
Decision Hygiene Review or the Architecture Integrity Lens before writing
tasks.
- With
requesting-code-review: run when review should check direction and
owner integrity, not just code quality.
- With
verification-before-completion: use only to name residual directional
risk. It does not grant completion authority.
Boundaries
- Prefer evidence from current project files, baseline docs, tests, logs, and
user requirements. If evidence is missing, mark the line as unknown rather
than inventing a principle.
- Keep the result advisory. This skill may recommend escalation, but it does
not create authoritative
GateDecision, PolicySnapshot, or completion
authority.
- If the five-line review does not change the decision surface, return to the
active workflow immediately.
1---2name: first-principles-review3description: Use when asked for first-principles or Occam's-razor review, or when high-risk decisions involve competing constraints, fallback growth, duplicate owners, or architecture direction risk. Ordinary bug fixes stay on the fast path.4---5
6# First Principles Review
7
8## Purpose
9
10Use this as a lightweight decision review before another Aegis workflow makes a
11directional choice. It is a compositional skill, not a standalone workflow.
12
13Do not replace `brainstorming`, `systematic-debugging`, `writing-plans`,
14`requesting-code-review`, or `verification-before-completion`. Use it to clean
15the decision surface those skills will act on.
16
17When this review materially changes the direction, surface `Aegis Visibility`
18in natural prose: name the first principle, dropped assumption, smallest
19sufficient path, or owner / retirement falsifier that changed the decision.
20Keep it advisory and task-specific; do not turn the lens into approval
21authority or a generic skill trace.
22
23## Use When
24
25- The user asks for first principles, first-principles thinking, or Occam's
26 razor.
27- A design, plan, or fix has multiple plausible paths and unclear selection
28 criteria.
29- The task has ambiguous goals, competing constraints, or product/architecture
30 direction risk.
31- Debugging is drifting into repeated fixes, fallback growth, duplicate owners,
32 consumer-side patches, or "just add another branch" reasoning.
33- A review finds that the implementation may be locally correct but directionally
34 wrong.
35
36## Do Not Use
37
38- Simple Q&A, status checks, tiny wording/config edits, or clearly bounded
39 single-owner changes.
40- Mechanical execution of an approved plan unless a new directional conflict
41 appears.
42- As a required step for every task, every turn, or every TDD cycle.
43
44## Five-Line Review
45
46Answer only what is needed, usually in five short lines:
47
48```text
49First Principle: What irreducible outcome must this satisfy?
50Non-negotiables: What constraints cannot be broken?
51Assumptions to Drop: What is habit, inherited shape, or unproven preference?
52Smallest Sufficient Path: What is the least complex path that satisfies the first principle?
53Escalation Signal: What finding would require spec/design/architecture review?
54```
55
56When the direction depends on a new mechanism or an unfamiliar domain, insert
57one optional line between path and escalation:
58
59```text
60Known Prior Art: proven external pattern worth adopting or adapting to project
61constraints (cite source), or `unknown` when precedent cannot be verified here
62```
63
64For repair choices, "smallest" means smallest sufficient stable repair, not the
65smallest textual diff:
66
67```text
68Minimality Check:
69- Smallest textual diff:
70- Correct owner:
71- Bug class fixed:
72- New branch/fallback added:
73- Old path retired or scheduled:
74- Verdict: sufficient repair | local patch | needs first-principles review
75```
76
77## Decision Hygiene Review
78
79Use this escalation only when a design, fix, or plan needs endorsement before it
80is written into a spec or implementation plan.
81
82Escalate from the five-line review when any of these risk signals appear:
83
84- multiple plausible paths and no clear selection criteria
85- a new owner, duplicate owner, fallback, adapter, or compat-only carrier
86- an old path that may need delete-first handling or a retirement trigger
87- an unverified assumption that the proposal depends on
88- user language such as "more elegant", "long-term stable", "first
89 principles", or "Occam"
90- a plan could encode the wrong owner, abstraction, compatibility boundary, or
91 retirement schedule
92- an existing object, behavior, responsibility, contract, or relationship may
93 be reinterpreted, narrowed, replaced, or retired, and the proposal could lose
94 a legitimate role or explicit reference while removing invalid authority
95
96Use this compact shape:
97
98```text
99First-principles invariants:
100- Non-negotiable goal:
101- Non-negotiable constraints:
102- Historical assumptions to delete:
103
104Bounded preservation reminder:
105- Evidence-backed behavior that must remain correct:
106- Highest-risk counterexample:
107- Material unknown / uninspected surface:
108- Known explicit anchors / upstream-downstream refs and disposition:
109- Role-before-value ambiguity, if any:
110
111Owner / retirement matrix:
112- New canonical owner:
113- Old owner:
114- Compat-only carrier:
115- Delete-first / retirement trigger:
116
117Falsification matrix (evaluate in order; stop at the first failing gate):
118- Gate 0 - Premise evidence (stage-graded): design stage accepts spec/logic
119 refs; implementation/runtime stage requires log, telemetry, or test
120 evidence. No evidence -> park as watch-listed, do not enter value
121 evaluation.
122- Gate 1 - Decidability: no obtainable evidence to judge it -> park as a
123 watched falsifier, do not act.
124- Gate 2 - Value (any one): lowers future fix probability / shrinks the
125 solution set / exposes a missing actionable acceptance criterion / the same
126 broken assumption is reused elsewhere. Passing here still requires
127 gates 3-5.
128- Gate 3 - Cost match: change cost vs business priority, costed at the
129 current stage; a valid but deferred counterexample is recorded in the owner
130 doc, never parked orally.
131- Gate 4 - Goal regression: the constrained solution still meets the original
132 goal; re-read the accepted-constraint list at existing checkpoints (design
133 review, plan approval, pre-completion verification).
134- Gate 5 - Minimize then classify: boundary-shaped destructive claims must be
135 minimized first; premise attacks classify as destructive directly.
136 Classes: destructive (refactor/retirement track) | supplementary (boundary
137 constraint) | watch-listed (falsifier). Conflicting counterexamples are
138 decided by business-goal ranking, never by stacking constraints.
139- Gate 6 - Adoption trace: the cheapest checkable form (regression test for
140 destructive; contract, assertion, or checklist line for supplementary),
141 written into the existing owner doc.
142
143Verdict:
144- Adopt / revise / reject / needs evidence:
145- Blocking gaps:
146- Next evidence:
147```
148
149## Architecture Integrity Lens
150
151Use this narrower lens when a proposal is executable but may still encode the
152wrong owner, abstraction, contract boundary, or retirement path. It is advisory
153method-pack output and may be embedded inside `Decision Hygiene Review` when
154that is enough.
155
156Trigger it when any of these appear before approach selection, task
157decomposition, review, or completion-risk reporting:
158
159- responsibilities may overlap or a canonical owner is unclear
160- the smallest diff adds a caller-side fallback, guard, adapter, or compat-only
161 carrier
162- an existing source-of-truth or contract could solve the class of problem at a
163 higher level
164- a stale owner, fallback, or old path may keep carrying real logic
165- the work makes a long-term stability, "cleaner architecture", or
166 higher-level simplification claim
167
168Use this compact shape:
169
170```text
171Architecture Integrity Lens:
172- Invariant: What must remain true for the system to be coherent?
173- Canonical owner / contract: Which owner, contract, or source-of-truth should carry the behavior?
174- Responsibility overlap: What duplicate owner, caller-side patch, fallback, or stale path might still carry real logic?
175- Higher-level simplification: Can the problem be solved at the owner / contract / source-of-truth layer instead of by another local branch?
176- Retirement / falsifier: What old path retires, or what evidence would disprove this architecture judgment?
177- Responsibility / capability boundary: Which invalid authority retires, and
178 does the same carrier still serve a separately evidenced legitimate role?
179- Verdict: proceed | revise design | split owner | return to baseline | needs ADR/baseline sync
180```
181
182`Bounded preservation reminder` is a risk-triggered reasoning aid, not a
183universal artifact or an exhaustive behavior inventory. Inspect the smallest
184relevant contract, consumer, test, or history evidence. Preserve, rebind,
185retire, or reject each known explicit reference; state unresolved relationships
186as unknown instead of re-inferring them or claiming semantic completeness. The
187Method Pack does not build an authoritative relationship graph, prove
188referential integrity or input lineage, calculate complete behavior coverage,
189or issue a runtime gate.
190
191Do not run this lens for every low-risk task. If it does not change the
192decision surface, return to the active workflow immediately.
193
194## Composition
195
196- With `brainstorming`: run before approach selection when the request is broad,
197 ambiguous, likely to inherit a poor product shape, or involves owner /
198 retirement / fallback / adapter risk. Use `Decision Hygiene Review` or the
199 narrower `Architecture Integrity Lens` before recommending or selecting an
200 approach when those signals appear.
201- With `systematic-debugging`: run after evidence shows repeated fixes, fallback
202 growth, duplicate owners, or consumer-side patching.
203- With `writing-plans`: run before task decomposition when the plan could encode
204 the wrong owner, abstraction, compatibility boundary, fallback, adapter, or
205 retirement schedule. If the approved spec did not already cover this, use
206 `Decision Hygiene Review` or the `Architecture Integrity Lens` before writing
207 tasks.
208- With `requesting-code-review`: run when review should check direction and
209 owner integrity, not just code quality.
210- With `verification-before-completion`: use only to name residual directional
211 risk. It does not grant completion authority.
212
213## Boundaries
214
215- Prefer evidence from current project files, baseline docs, tests, logs, and
216 user requirements. If evidence is missing, mark the line as unknown rather
217 than inventing a principle.
218- Keep the result advisory. This skill may recommend escalation, but it does
219 not create authoritative `GateDecision`, `PolicySnapshot`, or completion
220 authority.
221- If the five-line review does not change the decision surface, return to the
222 active workflow immediately.