bigpowers 2.1.3 → 2.3.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 (164) hide show
  1. package/.pi/package.json +16 -0
  2. package/.pi/prompts/assess-impact.md +76 -0
  3. package/.pi/prompts/audit-code.md +156 -0
  4. package/.pi/prompts/build-epic.md +44 -0
  5. package/.pi/prompts/change-request.md +105 -0
  6. package/.pi/prompts/commit-message.md +135 -0
  7. package/.pi/prompts/compose-workflow.md +40 -0
  8. package/.pi/prompts/craft-skill.md +150 -0
  9. package/.pi/prompts/deepen-architecture.md +235 -0
  10. package/.pi/prompts/define-language.md +79 -0
  11. package/.pi/prompts/define-success.md +62 -0
  12. package/.pi/prompts/delegate-task.md +76 -0
  13. package/.pi/prompts/design-interface.md +96 -0
  14. package/.pi/prompts/develop-tdd.md +375 -0
  15. package/.pi/prompts/diagnose-root.md +23 -0
  16. package/.pi/prompts/dispatch-agents.md +83 -0
  17. package/.pi/prompts/edit-document.md +22 -0
  18. package/.pi/prompts/elaborate-spec.md +81 -0
  19. package/.pi/prompts/enforce-first.md +77 -0
  20. package/.pi/prompts/evolve-skill.md +38 -0
  21. package/.pi/prompts/execute-plan.md +54 -0
  22. package/.pi/prompts/fix-bug.md +36 -0
  23. package/.pi/prompts/grill-me.md +95 -0
  24. package/.pi/prompts/grill-with-docs.md +37 -0
  25. package/.pi/prompts/guard-git.md +212 -0
  26. package/.pi/prompts/hook-commits.md +93 -0
  27. package/.pi/prompts/inspect-quality.md +105 -0
  28. package/.pi/prompts/investigate-bug.md +117 -0
  29. package/.pi/prompts/kickoff-branch.md +99 -0
  30. package/.pi/prompts/map-codebase.md +70 -0
  31. package/.pi/prompts/migrate-spec.md +482 -0
  32. package/.pi/prompts/model-domain.md +227 -0
  33. package/.pi/prompts/orchestrate-project.md +161 -0
  34. package/.pi/prompts/organize-workspace.md +159 -0
  35. package/.pi/prompts/plan-refactor.md +77 -0
  36. package/.pi/prompts/plan-release.md +145 -0
  37. package/.pi/prompts/plan-work.md +161 -0
  38. package/.pi/prompts/release-branch.md +158 -0
  39. package/.pi/prompts/request-review.md +70 -0
  40. package/.pi/prompts/research-first.md +62 -0
  41. package/.pi/prompts/reset-baseline.md +20 -0
  42. package/.pi/prompts/respond-review.md +70 -0
  43. package/.pi/prompts/run-evals.md +56 -0
  44. package/.pi/prompts/run-planning.md +26 -0
  45. package/.pi/prompts/scope-work.md +23 -0
  46. package/.pi/prompts/search-skills.md +21 -0
  47. package/.pi/prompts/seed-conventions.md +132 -0
  48. package/.pi/prompts/session-state.md +146 -0
  49. package/.pi/prompts/setup-environment.md +23 -0
  50. package/.pi/prompts/simulate-agents.md +25 -0
  51. package/.pi/prompts/slice-tasks.md +23 -0
  52. package/.pi/prompts/spike-prototype.md +94 -0
  53. package/.pi/prompts/stocktake-skills.md +40 -0
  54. package/.pi/prompts/survey-context.md +129 -0
  55. package/.pi/prompts/terse-mode.md +37 -0
  56. package/.pi/prompts/trace-requirement.md +68 -0
  57. package/.pi/prompts/using-bigpowers.md +105 -0
  58. package/.pi/prompts/validate-fix.md +98 -0
  59. package/.pi/prompts/verify-work.md +125 -0
  60. package/.pi/prompts/visual-dashboard.md +51 -0
  61. package/.pi/prompts/wire-observability.md +92 -0
  62. package/.pi/prompts/write-document.md +244 -0
  63. package/.pi/skills/assess-impact/SKILL.md +77 -0
  64. package/.pi/skills/audit-code/SKILL.md +157 -0
  65. package/.pi/skills/build-epic/SKILL.md +45 -0
  66. package/.pi/skills/change-request/SKILL.md +106 -0
  67. package/.pi/skills/commit-message/SKILL.md +136 -0
  68. package/.pi/skills/compose-workflow/SKILL.md +41 -0
  69. package/.pi/skills/craft-skill/SKILL.md +151 -0
  70. package/.pi/skills/deepen-architecture/SKILL.md +236 -0
  71. package/.pi/skills/define-language/SKILL.md +80 -0
  72. package/.pi/skills/define-success/SKILL.md +63 -0
  73. package/.pi/skills/delegate-task/SKILL.md +77 -0
  74. package/.pi/skills/design-interface/SKILL.md +97 -0
  75. package/.pi/skills/develop-tdd/SKILL.md +376 -0
  76. package/.pi/skills/diagnose-root/SKILL.md +24 -0
  77. package/.pi/skills/dispatch-agents/SKILL.md +84 -0
  78. package/.pi/skills/edit-document/SKILL.md +23 -0
  79. package/.pi/skills/elaborate-spec/SKILL.md +82 -0
  80. package/.pi/skills/enforce-first/SKILL.md +78 -0
  81. package/.pi/skills/evolve-skill/SKILL.md +39 -0
  82. package/.pi/skills/execute-plan/SKILL.md +55 -0
  83. package/.pi/skills/fix-bug/SKILL.md +37 -0
  84. package/.pi/skills/grill-me/SKILL.md +96 -0
  85. package/.pi/skills/grill-with-docs/SKILL.md +38 -0
  86. package/.pi/skills/guard-git/SKILL.md +213 -0
  87. package/.pi/skills/hook-commits/SKILL.md +94 -0
  88. package/.pi/skills/inspect-quality/SKILL.md +106 -0
  89. package/.pi/skills/investigate-bug/SKILL.md +118 -0
  90. package/.pi/skills/kickoff-branch/SKILL.md +100 -0
  91. package/.pi/skills/map-codebase/SKILL.md +71 -0
  92. package/.pi/skills/migrate-spec/SKILL.md +483 -0
  93. package/.pi/skills/model-domain/SKILL.md +228 -0
  94. package/.pi/skills/orchestrate-project/SKILL.md +162 -0
  95. package/.pi/skills/organize-workspace/SKILL.md +160 -0
  96. package/.pi/skills/plan-refactor/SKILL.md +78 -0
  97. package/.pi/skills/plan-release/SKILL.md +146 -0
  98. package/.pi/skills/plan-work/SKILL.md +162 -0
  99. package/.pi/skills/release-branch/SKILL.md +159 -0
  100. package/.pi/skills/request-review/SKILL.md +71 -0
  101. package/.pi/skills/research-first/SKILL.md +63 -0
  102. package/.pi/skills/reset-baseline/SKILL.md +21 -0
  103. package/.pi/skills/respond-review/SKILL.md +71 -0
  104. package/.pi/skills/run-evals/SKILL.md +57 -0
  105. package/.pi/skills/run-planning/SKILL.md +27 -0
  106. package/.pi/skills/scope-work/SKILL.md +24 -0
  107. package/.pi/skills/search-skills/SKILL.md +22 -0
  108. package/.pi/skills/seed-conventions/SKILL.md +133 -0
  109. package/.pi/skills/session-state/SKILL.md +147 -0
  110. package/.pi/skills/setup-environment/SKILL.md +24 -0
  111. package/.pi/skills/simulate-agents/SKILL.md +26 -0
  112. package/.pi/skills/slice-tasks/SKILL.md +24 -0
  113. package/.pi/skills/spike-prototype/SKILL.md +95 -0
  114. package/.pi/skills/stocktake-skills/SKILL.md +41 -0
  115. package/.pi/skills/survey-context/SKILL.md +130 -0
  116. package/.pi/skills/terse-mode/SKILL.md +38 -0
  117. package/.pi/skills/trace-requirement/SKILL.md +69 -0
  118. package/.pi/skills/using-bigpowers/SKILL.md +106 -0
  119. package/.pi/skills/validate-fix/SKILL.md +99 -0
  120. package/.pi/skills/verify-work/SKILL.md +126 -0
  121. package/.pi/skills/visual-dashboard/SKILL.md +52 -0
  122. package/.pi/skills/wire-observability/SKILL.md +93 -0
  123. package/.pi/skills/write-document/SKILL.md +245 -0
  124. package/CHANGELOG.md +14 -0
  125. package/CLAUDE.md +1 -1
  126. package/CONVENTIONS.md +16 -10
  127. package/README.md +30 -4
  128. package/build-epic/SKILL.md +1 -1
  129. package/deepen-architecture/SKILL.md +2 -0
  130. package/define-language/SKILL.md +2 -0
  131. package/develop-tdd/REFERENCE.md +61 -0
  132. package/develop-tdd/SKILL.md +19 -119
  133. package/diagnose-root/SKILL.md +2 -0
  134. package/edit-document/SKILL.md +2 -0
  135. package/fix-bug/SKILL.md +3 -1
  136. package/grill-me/SKILL.md +3 -1
  137. package/grill-with-docs/SKILL.md +3 -1
  138. package/investigate-bug/SKILL.md +5 -11
  139. package/map-codebase/SKILL.md +3 -1
  140. package/migrate-spec/REFERENCE-GSD.md +4 -4
  141. package/migrate-spec/REFERENCE.md +33 -6
  142. package/migrate-spec/SKILL.md +1 -14
  143. package/model-domain/SKILL.md +2 -0
  144. package/orchestrate-project/REFERENCE.md +1 -1
  145. package/package.json +3 -2
  146. package/plan-release/SKILL.md +1 -1
  147. package/plan-work/REFERENCE.md +104 -0
  148. package/plan-work/SKILL.md +17 -151
  149. package/release-branch/REFERENCE.md +55 -0
  150. package/release-branch/SKILL.md +19 -117
  151. package/request-review/SKILL.md +1 -1
  152. package/run-planning/SKILL.md +3 -2
  153. package/scope-work/SKILL.md +3 -1
  154. package/scripts/audit-compliance.sh +15 -3
  155. package/scripts/check-skill-size.sh +79 -0
  156. package/scripts/generate-reference-tables.sh +64 -0
  157. package/scripts/project-survey.sh +2 -2
  158. package/scripts/sync-skills.sh +51 -3
  159. package/scripts/validate-doctrine.sh +143 -0
  160. package/seed-conventions/REFERENCE.md +63 -0
  161. package/seed-conventions/SKILL.md +23 -177
  162. package/slice-tasks/SKILL.md +3 -1
  163. package/survey-context/SKILL.md +3 -1
  164. package/write-document/SKILL.md +4 -2
@@ -0,0 +1,71 @@
1
+ ---
2
+ name: map-codebase
3
+ description: ""Derives the tech-stack doc from scratch by scanning the codebase — analyzes stack, architecture, and gray areas (error handling, API shapes) and persists findings into specs/tech-architecture/tech-stack.md. Run when the tech doc doesn't exist yet; use survey-context to consume it once it does.""
4
+ ---
5
+
6
+
7
+ # Map Codebase
8
+
9
+ Perform a deep architectural and structural analysis of the codebase. Unlike `survey-context` which identifies "where we are", `map-codebase` identifies "what we are dealing with" and "how things are done".
10
+
11
+ > **Use this vs survey-context:** `map-codebase` BUILDS the tech-stack doc by scanning the codebase from scratch. `survey-context` READS existing specs/tech-architecture docs without re-deriving them. Run `map-codebase` when `specs/tech-architecture/tech-stack.md` doesn't exist yet; run `survey-context` when it does.
12
+
13
+ > **HARD GATE** — Cold analysis only. Do NOT assume architectural patterns without reading the code. If the codebase structure surprises you, call out the delta.
14
+
15
+ ## Process
16
+
17
+ ### 1. Identify Core Stack & Dependencies
18
+ - Scan `package.json`, `Cargo.toml`, `requirements.txt`, etc.
19
+ - Identify primary framework, runtime, and critical libraries (ORM, Auth, State, UI).
20
+ - Note version constraints and any deprecated or unusual dependencies.
21
+
22
+ ### 2. Map High-Level Architecture
23
+ - Identify the entry points (CLI, Web, API).
24
+ - Map the primary data flow (e.g., Controller → Service → Repository).
25
+ - Identify where business logic lives vs. where I/O lives.
26
+ - Look for established patterns (e.g., hexagonal, layered, feature-folders).
27
+
28
+ ### 3. Analyze "Gray Areas" (The "How")
29
+ Search for patterns and anti-patterns in these categories:
30
+ - **Error Handling:** Are exceptions caught early or bubbled? Is there a global error handler? Are error messages structured?
31
+ - **API Shapes:** Is it REST, GraphQL, or RPC? What is the casing (camelCase, snake_case)? How are responses structured?
32
+ - **Type Safety:** Is it strictly typed? Are there many `any` or `unsafe` blocks? Are interfaces used for DIP?
33
+ - **Observability:** Is there structured logging? Are there health checks? Where do logs go?
34
+ - **Testing:** What is the test coverage strategy? Are mocks used? Where do tests live?
35
+
36
+ ### 4. Identify Planning "Signals"
37
+ Look for signals that will influence upcoming plans:
38
+ - **Consistency Gaps:** "Half the project uses async/await, the other half uses Promises."
39
+ - **Debt Hotspots:** "The `AuthManager` is 1500 lines and handles both JWT and session logic."
40
+ - **Integration Points:** "We need to talk to the Stripe API, but there's no wrapper yet."
41
+ - **Conventions:** "The team always uses functional components over classes."
42
+
43
+ ### 5. Persist to specs/tech-architecture/tech-stack.md
44
+ Compile all findings into `specs/tech-architecture/tech-stack.md`. This file serves as the project's "Long-Term Memory".
45
+
46
+ ```markdown
47
+ # Project Context
48
+
49
+ ## Stack
50
+ - [Framework/Language]
51
+ - [Key Libraries]
52
+
53
+ ## Architecture
54
+ - [Pattern Description]
55
+ - [Data Flow]
56
+
57
+ ## Conventions (Observed)
58
+ - [Error Handling Pattern]
59
+ - [API Design]
60
+ - [Type System]
61
+
62
+ ## Signals / Active Considerations
63
+ - [Gap 1]
64
+ - [Hotspot 2]
65
+ ```
66
+
67
+ ## When to Use
68
+ - When first joining a project.
69
+ - Before a major refactor or architectural change.
70
+ - When `survey-context` reveals a lack of domain knowledge.
71
+ - To refresh `specs/tech-architecture/tech-stack.md` after significant changes.
@@ -0,0 +1,483 @@
1
+ ---
2
+ name: migrate-spec
3
+ description: "Detect GSD, spec-kit, or BMAD spec artifacts and transform them into bigpowers YAML layout (state.yaml, release-plan.yaml, epics/, requirements/, plans/, ADRs). Use when migrating foreign spec docs."
4
+ ---
5
+
6
+
7
+ # Migrate Spec
8
+
9
+ Transform existing GSD, spec-kit, or BMAD planning artifacts into the bigpowers `specs/` model. No code is written — the output is a set of bigpowers-format spec files the user can use immediately.
10
+
11
+ ## Quick start
12
+
13
+ 1. Run this skill from the root of the project being migrated (not the bigpowers repo itself).
14
+ 2. The skill auto-detects the source framework and presents its findings before transforming anything.
15
+ 3. All output goes to `specs/` at the project root.
16
+
17
+
18
+ ## Red flags — stop and ask
19
+
20
+ Before proceeding, check for these rationalization traps:
21
+
22
+ - **Partial artifact set** — only one fingerprint file found (e.g. just `spec.md` with no `plan.md`). Don't assume it's a complete project. Ask: "I found only X — is this the full set of your spec artifacts?"
23
+ - **Wrong trigger** — user said "migrate my code" or "migrate the database", not "migrate my specs". Confirm before running.
24
+ - **Stale source** — source artifacts have commit dates older than 6 months with no recent activity. Flag: "These specs appear inactive since <date>. Are they still the source of truth?"
25
+ - **Active divergence** — source `state.yaml` or `sprint-status.yaml` shows in-progress work. Flag: "There is active work in flight. Migrating now may lose in-progress context. Proceed?"
26
+
27
+ If any red flag fires: surface it, wait for explicit user confirmation before continuing.
28
+
29
+
30
+ ## Process
31
+
32
+ ### Step 1 — Detect the source framework
33
+
34
+ Scan for the fingerprints below. Stop at first match; if multiple match, list them and ask the user which is primary.
35
+
36
+ | Framework | Fingerprints (any one is sufficient) |
37
+ |-----------|--------------------------------------|
38
+ | **GSD** | `.planning/` directory; `.planning/ROADMAP.md`; `.planning/REQUIREMENTS.md` with `REQ-` IDs |
39
+ | **spec-kit** | `.specify/` directory; `spec.md` + `plan.md` at root; `.github/skills/speckit-*/SKILL.md` |
40
+ | **BMAD** | `_bmad/` directory; `_bmad-output/` directory; `prd.md` with `FR-` IDs; `epic-*.md` or `story-*.md` |
41
+
42
+ If none found: ask the user which framework before proceeding.
43
+
44
+ → verify: `ls .planning/ 2>/dev/null && echo "GSD" || ls .specify/ 2>/dev/null && echo "spec-kit" || ls _bmad/ 2>/dev/null && echo "BMAD" || echo "BLOCKED: no known framework detected"`
45
+
46
+ ### Step 2 — Inventory the source artifacts
47
+
48
+ List every artifact found matching the detected framework. Present the list to the user:
49
+
50
+ ```
51
+ Detected: GSD
52
+ Found:
53
+ ✓ .planning/ROADMAP.md
54
+ ✓ .planning/REQUIREMENTS.md (12 REQ-XX items)
55
+ ✓ .planning/state.yaml
56
+ ✓ .planning/phases/01-auth/01-CONTEXT.md
57
+ ✗ .planning/METHODOLOGY.md (not present)
58
+
59
+ Skipping:
60
+ .planning/phases/01-auth/01-01-SUMMARY.md (execution record; archived only)
61
+
62
+ Proceed with migration? [yes / skip <artifact> / abort]
63
+ ```
64
+
65
+ → verify: `find . -maxdepth 4 \( -name "ROADMAP.md" -o -name "spec.md" -o -name "prd.md" -o -name "REQUIREMENTS.md" \) 2>/dev/null | grep -v ".git" | head -15`
66
+
67
+ ### Step 3 — Transform (one artifact at a time, show diffs)
68
+
69
+ Apply the mapping from [REFERENCE.md](./REFERENCE.md) and [REFERENCE-GSD.md](./REFERENCE-GSD.md). For each target file:
70
+
71
+ 1. Show what will be created or appended (title + first 20 lines).
72
+ 2. Ask: "Create this? [yes / edit / skip]"
73
+ 3. On yes: write to `specs/`.
74
+
75
+ > **HARD GATE** — Never overwrite an existing `specs/` file without explicit user confirmation. Merge into it if it exists; don't clobber.
76
+ >
77
+ > → verify: `git diff --name-only HEAD -- specs/ 2>/dev/null | head -20`
78
+
79
+ → verify: `ls specs/*.md 2>/dev/null | head -15`
80
+
81
+ ### Step 4 — Generate state.yaml
82
+
83
+ Always regenerate `specs/state.yaml` from scratch in bigpowers format (see REFERENCE.md for template):
84
+
85
+ ```markdown
86
+ # Session State: <project name>
87
+ ## Current Milestone
88
+ Migrated from <framework> on <date>. Next: review generated specs and run plan-work.
89
+ ## Pending Releases
90
+ - [ ] Review migrated specs
91
+ - [ ] Run elaborate-spec to validate scope
92
+ - [ ] Run plan-work to produce first release plan
93
+ ```
94
+
95
+ → verify: `[ -f specs/state.yaml ] && echo "ok" || echo "MISSING: specs/state.yaml not created"`
96
+
97
+ ### Step 5 — Surface learnings (optional)
98
+
99
+ After migration, offer the user a brief analysis of what the source framework did that bigpowers doesn't have yet.
100
+
101
+ Use the learnings table from [REFERENCE.md](./REFERENCE.md#learnings-to-adopt). Present as checkboxes so the user can decide which to adopt.
102
+
103
+ → verify: `grep -c "\- \[ \]" specs/state.yaml 2>/dev/null && echo "pending items recorded" || echo "no pending items in state.yaml"`
104
+
105
+
106
+ ## Artifact Mapping Summary
107
+
108
+ Full mapping tables: [REFERENCE-GSD.md](./REFERENCE-GSD.md) (GSD) · [REFERENCE.md](./REFERENCE.md) (spec-kit, BMAD, learnings).
109
+
110
+ | Source | Target |
111
+ |--------|--------|
112
+ | GSD `ROADMAP.md` | `specs/release-plan.yaml + epic shards` |
113
+ | GSD `REQUIREMENTS.md` | `specs/product/SCOPE_LATEST.yaml` |
114
+ | GSD `CONTEXT.md` (phases) | `specs/tech-architecture/tech-stack.md` + `specs/adr/` |
115
+ | GSD `PLAN.md` | `specs/epics/eNN-slug/epic.yaml` (tasks with verify in `-tasks.yaml`) |
116
+ | GSD `METHODOLOGY.md` | `specs/tech-architecture/tech-stack.md` |
117
+ | spec-kit `spec.md` | `specs/product/SCOPE_LATEST.yaml` + `specs/tech-architecture/tech-stack.md` |
118
+ | spec-kit `plan.md` | `specs/tech-architecture/tech-stack.md` + `specs/release-plan.yaml` + `specs/epics/` |
119
+ | spec-kit `tasks.md` | `specs/epics/ (see slice-tasks)` |
120
+ | BMAD `prd.md` | `specs/product/SCOPE_LATEST.yaml` |
121
+ | BMAD `architecture.md` | `specs/tech-architecture/tech-stack.md` + `specs/adr/` |
122
+ | BMAD `epic-*.md` | `specs/release-plan.yaml + epic shards` |
123
+ | BMAD `story-*.md` | `specs/epics/ (see slice-tasks)` |
124
+ | BMAD `project-context.md` | `CLAUDE.md` (append project-specific section) |
125
+ | BMAD `decision-log.md` | `specs/adr/` (one ADR per logged decision) |
126
+
127
+
128
+ ## Rules
129
+
130
+ - **Preserve source IDs** — REQ-XX, FR-XX, UJ-XX become inline comments in bigpowers targets. Never silently renumber.
131
+ - **Never merge contradictory docs** — if source has both `CONTEXT.md` and `architecture.md`, create sections in bigpowers `CONTEXT.md`; don't collapse them.
132
+ - **ADRs are opt-in** — only create an ADR when: hard to reverse, surprising without context, result of a real trade-off. Lightweight decisions go to `specs/DECISION-LOG.md`.
133
+ - **state.yaml is always regenerated** — never migrate source STATE verbatim; bigpowers state.yaml needs its own format.
134
+ - **specs/ is the only output location** — no files are created outside `specs/` and `CLAUDE.md`.
135
+
136
+ ---
137
+
138
+ # migrate-spec Reference — GSD
139
+
140
+ Full artifact transformation rules for migrating GSD projects to bigpowers YAML layout.
141
+
142
+ See [REFERENCE.md](./REFERENCE.md) for spec-kit, BMAD, learnings, and ADR/DECISION-LOG formats.
143
+
144
+ ---
145
+
146
+ ## Artifact Locations
147
+
148
+ GSD stores everything under `.planning/` at the project root.
149
+
150
+ ```
151
+ .planning/
152
+ ├── ROADMAP.md
153
+ ├── STATE.md
154
+ ├── REQUIREMENTS.md
155
+ ├── METHODOLOGY.md
156
+ ├── HANDOFF.json
157
+ ├── .continue-here.md
158
+ └── phases/
159
+ └── XX-name/
160
+ ├── XX-CONTEXT.md
161
+ ├── XX-YY-PLAN.md
162
+ ├── XX-YY-SUMMARY.md
163
+ └── XX-DISCUSSION-LOG.md
164
+ spikes/
165
+ └── SPIKE-NNN/README.md
166
+ ```
167
+
168
+ ---
169
+
170
+ ## Transformation Rules
171
+
172
+ ### `.planning/ROADMAP.md` → `specs/release-plan.yaml` + `specs/epics/eNN-*.yaml`
173
+
174
+ GSD ROADMAP has: milestone name, phases, success criteria per phase, plan count.
175
+
176
+ Transform:
177
+ - Each GSD phase → one epic entry in `release-plan.yaml` (`id`, `title`, `wsjf`, `file`)
178
+ - Phase detail → matching `specs/epics/eNN-slug.yaml` (stories, tasks, `verify`)
179
+ - Completed phases → `done` in `execution-status.yaml`; active → `in_progress`
180
+
181
+ ---
182
+
183
+ ### `.planning/REQUIREMENTS.md` → `specs/product/SCOPE_LATEST.yaml`
184
+
185
+ GSD REQUIREMENTS has: REQ-XX IDs, Validated/Active/Out-of-Scope categories, traceability.
186
+
187
+ Transform:
188
+ - Copy REQ-XX IDs as-is (preserve for cross-referencing)
189
+ - Validated requirements → `in_scope` entries
190
+ - Out-of-Scope → `out_of_scope` entries
191
+ - Active (in-progress) → `in_scope` with status note
192
+
193
+ ---
194
+
195
+ ### `.planning/phases/XX-name/XX-CONTEXT.md` → `specs/tech-architecture/TECH_STACK_LATEST.md` + `specs/adr/`
196
+
197
+ GSD CONTEXT.md has 6 sections: domain, decisions, canonical_refs, code_context, specifics, deferred.
198
+
199
+ Transform:
200
+ - `domain` → `plans/TECH_STACK_LATEST.md` Domain section
201
+ - `decisions` → scan each: if hard-to-reverse + surprising → `specs/adr/NNNN-{slug}.md`; if lightweight → `specs/DECISION-LOG.md`
202
+ - `canonical_refs` → Reference links in TECH_STACK
203
+ - `code_context` → Architecture section
204
+ - `deferred` → `SCOPE_LATEST.yaml` `out_of_scope` (with "(deferred from GSD)" note)
205
+
206
+ ---
207
+
208
+ ### `.planning/phases/XX-name/XX-YY-PLAN.md` → `specs/epics/eNN-*.yaml` tasks
209
+
210
+ GSD PLAN has: frontmatter (depends-on, verify), objective, typed tasks, success criteria, output spec.
211
+
212
+ Transform:
213
+ - Preserve task structure as `tasks[]` in epic shard
214
+ - Keep `verify: <command>` lines
215
+ - Map GSD `depends-on` to task `depends-on` notes
216
+ - SUMMARY.md (execution record) → skip or append to `specs/archive/`
217
+
218
+ ---
219
+
220
+ ### `.planning/METHODOLOGY.md` → `specs/tech-architecture/METHODOLOGY_LATEST.md`
221
+
222
+ GSD METHODOLOGY.md is a standing reference for analytical lenses (Bayesian updating, STRIDE, cost-of-delay).
223
+
224
+ Transform:
225
+ - Copy each lens as a section in `specs/tech-architecture/METHODOLOGY_LATEST.md`
226
+ - Note: "These lenses should inform `plan-work` and `audit-code` sessions."
227
+
228
+ ---
229
+
230
+ ### `.planning/HANDOFF.json` + `.continue-here.md` → `specs/state.yaml` `handoff`
231
+
232
+ GSD HANDOFF has: current phase, last plan, blocking reason, required reading list.
233
+
234
+ Transform — populate `handoff` in `state.yaml`:
235
+
236
+ ```yaml
237
+ handoff:
238
+ last_step_completed: "<phase/plan from HANDOFF>"
239
+ open_decisions:
240
+ - "<blocking reason if any>"
241
+ required_reading:
242
+ - "<required_reading list>"
243
+ next_skill: survey-context
244
+ ```
245
+
246
+ ---
247
+
248
+ ### `.planning/spikes/SPIKE-NNN/README.md` → `specs/archive/spikes/SPIKE-{name}.md`
249
+
250
+ GSD spike README has: YAML frontmatter (verdict, validates, related), methodology, findings, recommendation.
251
+
252
+ Transform:
253
+ - Flatten directory into `specs/archive/spikes/SPIKE-{name}.md`
254
+ - Preserve frontmatter as YAML block at top
255
+ - Keep verdict prominently: `**Verdict:** ADOPTED / REJECTED / DEFERRED`
256
+
257
+ ---
258
+
259
+ ## Skip List
260
+
261
+ These GSD artifacts are not migrated — they are execution records, not planning inputs:
262
+
263
+ | Artifact | Reason |
264
+ |----------|--------|
265
+ | `.planning/phases/XX/XX-YY-SUMMARY.md` | Execution log; no bigpowers equivalent |
266
+ | `.planning/phases/XX/XX-DISCUSSION-LOG.md` | Audit trail only; not consumed by agents |
267
+ | `.planning/USER-PROFILE.md` | User calibration; bigpowers has no profile system |
268
+ | `.planning/sketches/` | Visual exploration; not spec artifacts |
269
+
270
+ ---
271
+
272
+ # migrate-spec Reference — spec-kit, BMAD, Learnings
273
+
274
+ Transformation rules for spec-kit and BMAD projects, plus learnings to adopt and output formats.
275
+
276
+ See [REFERENCE-GSD.md](./REFERENCE-GSD.md) for full GSD → bigpowers YAML mapping.
277
+
278
+ ---
279
+
280
+ ## spec-kit → bigpowers Mapping
281
+
282
+ ### Artifact Locations
283
+
284
+ ```
285
+ project-root/
286
+ ├── spec.md ← user journeys, success criteria, scope
287
+ ├── plan.md ← technology, architecture, constraints
288
+ ├── tasks.md ← atomic task list
289
+ └── .specify/
290
+ ├── workflow-catalogs.yml
291
+ └── workflows/runs/<id>/
292
+ ├── state.json
293
+ └── log.jsonl
294
+ ```
295
+
296
+ ### `spec.md` → `specs/product/SCOPE_LATEST.yaml` + `specs/tech-architecture/TECH_STACK_LATEST.md`
297
+
298
+ spec-kit `spec.md` focuses on: who uses it, user journeys, success criteria, what's in/out of scope.
299
+
300
+ Transform:
301
+ - User journeys → `SCOPE_LATEST.yaml` success criteria / `in_scope` entries
302
+ - In/out of scope → `in_scope` / `out_of_scope` sections
303
+ - Domain terms / glossary → `requirements/GLOSSARY_LATEST.yaml`
304
+ - Problem statement / vision → `requirements/VISION_LATEST.yaml`
305
+
306
+ ### `plan.md` → `specs/tech-architecture/TECH_STACK_LATEST.md` + `specs/release-plan.yaml` + `specs/epics/`
307
+
308
+ spec-kit `plan.md` covers: technology stack, architectural patterns, implementation constraints.
309
+
310
+ Transform:
311
+ - Technology decisions → `plans/TECH_STACK_LATEST.md` Technology section
312
+ - Architecture patterns → Architecture section
313
+ - Hard decisions with trade-offs → `specs/adr/NNNN-{slug}.md`
314
+ - Phased approach / milestones → `release-plan.yaml` epic entries
315
+ - Implementation steps → `epics/eNN-*.yaml` task list with `verify:`
316
+
317
+ ### `tasks.md` → `specs/epics/` (via slice-tasks)
318
+
319
+ spec-kit tasks are atomic, verifiable in isolation — same principle as bigpowers `verify:` mandate.
320
+
321
+ Transform:
322
+ - Copy tasks into epic shard `tasks[]`; preserve task numbers
323
+ - Add `verify:` line if spec-kit task has an acceptance criterion
324
+ - Group into epics matching `release-plan.yaml` entries
325
+
326
+ ### `.specify/` state
327
+
328
+ Discard — workflow engine state; not meaningful in the bigpowers skill model.
329
+
330
+ ---
331
+
332
+ ## BMAD → bigpowers Mapping
333
+
334
+ ### Artifact Locations
335
+
336
+ ```
337
+ project-root/
338
+ ├── _bmad/bmm/config.yaml
339
+ ├── _bmad-output/
340
+ │ ├── product-brief.md
341
+ │ ├── prfaq-{project}.md
342
+ │ ├── prd.md
343
+ │ ├── addendum.md
344
+ │ ├── decision-log.md
345
+ │ ├── ux-spec.md
346
+ │ └── architecture.md
347
+ ├── project-context.md
348
+ └── docs/
349
+ ├── epic-{slug}.md
350
+ └── story-{slug}.md
351
+ ```
352
+
353
+ ### `product-brief.md` / `prfaq-{project}.md` → `specs/product/VISION_LATEST.yaml`
354
+
355
+ Transform:
356
+ - Vision + core value → `VISION_LATEST.yaml` north_star / success_criteria
357
+ - Target users → notes in VISION or SCOPE
358
+ - prfaq customer FAQ → can inform success criteria in SCOPE
359
+
360
+ ### `prd.md` → `specs/product/SCOPE_LATEST.yaml` + `GLOSSARY_LATEST.yaml`
361
+
362
+ BMAD `prd.md` has: Glossary, FR-XX functional requirements, UJ-XX user journeys, NFRs, assumptions.
363
+
364
+ Transform:
365
+ - Glossary → `GLOSSARY_LATEST.yaml`
366
+ - FR-XX items → `in_scope` with IDs preserved
367
+ - UJ-XX user journeys → success criteria
368
+ - NFRs → `constraints` section
369
+ - `[ASSUMPTION: ...]` inline tags → collected in scope YAML
370
+ - Out-of-scope features → `out_of_scope`
371
+
372
+ ### `addendum.md` + `decision-log.md` → `specs/adr/` + `specs/DECISION-LOG.md`
373
+
374
+ Transform:
375
+ - Hard, irreversible, surprising decisions → individual `specs/adr/NNNN-{slug}.md`
376
+ - Lightweight decisions → `specs/DECISION-LOG.md` (date | decision | rationale)
377
+ - `addendum.md` change signals → note in `SCOPE_LATEST.yaml` metadata
378
+
379
+ ### `architecture.md` → `specs/tech-architecture/TECH_STACK_LATEST.md` + `specs/adr/`
380
+
381
+ Transform:
382
+ - ADR sections → individual `specs/adr/NNNN-{slug}.md` files
383
+ - System overview / data models → TECH_STACK Architecture section
384
+ - API contracts → keep at `docs/api.md` or similar; link from TECH_STACK
385
+
386
+ ### `epic-*.md` → `specs/release-plan.yaml` + `specs/epics/eNN-*.yaml`
387
+
388
+ Each epic → one release-plan entry + one epic shard. Acceptance criteria → story tasks with `verify:`.
389
+
390
+ ### `story-*.md` → `specs/epics/` stories
391
+
392
+ Each story → one story entry in epic shard. Acceptance criteria → `verify:` lines.
393
+
394
+ ### `project-context.md` → `CLAUDE.md`
395
+
396
+ Add a "## Project Context" section to `CLAUDE.md`. Copy tech stack, coding rules, preferences verbatim.
397
+
398
+ ---
399
+
400
+ ## Learnings to Adopt
401
+
402
+ Optional enhancements to offer the user after migration. Present as checkboxes.
403
+
404
+ ### From GSD
405
+
406
+ - [ ] **`specs/tech-architecture/METHODOLOGY_LATEST.md`** — Standing analytical lenses. Agents read before planning.
407
+ - [ ] **`handoff` block in state.yaml** — Last skill, last step, required reading for next session.
408
+ - [ ] **ID tracking in SCOPE_LATEST.yaml** — FR/UJ IDs for spec → plan → verification traceability.
409
+
410
+ ### From spec-kit
411
+
412
+ - [ ] **Two-pass spec writing** — User-journey pass first, then technical-decisions pass.
413
+ - [ ] **Explicit inter-phase gate** — "Approve to proceed?" at end of `elaborate-spec`.
414
+ - [ ] **Epic task isolation** — Each task completable in isolation; `depends-on` explicit in epic YAML.
415
+
416
+ ### From BMAD
417
+
418
+ - [ ] **FR-XX + UJ-XX in SCOPE_LATEST.yaml** — Rigorous traceability.
419
+ - [ ] **`specs/DECISION-LOG.md`** — Lightweight decisions below ADR threshold.
420
+ - [ ] **Adversarial review pass** — Critique epic shard before `develop-tdd`.
421
+
422
+ ---
423
+
424
+ ## Output Formats
425
+
426
+ ### ADR format (bigpowers)
427
+
428
+ Use `model-domain/ADR-FORMAT.md`. Only create when all three apply: hard to reverse, surprising without context, result of a real trade-off.
429
+
430
+ ```markdown
431
+ # ADR-NNNN: {Title}
432
+
433
+ **Status:** Accepted
434
+ **Date:** YYYY-MM-DD
435
+
436
+ ## Context
437
+ [What situation forced this decision?]
438
+
439
+ ## Decision
440
+ [What was decided?]
441
+
442
+ ## Consequences
443
+ [What becomes easier or harder?]
444
+ ```
445
+
446
+ ### DECISION-LOG.md format
447
+
448
+ For lightweight decisions that don't warrant a full ADR:
449
+
450
+ ```markdown
451
+ # Decision Log
452
+
453
+ | Date | Decision | Rationale | Alternatives |
454
+ |------|----------|-----------|--------------|
455
+ | 2026-05-19 | Use Postgres | Existing ops expertise | SQLite (limited), DynamoDB (no local dev) |
456
+ ```
457
+
458
+ ### `specs/state.yaml` template format
459
+
460
+ Generated during Step 4 of migration. Regenerate from scratch in bigpowers format:
461
+
462
+ ```markdown
463
+ # Session State: <project name>
464
+
465
+ ## Current Milestone
466
+
467
+ Migrated from <framework> on <date>. Next: review generated specs and run plan-work.
468
+
469
+ ## Git Metadata
470
+
471
+ - **Branch**: <current branch>
472
+ - **Hash**: <git rev-parse HEAD>
473
+
474
+ ## Completed Releases
475
+
476
+ (none — migration starting point)
477
+
478
+ ## Pending Releases
479
+
480
+ - [ ] Review migrated specs
481
+ - [ ] Run elaborate-spec to validate scope
482
+ - [ ] Run plan-work to produce first release plan
483
+ ```