When a GDD is revised, scans all ADRs and the traceability index to identify which architectural decisions are now potentially stale. Produces a change impact report and guides the user through resolution.
When a GDD is revised, scans all ADRs and the traceability index to identify which architectural decisions are now potentially stale. Produces a change impact report and guides the user through resolution.
argument-hint
[path/to/changed-gdd.md]
user-invocable
true
allowed-tools
Read, Glob, Grep, Write, Bash, Task
model
sonnet
agent
technical-director
Propagate Design Change
When a GDD changes, architectural decisions written against it may no longer be
valid. This skill finds every affected ADR, compares what the ADR assumed against
what the GDD now says, and guides the user through resolution.
Compare the ADR's "GDD Requirements Addressed" entries against the changed sections
of the GDD. For each referenced requirement:
Locate the requirement in the current GDD — does it still exist?
Compare: What did the GDD say when the ADR was written vs. what it says now?
Assess the ADR decision: Is the architectural decision still valid?
Classify each affected ADR as one of:
Status
Meaning
✅ Still Valid
The GDD change doesn't affect what this ADR decided
⚠️ Needs Review
The GDD change may affect this ADR — human judgment needed
🔴 Likely Superseded
The GDD change directly contradicts what this ADR assumed
For each affected ADR, produce an impact entry:
### ADR-NNNN: [title]
Status: [Still Valid / Needs Review / Likely Superseded]
What the ADR assumed about this GDD:
"[relevant quote from the ADR's GDD Requirements Addressed section]"
What the GDD now says:
"[relevant quote from the current GDD]"
Assessment:
[Explanation of whether the ADR decision is still valid, and why]
Recommended action:
[Keep as-is | Review and update | Mark Superseded and write new ADR]
6. Present Impact Report
Present the full impact report to the user before asking for any action. Format:
## Design Change Impact Report
GDD: [filename]
Date: [today]
Changes detected: [N sections changed]
ADRs referencing this GDD: [M]
### Not Affected
[ADRs referencing this GDD whose decisions remain valid]
### Needs Review ([count])
[ADRs that may need updating]
### Likely Superseded ([count])
[ADRs whose assumptions are now contradicted]
6b. Director Gate — Technical Impact Review
Review mode check — apply before spawning TD-CHANGE-IMPACT:
solo → skip. Note: "TD-CHANGE-IMPACT skipped — Solo mode." Proceed to Phase 7.
Spawn technical-director via Task using gate TD-CHANGE-IMPACT (.claude/docs/director-gates.md).
Pass: the full Design Change Impact Report from Phase 6 (change summary, all affected ADRs with their Still Valid / Needs Review / Likely Superseded classifications, and recommended actions).
The technical-director reviews whether:
The impact classifications are correct (no ADRs under-classified)
The recommended actions are architecturally sound
Any cascading effects on other ADRs or systems were missed
Apply the verdict:
APPROVE → proceed to Phase 7 resolution workflow
CONCERNS → surface the specific ADRs or recommendations flagged; use AskUserQuestion with options: Revise the impact assessment / Accept with noted concerns / Discuss further
REJECT → do not proceed to resolution; re-analyze the impact before continuing
7. Resolution Workflow
For each ADR marked "Needs Review" or "Likely Superseded", ask the user what to do:
Ask for each ADR in turn:
"ADR-NNNN ([title]) — [status]. What would you like to do?"
Options:
"Mark Superseded (I'll write a new ADR)" — updates ADR status line to Superseded by: [pending]
"Update in place (minor revision)" — opens the ADR for editing; note what to revise
"Keep as-is (the change doesn't actually affect this decision)"
"Skip for now (revisit later)"
For ADRs marked Superseded:
Update the ADR's Status field: Superseded by ADR-[next number] (pending — see change-impact-[date]-[system].md)
Ask: "May I update the status in [ADR filename]?"
8. Update Traceability Index
If docs/architecture/architecture-traceability.md exists:
Add the changed GDD requirements to the "Superseded Requirements" table: