bmad-method 5.0.0 → 5.0.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 (329) hide show
  1. package/.github/FUNDING.yaml +15 -0
  2. package/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  3. package/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
  4. package/.github/workflows/discord.yaml +25 -0
  5. package/.github/workflows/format-check.yaml +42 -0
  6. package/.github/workflows/manual-release.yaml +173 -0
  7. package/.husky/pre-commit +3 -2
  8. package/.vscode/settings.json +67 -74
  9. package/CHANGELOG.md +564 -19
  10. package/CONTRIBUTING.md +168 -5
  11. package/LICENSE +1 -1
  12. package/README.md +146 -218
  13. package/bmad-core/agent-teams/team-all.yaml +14 -0
  14. package/bmad-core/agent-teams/team-fullstack.yaml +18 -0
  15. package/bmad-core/agent-teams/team-ide-minimal.yaml +10 -0
  16. package/bmad-core/agent-teams/team-no-ui.yaml +13 -0
  17. package/bmad-core/agents/analyst.md +81 -0
  18. package/bmad-core/agents/architect.md +83 -0
  19. package/bmad-core/agents/bmad-master.md +107 -0
  20. package/bmad-core/agents/bmad-orchestrator.md +149 -0
  21. package/bmad-core/agents/dev.md +75 -0
  22. package/bmad-core/agents/pm.md +81 -0
  23. package/bmad-core/agents/po.md +76 -0
  24. package/bmad-core/agents/qa.md +88 -0
  25. package/bmad-core/agents/sm.md +62 -0
  26. package/bmad-core/agents/ux-expert.md +66 -0
  27. package/{.bmad-core → bmad-core}/checklists/architect-checklist.md +0 -5
  28. package/{.bmad-core → bmad-core}/checklists/change-checklist.md +2 -2
  29. package/{.bmad-core → bmad-core}/checklists/pm-checklist.md +0 -5
  30. package/{.bmad-core → bmad-core}/checklists/po-master-checklist.md +0 -9
  31. package/{.bmad-core → bmad-core}/checklists/story-dod-checklist.md +0 -7
  32. package/{.bmad-core → bmad-core}/checklists/story-draft-checklist.md +1 -4
  33. package/bmad-core/core-config.yaml +20 -0
  34. package/bmad-core/data/bmad-kb.md +806 -0
  35. package/bmad-core/data/brainstorming-techniques.md +36 -0
  36. package/bmad-core/data/elicitation-methods.md +154 -0
  37. package/bmad-core/data/test-levels-framework.md +146 -0
  38. package/bmad-core/data/test-priorities-matrix.md +172 -0
  39. package/bmad-core/tasks/advanced-elicitation.md +117 -0
  40. package/{.bmad-core → bmad-core}/tasks/correct-course.md +9 -12
  41. package/bmad-core/tasks/create-brownfield-story.md +312 -0
  42. package/{.bmad-core → bmad-core}/tasks/create-deep-research-prompt.md +4 -27
  43. package/bmad-core/tasks/create-next-story.md +112 -0
  44. package/bmad-core/tasks/document-project.md +343 -0
  45. package/bmad-core/tasks/facilitate-brainstorming-session.md +136 -0
  46. package/bmad-core/tasks/generate-ai-frontend-prompt.md +51 -0
  47. package/{.bmad-core → bmad-core}/tasks/index-docs.md +3 -13
  48. package/bmad-core/tasks/kb-mode-interaction.md +75 -0
  49. package/bmad-core/tasks/nfr-assess.md +343 -0
  50. package/bmad-core/tasks/qa-gate.md +159 -0
  51. package/bmad-core/tasks/review-story.md +314 -0
  52. package/bmad-core/tasks/risk-profile.md +353 -0
  53. package/{.bmad-core → bmad-core}/tasks/shard-doc.md +27 -15
  54. package/bmad-core/tasks/test-design.md +174 -0
  55. package/bmad-core/tasks/trace-requirements.md +264 -0
  56. package/bmad-core/tasks/validate-next-story.md +134 -0
  57. package/bmad-core/templates/architecture-tmpl.yaml +650 -0
  58. package/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
  59. package/bmad-core/templates/brownfield-architecture-tmpl.yaml +476 -0
  60. package/bmad-core/templates/brownfield-prd-tmpl.yaml +280 -0
  61. package/bmad-core/templates/competitor-analysis-tmpl.yaml +306 -0
  62. package/bmad-core/templates/front-end-architecture-tmpl.yaml +218 -0
  63. package/bmad-core/templates/front-end-spec-tmpl.yaml +349 -0
  64. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +823 -0
  65. package/bmad-core/templates/market-research-tmpl.yaml +252 -0
  66. package/bmad-core/templates/prd-tmpl.yaml +202 -0
  67. package/bmad-core/templates/project-brief-tmpl.yaml +221 -0
  68. package/bmad-core/templates/qa-gate-tmpl.yaml +102 -0
  69. package/bmad-core/templates/story-tmpl.yaml +137 -0
  70. package/bmad-core/workflows/brownfield-fullstack.yaml +297 -0
  71. package/bmad-core/workflows/brownfield-service.yaml +187 -0
  72. package/bmad-core/workflows/brownfield-ui.yaml +197 -0
  73. package/{.bmad-core/workflows/greenfield-fullstack.yml → bmad-core/workflows/greenfield-fullstack.yaml} +140 -77
  74. package/bmad-core/workflows/greenfield-service.yaml +206 -0
  75. package/bmad-core/workflows/greenfield-ui.yaml +235 -0
  76. package/common/tasks/create-doc.md +101 -0
  77. package/{.bmad-core → common}/tasks/execute-checklist.md +2 -13
  78. package/common/utils/bmad-doc-template.md +325 -0
  79. package/common/utils/workflow-management.md +69 -0
  80. package/dist/agents/analyst.txt +2889 -0
  81. package/dist/agents/architect.txt +3552 -0
  82. package/dist/agents/bmad-master.txt +8769 -0
  83. package/dist/agents/bmad-orchestrator.txt +1513 -0
  84. package/dist/agents/dev.txt +414 -0
  85. package/{.bmad-core/web-bundles → dist}/agents/pm.txt +668 -1119
  86. package/{.bmad-core/web-bundles → dist}/agents/po.txt +341 -484
  87. package/dist/agents/qa.txt +1987 -0
  88. package/dist/agents/sm.txt +658 -0
  89. package/dist/agents/ux-expert.txt +694 -0
  90. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +2371 -0
  91. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +1620 -0
  92. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +815 -0
  93. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +10952 -0
  94. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4012 -0
  95. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +3698 -0
  96. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +450 -0
  97. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +973 -0
  98. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +15376 -0
  99. package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +2075 -0
  100. package/dist/teams/team-all.txt +12682 -0
  101. package/dist/teams/team-fullstack.txt +10421 -0
  102. package/dist/teams/team-ide-minimal.txt +5103 -0
  103. package/dist/teams/team-no-ui.txt +8980 -0
  104. package/docs/GUIDING-PRINCIPLES.md +91 -0
  105. package/docs/core-architecture.md +219 -0
  106. package/docs/enhanced-ide-development-workflow.md +248 -0
  107. package/docs/expansion-packs.md +280 -0
  108. package/docs/how-to-contribute-with-pull-requests.md +158 -0
  109. package/docs/user-guide.md +504 -0
  110. package/docs/versioning-and-releases.md +115 -53
  111. package/docs/versions.md +4 -5
  112. package/docs/working-in-the-brownfield.md +597 -0
  113. package/eslint.config.mjs +119 -0
  114. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/Complete AI Agent System - Flowchart.svg +102 -0
  115. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash copy.txt +13 -0
  116. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash.txt +13 -0
  117. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.2 Agent Development Kit Installation/1.2.2 - Basic Project Structure - txt.txt +25 -0
  118. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.1 - settings.py +34 -0
  119. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.2 - main.py - Base Application.py +70 -0
  120. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.4 Deployment Configuration/1.4.2 - cloudbuild.yaml +26 -0
  121. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md +109 -0
  122. package/expansion-packs/README.md +2 -112
  123. package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +13 -0
  124. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +71 -0
  125. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +78 -0
  126. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +64 -0
  127. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +201 -0
  128. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +160 -0
  129. package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +8 -0
  130. package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +250 -0
  131. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +647 -0
  132. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +110 -0
  133. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +216 -0
  134. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +290 -0
  135. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +613 -0
  136. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +356 -0
  137. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +343 -0
  138. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +253 -0
  139. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  140. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  141. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +175 -0
  142. package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +14 -0
  143. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
  144. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +77 -0
  145. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +78 -0
  146. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +65 -0
  147. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +391 -0
  148. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
  149. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +201 -0
  150. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +124 -0
  151. package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +6 -0
  152. package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +769 -0
  153. package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +586 -0
  154. package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +110 -0
  155. package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +141 -0
  156. package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +184 -0
  157. package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +290 -0
  158. package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
  159. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +1030 -0
  160. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +356 -0
  161. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +705 -0
  162. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +256 -0
  163. package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  164. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  165. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +175 -0
  166. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/README.md +9 -9
  167. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/agents/infra-devops-platform.md +30 -18
  168. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/checklists/infrastructure-checklist.md +1 -1
  169. package/expansion-packs/bmad-infrastructure-devops/config.yaml +9 -0
  170. package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +305 -0
  171. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/tasks/review-infrastructure.md +4 -5
  172. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/tasks/validate-infrastructure.md +4 -5
  173. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +424 -0
  174. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +629 -0
  175. package/package.json +74 -42
  176. package/prettier.config.mjs +32 -0
  177. package/release_notes.md +30 -0
  178. package/tools/bmad-npx-wrapper.js +13 -15
  179. package/tools/builders/web-builder.js +544 -15
  180. package/tools/bump-all-versions.js +115 -0
  181. package/tools/bump-expansion-version.js +90 -0
  182. package/tools/cli.js +65 -32
  183. package/tools/flattener/aggregate.js +76 -0
  184. package/tools/flattener/binary.js +80 -0
  185. package/tools/flattener/discovery.js +71 -0
  186. package/tools/flattener/files.js +35 -0
  187. package/tools/flattener/ignoreRules.js +176 -0
  188. package/tools/flattener/main.js +573 -0
  189. package/tools/flattener/projectRoot.js +206 -0
  190. package/tools/flattener/prompts.js +44 -0
  191. package/tools/flattener/stats.helpers.js +395 -0
  192. package/tools/flattener/stats.js +80 -0
  193. package/tools/flattener/test-matrix.js +413 -0
  194. package/tools/flattener/xml.js +88 -0
  195. package/tools/installer/README.md +3 -53
  196. package/tools/installer/bin/bmad.js +475 -90
  197. package/tools/installer/config/ide-agent-config.yaml +58 -0
  198. package/tools/installer/config/install.config.yaml +123 -0
  199. package/tools/installer/lib/config-loader.js +208 -40
  200. package/tools/installer/lib/file-manager.js +258 -55
  201. package/tools/installer/lib/ide-base-setup.js +228 -0
  202. package/tools/installer/lib/ide-setup.js +1265 -253
  203. package/tools/installer/lib/installer.js +1651 -310
  204. package/tools/installer/lib/memory-profiler.js +225 -0
  205. package/tools/installer/lib/module-manager.js +114 -0
  206. package/tools/installer/lib/resource-locator.js +308 -0
  207. package/tools/installer/package.json +25 -24
  208. package/tools/lib/dependency-resolver.js +44 -48
  209. package/tools/lib/yaml-utils.js +29 -0
  210. package/tools/md-assets/web-agent-startup-instructions.md +39 -0
  211. package/tools/preview-release-notes.js +66 -0
  212. package/tools/shared/bannerArt.js +105 -0
  213. package/tools/sync-installer-version.js +7 -9
  214. package/tools/update-expansion-version.js +53 -0
  215. package/tools/upgraders/v3-to-v4-upgrader.js +221 -320
  216. package/tools/version-bump.js +42 -27
  217. package/tools/yaml-format.js +57 -44
  218. package/.bmad-core/agent-teams/team-all.yml +0 -16
  219. package/.bmad-core/agent-teams/team-fullstack.yml +0 -26
  220. package/.bmad-core/agent-teams/team-no-ui.yml +0 -15
  221. package/.bmad-core/agents/analyst.md +0 -59
  222. package/.bmad-core/agents/architect.md +0 -66
  223. package/.bmad-core/agents/bmad-master.md +0 -104
  224. package/.bmad-core/agents/bmad-orchestrator.md +0 -81
  225. package/.bmad-core/agents/dev.md +0 -70
  226. package/.bmad-core/agents/pm.md +0 -59
  227. package/.bmad-core/agents/po.md +0 -60
  228. package/.bmad-core/agents/qa.md +0 -52
  229. package/.bmad-core/agents/sm.md +0 -55
  230. package/.bmad-core/agents/ux-expert.md +0 -66
  231. package/.bmad-core/data/bmad-kb.md +0 -47
  232. package/.bmad-core/schemas/agent-team-schema.yml +0 -153
  233. package/.bmad-core/tasks/advanced-elicitation.md +0 -92
  234. package/.bmad-core/tasks/brainstorming-techniques.md +0 -238
  235. package/.bmad-core/tasks/core-dump.md +0 -74
  236. package/.bmad-core/tasks/create-agent.md +0 -202
  237. package/.bmad-core/tasks/create-doc.md +0 -74
  238. package/.bmad-core/tasks/create-expansion-pack.md +0 -425
  239. package/.bmad-core/tasks/create-next-story.md +0 -206
  240. package/.bmad-core/tasks/create-team.md +0 -229
  241. package/.bmad-core/tasks/doc-migration-task.md +0 -143
  242. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +0 -58
  243. package/.bmad-core/templates/agent-tmpl.md +0 -58
  244. package/.bmad-core/templates/architecture-tmpl.md +0 -771
  245. package/.bmad-core/templates/brownfield-architecture-tmpl.md +0 -542
  246. package/.bmad-core/templates/brownfield-prd-tmpl.md +0 -240
  247. package/.bmad-core/templates/competitor-analysis-tmpl.md +0 -289
  248. package/.bmad-core/templates/expansion-pack-plan-tmpl.md +0 -91
  249. package/.bmad-core/templates/front-end-architecture-tmpl.md +0 -173
  250. package/.bmad-core/templates/front-end-spec-tmpl.md +0 -411
  251. package/.bmad-core/templates/fullstack-architecture-tmpl.md +0 -1016
  252. package/.bmad-core/templates/market-research-tmpl.md +0 -261
  253. package/.bmad-core/templates/prd-tmpl.md +0 -200
  254. package/.bmad-core/templates/project-brief-tmpl.md +0 -228
  255. package/.bmad-core/templates/simple-project-prd-tmpl.md +0 -461
  256. package/.bmad-core/templates/story-tmpl.md +0 -61
  257. package/.bmad-core/templates/web-agent-startup-instructions-template.md +0 -39
  258. package/.bmad-core/utils/agent-switcher.ide.md +0 -112
  259. package/.bmad-core/utils/template-format.md +0 -26
  260. package/.bmad-core/utils/workflow-management.md +0 -224
  261. package/.bmad-core/web-bundles/agents/analyst.txt +0 -1684
  262. package/.bmad-core/web-bundles/agents/architect.txt +0 -3584
  263. package/.bmad-core/web-bundles/agents/bmad-master.txt +0 -9491
  264. package/.bmad-core/web-bundles/agents/bmad-orchestrator.txt +0 -1466
  265. package/.bmad-core/web-bundles/agents/dev.txt +0 -316
  266. package/.bmad-core/web-bundles/agents/qa.txt +0 -129
  267. package/.bmad-core/web-bundles/agents/sm.txt +0 -658
  268. package/.bmad-core/web-bundles/agents/ux-expert.txt +0 -1099
  269. package/.bmad-core/web-bundles/teams/team-all.txt +0 -10757
  270. package/.bmad-core/web-bundles/teams/team-fullstack.txt +0 -10109
  271. package/.bmad-core/web-bundles/teams/team-no-ui.txt +0 -8950
  272. package/.bmad-core/workflows/brownfield-fullstack.yml +0 -116
  273. package/.bmad-core/workflows/brownfield-service.yml +0 -117
  274. package/.bmad-core/workflows/brownfield-ui.yml +0 -127
  275. package/.bmad-core/workflows/greenfield-service.yml +0 -143
  276. package/.bmad-core/workflows/greenfield-ui.yml +0 -172
  277. package/.claude/commands/analyst.md +0 -63
  278. package/.claude/commands/architect.md +0 -70
  279. package/.claude/commands/bmad-master.md +0 -108
  280. package/.claude/commands/bmad-orchestrator.md +0 -85
  281. package/.claude/commands/dev.md +0 -74
  282. package/.claude/commands/pm.md +0 -63
  283. package/.claude/commands/po.md +0 -64
  284. package/.claude/commands/qa.md +0 -56
  285. package/.claude/commands/sm.md +0 -59
  286. package/.claude/commands/ux-expert.md +0 -70
  287. package/.cursor/rules/analyst.mdc +0 -77
  288. package/.cursor/rules/architect.mdc +0 -84
  289. package/.cursor/rules/bmad-master.mdc +0 -122
  290. package/.cursor/rules/bmad-orchestrator.mdc +0 -99
  291. package/.cursor/rules/dev.mdc +0 -88
  292. package/.cursor/rules/pm.mdc +0 -77
  293. package/.cursor/rules/po.mdc +0 -78
  294. package/.cursor/rules/qa.mdc +0 -70
  295. package/.cursor/rules/sm.mdc +0 -73
  296. package/.cursor/rules/ux-expert.mdc +0 -84
  297. package/.github/workflows/release.yml +0 -59
  298. package/.releaserc.json +0 -18
  299. package/.roo/.roomodes +0 -95
  300. package/.roo/README.md +0 -38
  301. package/.vscode/extensions.json +0 -6
  302. package/.windsurf/rules/analyst.md +0 -71
  303. package/.windsurf/rules/architect.md +0 -78
  304. package/.windsurf/rules/bmad-master.md +0 -116
  305. package/.windsurf/rules/bmad-orchestrator.md +0 -93
  306. package/.windsurf/rules/dev.md +0 -82
  307. package/.windsurf/rules/pm.md +0 -71
  308. package/.windsurf/rules/po.md +0 -72
  309. package/.windsurf/rules/qa.md +0 -64
  310. package/.windsurf/rules/sm.md +0 -67
  311. package/.windsurf/rules/ux-expert.md +0 -78
  312. package/docs/bmad-workflow-guide.md +0 -161
  313. package/docs/claude-code-guide.md +0 -119
  314. package/docs/cursor-guide.md +0 -127
  315. package/docs/roo-code-guide.md +0 -140
  316. package/docs/sample-output/simple-fullstack-greenfield/prd.md +0 -42
  317. package/docs/windsurf-guide.md +0 -127
  318. package/expansion-packs/infrastructure-devops/manifest.yml +0 -38
  319. package/expansion-packs/infrastructure-devops/templates/infrastructure-architecture-tmpl.md +0 -415
  320. package/expansion-packs/infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.md +0 -0
  321. package/tools/installer/config/install.config.yml +0 -139
  322. package/tools/installer/package-lock.json +0 -906
  323. package/tools/installer/templates/claude-commands.md +0 -7
  324. package/tools/installer/templates/cursor-rules.md +0 -22
  325. package/tools/installer/templates/windsurf-rules.md +0 -22
  326. package/tools/semantic-release-sync-installer.js +0 -31
  327. /package/{.bmad-core → bmad-core}/data/technical-preferences.md +0 -0
  328. /package/{.bmad-core → bmad-core}/tasks/brownfield-create-epic.md +0 -0
  329. /package/{.bmad-core → bmad-core}/tasks/brownfield-create-story.md +0 -0
@@ -0,0 +1,314 @@
1
+ # review-story
2
+
3
+ Perform a comprehensive test architecture review with quality gate decision. This adaptive, risk-aware review creates both a story update and a detailed gate file.
4
+
5
+ ## Inputs
6
+
7
+ ```yaml
8
+ required:
9
+ - story_id: '{epic}.{story}' # e.g., "1.3"
10
+ - story_path: '{devStoryLocation}/{epic}.{story}.*.md' # Path from core-config.yaml
11
+ - story_title: '{title}' # If missing, derive from story file H1
12
+ - story_slug: '{slug}' # If missing, derive from title (lowercase, hyphenated)
13
+ ```
14
+
15
+ ## Prerequisites
16
+
17
+ - Story status must be "Review"
18
+ - Developer has completed all tasks and updated the File List
19
+ - All automated tests are passing
20
+
21
+ ## Review Process - Adaptive Test Architecture
22
+
23
+ ### 1. Risk Assessment (Determines Review Depth)
24
+
25
+ **Auto-escalate to deep review when:**
26
+
27
+ - Auth/payment/security files touched
28
+ - No tests added to story
29
+ - Diff > 500 lines
30
+ - Previous gate was FAIL/CONCERNS
31
+ - Story has > 5 acceptance criteria
32
+
33
+ ### 2. Comprehensive Analysis
34
+
35
+ **A. Requirements Traceability**
36
+
37
+ - Map each acceptance criteria to its validating tests (document mapping with Given-When-Then, not test code)
38
+ - Identify coverage gaps
39
+ - Verify all requirements have corresponding test cases
40
+
41
+ **B. Code Quality Review**
42
+
43
+ - Architecture and design patterns
44
+ - Refactoring opportunities (and perform them)
45
+ - Code duplication or inefficiencies
46
+ - Performance optimizations
47
+ - Security vulnerabilities
48
+ - Best practices adherence
49
+
50
+ **C. Test Architecture Assessment**
51
+
52
+ - Test coverage adequacy at appropriate levels
53
+ - Test level appropriateness (what should be unit vs integration vs e2e)
54
+ - Test design quality and maintainability
55
+ - Test data management strategy
56
+ - Mock/stub usage appropriateness
57
+ - Edge case and error scenario coverage
58
+ - Test execution time and reliability
59
+
60
+ **D. Non-Functional Requirements (NFRs)**
61
+
62
+ - Security: Authentication, authorization, data protection
63
+ - Performance: Response times, resource usage
64
+ - Reliability: Error handling, recovery mechanisms
65
+ - Maintainability: Code clarity, documentation
66
+
67
+ **E. Testability Evaluation**
68
+
69
+ - Controllability: Can we control the inputs?
70
+ - Observability: Can we observe the outputs?
71
+ - Debuggability: Can we debug failures easily?
72
+
73
+ **F. Technical Debt Identification**
74
+
75
+ - Accumulated shortcuts
76
+ - Missing tests
77
+ - Outdated dependencies
78
+ - Architecture violations
79
+
80
+ ### 3. Active Refactoring
81
+
82
+ - Refactor code where safe and appropriate
83
+ - Run tests to ensure changes don't break functionality
84
+ - Document all changes in QA Results section with clear WHY and HOW
85
+ - Do NOT alter story content beyond QA Results section
86
+ - Do NOT change story Status or File List; recommend next status only
87
+
88
+ ### 4. Standards Compliance Check
89
+
90
+ - Verify adherence to `docs/coding-standards.md`
91
+ - Check compliance with `docs/unified-project-structure.md`
92
+ - Validate testing approach against `docs/testing-strategy.md`
93
+ - Ensure all guidelines mentioned in the story are followed
94
+
95
+ ### 5. Acceptance Criteria Validation
96
+
97
+ - Verify each AC is fully implemented
98
+ - Check for any missing functionality
99
+ - Validate edge cases are handled
100
+
101
+ ### 6. Documentation and Comments
102
+
103
+ - Verify code is self-documenting where possible
104
+ - Add comments for complex logic if missing
105
+ - Ensure any API changes are documented
106
+
107
+ ## Output 1: Update Story File - QA Results Section ONLY
108
+
109
+ **CRITICAL**: You are ONLY authorized to update the "QA Results" section of the story file. DO NOT modify any other sections.
110
+
111
+ **QA Results Anchor Rule:**
112
+
113
+ - If `## QA Results` doesn't exist, append it at end of file
114
+ - If it exists, append a new dated entry below existing entries
115
+ - Never edit other sections
116
+
117
+ After review and any refactoring, append your results to the story file in the QA Results section:
118
+
119
+ ```markdown
120
+ ## QA Results
121
+
122
+ ### Review Date: [Date]
123
+
124
+ ### Reviewed By: Quinn (Test Architect)
125
+
126
+ ### Code Quality Assessment
127
+
128
+ [Overall assessment of implementation quality]
129
+
130
+ ### Refactoring Performed
131
+
132
+ [List any refactoring you performed with explanations]
133
+
134
+ - **File**: [filename]
135
+ - **Change**: [what was changed]
136
+ - **Why**: [reason for change]
137
+ - **How**: [how it improves the code]
138
+
139
+ ### Compliance Check
140
+
141
+ - Coding Standards: [✓/✗] [notes if any]
142
+ - Project Structure: [✓/✗] [notes if any]
143
+ - Testing Strategy: [✓/✗] [notes if any]
144
+ - All ACs Met: [✓/✗] [notes if any]
145
+
146
+ ### Improvements Checklist
147
+
148
+ [Check off items you handled yourself, leave unchecked for dev to address]
149
+
150
+ - [x] Refactored user service for better error handling (services/user.service.ts)
151
+ - [x] Added missing edge case tests (services/user.service.test.ts)
152
+ - [ ] Consider extracting validation logic to separate validator class
153
+ - [ ] Add integration test for error scenarios
154
+ - [ ] Update API documentation for new error codes
155
+
156
+ ### Security Review
157
+
158
+ [Any security concerns found and whether addressed]
159
+
160
+ ### Performance Considerations
161
+
162
+ [Any performance issues found and whether addressed]
163
+
164
+ ### Files Modified During Review
165
+
166
+ [If you modified files, list them here - ask Dev to update File List]
167
+
168
+ ### Gate Status
169
+
170
+ Gate: {STATUS} → docs/qa/gates/{epic}.{story}-{slug}.yml
171
+ Risk profile: docs/qa/assessments/{epic}.{story}-risk-{YYYYMMDD}.md
172
+ NFR assessment: docs/qa/assessments/{epic}.{story}-nfr-{YYYYMMDD}.md
173
+
174
+ # Note: Paths should reference core-config.yaml for custom configurations
175
+
176
+ ### Recommended Status
177
+
178
+ [✓ Ready for Done] / [✗ Changes Required - See unchecked items above]
179
+ (Story owner decides final status)
180
+ ```
181
+
182
+ ## Output 2: Create Quality Gate File
183
+
184
+ **Template and Directory:**
185
+
186
+ - Render from `templates/qa-gate-tmpl.yaml`
187
+ - Create `docs/qa/gates/` directory if missing (or configure in core-config.yaml)
188
+ - Save to: `docs/qa/gates/{epic}.{story}-{slug}.yml`
189
+
190
+ Gate file structure:
191
+
192
+ ```yaml
193
+ schema: 1
194
+ story: '{epic}.{story}'
195
+ story_title: '{story title}'
196
+ gate: PASS|CONCERNS|FAIL|WAIVED
197
+ status_reason: '1-2 sentence explanation of gate decision'
198
+ reviewer: 'Quinn (Test Architect)'
199
+ updated: '{ISO-8601 timestamp}'
200
+
201
+ top_issues: [] # Empty if no issues
202
+ waiver: { active: false } # Set active: true only if WAIVED
203
+
204
+ # Extended fields (optional but recommended):
205
+ quality_score: 0-100 # 100 - (20*FAILs) - (10*CONCERNS) or use technical-preferences.md weights
206
+ expires: '{ISO-8601 timestamp}' # Typically 2 weeks from review
207
+
208
+ evidence:
209
+ tests_reviewed: { count }
210
+ risks_identified: { count }
211
+ trace:
212
+ ac_covered: [1, 2, 3] # AC numbers with test coverage
213
+ ac_gaps: [4] # AC numbers lacking coverage
214
+
215
+ nfr_validation:
216
+ security:
217
+ status: PASS|CONCERNS|FAIL
218
+ notes: 'Specific findings'
219
+ performance:
220
+ status: PASS|CONCERNS|FAIL
221
+ notes: 'Specific findings'
222
+ reliability:
223
+ status: PASS|CONCERNS|FAIL
224
+ notes: 'Specific findings'
225
+ maintainability:
226
+ status: PASS|CONCERNS|FAIL
227
+ notes: 'Specific findings'
228
+
229
+ recommendations:
230
+ immediate: # Must fix before production
231
+ - action: 'Add rate limiting'
232
+ refs: ['api/auth/login.ts']
233
+ future: # Can be addressed later
234
+ - action: 'Consider caching'
235
+ refs: ['services/data.ts']
236
+ ```
237
+
238
+ ### Gate Decision Criteria
239
+
240
+ **Deterministic rule (apply in order):**
241
+
242
+ If risk_summary exists, apply its thresholds first (≥9 → FAIL, ≥6 → CONCERNS), then NFR statuses, then top_issues severity.
243
+
244
+ 1. **Risk thresholds (if risk_summary present):**
245
+ - If any risk score ≥ 9 → Gate = FAIL (unless waived)
246
+ - Else if any score ≥ 6 → Gate = CONCERNS
247
+
248
+ 2. **Test coverage gaps (if trace available):**
249
+ - If any P0 test from test-design is missing → Gate = CONCERNS
250
+ - If security/data-loss P0 test missing → Gate = FAIL
251
+
252
+ 3. **Issue severity:**
253
+ - If any `top_issues.severity == high` → Gate = FAIL (unless waived)
254
+ - Else if any `severity == medium` → Gate = CONCERNS
255
+
256
+ 4. **NFR statuses:**
257
+ - If any NFR status is FAIL → Gate = FAIL
258
+ - Else if any NFR status is CONCERNS → Gate = CONCERNS
259
+ - Else → Gate = PASS
260
+
261
+ - WAIVED only when waiver.active: true with reason/approver
262
+
263
+ Detailed criteria:
264
+
265
+ - **PASS**: All critical requirements met, no blocking issues
266
+ - **CONCERNS**: Non-critical issues found, team should review
267
+ - **FAIL**: Critical issues that should be addressed
268
+ - **WAIVED**: Issues acknowledged but explicitly waived by team
269
+
270
+ ### Quality Score Calculation
271
+
272
+ ```text
273
+ quality_score = 100 - (20 × number of FAILs) - (10 × number of CONCERNS)
274
+ Bounded between 0 and 100
275
+ ```
276
+
277
+ If `technical-preferences.md` defines custom weights, use those instead.
278
+
279
+ ### Suggested Owner Convention
280
+
281
+ For each issue in `top_issues`, include a `suggested_owner`:
282
+
283
+ - `dev`: Code changes needed
284
+ - `sm`: Requirements clarification needed
285
+ - `po`: Business decision needed
286
+
287
+ ## Key Principles
288
+
289
+ - You are a Test Architect providing comprehensive quality assessment
290
+ - You have the authority to improve code directly when appropriate
291
+ - Always explain your changes for learning purposes
292
+ - Balance between perfection and pragmatism
293
+ - Focus on risk-based prioritization
294
+ - Provide actionable recommendations with clear ownership
295
+
296
+ ## Blocking Conditions
297
+
298
+ Stop the review and request clarification if:
299
+
300
+ - Story file is incomplete or missing critical sections
301
+ - File List is empty or clearly incomplete
302
+ - No tests exist when they were required
303
+ - Code changes don't align with story requirements
304
+ - Critical architectural issues that require discussion
305
+
306
+ ## Completion
307
+
308
+ After review:
309
+
310
+ 1. Update the QA Results section in the story file
311
+ 2. Create the gate file in `docs/qa/gates/`
312
+ 3. Recommend status: "Ready for Done" or "Changes Required" (owner decides)
313
+ 4. If files were modified, list them in QA Results and ask Dev to update File List
314
+ 5. Always provide constructive feedback and actionable recommendations
@@ -0,0 +1,353 @@
1
+ # risk-profile
2
+
3
+ Generate a comprehensive risk assessment matrix for a story implementation using probability × impact analysis.
4
+
5
+ ## Inputs
6
+
7
+ ```yaml
8
+ required:
9
+ - story_id: '{epic}.{story}' # e.g., "1.3"
10
+ - story_path: 'docs/stories/{epic}.{story}.*.md'
11
+ - story_title: '{title}' # If missing, derive from story file H1
12
+ - story_slug: '{slug}' # If missing, derive from title (lowercase, hyphenated)
13
+ ```
14
+
15
+ ## Purpose
16
+
17
+ Identify, assess, and prioritize risks in the story implementation. Provide risk mitigation strategies and testing focus areas based on risk levels.
18
+
19
+ ## Risk Assessment Framework
20
+
21
+ ### Risk Categories
22
+
23
+ **Category Prefixes:**
24
+
25
+ - `TECH`: Technical Risks
26
+ - `SEC`: Security Risks
27
+ - `PERF`: Performance Risks
28
+ - `DATA`: Data Risks
29
+ - `BUS`: Business Risks
30
+ - `OPS`: Operational Risks
31
+
32
+ 1. **Technical Risks (TECH)**
33
+ - Architecture complexity
34
+ - Integration challenges
35
+ - Technical debt
36
+ - Scalability concerns
37
+ - System dependencies
38
+
39
+ 2. **Security Risks (SEC)**
40
+ - Authentication/authorization flaws
41
+ - Data exposure vulnerabilities
42
+ - Injection attacks
43
+ - Session management issues
44
+ - Cryptographic weaknesses
45
+
46
+ 3. **Performance Risks (PERF)**
47
+ - Response time degradation
48
+ - Throughput bottlenecks
49
+ - Resource exhaustion
50
+ - Database query optimization
51
+ - Caching failures
52
+
53
+ 4. **Data Risks (DATA)**
54
+ - Data loss potential
55
+ - Data corruption
56
+ - Privacy violations
57
+ - Compliance issues
58
+ - Backup/recovery gaps
59
+
60
+ 5. **Business Risks (BUS)**
61
+ - Feature doesn't meet user needs
62
+ - Revenue impact
63
+ - Reputation damage
64
+ - Regulatory non-compliance
65
+ - Market timing
66
+
67
+ 6. **Operational Risks (OPS)**
68
+ - Deployment failures
69
+ - Monitoring gaps
70
+ - Incident response readiness
71
+ - Documentation inadequacy
72
+ - Knowledge transfer issues
73
+
74
+ ## Risk Analysis Process
75
+
76
+ ### 1. Risk Identification
77
+
78
+ For each category, identify specific risks:
79
+
80
+ ```yaml
81
+ risk:
82
+ id: 'SEC-001' # Use prefixes: SEC, PERF, DATA, BUS, OPS, TECH
83
+ category: security
84
+ title: 'Insufficient input validation on user forms'
85
+ description: 'Form inputs not properly sanitized could lead to XSS attacks'
86
+ affected_components:
87
+ - 'UserRegistrationForm'
88
+ - 'ProfileUpdateForm'
89
+ detection_method: 'Code review revealed missing validation'
90
+ ```
91
+
92
+ ### 2. Risk Assessment
93
+
94
+ Evaluate each risk using probability × impact:
95
+
96
+ **Probability Levels:**
97
+
98
+ - `High (3)`: Likely to occur (>70% chance)
99
+ - `Medium (2)`: Possible occurrence (30-70% chance)
100
+ - `Low (1)`: Unlikely to occur (<30% chance)
101
+
102
+ **Impact Levels:**
103
+
104
+ - `High (3)`: Severe consequences (data breach, system down, major financial loss)
105
+ - `Medium (2)`: Moderate consequences (degraded performance, minor data issues)
106
+ - `Low (1)`: Minor consequences (cosmetic issues, slight inconvenience)
107
+
108
+ **Risk Score = Probability × Impact**
109
+
110
+ - 9: Critical Risk (Red)
111
+ - 6: High Risk (Orange)
112
+ - 4: Medium Risk (Yellow)
113
+ - 2-3: Low Risk (Green)
114
+ - 1: Minimal Risk (Blue)
115
+
116
+ ### 3. Risk Prioritization
117
+
118
+ Create risk matrix:
119
+
120
+ ```markdown
121
+ ## Risk Matrix
122
+
123
+ | Risk ID | Description | Probability | Impact | Score | Priority |
124
+ | -------- | ----------------------- | ----------- | ---------- | ----- | -------- |
125
+ | SEC-001 | XSS vulnerability | High (3) | High (3) | 9 | Critical |
126
+ | PERF-001 | Slow query on dashboard | Medium (2) | Medium (2) | 4 | Medium |
127
+ | DATA-001 | Backup failure | Low (1) | High (3) | 3 | Low |
128
+ ```
129
+
130
+ ### 4. Risk Mitigation Strategies
131
+
132
+ For each identified risk, provide mitigation:
133
+
134
+ ```yaml
135
+ mitigation:
136
+ risk_id: 'SEC-001'
137
+ strategy: 'preventive' # preventive|detective|corrective
138
+ actions:
139
+ - 'Implement input validation library (e.g., validator.js)'
140
+ - 'Add CSP headers to prevent XSS execution'
141
+ - 'Sanitize all user inputs before storage'
142
+ - 'Escape all outputs in templates'
143
+ testing_requirements:
144
+ - 'Security testing with OWASP ZAP'
145
+ - 'Manual penetration testing of forms'
146
+ - 'Unit tests for validation functions'
147
+ residual_risk: 'Low - Some zero-day vulnerabilities may remain'
148
+ owner: 'dev'
149
+ timeline: 'Before deployment'
150
+ ```
151
+
152
+ ## Outputs
153
+
154
+ ### Output 1: Gate YAML Block
155
+
156
+ Generate for pasting into gate file under `risk_summary`:
157
+
158
+ **Output rules:**
159
+
160
+ - Only include assessed risks; do not emit placeholders
161
+ - Sort risks by score (desc) when emitting highest and any tabular lists
162
+ - If no risks: totals all zeros, omit highest, keep recommendations arrays empty
163
+
164
+ ```yaml
165
+ # risk_summary (paste into gate file):
166
+ risk_summary:
167
+ totals:
168
+ critical: X # score 9
169
+ high: Y # score 6
170
+ medium: Z # score 4
171
+ low: W # score 2-3
172
+ highest:
173
+ id: SEC-001
174
+ score: 9
175
+ title: 'XSS on profile form'
176
+ recommendations:
177
+ must_fix:
178
+ - 'Add input sanitization & CSP'
179
+ monitor:
180
+ - 'Add security alerts for auth endpoints'
181
+ ```
182
+
183
+ ### Output 2: Markdown Report
184
+
185
+ **Save to:** `docs/qa/assessments/{epic}.{story}-risk-{YYYYMMDD}.md`
186
+
187
+ ```markdown
188
+ # Risk Profile: Story {epic}.{story}
189
+
190
+ Date: {date}
191
+ Reviewer: Quinn (Test Architect)
192
+
193
+ ## Executive Summary
194
+
195
+ - Total Risks Identified: X
196
+ - Critical Risks: Y
197
+ - High Risks: Z
198
+ - Risk Score: XX/100 (calculated)
199
+
200
+ ## Critical Risks Requiring Immediate Attention
201
+
202
+ ### 1. [ID]: Risk Title
203
+
204
+ **Score: 9 (Critical)**
205
+ **Probability**: High - Detailed reasoning
206
+ **Impact**: High - Potential consequences
207
+ **Mitigation**:
208
+
209
+ - Immediate action required
210
+ - Specific steps to take
211
+ **Testing Focus**: Specific test scenarios needed
212
+
213
+ ## Risk Distribution
214
+
215
+ ### By Category
216
+
217
+ - Security: X risks (Y critical)
218
+ - Performance: X risks (Y critical)
219
+ - Data: X risks (Y critical)
220
+ - Business: X risks (Y critical)
221
+ - Operational: X risks (Y critical)
222
+
223
+ ### By Component
224
+
225
+ - Frontend: X risks
226
+ - Backend: X risks
227
+ - Database: X risks
228
+ - Infrastructure: X risks
229
+
230
+ ## Detailed Risk Register
231
+
232
+ [Full table of all risks with scores and mitigations]
233
+
234
+ ## Risk-Based Testing Strategy
235
+
236
+ ### Priority 1: Critical Risk Tests
237
+
238
+ - Test scenarios for critical risks
239
+ - Required test types (security, load, chaos)
240
+ - Test data requirements
241
+
242
+ ### Priority 2: High Risk Tests
243
+
244
+ - Integration test scenarios
245
+ - Edge case coverage
246
+
247
+ ### Priority 3: Medium/Low Risk Tests
248
+
249
+ - Standard functional tests
250
+ - Regression test suite
251
+
252
+ ## Risk Acceptance Criteria
253
+
254
+ ### Must Fix Before Production
255
+
256
+ - All critical risks (score 9)
257
+ - High risks affecting security/data
258
+
259
+ ### Can Deploy with Mitigation
260
+
261
+ - Medium risks with compensating controls
262
+ - Low risks with monitoring in place
263
+
264
+ ### Accepted Risks
265
+
266
+ - Document any risks team accepts
267
+ - Include sign-off from appropriate authority
268
+
269
+ ## Monitoring Requirements
270
+
271
+ Post-deployment monitoring for:
272
+
273
+ - Performance metrics for PERF risks
274
+ - Security alerts for SEC risks
275
+ - Error rates for operational risks
276
+ - Business KPIs for business risks
277
+
278
+ ## Risk Review Triggers
279
+
280
+ Review and update risk profile when:
281
+
282
+ - Architecture changes significantly
283
+ - New integrations added
284
+ - Security vulnerabilities discovered
285
+ - Performance issues reported
286
+ - Regulatory requirements change
287
+ ```
288
+
289
+ ## Risk Scoring Algorithm
290
+
291
+ Calculate overall story risk score:
292
+
293
+ ```
294
+ Base Score = 100
295
+ For each risk:
296
+ - Critical (9): Deduct 20 points
297
+ - High (6): Deduct 10 points
298
+ - Medium (4): Deduct 5 points
299
+ - Low (2-3): Deduct 2 points
300
+
301
+ Minimum score = 0 (extremely risky)
302
+ Maximum score = 100 (minimal risk)
303
+ ```
304
+
305
+ ## Risk-Based Recommendations
306
+
307
+ Based on risk profile, recommend:
308
+
309
+ 1. **Testing Priority**
310
+ - Which tests to run first
311
+ - Additional test types needed
312
+ - Test environment requirements
313
+
314
+ 2. **Development Focus**
315
+ - Code review emphasis areas
316
+ - Additional validation needed
317
+ - Security controls to implement
318
+
319
+ 3. **Deployment Strategy**
320
+ - Phased rollout for high-risk changes
321
+ - Feature flags for risky features
322
+ - Rollback procedures
323
+
324
+ 4. **Monitoring Setup**
325
+ - Metrics to track
326
+ - Alerts to configure
327
+ - Dashboard requirements
328
+
329
+ ## Integration with Quality Gates
330
+
331
+ **Deterministic gate mapping:**
332
+
333
+ - Any risk with score ≥ 9 → Gate = FAIL (unless waived)
334
+ - Else if any score ≥ 6 → Gate = CONCERNS
335
+ - Else → Gate = PASS
336
+ - Unmitigated risks → Document in gate
337
+
338
+ ### Output 3: Story Hook Line
339
+
340
+ **Print this line for review task to quote:**
341
+
342
+ ```
343
+ Risk profile: docs/qa/assessments/{epic}.{story}-risk-{YYYYMMDD}.md
344
+ ```
345
+
346
+ ## Key Principles
347
+
348
+ - Identify risks early and systematically
349
+ - Use consistent probability × impact scoring
350
+ - Provide actionable mitigation strategies
351
+ - Link risks to specific test requirements
352
+ - Track residual risk after mitigation
353
+ - Update risk profile as story evolves