bmad-method 4.2.0 → 4.4.1

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 (176) hide show
  1. package/.claude/commands/analyst.md +14 -20
  2. package/.claude/commands/architect.md +15 -20
  3. package/.claude/commands/bmad-master.md +18 -26
  4. package/.claude/commands/bmad-orchestrator.md +80 -33
  5. package/.claude/commands/dev.md +5 -4
  6. package/.claude/commands/pm.md +11 -16
  7. package/.claude/commands/sm.md +20 -25
  8. package/.cursor/rules/analyst.mdc +13 -19
  9. package/.cursor/rules/architect.mdc +14 -19
  10. package/.cursor/rules/bmad-master.mdc +18 -26
  11. package/.cursor/rules/bmad-orchestrator.mdc +80 -33
  12. package/.cursor/rules/dev.mdc +5 -4
  13. package/.cursor/rules/pm.mdc +11 -16
  14. package/.cursor/rules/sm.mdc +19 -24
  15. package/.releaserc.json +2 -1
  16. package/.roo/README.md +0 -11
  17. package/.vscode/settings.json +4 -0
  18. package/.windsurf/rules/analyst.md +13 -19
  19. package/.windsurf/rules/architect.md +14 -19
  20. package/.windsurf/rules/bmad-master.md +18 -26
  21. package/.windsurf/rules/bmad-orchestrator.md +80 -33
  22. package/.windsurf/rules/dev.md +5 -4
  23. package/.windsurf/rules/pm.md +11 -16
  24. package/.windsurf/rules/sm.md +19 -24
  25. package/CHANGELOG.md +126 -2
  26. package/CONTRIBUTING.md +2 -0
  27. package/README.md +20 -2
  28. package/{.bmad-core → bmad-core}/agent-teams/team-all.yml +1 -3
  29. package/bmad-core/agent-teams/team-fullstack.yml +18 -0
  30. package/{.bmad-core → bmad-core}/agent-teams/team-no-ui.yml +0 -2
  31. package/{.bmad-core → bmad-core}/agents/analyst.md +14 -20
  32. package/{.bmad-core → bmad-core}/agents/architect.md +15 -20
  33. package/{.bmad-core → bmad-core}/agents/bmad-master.md +18 -26
  34. package/bmad-core/agents/bmad-orchestrator.md +128 -0
  35. package/{.bmad-core → bmad-core}/agents/dev.md +5 -4
  36. package/{.bmad-core → bmad-core}/agents/pm.md +11 -16
  37. package/{.bmad-core → bmad-core}/agents/qa.md +11 -17
  38. package/bmad-core/agents/sm.md +55 -0
  39. package/{.bmad-core → bmad-core}/agents/ux-expert.md +14 -20
  40. package/bmad-core/bmad-core-config.yml +60 -0
  41. package/bmad-core/data/bmad-kb.md +47 -0
  42. package/bmad-core/tasks/doc-migration-task.md +143 -0
  43. package/bmad-core/tasks/document-project.md +389 -0
  44. package/bmad-core/tasks/generate-ai-frontend-prompt.md +51 -0
  45. package/{.bmad-core → bmad-core}/tasks/index-docs.md +8 -3
  46. package/{.bmad-core → bmad-core}/tasks/shard-doc.md +5 -3
  47. package/{.bmad-core → bmad-core}/templates/architecture-tmpl.md +16 -13
  48. package/{.bmad-core → bmad-core}/templates/brownfield-architecture-tmpl.md +6 -6
  49. package/{.bmad-core → bmad-core}/templates/front-end-spec-tmpl.md +6 -6
  50. package/{.bmad-core → bmad-core}/templates/fullstack-architecture-tmpl.md +85 -103
  51. package/{.bmad-core → bmad-core}/templates/prd-tmpl.md +1 -1
  52. package/bmad-core/templates/simple-project-prd-tmpl.md +461 -0
  53. package/{.bmad-core → bmad-core}/templates/story-tmpl.md +2 -2
  54. package/{.bmad-core → bmad-core}/utils/agent-switcher.ide.md +6 -6
  55. package/{.bmad-core → bmad-core}/utils/workflow-management.md +14 -15
  56. package/{.bmad-core → bmad-core}/web-bundles/agents/analyst.txt +26 -21
  57. package/{.bmad-core → bmad-core}/web-bundles/agents/architect.txt +608 -236
  58. package/{.bmad-core → bmad-core}/web-bundles/agents/bmad-master.txt +467 -1049
  59. package/bmad-core/web-bundles/agents/bmad-orchestrator.txt +647 -0
  60. package/{.bmad-core → bmad-core}/web-bundles/agents/dev.txt +5 -4
  61. package/{.bmad-core → bmad-core}/web-bundles/agents/pm.txt +477 -18
  62. package/{.bmad-core → bmad-core}/web-bundles/agents/po.txt +3 -3
  63. package/{.bmad-core → bmad-core}/web-bundles/agents/qa.txt +11 -17
  64. package/{.bmad-core → bmad-core}/web-bundles/agents/sm.txt +22 -27
  65. package/{.bmad-core → bmad-core}/web-bundles/agents/ux-expert.txt +57 -70
  66. package/{.bmad-core → bmad-core}/workflows/greenfield-fullstack.yml +3 -3
  67. package/{.bmad-core → creator-tools}/tasks/create-agent.md +10 -12
  68. package/{.bmad-core/tasks/create-expansion-pack.md → creator-tools/tasks/generate-expansion-pack.md} +8 -6
  69. package/docs/bmad-workflow-guide.md +161 -0
  70. package/docs/claude-code-guide.md +119 -0
  71. package/docs/core-architecture.md +213 -0
  72. package/docs/cursor-guide.md +127 -0
  73. package/docs/how-to-contribute-with-pull-requests.md +141 -0
  74. package/docs/roo-code-guide.md +140 -0
  75. package/docs/user-guide.md +1044 -0
  76. package/docs/versioning-and-releases.md +4 -4
  77. package/docs/windsurf-guide.md +127 -0
  78. package/expansion-packs/README.md +1 -111
  79. package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/team-game-dev.yml +12 -0
  80. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +58 -0
  81. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +66 -0
  82. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +51 -0
  83. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +201 -0
  84. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +160 -0
  85. package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +254 -0
  86. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +631 -0
  87. package/expansion-packs/bmad-2d-phaser-game-dev/manifest.yml +45 -0
  88. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +111 -0
  89. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +216 -0
  90. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +308 -0
  91. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.md +560 -0
  92. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.md +345 -0
  93. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.md +331 -0
  94. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.md +235 -0
  95. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.md +451 -0
  96. package/expansion-packs/bmad-2d-phaser-game-dev/web-bundles/agents/game-designer.txt +1758 -0
  97. package/expansion-packs/bmad-2d-phaser-game-dev/web-bundles/agents/game-developer.txt +1444 -0
  98. package/expansion-packs/bmad-2d-phaser-game-dev/web-bundles/agents/game-sm.txt +674 -0
  99. package/expansion-packs/bmad-2d-phaser-game-dev/web-bundles/team-game-dev.txt +4395 -0
  100. package/expansion-packs/bmad-2d-phaser-game-dev/web-bundles/teams/team-game-dev.txt +4395 -0
  101. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yml +183 -0
  102. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yml +175 -0
  103. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/README.md +5 -5
  104. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/agents/infra-devops-platform.md +3 -3
  105. package/expansion-packs/bmad-infrastructure-devops/manifest.yml +23 -0
  106. package/expansion-packs/bmad-infrastructure-devops/tasks/create-doc.md +74 -0
  107. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/templates/infrastructure-platform-from-arch-tmpl.md +0 -0
  108. package/expansion-packs/bmad-infrastructure-devops/web-bundles/agents/infra-devops-platform.txt +2021 -0
  109. package/package.json +20 -14
  110. package/tools/builders/web-builder.js +207 -17
  111. package/tools/cli.js +55 -7
  112. package/tools/installer/README.md +2 -2
  113. package/tools/installer/bin/bmad.js +107 -28
  114. package/tools/installer/config/install.config.yml +43 -43
  115. package/tools/installer/lib/config-loader.js +39 -2
  116. package/tools/installer/lib/file-manager.js +20 -3
  117. package/tools/installer/lib/ide-setup.js +11 -1
  118. package/tools/installer/lib/installer.js +275 -29
  119. package/tools/installer/package-lock.json +538 -336
  120. package/tools/installer/package.json +8 -8
  121. package/tools/lib/dependency-resolver.js +2 -2
  122. package/tools/semantic-release-sync-installer.js +31 -0
  123. package/tools/sync-installer-version.js +34 -0
  124. package/tools/upgraders/v3-to-v4-upgrader.js +18 -13
  125. package/tools/version-bump.js +33 -26
  126. package/tools/yaml-format.js +54 -25
  127. package/.bmad-core/agent-teams/team-fullstack.yml +0 -26
  128. package/.bmad-core/agents/bmad-orchestrator.md +0 -81
  129. package/.bmad-core/agents/sm.md +0 -60
  130. package/.bmad-core/data/bmad-kb.md +0 -36
  131. package/.bmad-core/schemas/agent-team-schema.yml +0 -153
  132. package/.bmad-core/tasks/create-team.md +0 -229
  133. package/.bmad-core/tasks/doc-migration-task.md +0 -198
  134. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +0 -58
  135. package/.bmad-core/web-bundles/agents/bmad-orchestrator.txt +0 -1455
  136. package/.bmad-core/web-bundles/teams/team-all.txt +0 -10315
  137. package/.bmad-core/web-bundles/teams/team-fullstack.txt +0 -9663
  138. package/.bmad-core/web-bundles/teams/team-no-ui.txt +0 -8504
  139. package/.claude/settings.local.json +0 -22
  140. package/expansion-packs/infrastructure-devops/manifest.yml +0 -38
  141. /package/{.bmad-core → bmad-core}/agents/po.md +0 -0
  142. /package/{.bmad-core → bmad-core}/checklists/architect-checklist.md +0 -0
  143. /package/{.bmad-core → bmad-core}/checklists/change-checklist.md +0 -0
  144. /package/{.bmad-core → bmad-core}/checklists/pm-checklist.md +0 -0
  145. /package/{.bmad-core → bmad-core}/checklists/po-master-checklist.md +0 -0
  146. /package/{.bmad-core → bmad-core}/checklists/story-dod-checklist.md +0 -0
  147. /package/{.bmad-core → bmad-core}/checklists/story-draft-checklist.md +0 -0
  148. /package/{.bmad-core → bmad-core}/data/technical-preferences.md +0 -0
  149. /package/{.bmad-core → bmad-core}/tasks/advanced-elicitation.md +0 -0
  150. /package/{.bmad-core → bmad-core}/tasks/brainstorming-techniques.md +0 -0
  151. /package/{.bmad-core → bmad-core}/tasks/brownfield-create-epic.md +0 -0
  152. /package/{.bmad-core → bmad-core}/tasks/brownfield-create-story.md +0 -0
  153. /package/{.bmad-core → bmad-core}/tasks/core-dump.md +0 -0
  154. /package/{.bmad-core → bmad-core}/tasks/correct-course.md +0 -0
  155. /package/{.bmad-core → bmad-core}/tasks/create-deep-research-prompt.md +0 -0
  156. /package/{.bmad-core → bmad-core}/tasks/create-doc.md +0 -0
  157. /package/{.bmad-core → bmad-core}/tasks/create-next-story.md +0 -0
  158. /package/{.bmad-core → bmad-core}/tasks/execute-checklist.md +0 -0
  159. /package/{.bmad-core → bmad-core}/templates/agent-tmpl.md +0 -0
  160. /package/{.bmad-core → bmad-core}/templates/brownfield-prd-tmpl.md +0 -0
  161. /package/{.bmad-core → bmad-core}/templates/competitor-analysis-tmpl.md +0 -0
  162. /package/{.bmad-core → bmad-core}/templates/expansion-pack-plan-tmpl.md +0 -0
  163. /package/{.bmad-core → bmad-core}/templates/front-end-architecture-tmpl.md +0 -0
  164. /package/{.bmad-core → bmad-core}/templates/market-research-tmpl.md +0 -0
  165. /package/{.bmad-core → bmad-core}/templates/project-brief-tmpl.md +0 -0
  166. /package/{.bmad-core → bmad-core}/templates/web-agent-startup-instructions-template.md +0 -0
  167. /package/{.bmad-core → bmad-core}/utils/template-format.md +0 -0
  168. /package/{.bmad-core → bmad-core}/workflows/brownfield-fullstack.yml +0 -0
  169. /package/{.bmad-core → bmad-core}/workflows/brownfield-service.yml +0 -0
  170. /package/{.bmad-core → bmad-core}/workflows/brownfield-ui.yml +0 -0
  171. /package/{.bmad-core → bmad-core}/workflows/greenfield-service.yml +0 -0
  172. /package/{.bmad-core → bmad-core}/workflows/greenfield-ui.yml +0 -0
  173. /package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/checklists/infrastructure-checklist.md +0 -0
  174. /package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/tasks/review-infrastructure.md +0 -0
  175. /package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/tasks/validate-infrastructure.md +0 -0
  176. /package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/templates/infrastructure-architecture-tmpl.md +0 -0
@@ -56,7 +56,7 @@ You are now operating as a Documentation Indexer. Your goal is to ensure all doc
56
56
 
57
57
  The index should be organized as follows:
58
58
 
59
- ```markdown
59
+ `````markdown
60
60
  # Documentation Index
61
61
 
62
62
  ## Root Documents
@@ -88,7 +88,8 @@ Documents within the `another-folder/` directory:
88
88
  ### [Nested Document](./another-folder/document.md)
89
89
 
90
90
  Description of nested document.
91
- ```text
91
+
92
+ ````text
92
93
 
93
94
  ### Index Entry Format
94
95
 
@@ -98,7 +99,10 @@ Each entry should follow this format:
98
99
  ### [Document Title](relative/path/to/file.md)
99
100
 
100
101
  Brief description of the document's purpose and contents.
101
- ```
102
+ ````
103
+ `````
104
+
105
+ ````
102
106
 
103
107
  ### Rules of Operation
104
108
 
@@ -176,3 +180,4 @@ Please provide:
176
180
  5. Whether to include hidden files/folders (starting with `.`)
177
181
 
178
182
  Would you like to proceed with documentation indexing? Please provide the required input above.
183
+ ````
@@ -101,7 +101,7 @@ Create an `index.md` file in the sharded folder that:
101
101
  1. Contains the original level 1 heading and any content before the first level 2 section
102
102
  2. Lists all the sharded files with links:
103
103
 
104
- ```markdown
104
+ ````markdown
105
105
  # Original Document Title
106
106
 
107
107
  [Original introduction content if any]
@@ -112,7 +112,8 @@ Create an `index.md` file in the sharded folder that:
112
112
  - [Section Name 2](./section-name-2.md)
113
113
  - [Section Name 3](./section-name-3.md)
114
114
  ...
115
- ```
115
+
116
+ ````text
116
117
 
117
118
  ### 5. Preserve Special Content
118
119
 
@@ -122,7 +123,8 @@ Create an `index.md` file in the sharded folder that:
122
123
 
123
124
  ```language
124
125
  content
125
- ```
126
+ ````
127
+ ````
126
128
 
127
129
  2. **Mermaid diagrams**: Preserve complete syntax:
128
130
 
@@ -136,7 +136,7 @@ Common patterns to consider:
136
136
 
137
137
  [[LLM: This is the DEFINITIVE technology selection section. Work with the user to make specific choices:
138
138
 
139
- 1. Review PRD technical assumptions and any preferences from `data#technical-preferences`
139
+ 1. Review PRD technical assumptions and any preferences from `data#technical-preferences` or an attached `technical-preferences`
140
140
  2. For each category, present 2-3 viable options with pros/cons
141
141
  3. Make a clear recommendation based on project needs
142
142
  4. Get explicit user approval for each selection
@@ -341,18 +341,21 @@ Use YAML format for better readability. If no REST API, skip this section.]]
341
341
 
342
342
  ^^CONDITION: has_rest_api^^
343
343
 
344
- ```yaml
344
+ ````yaml
345
345
  openapi: 3.0.0
346
346
  info:
347
- title: { { api_title } }
348
- version: { { api_version } }
349
- description: { { api_description } }
350
-
347
+ title:
348
+ '[object Object]': null
349
+ version:
350
+ '[object Object]': null
351
+ description:
352
+ '[object Object]': null
351
353
  servers:
352
- - url: { { api_base_url } }
353
- description: { { environment } }
354
- # ... OpenAPI specification continues
355
- ```
354
+ - url:
355
+ '[object Object]': null
356
+ description:
357
+ '[object Object]': null
358
+ ```text
356
359
 
357
360
  ^^/CONDITION: has_rest_api^^
358
361
 
@@ -415,7 +418,7 @@ After presenting the structure, apply `tasks#advanced-elicitation` protocol to r
415
418
  ├── {{package-manifest}} # Dependencies manifest
416
419
  ├── {{config-files}} # Language/framework configs
417
420
  └── README.md # Project documentation
418
- ```
421
+ ```text
419
422
 
420
423
  @{example: monorepo-structure}
421
424
  project-root/
@@ -463,9 +466,9 @@ Get user input on deployment preferences and CI/CD tool choices.]]
463
466
 
464
467
  ### Environment Promotion Flow
465
468
 
466
- ```
469
+ ```text
467
470
  {{promotion_flow_diagram}}
468
- ```
471
+ ````
469
472
 
470
473
  ### Rollback Strategy
471
474
 
@@ -222,9 +222,9 @@ Present component architecture and apply `tasks#advanced-elicitation` protocol]]
222
222
 
223
223
  [[LLM: Create Mermaid diagram showing how new components interact with existing ones]]
224
224
 
225
- ```mermaid
225
+ ````mermaid
226
226
  {{component_interaction_diagram}}
227
- ```
227
+ ```text
228
228
 
229
229
  ## API Design and Integration
230
230
 
@@ -258,13 +258,13 @@ Present API design and apply `tasks#advanced-elicitation` protocol]]
258
258
 
259
259
  ```json
260
260
  {{request_schema}}
261
- ```
261
+ ````
262
262
 
263
263
  **Response:**
264
264
 
265
- ```json
265
+ ````json
266
266
  {{response_schema}}
267
- ```
267
+ ```text
268
268
 
269
269
  <</REPEAT>>
270
270
 
@@ -313,7 +313,7 @@ Present integration plan and apply `tasks#advanced-elicitation` protocol]]
313
313
 
314
314
  ```plaintext
315
315
  {{existing_structure_relevant_parts}}
316
- ```
316
+ ````
317
317
 
318
318
  ### New File Organization
319
319
 
@@ -74,9 +74,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
74
74
 
75
75
  ### Site Map / Screen Inventory
76
76
 
77
- ```mermaid
77
+ ````mermaid
78
78
  {{sitemap_diagram}}
79
- ```
79
+ ```text
80
80
 
81
81
  @{example: sitemap}
82
82
 
@@ -93,7 +93,7 @@ graph TD
93
93
  D --> D1[Profile]
94
94
  D --> D2[Settings]
95
95
  D --> D3[Billing]
96
- ```
96
+ ````
97
97
 
98
98
  @{/example}
99
99
 
@@ -129,9 +129,9 @@ Create subsections for each major flow. After presenting all flows, apply `tasks
129
129
 
130
130
  #### Flow Diagram
131
131
 
132
- ```mermaid
132
+ ````mermaid
133
133
  {{flow_diagram}}
134
- ```
134
+ ```text
135
135
 
136
136
  **Edge Cases & Error Handling:**
137
137
 
@@ -165,7 +165,7 @@ graph TD
165
165
  Validate -->|Yes| Verify[Email Verification]
166
166
  Verify --> Complete[Account Created]
167
167
  Complete --> Dashboard[Redirect to Dashboard]
168
- ```
168
+ ````
169
169
 
170
170
  **Edge Cases & Error Handling:**
171
171
 
@@ -109,9 +109,9 @@ Document the choice and key services that will be used.]]
109
109
 
110
110
  Use appropriate diagram type for clarity.]]
111
111
 
112
- ```mermaid
112
+ ````mermaid
113
113
  {{architecture_diagram}}
114
- ```
114
+ ```text
115
115
 
116
116
  ### Architectural Patterns
117
117
 
@@ -222,7 +222,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
222
222
  model_interface;
223
223
  }
224
224
  }
225
- ```
225
+ ````
226
226
 
227
227
  **Relationships:**
228
228
 
@@ -246,7 +246,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
246
246
 
247
247
  **TypeScript Interface:**
248
248
 
249
- ```typescript
249
+ ````typescript
250
250
  interface User {
251
251
  id: string;
252
252
  email: string;
@@ -262,7 +262,7 @@ interface UserProfile {
262
262
  bio?: string;
263
263
  preferences: Record<string, any>;
264
264
  }
265
- ```
265
+ ```text
266
266
 
267
267
  **Relationships:**
268
268
 
@@ -286,27 +286,30 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
286
286
 
287
287
  ^^CONDITION: has_rest_api^^
288
288
 
289
- ```yaml
289
+ ```yml
290
290
  openapi: 3.0.0
291
291
  info:
292
- title: { { api_title } }
293
- version: { { api_version } }
294
- description: { { api_description } }
295
-
292
+ title:
293
+ '[object Object]': null
294
+ version:
295
+ '[object Object]': null
296
+ description:
297
+ '[object Object]': null
296
298
  servers:
297
- - url: { { api_base_url } }
298
- description: { { environment } }
299
- # ... OpenAPI specification continues
300
- ```
299
+ - url:
300
+ '[object Object]': null
301
+ description:
302
+ '[object Object]': null
303
+ ````
301
304
 
302
305
  ^^/CONDITION: has_rest_api^^
303
306
 
304
307
  ^^CONDITION: has_graphql_api^^
305
308
 
306
- ```graphql
309
+ ````graphql
307
310
  # GraphQL Schema
308
311
  {{graphql_schema}}
309
- ```
312
+ ```text
310
313
 
311
314
  ^^/CONDITION: has_graphql_api^^
312
315
 
@@ -319,7 +322,7 @@ servers:
319
322
  trpc_routers;
320
323
  }
321
324
  }
322
- ```
325
+ ````
323
326
 
324
327
  ^^/CONDITION: has_trpc_api^^
325
328
 
@@ -464,19 +467,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
464
467
 
465
468
  **Component Organization:**
466
469
 
467
- ```
470
+ `````text
468
471
  {{component_structure}}
469
- ```
472
+ ```text
470
473
 
471
474
  **Component Template:**
472
475
 
473
- ```typescript
476
+ ````typescript
474
477
  {
475
478
  {
476
479
  component_template;
477
480
  }
478
481
  }
479
- ```
482
+ ```text
480
483
 
481
484
  ### State Management Architecture
482
485
 
@@ -490,7 +493,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
490
493
  state_structure;
491
494
  }
492
495
  }
493
- ```
496
+ `````
494
497
 
495
498
  **State Management Patterns:**
496
499
 
@@ -503,19 +506,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
503
506
 
504
507
  **Route Organization:**
505
508
 
506
- ```
509
+ `````text
507
510
  {{route_structure}}
508
- ```
511
+ ```text
509
512
 
510
513
  **Protected Route Pattern:**
511
514
 
512
- ```typescript
515
+ ````typescript
513
516
  {
514
517
  {
515
518
  protected_route_example;
516
519
  }
517
520
  }
518
- ```
521
+ ```text
519
522
 
520
523
  ### Frontend Services Layer
521
524
 
@@ -529,17 +532,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
529
532
  api_client_setup;
530
533
  }
531
534
  }
532
- ```
535
+ `````
533
536
 
534
537
  **Service Example:**
535
538
 
536
- ```typescript
539
+ ````typescript
537
540
  {
538
541
  {
539
542
  service_example;
540
543
  }
541
544
  }
542
- ```
545
+ ```text
543
546
 
544
547
  ## Backend Architecture
545
548
 
@@ -554,9 +557,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
554
557
  ^^CONDITION: serverless^^
555
558
  **Function Organization:**
556
559
 
557
- ```
560
+ ````
561
+
558
562
  {{function_structure}}
559
- ```
563
+
564
+ ````text
560
565
 
561
566
  **Function Template:**
562
567
 
@@ -566,26 +571,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
566
571
  function_template;
567
572
  }
568
573
  }
569
- ```
574
+ ````
570
575
 
571
576
  ^^/CONDITION: serverless^^
572
577
 
573
578
  ^^CONDITION: traditional_server^^
574
579
  **Controller/Route Organization:**
575
580
 
576
- ```
581
+ `````text
577
582
  {{controller_structure}}
578
- ```
583
+ ```text
579
584
 
580
585
  **Controller Template:**
581
586
 
582
- ```typescript
587
+ ````typescript
583
588
  {
584
589
  {
585
590
  controller_template;
586
591
  }
587
592
  }
588
- ```
593
+ ```text
589
594
 
590
595
  ^^/CONDITION: traditional_server^^
591
596
 
@@ -597,17 +602,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
597
602
 
598
603
  ```sql
599
604
  {{database_schema}}
600
- ```
605
+ `````
601
606
 
602
607
  **Data Access Layer:**
603
608
 
604
- ```typescript
609
+ ````typescript
605
610
  {
606
611
  {
607
612
  repository_pattern;
608
613
  }
609
614
  }
610
- ```
615
+ ```text
611
616
 
612
617
  ### Authentication and Authorization
613
618
 
@@ -617,17 +622,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
617
622
 
618
623
  ```mermaid
619
624
  {{auth_flow_diagram}}
620
- ```
625
+ ````
621
626
 
622
627
  **Middleware/Guards:**
623
628
 
624
- ```typescript
629
+ ````typescript
625
630
  {
626
631
  {
627
632
  auth_middleware;
628
633
  }
629
634
  }
630
- ```
635
+ ```text
631
636
 
632
637
  ## Unified Project Structure
633
638
 
@@ -687,7 +692,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
687
692
  ├── package.json # Root package.json
688
693
  ├── {{monorepo_config}} # Monorepo configuration
689
694
  └── README.md
690
- ```
695
+ ````
691
696
 
692
697
  @{example: vercel_structure}
693
698
  apps/
@@ -709,19 +714,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
709
714
 
710
715
  **Prerequisites:**
711
716
 
712
- ```bash
717
+ ````bash
713
718
  {{prerequisites_commands}}
714
- ```
719
+ ```text
715
720
 
716
721
  **Initial Setup:**
717
722
 
718
723
  ```bash
719
724
  {{setup_commands}}
720
- ```
725
+ ````
721
726
 
722
727
  **Development Commands:**
723
728
 
724
- ```bash
729
+ ````bash
725
730
  # Start all services
726
731
  {{start_all_command}}
727
732
 
@@ -733,7 +738,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
733
738
 
734
739
  # Run tests
735
740
  {{test_commands}}
736
- ```
741
+ ```text
737
742
 
738
743
  ### Environment Configuration
739
744
 
@@ -748,7 +753,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
748
753
 
749
754
  # Shared
750
755
  {{shared_env_vars}}
751
- ```
756
+ ````
752
757
 
753
758
  ## Deployment Architecture
754
759
 
@@ -771,9 +776,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
771
776
 
772
777
  ### CI/CD Pipeline
773
778
 
774
- ```yaml
775
- { { cicd_pipeline_config } }
776
- ```
779
+ ````yaml
780
+ '[object Object]': null
781
+ ```text
777
782
 
778
783
  ### Environments
779
784
 
@@ -831,33 +836,42 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
831
836
 
832
837
  ### Testing Pyramid
833
838
 
834
- ```
839
+ ````
840
+
835
841
  E2E Tests
836
842
  / \
837
843
  Integration Tests
838
- / \
839
- Frontend Unit Backend Unit
840
- ```
844
+
845
+ / \
846
+ Frontend Unit Backend Unit
847
+
848
+ ```text
841
849
 
842
850
  ### Test Organization
843
851
 
844
852
  **Frontend Tests:**
845
853
 
846
854
  ```
855
+
847
856
  {{frontend_test_structure}}
848
- ```
857
+
858
+ ````text
849
859
 
850
860
  **Backend Tests:**
851
861
 
852
- ```
862
+ ```text
863
+
853
864
  {{backend_test_structure}}
854
- ```
865
+
866
+ ```text
855
867
 
856
868
  **E2E Tests:**
857
869
 
858
- ```
870
+ ````
871
+
859
872
  {{e2e_test_structure}}
860
- ```
873
+
874
+ ````text
861
875
 
862
876
  ### Test Examples
863
877
 
@@ -869,17 +883,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
869
883
  frontend_test_example;
870
884
  }
871
885
  }
872
- ```
886
+ ````
873
887
 
874
888
  **Backend API Test:**
875
889
 
876
- ```typescript
890
+ ````typescript
877
891
  {
878
892
  {
879
893
  backend_test_example;
880
894
  }
881
895
  }
882
- ```
896
+ ```text
883
897
 
884
898
  **E2E Test:**
885
899
 
@@ -889,7 +903,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
889
903
  e2e_test_example;
890
904
  }
891
905
  }
892
- ```
906
+ ````
893
907
 
894
908
  ## Coding Standards
895
909
 
@@ -930,9 +944,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
930
944
 
931
945
  ### Error Flow
932
946
 
933
- ```mermaid
947
+ ````mermaid
934
948
  {{error_flow_diagram}}
935
- ```
949
+ ```text
936
950
 
937
951
  ### Error Response Format
938
952
 
@@ -946,17 +960,17 @@ interface ApiError {
946
960
  requestId: string;
947
961
  };
948
962
  }
949
- ```
963
+ ````
950
964
 
951
965
  ### Frontend Error Handling
952
966
 
953
- ```typescript
967
+ ````typescript
954
968
  {
955
969
  {
956
970
  frontend_error_handler;
957
971
  }
958
972
  }
959
- ```
973
+ ```text
960
974
 
961
975
  ### Backend Error Handling
962
976
 
@@ -966,7 +980,7 @@ interface ApiError {
966
980
  backend_error_handler;
967
981
  }
968
982
  }
969
- ```
983
+ ````
970
984
 
971
985
  ## Monitoring and Observability
972
986
 
@@ -1000,35 +1014,3 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
1000
1014
  ## Checklist Results Report
1001
1015
 
1002
1016
  [[LLM: Before running the checklist, offer to output the full architecture document. Once user confirms, execute the `architect-checklist` and populate results here.]]
1003
-
1004
- ## Next Steps
1005
-
1006
- [[LLM: Provide specific next steps for implementation.]]
1007
-
1008
- ### Implementation Order
1009
-
1010
- 1. **Environment Setup**
1011
-
1012
- - Initialize monorepo structure
1013
- - Configure development environment
1014
- - Set up version control
1015
-
1016
- 2. **Foundation (Epic 1)**
1017
-
1018
- - Implement authentication flow
1019
- - Set up database schema
1020
- - Create basic API structure
1021
- - Implement core UI components
1022
-
1023
- 3. **Feature Development**
1024
- - Follow story sequence from PRD
1025
- - Maintain type safety across stack
1026
- - Write tests as you go
1027
-
1028
- ### Developer Handoff Prompts
1029
-
1030
- **For Scrum Master:**
1031
- "Create stories for {{Project Name}} using the PRD at docs/prd.md and this fullstack architecture at docs/fullstack-architecture.md. Focus on Epic 1 implementation."
1032
-
1033
- **For Developer:**
1034
- "Implement Story 1.1 from docs/stories/epic1/story-1.1.md using the fullstack architecture at docs/fullstack-architecture.md. Follow the coding standards and use the defined tech stack."
@@ -88,7 +88,7 @@
88
88
 
89
89
  [[LLM: Gather technical decisions that will guide the Architect. Steps:
90
90
 
91
- 1. Check if `data#technical-preferences` file exists - use it to pre-populate choices
91
+ 1. Check if `data#technical-preferences` or an attached `technical-preferences` file exists - use it to pre-populate choices
92
92
  2. Ask user about: languages, frameworks, starter templates, libraries, APIs, deployment targets
93
93
  3. For unknowns, offer guidance based on project goals and MVP scope
94
94
  4. Document ALL technical choices with rationale (why this choice fits the project)