@tekyzinc/gsd-t 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +276 -0
  3. package/bin/gsd-t.js +641 -0
  4. package/commands/Claude-md.md +8 -0
  5. package/commands/branch.md +11 -0
  6. package/commands/checkin.md +15 -0
  7. package/commands/gsd-t-brainstorm.md +171 -0
  8. package/commands/gsd-t-complete-milestone.md +171 -0
  9. package/commands/gsd-t-debug.md +88 -0
  10. package/commands/gsd-t-discuss.md +100 -0
  11. package/commands/gsd-t-execute.md +121 -0
  12. package/commands/gsd-t-feature.md +203 -0
  13. package/commands/gsd-t-help.md +249 -0
  14. package/commands/gsd-t-impact.md +216 -0
  15. package/commands/gsd-t-init.md +119 -0
  16. package/commands/gsd-t-integrate.md +126 -0
  17. package/commands/gsd-t-milestone.md +60 -0
  18. package/commands/gsd-t-partition.md +167 -0
  19. package/commands/gsd-t-plan.md +116 -0
  20. package/commands/gsd-t-populate.md +44 -0
  21. package/commands/gsd-t-project.md +182 -0
  22. package/commands/gsd-t-promote-debt.md +88 -0
  23. package/commands/gsd-t-prompt.md +133 -0
  24. package/commands/gsd-t-quick.md +54 -0
  25. package/commands/gsd-t-resume.md +53 -0
  26. package/commands/gsd-t-scan.md +341 -0
  27. package/commands/gsd-t-status.md +34 -0
  28. package/commands/gsd-t-test-sync.md +256 -0
  29. package/commands/gsd-t-verify.md +135 -0
  30. package/commands/gsd-t-wave.md +188 -0
  31. package/docs/GSD-T-README.md +268 -0
  32. package/docs/methodology.md +85 -0
  33. package/examples/.gsd-t/contracts/api-contract.md +22 -0
  34. package/examples/.gsd-t/contracts/integration-points.md +28 -0
  35. package/examples/.gsd-t/contracts/schema-contract.md +14 -0
  36. package/examples/.gsd-t/domains/example-domain/constraints.md +17 -0
  37. package/examples/.gsd-t/domains/example-domain/scope.md +15 -0
  38. package/examples/settings.json +17 -0
  39. package/package.json +33 -0
  40. package/templates/CLAUDE-global.md +188 -0
  41. package/templates/CLAUDE-project.md +44 -0
  42. package/templates/architecture.md +40 -0
  43. package/templates/infrastructure.md +116 -0
  44. package/templates/progress.md +37 -0
  45. package/templates/requirements.md +27 -0
  46. package/templates/workflows.md +43 -0
@@ -0,0 +1,171 @@
1
+ # GSD-T: Brainstorm — Creative Exploration and Rethinking
2
+
3
+ You are a thinking partner. Your job is to help the user explore ideas, challenge assumptions, generate alternatives, and break out of tunnel vision. Unlike `discuss` (which produces contracts) or `prompt` (which produces a structured brief), brainstorm produces **insight** — new angles, reframed problems, and unexpected connections.
4
+
5
+ This command is lightweight — no mandatory state file updates, no commits. Ideas flow freely. Actionable outcomes get captured at the end only if the user wants them.
6
+
7
+ ## Step 1: Load Context (if available)
8
+
9
+ If inside a GSD-T project, read what's relevant:
10
+ 1. `CLAUDE.md` — understand the project
11
+ 2. `.gsd-t/progress.md` — where things stand
12
+ 3. `.gsd-t/roadmap.md` (if exists) — the plan
13
+ 4. `.gsd-t/techdebt.md` (if exists) — known pain points
14
+ 5. `docs/` — requirements, architecture
15
+
16
+ If no project context exists, that's fine — brainstorm works without it.
17
+
18
+ ## Step 2: Determine the Mode
19
+
20
+ From $ARGUMENTS and conversation, identify what kind of brainstorm this is:
21
+
22
+ ### A) Ideation — "What could we build?"
23
+ The user wants to generate new ideas, features, products, or directions.
24
+ - Cast a wide net first, then narrow
25
+ - Use "yes, and" thinking — build on ideas rather than filtering early
26
+ - Aim for quantity before quality
27
+
28
+ ### B) Enhancement — "How could we improve this?"
29
+ The user has something that works but wants it better.
30
+ - Start by understanding what's working and why
31
+ - Identify friction points, missed opportunities, underserved users
32
+ - Look at adjacent products/patterns for inspiration
33
+ - Consider both incremental improvements and step-change upgrades
34
+
35
+ ### C) Rethink — "Are we approaching this wrong?"
36
+ The user suspects a fundamental assumption is flawed or wants fresh perspective.
37
+ - Surface and name the current assumptions explicitly
38
+ - Challenge each one: "What if the opposite were true?"
39
+ - Look for constraint inversion: "What if the thing we're avoiding is the answer?"
40
+ - Consider: problem reframing, user reframing, technology reframing
41
+
42
+ ### D) Unstuck — "I don't know what to do next"
43
+ The user is blocked, overwhelmed, or lost momentum.
44
+ - Don't solve immediately — listen first
45
+ - Break the problem down: what specifically is stuck?
46
+ - Offer multiple small next moves, not one big plan
47
+ - Sometimes the answer is to simplify, not add
48
+
49
+ ### E) Blue Sky — "Let's think big"
50
+ No constraints, no timeline, just explore what's possible.
51
+ - Remove all practical limitations first: "If time, money, and skill were unlimited..."
52
+ - Then progressively reintroduce constraints to find the interesting tension
53
+ - Look for ideas that are 10x, not 10%
54
+
55
+ If mode is unclear, ask: "What kind of thinking would be most useful right now — generating new ideas, improving what exists, questioning your approach, or getting unstuck?"
56
+
57
+ ## Step 3: Run the Brainstorm
58
+
59
+ ### Techniques to Use (pick what fits):
60
+
61
+ **Divergent Thinking (generating options)**
62
+ - **Random Input**: Pick an unrelated concept and force a connection. "What if your auth system worked like a library card?" "What if the deploy process was like ordering coffee?"
63
+ - **Worst Idea First**: Start with intentionally bad ideas — they often invert into good ones
64
+ - **User Hat-Switching**: How would a power user see this? A beginner? A competitor? Someone who hates your product?
65
+ - **Constraint Removal**: "If we didn't have to worry about {X}, what would we do?" Then: "Actually, can we remove that constraint?"
66
+ - **Analogy Mining**: What solved a similar problem in a completely different domain?
67
+
68
+ **Convergent Thinking (evaluating options)**
69
+ - **2x2 Matrix**: Plot ideas on Impact vs. Effort, or Certainty vs. Potential
70
+ - **Pre-mortem**: "It's 6 months from now and this failed. Why?"
71
+ - **Regret Minimization**: "Which of these would you regret NOT trying?"
72
+ - **First Principles**: Strip away convention. What must actually be true?
73
+
74
+ **Reframing Techniques**
75
+ - **Flip the Problem**: Instead of "how do we get more users?" ask "why would someone NOT use this?"
76
+ - **Change the Unit**: Instead of optimizing one thing, what if you optimized something upstream or downstream?
77
+ - **Time Shift**: How would you solve this if you had 10x more time? 10x less?
78
+ - **Audience Shift**: What if this wasn't for your current users but for {different group}?
79
+
80
+ ### Conversation Rhythm:
81
+ 1. Explore one thread for 2-3 exchanges
82
+ 2. Summarize what's emerged
83
+ 3. Ask: "Want to go deeper on this, or explore a different angle?"
84
+ 4. When energy shifts to a new idea, follow it
85
+ 5. Periodically collect the best ideas into a running list
86
+
87
+ ### Team Mode (if enabled and user requests):
88
+ ```
89
+ Create an agent team for brainstorming:
90
+
91
+ - Teammate "visionary": Push boundaries. What's the most ambitious
92
+ version? What would make this remarkable? Think in terms of
93
+ possibilities, not constraints.
94
+
95
+ - Teammate "pragmatist": Keep it real. What can we actually build?
96
+ What's the shortest path to value? Where are the hidden costs?
97
+
98
+ - Teammate "devil's advocate": Challenge everything. Why might this
99
+ fail? What are we not seeing? Which assumptions are weakest?
100
+
101
+ Lead: Synthesize the best insights from all three perspectives.
102
+ ```
103
+
104
+ ## Step 4: Capture the Sparks
105
+
106
+ As ideas emerge, maintain a running list. Don't over-organize — just capture:
107
+
108
+ ```
109
+ ## Brainstorm Notes — {date}
110
+
111
+ ### Ideas Worth Exploring
112
+ 1. {idea} — {why it's interesting}
113
+ 2. {idea} — {why it's interesting}
114
+ 3. {idea} — {why it's interesting}
115
+
116
+ ### Assumptions Challenged
117
+ - We assumed {X} — but what if {Y}?
118
+ - We assumed {X} — still valid because {reason}
119
+
120
+ ### Reframes
121
+ - Instead of {old frame}, think about it as {new frame}
122
+
123
+ ### Questions to Answer
124
+ - {question that would unlock a decision}
125
+ - {question that needs research}
126
+
127
+ ### Parking Lot (interesting but not now)
128
+ - {idea for later}
129
+ ```
130
+
131
+ ## Step 5: Land the Brainstorm
132
+
133
+ When energy winds down or the user signals they're done, transition:
134
+
135
+ "Here's what stood out to me from this session:"
136
+
137
+ 1. **Top 3 ideas** — the ones with the most energy and potential
138
+ 2. **Key insight** — the single most valuable reframe or discovery
139
+ 3. **Immediate next move** — one small, concrete thing to do with this thinking
140
+
141
+ Then offer to connect back to GSD-T:
142
+
143
+ "Want to turn any of these into action?"
144
+ - **New project idea** → "Run `/user:gsd-t-prompt` to structure it, then `/user:gsd-t-project`"
145
+ - **Enhancement to existing work** → "Run `/user:gsd-t-feature {idea}`"
146
+ - **Fundamental rethink of current milestone** → "Let's revisit the milestone scope — run `/user:gsd-t-milestone` to redefine"
147
+ - **Tech debt or architectural concern** → "Add to `.gsd-t/techdebt.md` and promote when ready"
148
+ - **Just capture for later** → Save brainstorm notes to `.gsd-t/brainstorm-{date}.md`
149
+ - **None yet — still marinating** → "No worries. The notes are here when you're ready."
150
+
151
+ ## Step 6: Optionally Save State
152
+
153
+ If the user wants to save, create `.gsd-t/brainstorm-{date}.md` with the captured notes.
154
+
155
+ If inside an active milestone and the brainstorm produced decisions:
156
+ - Log key decisions in `.gsd-t/progress.md` Decision Log
157
+ - Update contracts only if the user explicitly confirms a direction
158
+
159
+ **Do NOT auto-update contracts or docs from a brainstorm.** Brainstorms generate options; decisions happen in discuss/plan phases.
160
+
161
+ ## Conversation Style
162
+
163
+ - Be a collaborator, not an interviewer — contribute ideas, not just questions
164
+ - Match the user's energy: if they're excited, build momentum; if they're frustrated, slow down and listen
165
+ - Use "What if..." and "Have you considered..." rather than "You should..."
166
+ - Make unexpected connections — the best brainstorm insights come from non-obvious angles
167
+ - Keep it fun — brainstorming should feel energizing, not like a status meeting
168
+ - It's OK to go on tangents — the detour is often where the insight lives
169
+ - When you sense a breakthrough idea, name it: "That feels like the real insight here"
170
+
171
+ $ARGUMENTS
@@ -0,0 +1,171 @@
1
+ # GSD-T: Complete Milestone — Archive and Tag Release
2
+
3
+ You are finalizing a completed milestone. Your job is to archive the milestone documentation, create a git tag, and prepare for the next milestone.
4
+
5
+ This command is:
6
+ - **Auto-invoked** at the end of `/user:gsd-t-wave` after verify passes
7
+ - **Standalone** when user wants to manually close a milestone
8
+
9
+ ## Step 1: Verify Completion
10
+
11
+ Read:
12
+ 1. `.gsd-t/progress.md` — confirm status is VERIFIED
13
+ 2. `.gsd-t/verify-report.md` — confirm all checks passed
14
+
15
+ If status is not VERIFIED:
16
+ "⚠️ Milestone not yet verified. Run `/user:gsd-t-verify` first, or use `--force` to complete anyway."
17
+
18
+ If `--force` flag provided, proceed with warning in archive.
19
+
20
+ ## Step 2: Gather Milestone Artifacts
21
+
22
+ Collect all files related to this milestone:
23
+ - `.gsd-t/progress.md` (current state)
24
+ - `.gsd-t/verify-report.md`
25
+ - `.gsd-t/impact-report.md` (if exists)
26
+ - `.gsd-t/test-coverage.md` (if exists)
27
+ - `.gsd-t/domains/*/` (all domain folders)
28
+ - `.gsd-t/contracts/` (snapshot)
29
+
30
+ ## Step 3: Create Archive
31
+
32
+ Create milestone archive directory:
33
+
34
+ ```
35
+ .gsd-t/milestones/{milestone-name}-{date}/
36
+ ├── progress.md # Final state
37
+ ├── verify-report.md # Verification results
38
+ ├── impact-report.md # Impact analysis (if any)
39
+ ├── test-coverage.md # Test sync report (if any)
40
+ ├── summary.md # Generated summary (see below)
41
+ ├── contracts/ # Contract snapshot at completion
42
+ │ └── ...
43
+ └── domains/ # Domain artifacts
44
+ └── ...
45
+ ```
46
+
47
+ ## Step 4: Generate Summary
48
+
49
+ Create `summary.md`:
50
+
51
+ ```markdown
52
+ # Milestone Complete: {name}
53
+
54
+ **Completed**: {date}
55
+ **Duration**: {start date} → {end date}
56
+ **Status**: {VERIFIED | FORCED}
57
+
58
+ ## What Was Built
59
+ {Extract from progress.md and domain scopes}
60
+
61
+ ## Domains
62
+ | Domain | Tasks Completed | Key Deliverables |
63
+ |--------|-----------------|------------------|
64
+ | {name} | {N} | {summary} |
65
+
66
+ ## Contracts Defined/Updated
67
+ - {contract}: {new | updated | unchanged}
68
+
69
+ ## Key Decisions
70
+ {Extract from Decision Log in progress.md}
71
+
72
+ ## Issues Encountered
73
+ {Extract any remediation tasks or blocked items}
74
+
75
+ ## Test Coverage
76
+ - Tests added: {N}
77
+ - Tests updated: {N}
78
+ - Coverage: {if known}
79
+
80
+ ## Git Tag
81
+ `{tag-name}`
82
+
83
+ ## Files Changed
84
+ {Summary of files created/modified/deleted}
85
+ ```
86
+
87
+ ## Step 5: Clean Working State
88
+
89
+ Reset `.gsd-t/` for next milestone:
90
+
91
+ 1. Archive current domains → `.gsd-t/milestones/{name}/domains/`
92
+ 2. Clear `.gsd-t/domains/` (empty, ready for next partition)
93
+ 3. Archive current reports → milestone folder
94
+ 4. Clear `.gsd-t/impact-report.md`, `.gsd-t/test-coverage.md`
95
+ 5. Update `.gsd-t/progress.md`:
96
+
97
+ ```markdown
98
+ # GSD-T Progress
99
+
100
+ ## Current Milestone
101
+ None — ready for next milestone
102
+
103
+ ## Completed Milestones
104
+ | Milestone | Completed | Tag |
105
+ |-----------|-----------|-----|
106
+ | {name} | {date} | {tag} |
107
+ | {previous} | {date} | {tag} |
108
+
109
+ ## Decision Log
110
+ {Keep the decision log — it's valuable context}
111
+ ```
112
+
113
+ ## Step 6: Create Git Tag
114
+
115
+ ```bash
116
+ # Stage any remaining .gsd-t changes
117
+ git add .gsd-t/
118
+
119
+ # Commit the archive
120
+ git commit -m "milestone({milestone-name}): complete and archive"
121
+
122
+ # Create annotated tag
123
+ git tag -a "milestone/{milestone-name}" -m "Milestone: {name}
124
+
125
+ {Brief description from summary}
126
+
127
+ Domains: {list}
128
+ Verified: {date}"
129
+ ```
130
+
131
+ ## Step 7: Report Completion
132
+
133
+ ```
134
+ ✅ Milestone "{name}" completed!
135
+
136
+ 📁 Archived to: .gsd-t/milestones/{name}-{date}/
137
+ 🏷️ Tagged as: milestone/{name}
138
+
139
+ Summary:
140
+ - Domains completed: {N}
141
+ - Tasks completed: {N}
142
+ - Contracts: {N} defined/updated
143
+ - Tests: {N} added/updated
144
+
145
+ Next steps:
146
+ - Push tags: git push origin milestone/{name}
147
+ - Start next milestone: /user:gsd-t-milestone "{next name}"
148
+ - Or view roadmap: /user:gsd-t-status
149
+ ```
150
+
151
+ ## Step 8: Update Roadmap (if exists)
152
+
153
+ If `.gsd-t/roadmap.md` exists:
154
+ - Mark this milestone as complete
155
+ - Update any dependent milestones
156
+ - Highlight next recommended milestone
157
+
158
+ ## Error Handling
159
+
160
+ ### If verify failed:
161
+ "Cannot complete — verification found issues. Address them first or use `--force`."
162
+
163
+ ### If no milestone active:
164
+ "No active milestone to complete. Run `/user:gsd-t-status` to see state."
165
+
166
+ ### If git operations fail:
167
+ - Still create archive
168
+ - Report git error
169
+ - Provide manual tag command
170
+
171
+ $ARGUMENTS
@@ -0,0 +1,88 @@
1
+ # GSD-T: Debug — Systematic Debugging with Contract Awareness
2
+
3
+ You are debugging an issue in a contract-driven project. Your approach should identify whether the bug is within a domain or at a contract boundary.
4
+
5
+ ## Step 1: Load Context
6
+
7
+ Read:
8
+ 1. `CLAUDE.md`
9
+ 2. `.gsd-t/progress.md`
10
+ 3. `.gsd-t/contracts/` — all contracts
11
+ 4. `.gsd-t/domains/*/scope.md` — domain boundaries
12
+
13
+ ## Step 2: Classify the Bug
14
+
15
+ Based on the user's description ($ARGUMENTS), determine:
16
+
17
+ ### A) Within-Domain Bug
18
+ The issue is entirely inside one domain's scope. Symptoms:
19
+ - Error occurs in files owned by a single domain
20
+ - No cross-domain data flow involved
21
+ - Logic error, typo, missing validation within one area
22
+
23
+ → Debug within that domain's files. Fix and verify against domain's acceptance criteria.
24
+
25
+ ### B) Contract Boundary Bug
26
+ The issue occurs where domains interact. Symptoms:
27
+ - Data shape mismatch between producer and consumer
28
+ - API returns unexpected format
29
+ - UI sends wrong payload to backend
30
+ - Auth middleware doesn't integrate correctly with routes
31
+
32
+ → Check the relevant contract first. Is the contract correct? Does the implementation match?
33
+
34
+ ### C) Contract Gap
35
+ The contract didn't specify something it should have. Symptoms:
36
+ - Edge case not covered in contract
37
+ - Error handling not specified
38
+ - Race condition at boundary
39
+ - Missing contract entirely
40
+
41
+ → Update the contract, then fix implementations on both sides.
42
+
43
+ ## Step 3: Debug (Solo or Team)
44
+
45
+ ### Solo Mode
46
+ 1. Reproduce the issue
47
+ 2. Trace through the relevant domain(s)
48
+ 3. Check contract compliance at each boundary
49
+ 4. Identify root cause
50
+ 5. Fix and test
51
+ 6. Update contracts if needed
52
+
53
+ ### Team Mode (for complex cross-domain bugs)
54
+ ```
55
+ Create an agent team to debug:
56
+ - Teammate 1: Investigate in {domain-1} — check implementation
57
+ against contracts, trace data flow
58
+ - Teammate 2: Investigate in {domain-2} — check implementation
59
+ against contracts, trace data flow
60
+ - Teammate 3: Check all contracts for gaps or ambiguities
61
+ related to the failing scenario
62
+
63
+ First to find root cause: message the lead with findings.
64
+ ```
65
+
66
+ ## Step 4: Document Ripple
67
+
68
+ After fixing, assess what documentation was affected by the change and update ALL relevant files:
69
+
70
+ ### Always check:
71
+ 1. **`.gsd-t/progress.md`** — Add to Decision Log: what broke, why, and the fix
72
+ 2. **`.gsd-t/contracts/`** — Update any contract if the fix changed an interface, schema, or API shape
73
+ 3. **Domain `constraints.md`** — Add a "must not" rule if the bug was caused by a pattern that should be avoided
74
+
75
+ ### Check if affected:
76
+ 4. **`docs/requirements.md`** — Did the fix reveal a missing or incorrect requirement? Update it
77
+ 5. **`docs/architecture.md`** — Did the fix change architectural patterns, data flow, or component relationships? Update it
78
+ 6. **`docs/schema.md`** — Did the fix modify the database schema? Update it
79
+ 7. **`.gsd-t/techdebt.md`** — Did the fix reveal related debt? Add a new TD item. Did it resolve an existing one? Mark it complete
80
+ 8. **Domain `scope.md`** — Did the fix add new files or change ownership? Update it
81
+ 9. **Domain `tasks.md`** — If the bug was in an active milestone, update task status or add a remediation task
82
+ 10. **`CLAUDE.md`** — Did the fix establish a new convention or pattern that future work should follow? Add it
83
+
84
+ ### Skip what's not affected — don't update docs for the sake of updating them.
85
+
86
+ Commit: `[debug] Fix {description} — root cause: {explanation}`
87
+
88
+ $ARGUMENTS
@@ -0,0 +1,100 @@
1
+ # GSD-T: Discuss — Multi-Perspective Design Exploration
2
+
3
+ You are the lead agent exploring design decisions before committing to a plan. The goal of this phase is to produce or refine **contracts** — not just recommendations.
4
+
5
+ ## Step 1: Load Context
6
+
7
+ Read in order:
8
+ 1. `CLAUDE.md`
9
+ 2. `.gsd-t/progress.md`
10
+ 3. `.gsd-t/contracts/` — all existing contracts
11
+ 4. `.gsd-t/domains/` — all domain scopes
12
+ 5. `docs/` — requirements, architecture, schema, design docs
13
+
14
+ ## Step 2: Identify Open Questions
15
+
16
+ Based on the milestone and current contracts, identify what's unresolved:
17
+ - Architecture decisions not yet made
18
+ - Contract details that are vague or missing
19
+ - Technical approaches with multiple viable options
20
+ - Risk areas that need exploration
21
+
22
+ List these as numbered questions.
23
+
24
+ ## Step 3: Explore (Solo or Team)
25
+
26
+ ### Solo Mode (default, no teams):
27
+ Work through each open question systematically:
28
+ - For each question, consider at least 2 approaches
29
+ - Evaluate each against: project requirements, existing patterns in CLAUDE.md, complexity, risk
30
+ - Make a recommendation with rationale
31
+ - Document the decision in `.gsd-t/progress.md` Decision Log
32
+
33
+ ### Team Mode (when agent teams are enabled):
34
+ If the user requests team exploration or there are 3+ complex open questions:
35
+
36
+ ```
37
+ Create an agent team:
38
+
39
+ ALL TEAMMATES read first:
40
+ - CLAUDE.md
41
+ - .gsd-t/contracts/ (all files)
42
+ - docs/ (relevant docs)
43
+
44
+ Assign each teammate a distinct perspective:
45
+ - Teammate 1: Advocate for approach A — build strongest case
46
+ - Teammate 2: Advocate for approach B — build strongest case
47
+ - Teammate 3: Critic — find weaknesses in both, identify risks
48
+
49
+ Lead: Synthesize into decisions and update contracts.
50
+ ```
51
+
52
+ Assign teammates based on the nature of the questions:
53
+ - **Technical choice** (e.g., which database): one advocate per option + critic
54
+ - **Architecture pattern** (e.g., monolith vs microservice): one advocate per pattern + someone evaluating migration path
55
+ - **Risk assessment**: one optimist, one pessimist, one pragmatist
56
+
57
+ ## Step 4: Update Contracts
58
+
59
+ Every decision MUST result in a contract update. This is the output that matters.
60
+
61
+ For each decision:
62
+ 1. Update or create the relevant contract file in `.gsd-t/contracts/`
63
+ 2. Update domain `scope.md` and `constraints.md` if the decision affects boundaries
64
+ 3. Add to `.gsd-t/progress.md` Decision Log with date and rationale
65
+
66
+ ## Step 5: Document Ripple
67
+
68
+ Decisions don't just affect contracts — they can change the broader documentation:
69
+
70
+ ### Always update:
71
+ 1. **`.gsd-t/progress.md`** — Decision Log with date, decision, and rationale
72
+
73
+ ### Check if affected:
74
+ 2. **`docs/architecture.md`** — Did a decision change the architecture pattern, tech stack, data flow, or component relationships? Update it
75
+ 3. **`docs/requirements.md`** — Did a decision add, remove, or change a requirement? Update it
76
+ 4. **`docs/schema.md`** — Did a decision affect the data model? Update it
77
+ 5. **`CLAUDE.md`** — Did a decision establish a new convention or pattern? Add it so all future work follows it
78
+ 6. **Domain `constraints.md`** — Already updated in Step 4, but double-check all domains are consistent with the decisions
79
+
80
+ ### Skip what's not affected.
81
+
82
+ ## Step 6: Validate Contracts
83
+
84
+ After all updates:
85
+ - [ ] All contracts are internally consistent (no conflicting types/shapes)
86
+ - [ ] Cross-references between contracts are valid
87
+ - [ ] Every domain's constraints reflect the decisions made
88
+ - [ ] Integration points are updated with any new dependencies
89
+
90
+ ## Step 7: Report
91
+
92
+ Present to the user:
93
+ 1. Decisions made (with brief rationale)
94
+ 2. Contracts created or updated
95
+ 3. Any remaining open questions that need user input
96
+ 4. Recommended next step (usually: plan phase)
97
+
98
+ Update `.gsd-t/progress.md` status to `DISCUSSED`.
99
+
100
+ $ARGUMENTS
@@ -0,0 +1,121 @@
1
+ # GSD-T: Execute — Run Domain Tasks (Solo or Parallel)
2
+
3
+ You are the lead agent coordinating task execution across domains. Choose solo or team mode based on the plan.
4
+
5
+ ## Step 1: Load State
6
+
7
+ Read:
8
+ 1. `CLAUDE.md`
9
+ 2. `.gsd-t/progress.md`
10
+ 3. `.gsd-t/contracts/` — all contracts
11
+ 4. `.gsd-t/contracts/integration-points.md` — dependency graph
12
+ 5. `.gsd-t/domains/*/tasks.md` — all task lists
13
+
14
+ Identify:
15
+ - Which tasks are already complete (check progress.md)
16
+ - Which tasks are unblocked (no pending dependencies)
17
+ - Which tasks are blocked (waiting on checkpoints)
18
+
19
+ ## Step 2: Choose Execution Mode
20
+
21
+ ### Solo Mode (default)
22
+ Execute tasks yourself following the execution order in `integration-points.md`.
23
+
24
+ For each task:
25
+ 1. Read the task description, files list, and contract refs
26
+ 2. Read the relevant contract(s) — implement EXACTLY what they specify
27
+ 3. Read the domain's constraints.md — follow all patterns
28
+ 4. Implement the task
29
+ 5. Verify acceptance criteria are met
30
+ 6. Run the Pre-Commit Gate checklist from CLAUDE.md — update ALL affected docs BEFORE committing
31
+ 7. Commit with a descriptive message: `[{domain}] Task {N}: {description}`
32
+ 8. Update `.gsd-t/progress.md` — mark task complete
33
+ 9. If you've reached a CHECKPOINT in integration-points.md, pause and verify the contract before continuing
34
+
35
+ ### Team Mode (when agent teams are enabled)
36
+ Spawn teammates for independent domains:
37
+
38
+ ```
39
+ Create an agent team for execution:
40
+
41
+ ALL TEAMMATES must read before starting:
42
+ 1. CLAUDE.md — project conventions (CRITICAL)
43
+ 2. Your domain's scope.md — what you own
44
+ 3. Your domain's constraints.md — what you must/must not do
45
+ 4. ALL files in .gsd-t/contracts/ — your interfaces
46
+ 5. Your domain's tasks.md — your work
47
+
48
+ RULES FOR ALL TEAMMATES:
49
+ - Only modify files listed in your domain's scope.md
50
+ - Implement interfaces EXACTLY as specified in contracts
51
+ - If a task is marked BLOCKED, message the lead and wait
52
+ - Run the Pre-Commit Gate checklist from CLAUDE.md BEFORE every commit — update all affected docs
53
+ - After completing each task, message the lead with:
54
+ "DONE: {domain} Task {N} - {summary of what was created/modified}"
55
+ - If you need to deviate from a contract, STOP and message the lead
56
+ - Commit after each task: [{domain}] Task {N}: {description}
57
+
58
+ Teammate assignments:
59
+ - Teammate "{domain-1}": Execute .gsd-t/domains/{domain-1}/tasks.md
60
+ - Teammate "{domain-2}": Execute .gsd-t/domains/{domain-2}/tasks.md
61
+ - Teammate "{domain-3}": Execute .gsd-t/domains/{domain-3}/tasks.md
62
+
63
+ Lead responsibilities:
64
+ - Use delegate mode (Shift+Tab)
65
+ - Track completions from teammate messages
66
+ - When a CHECKPOINT is reached:
67
+ 1. Pause blocked teammates
68
+ 2. Verify the gate condition (check contract compliance)
69
+ 3. Unblock waiting teammates
70
+ - Update .gsd-t/progress.md after each completion
71
+ - Resolve any contract conflicts immediately
72
+ ```
73
+
74
+ ## Step 3: Checkpoint Handling
75
+
76
+ When a checkpoint is reached (solo or team):
77
+
78
+ 1. **Stop** execution of blocked tasks
79
+ 2. **Read** the relevant contract
80
+ 3. **Verify** the implemented code matches the contract:
81
+ - API response shapes match?
82
+ - Schema matches?
83
+ - Component interfaces match?
84
+ - Error handling matches?
85
+ 4. **If mismatch**: Fix the implementation to match the contract, OR update the contract and notify affected domains
86
+ 5. **Log** in progress.md: `CHECKPOINT {name}: PASSED/FAILED — {details}`
87
+ 6. **Unblock** downstream tasks
88
+
89
+ ## Step 4: Error Handling
90
+
91
+ ### Contract Violation
92
+ A teammate implements something that doesn't match a contract:
93
+ 1. Stop the teammate
94
+ 2. Identify the deviation
95
+ 3. Decide: fix implementation or update contract?
96
+ 4. If updating contract, message ALL affected teammates with the change
97
+ 5. Log the decision
98
+
99
+ ### Merge Conflict / File Conflict
100
+ Two teammates modified the same file (shouldn't happen with good partitioning):
101
+ 1. Stop both teammates
102
+ 2. Identify which domain owns the file (check scope.md)
103
+ 3. Non-owner reverts their changes
104
+ 4. Determine if the contract needs updating to prevent recurrence
105
+ 5. Log the incident
106
+
107
+ ### Blocked Teammate Idle
108
+ A teammate finishes independent tasks and is waiting on a checkpoint:
109
+ 1. Check if checkpoint can be expedited
110
+ 2. If not, have the teammate work on documentation, tests, or code cleanup within their domain
111
+ 3. Or shut down the teammate and respawn when unblocked
112
+
113
+ ## Step 5: Completion
114
+
115
+ When all tasks in all domains are complete:
116
+ 1. Update `.gsd-t/progress.md` — all tasks marked complete
117
+ 2. Set status to `EXECUTED`
118
+ 3. List any contract deviations or decisions made during execution
119
+ 4. Recommend: proceed to integrate phase
120
+
121
+ $ARGUMENTS