Recording Architecture Decisions
Purpose
Record durable architecture decisions without losing the current-state baseline
closure. An ADR records why a decision was made; a baseline records what the
architecture is after that decision.
This skill is a lazy, task-specific workflow. It does not replace
verification-before-completion, does not grant completion authority, and does
not make authoritative GateDecision or PolicySnapshot outputs.
Required Read Set
Before deciding or writing, read the smallest relevant excerpts from:
docs/adr/ADR-CREATION-GATE.md
docs/current/AEGIS_ADR_AUTO_BACKFILL.md
- the target project's current ADR, baseline, or authority docs that own the
affected architecture surface
For Aegis repository changes, use this repository's docs/adr/ and
docs/current/ authority order. For target projects with their own ADR system,
respect that project owner instead of duplicating the same decision into
docs/aegis/adr/.
When To Use
Use this skill when the user asks to:
- create, write, update, amend, supersede, or evaluate an ADR
- decide whether an architecture decision record is needed
- record a durable architecture decision or decision log entry
- close baseline sync after an ADR-relevant architecture change
- verify that an ADR action did not leave the architecture baseline stale
Do not use it for simple wording edits, ordinary README cleanup, tests-only
coverage improvements, low-risk single-file changes, or bug fixes that only
restore the existing baseline.
Decision Flow
- Identify the decision candidate and evidence source.
- Run the ADR creation gate:
- hard to reverse
- surprising without context
- real trade-off
- Apply the Retro / Memory Filter:
- executed durable decisions may become ADR or baseline memory
- unexecuted ideas stay out of accepted architecture memory
- process notes may use a lighter record when they do not change current
architecture state
- Choose exactly one ADR action: create, amend, supersede, or skip.
- Choose the owner surface: project
docs/adr/, docs/aegis/adr/, existing
ADR, or lighter record.
- Run Baseline Sync Closure.
- If writing files, preserve local ADR conventions and verify structure.
Baseline Sync Closure
If the ADR action is create, amend, or supersede, baseline sync must be checked.
Baseline sync is required when the decision changes or confirms any of:
- canonical owner or ownership map
- public API, schema, artifact shape, or behavior contract
- dependency direction or allowed cross-module relationship
- source-of-truth owner
- host compatibility strategy or install/discovery contract
- method-pack/runtime-core boundary
- runtime-ready artifact boundary or evidence model
- retained fallback, adapter, compatibility path, duplicate owner, or retirement
schedule
- accepted architecture-scoped Implementation Drift
- release or distribution strategy that future contributors would otherwise
misread
If no baseline writeback is made, state why the existing baseline remains valid.
Never leave baseline sync implicit after create, amend, or supersede.
Compact Output Contract
Decision Candidate:
- Summary:
- Evidence source:
ADR Gate:
- Hard to reverse: yes | no | unknown
- Surprising without context: yes | no | unknown
- Real trade-off: yes | no | unknown
Retro / Memory Filter:
- Classification: executed durable decision | unexecuted idea | process note
- Memory action: record | skip | lighter record
- Reason:
ADR Action:
- create | amend | supersede | skip
- Reason:
Owner Surface:
- Target:
- Existing ADR / baseline checked:
Baseline Sync:
- Required: yes | no | unknown
- Target:
- Action: create snapshot | update baseline | cite unchanged | blocked
- Reason:
Boundary:
- Advisory method-pack signal only; not completion authority.
Common Mistakes
- Writing an ADR because the topic feels important, even though the gate fails.
- Recording why in an ADR while leaving the baseline's current-state facts stale.
- Updating a baseline to match drift without first deciding whether the drift is
intentional and ADR-worthy.
- Duplicating the same decision into both project
docs/adr/ and
docs/aegis/adr/ without an explicit mirror relationship.
- Treating an ADR or baseline sync as proof that the work is complete.
1---2name: recording-architecture-decisions3description: Use when the user asks to create, write, update, amend, supersede, or evaluate an ADR, architecture decision record, durable architecture decision, decision log, or baseline sync after architecture-changing work.4---56# Recording Architecture Decisions78## Purpose910Record durable architecture decisions without losing the current-state baseline11closure. An ADR records why a decision was made; a baseline records what the12architecture is after that decision.1314This skill is a lazy, task-specific workflow. It does not replace15`verification-before-completion`, does not grant completion authority, and does16not make authoritative `GateDecision` or `PolicySnapshot` outputs.1718## Required Read Set1920Before deciding or writing, read the smallest relevant excerpts from:2122- `docs/adr/ADR-CREATION-GATE.md`23- `docs/current/AEGIS_ADR_AUTO_BACKFILL.md`24- the target project's current ADR, baseline, or authority docs that own the25 affected architecture surface2627For Aegis repository changes, use this repository's `docs/adr/` and28`docs/current/` authority order. For target projects with their own ADR system,29respect that project owner instead of duplicating the same decision into30`docs/aegis/adr/`.3132## When To Use3334Use this skill when the user asks to:3536- create, write, update, amend, supersede, or evaluate an ADR37- decide whether an architecture decision record is needed38- record a durable architecture decision or decision log entry39- close baseline sync after an ADR-relevant architecture change40- verify that an ADR action did not leave the architecture baseline stale4142Do not use it for simple wording edits, ordinary README cleanup, tests-only43coverage improvements, low-risk single-file changes, or bug fixes that only44restore the existing baseline.4546## Decision Flow47481. Identify the decision candidate and evidence source.492. Run the ADR creation gate:50 - hard to reverse51 - surprising without context52 - real trade-off533. Apply the Retro / Memory Filter:54 - executed durable decisions may become ADR or baseline memory55 - unexecuted ideas stay out of accepted architecture memory56 - process notes may use a lighter record when they do not change current57 architecture state584. Choose exactly one ADR action: create, amend, supersede, or skip.595. Choose the owner surface: project `docs/adr/`, `docs/aegis/adr/`, existing60 ADR, or lighter record.616. Run Baseline Sync Closure.627. If writing files, preserve local ADR conventions and verify structure.6364## Baseline Sync Closure6566If the ADR action is create, amend, or supersede, baseline sync must be checked.6768Baseline sync is required when the decision changes or confirms any of:6970- canonical owner or ownership map71- public API, schema, artifact shape, or behavior contract72- dependency direction or allowed cross-module relationship73- source-of-truth owner74- host compatibility strategy or install/discovery contract75- method-pack/runtime-core boundary76- runtime-ready artifact boundary or evidence model77- retained fallback, adapter, compatibility path, duplicate owner, or retirement78 schedule79- accepted architecture-scoped Implementation Drift80- release or distribution strategy that future contributors would otherwise81 misread8283If no baseline writeback is made, state why the existing baseline remains valid.84Never leave baseline sync implicit after create, amend, or supersede.8586## Compact Output Contract8788```text89Decision Candidate:90- Summary:91- Evidence source:9293ADR Gate:94- Hard to reverse: yes | no | unknown95- Surprising without context: yes | no | unknown96- Real trade-off: yes | no | unknown9798Retro / Memory Filter:99- Classification: executed durable decision | unexecuted idea | process note100- Memory action: record | skip | lighter record101- Reason:102103ADR Action:104- create | amend | supersede | skip105- Reason:106107Owner Surface:108- Target:109- Existing ADR / baseline checked:110111Baseline Sync:112- Required: yes | no | unknown113- Target:114- Action: create snapshot | update baseline | cite unchanged | blocked115- Reason:116117Boundary:118- Advisory method-pack signal only; not completion authority.119```120121## Common Mistakes122123- Writing an ADR because the topic feels important, even though the gate fails.124- Recording why in an ADR while leaving the baseline's current-state facts stale.125- Updating a baseline to match drift without first deciding whether the drift is126 intentional and ADR-worthy.127- Duplicating the same decision into both project `docs/adr/` and128 `docs/aegis/adr/` without an explicit mirror relationship.129- Treating an ADR or baseline sync as proof that the work is complete.