bmad-odoo 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/LICENSE +21 -0
  3. package/README.md +317 -0
  4. package/_config/agent-manifest.csv +10 -0
  5. package/_config/manifest.yaml +10 -0
  6. package/_config/workflow-manifest.csv +10 -0
  7. package/bmm/agents/analyst.md +93 -0
  8. package/bmm/agents/architect.md +72 -0
  9. package/bmm/agents/dev.md +85 -0
  10. package/bmm/agents/pm.md +61 -0
  11. package/bmm/agents/quick-flow-solo-dev.md +58 -0
  12. package/bmm/agents/sm.md +56 -0
  13. package/bmm/agents/tea.md +57 -0
  14. package/bmm/agents/tech-writer.md +56 -0
  15. package/bmm/agents/ux-designer.md +56 -0
  16. package/bmm/config.yaml +27 -0
  17. package/bmm/data/odoo-knowledge-base.md +90 -0
  18. package/bmm/teams/default-team.md +17 -0
  19. package/bmm/testarch/odoo-test-design/steps/step-01-init.md +44 -0
  20. package/bmm/testarch/odoo-test-design/steps/step-02-test-cases.md +82 -0
  21. package/bmm/testarch/odoo-test-design/steps/step-03-complete.md +69 -0
  22. package/bmm/testarch/odoo-test-design/workflow.md +30 -0
  23. package/bmm/testarch/odoo-testing-guide.md +30 -0
  24. package/bmm/workflows/1-analysis/analyze-process/process-analysis.template.md +80 -0
  25. package/bmm/workflows/1-analysis/analyze-process/steps/step-01-init.md +44 -0
  26. package/bmm/workflows/1-analysis/analyze-process/steps/step-02-current-state.md +55 -0
  27. package/bmm/workflows/1-analysis/analyze-process/steps/step-03-pain-points.md +67 -0
  28. package/bmm/workflows/1-analysis/analyze-process/steps/step-04-odoo-mapping.md +67 -0
  29. package/bmm/workflows/1-analysis/analyze-process/steps/step-05-recommendations.md +99 -0
  30. package/bmm/workflows/1-analysis/analyze-process/steps/step-06-complete.md +62 -0
  31. package/bmm/workflows/1-analysis/analyze-process/workflow.md +60 -0
  32. package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-01-init.md +45 -0
  33. package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-02-users-stakeholders.md +46 -0
  34. package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-03-odoo-modules.md +59 -0
  35. package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-04-scope-timeline.md +64 -0
  36. package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-05-complete.md +32 -0
  37. package/bmm/workflows/1-analysis/create-odoo-product-brief/workflow.md +35 -0
  38. package/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
  39. package/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +182 -0
  40. package/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +166 -0
  41. package/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +204 -0
  42. package/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +207 -0
  43. package/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +210 -0
  44. package/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +224 -0
  45. package/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +199 -0
  46. package/bmm/workflows/1-analysis/create-product-brief/workflow.md +58 -0
  47. package/bmm/workflows/1-analysis/gap-analysis/steps/step-01-init.md +45 -0
  48. package/bmm/workflows/1-analysis/gap-analysis/steps/step-02-odoo-capabilities.md +36 -0
  49. package/bmm/workflows/1-analysis/gap-analysis/steps/step-03-gap-matrix.md +51 -0
  50. package/bmm/workflows/1-analysis/gap-analysis/workflow.md +45 -0
  51. package/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
  52. package/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
  53. package/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
  54. package/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
  55. package/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
  56. package/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
  57. package/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
  58. package/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
  59. package/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +200 -0
  60. package/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
  61. package/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
  62. package/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
  63. package/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
  64. package/bmm/workflows/1-analysis/research/research.template.md +29 -0
  65. package/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
  66. package/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
  67. package/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
  68. package/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
  69. package/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +239 -0
  70. package/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
  71. package/bmm/workflows/1-analysis/research/workflow.md +173 -0
  72. package/bmm/workflows/2-plan-workflows/create-odoo-addon/steps/step-01-init.md +48 -0
  73. package/bmm/workflows/2-plan-workflows/create-odoo-addon/steps/step-02-technical-design.md +82 -0
  74. package/bmm/workflows/2-plan-workflows/create-odoo-addon/steps/step-03-generate.md +86 -0
  75. package/bmm/workflows/2-plan-workflows/create-odoo-addon/workflow.md +39 -0
  76. package/bmm/workflows/2-plan-workflows/create-odoo-epic/steps/step-01-init.md +55 -0
  77. package/bmm/workflows/2-plan-workflows/create-odoo-epic/steps/step-02-stories.md +53 -0
  78. package/bmm/workflows/2-plan-workflows/create-odoo-epic/steps/step-03-complete.md +39 -0
  79. package/bmm/workflows/2-plan-workflows/create-odoo-epic/workflow.md +35 -0
  80. package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-01-init.md +46 -0
  81. package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-02-functional-requirements.md +56 -0
  82. package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-03-technical-requirements.md +45 -0
  83. package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-04-complete.md +40 -0
  84. package/bmm/workflows/2-plan-workflows/create-odoo-prd/workflow.md +29 -0
  85. package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-01-init.md +52 -0
  86. package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-02-form-design.md +78 -0
  87. package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-03-tree-design.md +84 -0
  88. package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-04-complete.md +55 -0
  89. package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/workflow.md +30 -0
  90. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
  91. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
  92. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
  93. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
  94. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
  95. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
  96. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
  97. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
  98. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
  99. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
  100. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
  101. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
  102. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
  103. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
  104. package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +228 -0
  105. package/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
  106. package/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +43 -0
  107. package/bmm/workflows/2-plan-workflows/plan-odoo-migration/steps/step-01-init.md +49 -0
  108. package/bmm/workflows/2-plan-workflows/plan-odoo-migration/steps/step-02-risk-assessment.md +51 -0
  109. package/bmm/workflows/2-plan-workflows/plan-odoo-migration/steps/step-03-roadmap.md +58 -0
  110. package/bmm/workflows/2-plan-workflows/plan-odoo-migration/workflow.md +29 -0
  111. package/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +13 -0
  112. package/bmm/workflows/2-plan-workflows/prd/prd-template.md +11 -0
  113. package/bmm/workflows/2-plan-workflows/prd/project-types.csv +11 -0
  114. package/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md +197 -0
  115. package/bmm/workflows/2-plan-workflows/prd/steps/step-01b-continue.md +166 -0
  116. package/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md +421 -0
  117. package/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md +290 -0
  118. package/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md +291 -0
  119. package/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md +271 -0
  120. package/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md +262 -0
  121. package/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md +258 -0
  122. package/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md +299 -0
  123. package/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md +270 -0
  124. package/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md +294 -0
  125. package/bmm/workflows/2-plan-workflows/prd/steps/step-11-complete.md +186 -0
  126. package/bmm/workflows/2-plan-workflows/prd/workflow.md +63 -0
  127. package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +190 -0
  128. package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +178 -0
  129. package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
  130. package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +139 -0
  131. package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
  132. package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +133 -0
  133. package/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
  134. package/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +55 -0
  135. package/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
  136. package/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +11 -0
  137. package/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
  138. package/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
  139. package/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
  140. package/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
  141. package/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
  142. package/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
  143. package/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
  144. package/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
  145. package/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
  146. package/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +352 -0
  147. package/bmm/workflows/3-solutioning/create-architecture/workflow.md +50 -0
  148. package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
  149. package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
  150. package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
  151. package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +145 -0
  152. package/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
  153. package/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +59 -0
  154. package/bmm/workflows/3-solutioning/enhance-existing-system/steps/step-01-init.md +44 -0
  155. package/bmm/workflows/3-solutioning/enhance-existing-system/steps/step-02-inheritance-strategy.md +75 -0
  156. package/bmm/workflows/3-solutioning/enhance-existing-system/steps/step-03-implementation.md +64 -0
  157. package/bmm/workflows/3-solutioning/enhance-existing-system/workflow.md +30 -0
  158. package/bmm/workflows/3-solutioning/quick-addon/workflow.md +23 -0
  159. package/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
  160. package/bmm/workflows/4-implementation/code-review/instructions.xml +225 -0
  161. package/bmm/workflows/4-implementation/code-review/workflow.yaml +50 -0
  162. package/bmm/workflows/4-implementation/correct-course/checklist.md +279 -0
  163. package/bmm/workflows/4-implementation/correct-course/instructions.md +206 -0
  164. package/bmm/workflows/4-implementation/correct-course/workflow.yaml +58 -0
  165. package/bmm/workflows/4-implementation/create-next-story/steps/step-01-init.md +53 -0
  166. package/bmm/workflows/4-implementation/create-next-story/steps/step-02-acceptance-criteria.md +63 -0
  167. package/bmm/workflows/4-implementation/create-next-story/steps/step-03-tasks.md +68 -0
  168. package/bmm/workflows/4-implementation/create-next-story/steps/step-04-complete.md +70 -0
  169. package/bmm/workflows/4-implementation/create-next-story/workflow.md +30 -0
  170. package/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
  171. package/bmm/workflows/4-implementation/dev-story/instructions.xml +409 -0
  172. package/bmm/workflows/4-implementation/dev-story/workflow.yaml +25 -0
  173. package/bmm/workflows/4-implementation/rapid-brownfield/steps/step-01-quick-story.md +79 -0
  174. package/bmm/workflows/4-implementation/rapid-brownfield/workflow.md +29 -0
  175. package/bmm/workflows/4-implementation/retrospective/instructions.md +1443 -0
  176. package/bmm/workflows/4-implementation/retrospective/workflow.yaml +57 -0
  177. package/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
  178. package/bmm/workflows/4-implementation/sprint-planning/instructions.md +225 -0
  179. package/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
  180. package/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +52 -0
  181. package/bmm/workflows/4-implementation/sprint-status/instructions.md +229 -0
  182. package/bmm/workflows/4-implementation/sprint-status/workflow.yaml +35 -0
  183. package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-01-understand.md +189 -0
  184. package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-02-investigate.md +144 -0
  185. package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-03-generate.md +128 -0
  186. package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-04-review.md +173 -0
  187. package/bmm/workflows/bmad-quick-flow/create-tech-spec/tech-spec-template.md +74 -0
  188. package/bmm/workflows/bmad-quick-flow/create-tech-spec/workflow.md +79 -0
  189. package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +156 -0
  190. package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +120 -0
  191. package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +113 -0
  192. package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +113 -0
  193. package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +106 -0
  194. package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +140 -0
  195. package/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +52 -0
  196. package/bmm/workflows/document-odoo/steps/step-01-init.md +43 -0
  197. package/bmm/workflows/document-odoo/steps/step-02-readme.md +98 -0
  198. package/bmm/workflows/document-odoo/steps/step-03-user-guide.md +76 -0
  199. package/bmm/workflows/document-odoo/steps/step-04-complete.md +58 -0
  200. package/bmm/workflows/document-odoo/workflow.md +30 -0
  201. package/bmm/workflows/document-project/checklist.md +245 -0
  202. package/bmm/workflows/document-project/documentation-requirements.csv +12 -0
  203. package/bmm/workflows/document-project/instructions.md +221 -0
  204. package/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
  205. package/bmm/workflows/document-project/templates/index-template.md +169 -0
  206. package/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
  207. package/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
  208. package/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
  209. package/bmm/workflows/document-project/workflow.yaml +28 -0
  210. package/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
  211. package/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
  212. package/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
  213. package/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
  214. package/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +90 -0
  215. package/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +127 -0
  216. package/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +39 -0
  217. package/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +130 -0
  218. package/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +26 -0
  219. package/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +43 -0
  220. package/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +141 -0
  221. package/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +26 -0
  222. package/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +49 -0
  223. package/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +241 -0
  224. package/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +26 -0
  225. package/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +38 -0
  226. package/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +133 -0
  227. package/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +26 -0
  228. package/bmm/workflows/generate-project-context/project-context-template.md +21 -0
  229. package/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
  230. package/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
  231. package/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
  232. package/bmm/workflows/generate-project-context/workflow.md +49 -0
  233. package/bmm/workflows/testarch/atdd/atdd-checklist-template.md +364 -0
  234. package/bmm/workflows/testarch/atdd/checklist.md +374 -0
  235. package/bmm/workflows/testarch/atdd/instructions.md +806 -0
  236. package/bmm/workflows/testarch/atdd/workflow.yaml +45 -0
  237. package/bmm/workflows/testarch/automate/checklist.md +582 -0
  238. package/bmm/workflows/testarch/automate/instructions.md +1324 -0
  239. package/bmm/workflows/testarch/automate/workflow.yaml +52 -0
  240. package/bmm/workflows/testarch/ci/checklist.md +248 -0
  241. package/bmm/workflows/testarch/ci/github-actions-template.yaml +198 -0
  242. package/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
  243. package/bmm/workflows/testarch/ci/instructions.md +536 -0
  244. package/bmm/workflows/testarch/ci/workflow.yaml +45 -0
  245. package/bmm/workflows/testarch/framework/checklist.md +321 -0
  246. package/bmm/workflows/testarch/framework/instructions.md +481 -0
  247. package/bmm/workflows/testarch/framework/workflow.yaml +47 -0
  248. package/bmm/workflows/testarch/nfr-assess/checklist.md +407 -0
  249. package/bmm/workflows/testarch/nfr-assess/instructions.md +722 -0
  250. package/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +445 -0
  251. package/bmm/workflows/testarch/nfr-assess/workflow.yaml +47 -0
  252. package/bmm/workflows/testarch/test-design/checklist.md +235 -0
  253. package/bmm/workflows/testarch/test-design/instructions.md +788 -0
  254. package/bmm/workflows/testarch/test-design/test-design-template.md +294 -0
  255. package/bmm/workflows/testarch/test-design/workflow.yaml +54 -0
  256. package/bmm/workflows/testarch/test-review/checklist.md +472 -0
  257. package/bmm/workflows/testarch/test-review/instructions.md +628 -0
  258. package/bmm/workflows/testarch/test-review/test-review-template.md +390 -0
  259. package/bmm/workflows/testarch/test-review/workflow.yaml +46 -0
  260. package/bmm/workflows/testarch/trace/checklist.md +655 -0
  261. package/bmm/workflows/testarch/trace/instructions.md +1047 -0
  262. package/bmm/workflows/testarch/trace/trace-template.md +675 -0
  263. package/bmm/workflows/testarch/trace/workflow.yaml +55 -0
  264. package/bmm/workflows/workflow-status/init/instructions.md +346 -0
  265. package/bmm/workflows/workflow-status/init/workflow.yaml +29 -0
  266. package/bmm/workflows/workflow-status/instructions.md +395 -0
  267. package/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +103 -0
  268. package/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +100 -0
  269. package/bmm/workflows/workflow-status/paths/method-brownfield.yaml +103 -0
  270. package/bmm/workflows/workflow-status/paths/method-greenfield.yaml +100 -0
  271. package/bmm/workflows/workflow-status/project-levels.yaml +59 -0
  272. package/bmm/workflows/workflow-status/workflow-status-template.yaml +24 -0
  273. package/bmm/workflows/workflow-status/workflow.yaml +30 -0
  274. package/core/agents/bmad-odoo-master.md +61 -0
  275. package/core/config.yaml +7 -0
  276. package/core/resources/README.md +5 -0
  277. package/core/tasks/README.md +7 -0
  278. package/core/workflows/README.md +8 -0
  279. package/index.js +84 -0
  280. package/package.json +48 -0
  281. package/scripts/postinstall.js +447 -0
  282. package/scripts/setup-cli.js +17 -0
@@ -0,0 +1,245 @@
1
+ # Document Project Workflow - Validation Checklist
2
+
3
+ ## Scan Level and Resumability
4
+
5
+ - [ ] Scan level selection offered (quick/deep/exhaustive) for initial_scan and full_rescan modes
6
+ - [ ] Deep-dive mode automatically uses exhaustive scan (no choice given)
7
+ - [ ] Quick scan does NOT read source files (only patterns, configs, manifests)
8
+ - [ ] Deep scan reads files in critical directories per project type
9
+ - [ ] Exhaustive scan reads ALL source files (excluding node_modules, dist, build)
10
+ - [ ] State file (project-scan-report.json) created at workflow start
11
+ - [ ] State file updated after each step completion
12
+ - [ ] State file contains all required fields per schema
13
+ - [ ] Resumability prompt shown if state file exists and is <24 hours old
14
+ - [ ] Old state files (>24 hours) automatically archived
15
+ - [ ] Resume functionality loads previous state correctly
16
+ - [ ] Workflow can jump to correct step when resuming
17
+
18
+ ## Write-as-you-go Architecture
19
+
20
+ - [ ] Each document written to disk IMMEDIATELY after generation
21
+ - [ ] Document validation performed right after writing (section-level)
22
+ - [ ] State file updated after each document is written
23
+ - [ ] Detailed findings purged from context after writing (only summaries kept)
24
+ - [ ] Context contains only high-level summaries (1-2 sentences per section)
25
+ - [ ] No accumulation of full project analysis in memory
26
+
27
+ ## Batching Strategy (Deep/Exhaustive Scans)
28
+
29
+ - [ ] Batching applied for deep and exhaustive scan levels
30
+ - [ ] Batches organized by SUBFOLDER (not arbitrary file count)
31
+ - [ ] Large files (>5000 LOC) handled with appropriate judgment
32
+ - [ ] Each batch: read files, extract info, write output, validate, purge context
33
+ - [ ] Batch completion tracked in state file (batches_completed array)
34
+ - [ ] Batch summaries kept in context (1-2 sentences max)
35
+
36
+ ## Project Detection and Classification
37
+
38
+ - [ ] Project type correctly identified and matches actual technology stack
39
+ - [ ] Multi-part vs single-part structure accurately detected
40
+ - [ ] All project parts identified if multi-part (no missing client/server/etc.)
41
+ - [ ] Documentation requirements loaded for each part type
42
+ - [ ] Architecture registry match is appropriate for detected stack
43
+
44
+ ## Technology Stack Analysis
45
+
46
+ - [ ] All major technologies identified (framework, language, database, etc.)
47
+ - [ ] Versions captured where available
48
+ - [ ] Technology decision table is complete and accurate
49
+ - [ ] Dependencies and libraries documented
50
+ - [ ] Build tools and package managers identified
51
+
52
+ ## Codebase Scanning Completeness
53
+
54
+ - [ ] All critical directories scanned based on project type
55
+ - [ ] API endpoints documented (if requires_api_scan = true)
56
+ - [ ] Data models captured (if requires_data_models = true)
57
+ - [ ] State management patterns identified (if requires_state_management = true)
58
+ - [ ] UI components inventoried (if requires_ui_components = true)
59
+ - [ ] Configuration files located and documented
60
+ - [ ] Authentication/security patterns identified
61
+ - [ ] Entry points correctly identified
62
+ - [ ] Integration points mapped (for multi-part projects)
63
+ - [ ] Test files and patterns documented
64
+
65
+ ## Source Tree Analysis
66
+
67
+ - [ ] Complete directory tree generated with no major omissions
68
+ - [ ] Critical folders highlighted and described
69
+ - [ ] Entry points clearly marked
70
+ - [ ] Integration paths noted (for multi-part)
71
+ - [ ] Asset locations identified (if applicable)
72
+ - [ ] File organization patterns explained
73
+
74
+ ## Architecture Documentation Quality
75
+
76
+ - [ ] Architecture document uses appropriate template from registry
77
+ - [ ] All template sections filled with relevant information (no placeholders)
78
+ - [ ] Technology stack section is comprehensive
79
+ - [ ] Architecture pattern clearly explained
80
+ - [ ] Data architecture documented (if applicable)
81
+ - [ ] API design documented (if applicable)
82
+ - [ ] Component structure explained (if applicable)
83
+ - [ ] Source tree included and annotated
84
+ - [ ] Testing strategy documented
85
+ - [ ] Deployment architecture captured (if config found)
86
+
87
+ ## Development and Operations Documentation
88
+
89
+ - [ ] Prerequisites clearly listed
90
+ - [ ] Installation steps documented
91
+ - [ ] Environment setup instructions provided
92
+ - [ ] Local run commands specified
93
+ - [ ] Build process documented
94
+ - [ ] Test commands and approach explained
95
+ - [ ] Deployment process documented (if applicable)
96
+ - [ ] CI/CD pipeline details captured (if found)
97
+ - [ ] Contribution guidelines extracted (if found)
98
+
99
+ ## Multi-Part Project Specific (if applicable)
100
+
101
+ - [ ] Each part documented separately
102
+ - [ ] Part-specific architecture files created (architecture-{part_id}.md)
103
+ - [ ] Part-specific component inventories created (if applicable)
104
+ - [ ] Part-specific development guides created
105
+ - [ ] Integration architecture document created
106
+ - [ ] Integration points clearly defined with type and details
107
+ - [ ] Data flow between parts explained
108
+ - [ ] project-parts.json metadata file created
109
+
110
+ ## Index and Navigation
111
+
112
+ - [ ] index.md created as master entry point
113
+ - [ ] Project structure clearly summarized in index
114
+ - [ ] Quick reference section complete and accurate
115
+ - [ ] All generated docs linked from index
116
+ - [ ] All existing docs linked from index (if found)
117
+ - [ ] Getting started section provides clear next steps
118
+ - [ ] AI-assisted development guidance included
119
+ - [ ] Navigation structure matches project complexity (simple for single-part, detailed for multi-part)
120
+
121
+ ## File Completeness
122
+
123
+ - [ ] index.md generated
124
+ - [ ] project-overview.md generated
125
+ - [ ] source-tree-analysis.md generated
126
+ - [ ] architecture.md (or per-part) generated
127
+ - [ ] component-inventory.md (or per-part) generated if UI components exist
128
+ - [ ] development-guide.md (or per-part) generated
129
+ - [ ] api-contracts.md (or per-part) generated if APIs documented
130
+ - [ ] data-models.md (or per-part) generated if data models found
131
+ - [ ] deployment-guide.md generated if deployment config found
132
+ - [ ] contribution-guide.md generated if guidelines found
133
+ - [ ] integration-architecture.md generated if multi-part
134
+ - [ ] project-parts.json generated if multi-part
135
+
136
+ ## Content Quality
137
+
138
+ - [ ] Technical information is accurate and specific
139
+ - [ ] No generic placeholders or "TODO" items remain
140
+ - [ ] Examples and code snippets are relevant to actual project
141
+ - [ ] File paths and directory references are correct
142
+ - [ ] Technology names and versions are accurate
143
+ - [ ] Terminology is consistent across all documents
144
+ - [ ] Descriptions are clear and actionable
145
+
146
+ ## Brownfield PRD Readiness
147
+
148
+ - [ ] Documentation provides enough context for AI to understand existing system
149
+ - [ ] Integration points are clear for planning new features
150
+ - [ ] Reusable components are identified for leveraging in new work
151
+ - [ ] Data models are documented for schema extension planning
152
+ - [ ] API contracts are documented for endpoint expansion
153
+ - [ ] Code conventions and patterns are captured for consistency
154
+ - [ ] Architecture constraints are clear for informed decision-making
155
+
156
+ ## Output Validation
157
+
158
+ - [ ] All files saved to correct output folder
159
+ - [ ] File naming follows convention (no part suffix for single-part, with suffix for multi-part)
160
+ - [ ] No broken internal links between documents
161
+ - [ ] Markdown formatting is correct and renders properly
162
+ - [ ] JSON files are valid (project-parts.json if applicable)
163
+
164
+ ## Final Validation
165
+
166
+ - [ ] User confirmed project classification is accurate
167
+ - [ ] User provided any additional context needed
168
+ - [ ] All requested areas of focus addressed
169
+ - [ ] Documentation is immediately usable for brownfield PRD workflow
170
+ - [ ] No critical information gaps identified
171
+
172
+ ## Issues Found
173
+
174
+ ### Critical Issues (must fix before completion)
175
+
176
+ -
177
+
178
+ ### Minor Issues (can be addressed later)
179
+
180
+ -
181
+
182
+ ### Missing Information (to note for user)
183
+
184
+ -
185
+
186
+ ## Deep-Dive Mode Validation (if deep-dive was performed)
187
+
188
+ - [ ] Deep-dive target area correctly identified and scoped
189
+ - [ ] All files in target area read completely (no skipped files)
190
+ - [ ] File inventory includes all exports with complete signatures
191
+ - [ ] Dependencies mapped for all files
192
+ - [ ] Dependents identified (who imports each file)
193
+ - [ ] Code snippets included for key implementation details
194
+ - [ ] Patterns and design approaches documented
195
+ - [ ] State management strategy explained
196
+ - [ ] Side effects documented (API calls, DB queries, etc.)
197
+ - [ ] Error handling approaches captured
198
+ - [ ] Testing files and coverage documented
199
+ - [ ] TODOs and comments extracted
200
+ - [ ] Dependency graph created showing relationships
201
+ - [ ] Data flow traced through the scanned area
202
+ - [ ] Integration points with rest of codebase identified
203
+ - [ ] Related code and similar patterns found outside scanned area
204
+ - [ ] Reuse opportunities documented
205
+ - [ ] Implementation guidance provided
206
+ - [ ] Modification instructions clear
207
+ - [ ] Index.md updated with deep-dive link
208
+ - [ ] Deep-dive documentation is immediately useful for implementation
209
+
210
+ ---
211
+
212
+ ## State File Quality
213
+
214
+ - [ ] State file is valid JSON (no syntax errors)
215
+ - [ ] State file is optimized (no pretty-printing, minimal whitespace)
216
+ - [ ] State file contains all completed steps with timestamps
217
+ - [ ] State file outputs_generated list is accurate and complete
218
+ - [ ] State file resume_instructions are clear and actionable
219
+ - [ ] State file findings contain only high-level summaries (not detailed data)
220
+ - [ ] State file can be successfully loaded for resumption
221
+
222
+ ## Completion Criteria
223
+
224
+ All items in the following sections must be checked:
225
+
226
+ - ✓ Scan Level and Resumability
227
+ - ✓ Write-as-you-go Architecture
228
+ - ✓ Batching Strategy (if deep/exhaustive scan)
229
+ - ✓ Project Detection and Classification
230
+ - ✓ Technology Stack Analysis
231
+ - ✓ Architecture Documentation Quality
232
+ - ✓ Index and Navigation
233
+ - ✓ File Completeness
234
+ - ✓ Brownfield PRD Readiness
235
+ - ✓ State File Quality
236
+ - ✓ Deep-Dive Mode Validation (if applicable)
237
+
238
+ The workflow is complete when:
239
+
240
+ 1. All critical checklist items are satisfied
241
+ 2. No critical issues remain
242
+ 3. User has reviewed and approved the documentation
243
+ 4. Generated docs are ready for use in brownfield PRD workflow
244
+ 5. Deep-dive docs (if any) are comprehensive and implementation-ready
245
+ 6. State file is valid and can enable resumption if interrupted
@@ -0,0 +1,12 @@
1
+ project_type_id,requires_api_scan,requires_data_models,requires_state_management,requires_ui_components,requires_deployment_config,key_file_patterns,critical_directories,integration_scan_patterns,test_file_patterns,config_patterns,auth_security_patterns,schema_migration_patterns,entry_point_patterns,shared_code_patterns,monorepo_workspace_patterns,async_event_patterns,ci_cd_patterns,asset_patterns,hardware_interface_patterns,protocol_schema_patterns,localization_patterns,requires_hardware_docs,requires_asset_inventory
2
+ web,true,true,true,true,true,package.json;tsconfig.json;*.config.js;*.config.ts;vite.config.*;webpack.config.*;next.config.*;nuxt.config.*,src/;app/;pages/;components/;api/;lib/;styles/;public/;static/,*client.ts;*service.ts;*api.ts;fetch*.ts;axios*.ts;*http*.ts,*.test.ts;*.spec.ts;*.test.tsx;*.spec.tsx;**/__tests__/**;**/*.test.*;**/*.spec.*,.env*;config/*;*.config.*;.config/;settings/,*auth*.ts;*session*.ts;middleware/auth*;*.guard.ts;*authenticat*;*permission*;guards/,migrations/**;prisma/**;*.prisma;alembic/**;knex/**;*migration*.sql;*migration*.ts,main.ts;index.ts;app.ts;server.ts;_app.tsx;_app.ts;layout.tsx,shared/**;common/**;utils/**;lib/**;helpers/**;@*/**;packages/**,pnpm-workspace.yaml;lerna.json;nx.json;turbo.json;workspace.json;rush.json,*event*.ts;*queue*.ts;*subscriber*.ts;*consumer*.ts;*producer*.ts;*worker*.ts;jobs/**,.github/workflows/**;.gitlab-ci.yml;Jenkinsfile;.circleci/**;azure-pipelines.yml;bitbucket-pipelines.yml,.drone.yml,public/**;static/**;assets/**;images/**;media/**,N/A,*.proto;*.graphql;graphql/**;schema.graphql;*.avro;openapi.*;swagger.*,i18n/**;locales/**;lang/**;translations/**;messages/**;*.po;*.pot,false,false
3
+ mobile,true,true,true,true,true,package.json;pubspec.yaml;Podfile;build.gradle;app.json;capacitor.config.*;ionic.config.json,src/;app/;screens/;components/;services/;models/;assets/;ios/;android/,*client.ts;*service.ts;*api.ts;fetch*.ts;axios*.ts;*http*.ts,*.test.ts;*.test.tsx;*_test.dart;*.test.dart;**/__tests__/**,.env*;config/*;app.json;capacitor.config.*;google-services.json;GoogleService-Info.plist,*auth*.ts;*session*.ts;*authenticat*;*permission*;*biometric*;secure-store*,migrations/**;realm/**;*.realm;watermelondb/**;sqlite/**,main.ts;index.ts;App.tsx;App.ts;main.dart,shared/**;common/**;utils/**;lib/**;components/shared/**;@*/**,pnpm-workspace.yaml;lerna.json;nx.json;turbo.json,*event*.ts;*notification*.ts;*push*.ts;background-fetch*,fastlane/**;.github/workflows/**;.gitlab-ci.yml;bitbucket-pipelines.yml;appcenter-*,assets/**;Resources/**;res/**;*.xcassets;drawable*/;mipmap*/;images/**,N/A,*.proto;graphql/**;*.graphql,i18n/**;locales/**;translations/**;*.strings;*.xml,false,true
4
+ backend,true,true,false,false,true,package.json;requirements.txt;go.mod;Gemfile;pom.xml;build.gradle;Cargo.toml;*.csproj,src/;api/;services/;models/;routes/;controllers/;middleware/;handlers/;repositories/;domain/,*client.ts;*repository.ts;*service.ts;*connector*.ts;*adapter*.ts,*.test.ts;*.spec.ts;*_test.go;test_*.py;*Test.java;*_test.rs,.env*;config/*;*.config.*;application*.yml;application*.yaml;appsettings*.json;settings.py,*auth*.ts;*session*.ts;*authenticat*;*authorization*;middleware/auth*;guards/;*jwt*;*oauth*,migrations/**;alembic/**;flyway/**;liquibase/**;prisma/**;*.prisma;*migration*.sql;*migration*.ts;db/migrate,main.ts;index.ts;server.ts;app.ts;main.go;main.py;Program.cs;__init__.py,shared/**;common/**;utils/**;lib/**;core/**;@*/**;pkg/**,pnpm-workspace.yaml;lerna.json;nx.json;go.work,*event*.ts;*queue*.ts;*subscriber*.ts;*consumer*.ts;*producer*.ts;*worker*.ts;*handler*.ts;jobs/**;workers/**,.github/workflows/**;.gitlab-ci.yml;Jenkinsfile;.circleci/**;azure-pipelines.yml;.drone.yml,N/A,N/A,*.proto;*.graphql;graphql/**;*.avro;*.thrift;openapi.*;swagger.*;schema/**,N/A,false,false
5
+ cli,false,false,false,false,false,package.json;go.mod;Cargo.toml;setup.py;pyproject.toml;*.gemspec,src/;cmd/;cli/;bin/;lib/;commands/,N/A,*.test.ts;*_test.go;test_*.py;*.spec.ts;*_spec.rb,.env*;config/*;*.config.*;.*.rc;.*rc,N/A,N/A,main.ts;index.ts;cli.ts;main.go;main.py;__main__.py;bin/*,shared/**;common/**;utils/**;lib/**;helpers/**,N/A,N/A,.github/workflows/**;.gitlab-ci.yml;goreleaser.yml,N/A,N/A,N/A,N/A,false,false
6
+ library,false,false,false,false,false,package.json;setup.py;Cargo.toml;go.mod;*.gemspec;*.csproj;pom.xml,src/;lib/;dist/;pkg/;build/;target/,N/A,*.test.ts;*_test.go;test_*.py;*.spec.ts;*Test.java;*_test.rs,.*.rc;tsconfig.json;rollup.config.*;vite.config.*;webpack.config.*,N/A,N/A,index.ts;index.js;lib.rs;main.go;__init__.py,src/**;lib/**;core/**,N/A,N/A,.github/workflows/**;.gitlab-ci.yml;.circleci/**,N/A,N/A,N/A,N/A,false,false
7
+ desktop,false,false,true,true,true,package.json;Cargo.toml;*.csproj;CMakeLists.txt;tauri.conf.json;electron-builder.yml;wails.json,src/;app/;components/;main/;renderer/;resources/;assets/;build/,*service.ts;ipc*.ts;*bridge*.ts;*native*.ts;invoke*,*.test.ts;*.spec.ts;*_test.rs;*.spec.tsx,.env*;config/*;*.config.*;app.config.*;forge.config.*;builder.config.*,*auth*.ts;*session*.ts;keychain*;secure-storage*,N/A,main.ts;index.ts;main.js;src-tauri/main.rs;electron.ts,shared/**;common/**;utils/**;lib/**;components/shared/**,N/A,*event*.ts;*ipc*.ts;*message*.ts,.github/workflows/**;.gitlab-ci.yml;.circleci/**,resources/**;assets/**;icons/**;static/**;build/resources,N/A,N/A,i18n/**;locales/**;translations/**;lang/**,false,true
8
+ game,false,false,true,false,false,*.unity;*.godot;*.uproject;package.json;project.godot,Assets/;Scenes/;Scripts/;Prefabs/;Resources/;Content/;Source/;src/;scenes/;scripts/,N/A,*Test.cs;*_test.gd;*Test.cpp;*.test.ts,.env*;config/*;*.ini;settings/;GameSettings/,N/A,N/A,main.gd;Main.cs;GameManager.cs;main.cpp;index.ts,shared/**;common/**;utils/**;Core/**;Framework/**,N/A,N/A,.github/workflows/**;.gitlab-ci.yml,Assets/**;Scenes/**;Prefabs/**;Materials/**;Textures/**;Audio/**;Models/**;*.fbx;*.blend;*.shader;*.hlsl;*.glsl;Shaders/**;VFX/**,N/A,N/A,Localization/**;Languages/**;i18n/**,false,true
9
+ data,false,true,false,false,true,requirements.txt;pyproject.toml;dbt_project.yml;airflow.cfg;setup.py;Pipfile,dags/;pipelines/;models/;transformations/;notebooks/;sql/;etl/;jobs/,N/A,test_*.py;*_test.py;tests/**,.env*;config/*;profiles.yml;dbt_project.yml;airflow.cfg,N/A,migrations/**;dbt/models/**;*.sql;schemas/**,main.py;__init__.py;pipeline.py;dag.py,shared/**;common/**;utils/**;lib/**;helpers/**,N/A,*event*.py;*consumer*.py;*producer*.py;*worker*.py;jobs/**;tasks/**,.github/workflows/**;.gitlab-ci.yml;airflow/dags/**,N/A,N/A,*.proto;*.avro;schemas/**;*.parquet,N/A,false,false
10
+ extension,true,false,true,true,false,manifest.json;package.json;wxt.config.ts,src/;popup/;content/;background/;assets/;components/,*message.ts;*runtime.ts;*storage.ts;*tabs.ts,*.test.ts;*.spec.ts;*.test.tsx,.env*;wxt.config.*;webpack.config.*;vite.config.*,*auth*.ts;*session*.ts;*permission*,N/A,index.ts;popup.ts;background.ts;content.ts,shared/**;common/**;utils/**;lib/**,N/A,*message*.ts;*event*.ts;chrome.runtime*;browser.runtime*,.github/workflows/**,assets/**;icons/**;images/**;static/**,N/A,N/A,_locales/**;locales/**;i18n/**,false,false
11
+ infra,false,false,false,false,true,*.tf;*.tfvars;pulumi.yaml;cdk.json;*.yml;*.yaml;Dockerfile;docker-compose*.yml,terraform/;modules/;k8s/;charts/;playbooks/;roles/;policies/;stacks/,N/A,*_test.go;test_*.py;*_test.tf;*_spec.rb,.env*;*.tfvars;config/*;vars/;group_vars/;host_vars/,N/A,N/A,main.tf;index.ts;__main__.py;playbook.yml,modules/**;shared/**;common/**;lib/**,N/A,N/A,.github/workflows/**;.gitlab-ci.yml;.circleci/**,N/A,N/A,N/A,N/A,false,false
12
+ embedded,false,false,false,false,false,platformio.ini;CMakeLists.txt;*.ino;Makefile;*.ioc;mbed-os.lib,src/;lib/;include/;firmware/;drivers/;hal/;bsp/;components/,N/A,test_*.c;*_test.cpp;*_test.c;tests/**,.env*;config/*;sdkconfig;*.json;settings/,N/A,N/A,main.c;main.cpp;main.ino;app_main.c,lib/**;shared/**;common/**;drivers/**,N/A,N/A,.github/workflows/**;.gitlab-ci.yml,N/A,*.h;*.hpp;drivers/**;hal/**;bsp/**;pinout.*;peripheral*;gpio*;*.fzz;schematics/**,*.proto;mqtt*;coap*;modbus*,N/A,true,false
@@ -0,0 +1,221 @@
1
+ # Document Project Workflow Router
2
+
3
+ <critical>The workflow execution engine is governed by: {project-root}/_bmad/core/tasks/workflow.xml</critical>
4
+ <critical>You MUST have already loaded and processed: {project-root}/_bmad/bmm/workflows/document-project/workflow.yaml</critical>
5
+ <critical>Communicate all responses in {communication_language}</critical>
6
+
7
+ <workflow>
8
+
9
+ <critical>This router determines workflow mode and delegates to specialized sub-workflows</critical>
10
+
11
+ <step n="1" goal="Validate workflow and get project info">
12
+
13
+ <invoke-workflow path="{project-root}/_bmad/bmm/workflows/workflow-status">
14
+ <param>mode: data</param>
15
+ <param>data_request: project_config</param>
16
+ </invoke-workflow>
17
+
18
+ <check if="status_exists == false">
19
+ <output>{{suggestion}}</output>
20
+ <output>Note: Documentation workflow can run standalone. Continuing without progress tracking.</output>
21
+ <action>Set standalone_mode = true</action>
22
+ <action>Set status_file_found = false</action>
23
+ </check>
24
+
25
+ <check if="status_exists == true">
26
+ <action>Store {{status_file_path}} for later updates</action>
27
+ <action>Set status_file_found = true</action>
28
+
29
+ <!-- Extract brownfield/greenfield from status data -->
30
+ <check if="field_type == 'greenfield'">
31
+ <output>Note: This is a greenfield project. Documentation workflow is typically for brownfield projects.</output>
32
+ <ask>Continue anyway to document planning artifacts? (y/n)</ask>
33
+ <check if="n">
34
+ <action>Exit workflow</action>
35
+ </check>
36
+ </check>
37
+
38
+ <!-- Now validate sequencing -->
39
+ <invoke-workflow path="{project-root}/_bmad/bmm/workflows/workflow-status">
40
+ <param>mode: validate</param>
41
+ <param>calling_workflow: document-project</param>
42
+ </invoke-workflow>
43
+
44
+ <check if="warning != ''">
45
+ <output>{{warning}}</output>
46
+ <output>Note: This may be auto-invoked by prd for brownfield documentation.</output>
47
+ <ask>Continue with documentation? (y/n)</ask>
48
+ <check if="n">
49
+ <output>{{suggestion}}</output>
50
+ <action>Exit workflow</action>
51
+ </check>
52
+ </check>
53
+ </check>
54
+
55
+ </step>
56
+
57
+ <step n="2" goal="Check for resumability and determine workflow mode">
58
+ <critical>SMART LOADING STRATEGY: Check state file FIRST before loading any CSV files</critical>
59
+
60
+ <action>Check for existing state file at: {output_folder}/project-scan-report.json</action>
61
+
62
+ <check if="project-scan-report.json exists">
63
+ <action>Read state file and extract: timestamps, mode, scan_level, current_step, completed_steps, project_classification</action>
64
+ <action>Extract cached project_type_id(s) from state file if present</action>
65
+ <action>Calculate age of state file (current time - last_updated)</action>
66
+
67
+ <ask>I found an in-progress workflow state from {{last_updated}}.
68
+
69
+ **Current Progress:**
70
+
71
+ - Mode: {{mode}}
72
+ - Scan Level: {{scan_level}}
73
+ - Completed Steps: {{completed_steps_count}}/{{total_steps}}
74
+ - Last Step: {{current_step}}
75
+ - Project Type(s): {{cached_project_types}}
76
+
77
+ Would you like to:
78
+
79
+ 1. **Resume from where we left off** - Continue from step {{current_step}}
80
+ 2. **Start fresh** - Archive old state and begin new scan
81
+ 3. **Cancel** - Exit without changes
82
+
83
+ Your choice [1/2/3]:
84
+ </ask>
85
+
86
+ <check if="user selects 1">
87
+ <action>Set resume_mode = true</action>
88
+ <action>Set workflow_mode = {{mode}}</action>
89
+ <action>Load findings summaries from state file</action>
90
+ <action>Load cached project_type_id(s) from state file</action>
91
+
92
+ <critical>CONDITIONAL CSV LOADING FOR RESUME:</critical>
93
+ <action>For each cached project_type_id, load ONLY the corresponding row from: {documentation_requirements_csv}</action>
94
+ <action>Skip loading project-types.csv and architecture_registry.csv (not needed on resume)</action>
95
+ <action>Store loaded doc requirements for use in remaining steps</action>
96
+
97
+ <action>Display: "Resuming {{workflow_mode}} from {{current_step}} with cached project type(s): {{cached_project_types}}"</action>
98
+
99
+ <check if="workflow_mode == deep_dive">
100
+ <action>Load and execute: {installed_path}/workflows/deep-dive-instructions.md with resume context</action>
101
+ </check>
102
+
103
+ <check if="workflow_mode == initial_scan OR workflow_mode == full_rescan">
104
+ <action>Load and execute: {installed_path}/workflows/full-scan-instructions.md with resume context</action>
105
+ </check>
106
+
107
+ </check>
108
+
109
+ <check if="user selects 2">
110
+ <action>Create archive directory: {output_folder}/.archive/</action>
111
+ <action>Move old state file to: {output_folder}/.archive/project-scan-report-{{timestamp}}.json</action>
112
+ <action>Set resume_mode = false</action>
113
+ <action>Continue to Step 0.5</action>
114
+ </check>
115
+
116
+ <check if="user selects 3">
117
+ <action>Display: "Exiting workflow without changes."</action>
118
+ <action>Exit workflow</action>
119
+ </check>
120
+
121
+ <check if="state file age >= 24 hours">
122
+ <action>Display: "Found old state file (>24 hours). Starting fresh scan."</action>
123
+ <action>Archive old state file to: {output_folder}/.archive/project-scan-report-{{timestamp}}.json</action>
124
+ <action>Set resume_mode = false</action>
125
+ <action>Continue to Step 0.5</action>
126
+ </check>
127
+
128
+ </step>
129
+
130
+ <step n="3" goal="Check for existing documentation and determine workflow mode" if="resume_mode == false">
131
+ <action>Check if {output_folder}/index.md exists</action>
132
+
133
+ <check if="index.md exists">
134
+ <action>Read existing index.md to extract metadata (date, project structure, parts count)</action>
135
+ <action>Store as {{existing_doc_date}}, {{existing_structure}}</action>
136
+
137
+ <ask>I found existing documentation generated on {{existing_doc_date}}.
138
+
139
+ What would you like to do?
140
+
141
+ 1. **Re-scan entire project** - Update all documentation with latest changes
142
+ 2. **Deep-dive into specific area** - Generate detailed documentation for a particular feature/module/folder
143
+ 3. **Cancel** - Keep existing documentation as-is
144
+
145
+ Your choice [1/2/3]:
146
+ </ask>
147
+
148
+ <check if="user selects 1">
149
+ <action>Set workflow_mode = "full_rescan"</action>
150
+ <action>Display: "Starting full project rescan..."</action>
151
+ <action>Load and execute: {installed_path}/workflows/full-scan-instructions.md</action>
152
+ <action>After sub-workflow completes, continue to Step 4</action>
153
+ </check>
154
+
155
+ <check if="user selects 2">
156
+ <action>Set workflow_mode = "deep_dive"</action>
157
+ <action>Set scan_level = "exhaustive"</action>
158
+ <action>Display: "Starting deep-dive documentation mode..."</action>
159
+ <action>Load and execute: {installed_path}/workflows/deep-dive-instructions.md</action>
160
+ <action>After sub-workflow completes, continue to Step 4</action>
161
+ </check>
162
+
163
+ <check if="user selects 3">
164
+ <action>Display message: "Keeping existing documentation. Exiting workflow."</action>
165
+ <action>Exit workflow</action>
166
+ </check>
167
+ </check>
168
+
169
+ <check if="index.md does not exist">
170
+ <action>Set workflow_mode = "initial_scan"</action>
171
+ <action>Display: "No existing documentation found. Starting initial project scan..."</action>
172
+ <action>Load and execute: {installed_path}/workflows/full-scan-instructions.md</action>
173
+ <action>After sub-workflow completes, continue to Step 4</action>
174
+ </check>
175
+
176
+ </step>
177
+
178
+ <step n="4" goal="Update status and complete">
179
+
180
+ <check if="status_file_found == true">
181
+ <invoke-workflow path="{project-root}/_bmad/bmm/workflows/workflow-status">
182
+ <param>mode: update</param>
183
+ <param>action: complete_workflow</param>
184
+ <param>workflow_name: document-project</param>
185
+ </invoke-workflow>
186
+
187
+ <check if="success == true">
188
+ <output>Status updated!</output>
189
+ </check>
190
+ </check>
191
+
192
+ <output>**✅ Document Project Workflow Complete, {user_name}!**
193
+
194
+ **Documentation Generated:**
195
+
196
+ - Mode: {{workflow_mode}}
197
+ - Scan Level: {{scan_level}}
198
+ - Output: {output_folder}/index.md and related files
199
+
200
+ {{#if status_file_found}}
201
+ **Status Updated:**
202
+
203
+ - Progress tracking updated
204
+
205
+ **Next Steps:**
206
+
207
+ - **Next required:** {{next_workflow}} ({{next_agent}} agent)
208
+
209
+ Check status anytime with: `workflow-status`
210
+ {{else}}
211
+ **Next Steps:**
212
+ Since no workflow is in progress:
213
+
214
+ - Refer to the BMM workflow guide if unsure what to do next
215
+ - Or run `workflow-init` to create a workflow path and get guided next steps
216
+ {{/if}}
217
+ </output>
218
+
219
+ </step>
220
+
221
+ </workflow>