agentleFS
striderZAstriderZA/OpenCodeGameStudios/.agents/skills/propagate-design-change/SKILL.md

propagate-design-change

Skill93 starsChanged 3 months agoMITView on GitHub

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.

We split this skill into the rules it gives an agent

16 rules. 12 are common, 0 are distinctive, and 4 are very specific to this project.

  • 12

    Common

    Most of the 9 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Common:

    When a GDD changes, architectural decisions written against it may no longer be valid.

    line 12
  2. Common:

    Verify the file exists. If not, fail with:

    line 26
  3. Common:

    Read the current GDD in full.

    line 33
  4. Common:

    Run git to get the previous committed version:

    line 39
  5. Common:

    If the file has no git history (new file), report:

    line 45
  6. Common:

    If git returns the previous version, do a conceptual diff:

    line 49
  7. Very specific:

    Read all ADRs in docs/architecture/:

    line 74
  8. Very specific:

    Read docs/architecture/architecture-traceability.md if it exists.

    line 79
  9. Common:

    Ask for each ADR in turn:

    line 175
  10. Very specific:

    Update the ADR's Status field: Superseded by ADR-[next number] (pending — see change-impact-[date]-[system].md)

    line 184
  11. Common:

    Ask: "May I update the status in [ADR filename]?"

    line 185
  12. Common:

    Add the changed GDD requirements to the "Superseded Requirements" table:

    line 192
  13. Common:

    Ask: "May I update the traceability index?"

    line 201
  14. Very specific:

    Ask: "May I write the change impact report to docs/architecture/change-impact-[date]-[system-slug].md?"

    line 207
  15. Common:

    If user approved: Verdict: COMPLETE — change impact report saved.

    line 215
  16. Common:

    If user declined: Verdict: BLOCKED — user declined write.

    line 216

“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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.

Usage: /propagate-design-change design/gdd/combat-system.md


1. Validate Argument

A GDD path argument is required. If missing, fail with:

"Usage: /propagate-design-change design/gdd/[system].md Provide the path to the GDD that was changed."

Verify the file exists. If not, fail with:

"[path] not found. Check the path and try again."


2. Read the Changed GDD

Read the current GDD in full.


3. Read the Previous Version

Run git to get the previous committed version:

git show HEAD:design/gdd/[filename].md

If the file has no git history (new file), report:

"No previous version in git — this appears to be a new GDD, not a revision. Nothing to propagate."

If git returns the previous version, do a conceptual diff:

  • Identify sections that changed (new rules, removed rules, modified formulas, changed acceptance criteria, changed tuning knobs)
  • Identify sections that are unchanged
  • Produce a change summary:
## Change Summary: [GDD filename]
Date of revision: [today]

Changed sections:
- [Section name]: [what changed — new rule, removed rule, formula modified, etc.]

Unchanged sections:
- [Section name]

Key changes affecting architecture:
- [Change 1 — likely to affect ADRs]
- [Change 2]

4. Load Architecture Inputs

Read all ADRs in docs/architecture/:

  • For each ADR, read the full file
  • Extract the "GDD Requirements Addressed" table
  • Note which GDD documents and requirement IDs each ADR references

Read docs/architecture/architecture-traceability.md if it exists.

Report: "Loaded [N] ADRs. [M] reference [gdd filename]."


5. Impact Analysis

For each ADR that references the changed GDD:

Compare the ADR's "GDD Requirements Addressed" entries against the changed sections of the GDD. For each referenced requirement:

  1. Locate the requirement in the current GDD — does it still exist?
  2. Compare: What did the GDD say when the ADR was written vs. what it says now?
  3. Assess the ADR decision: Is the architectural decision still valid?

Classify each affected ADR as one of:

StatusMeaning
✅ Still ValidThe GDD change doesn't affect what this ADR decided
⚠️ Needs ReviewThe GDD change may affect this ADR — human judgment needed
🔴 Likely SupersededThe 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.
  • lean → skip. Note: "TD-CHANGE-IMPACT skipped — Lean mode." Proceed to Phase 7.
  • full → spawn as normal.

Spawn technical-director via Task using gate TD-CHANGE-IMPACT (docs/framework/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 question 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:
## Superseded Requirements
| Date | GDD | Requirement | Changed To | ADRs Affected | Resolution |
|------|-----|-------------|------------|---------------|------------|
| [date] | [gdd] | [old requirement text] | [new requirement text] | ADR-NNNN | [Superseded/Updated/Valid] |

Ask: "May I update the traceability index?"


9. Output Change Impact Document

Ask: "May I write the change impact report to docs/architecture/change-impact-[date]-[system-slug].md?"

The document contains:

  • The change summary from step 3
  • The full impact analysis from step 5
  • Resolution decisions made in step 7
  • List of ADRs that need to be written or updated

If user approved: Verdict: COMPLETE — change impact report saved. If user declined: Verdict: BLOCKED — user declined write.


10. Follow-Up Actions

Based on the resolution decisions, suggest:

  • ADRs marked Superseded: "Run /architecture-decision [title] to write the replacement ADR. Then re-run /propagate-design-change to verify coverage."
  • ADRs to update in place: List the specific fields to update in each ADR
  • If many ADRs affected: "Run /architecture-review after all ADRs are updated to verify the full traceability matrix is still coherent."

Collaborative Protocol

  1. Read silently — compute the full impact before presenting anything
  2. Show the full report first — let the user see the scope before asking for action
  3. Ask per-ADR — don't batch decisions; each affected ADR may need different treatment
  4. Ask before writing — always confirm before modifying any file
  5. Non-destructive — never delete ADR content; only add "Superseded by" notes

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.