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.
- package/CHANGELOG.md +38 -0
- package/LICENSE +21 -0
- package/README.md +317 -0
- package/_config/agent-manifest.csv +10 -0
- package/_config/manifest.yaml +10 -0
- package/_config/workflow-manifest.csv +10 -0
- package/bmm/agents/analyst.md +93 -0
- package/bmm/agents/architect.md +72 -0
- package/bmm/agents/dev.md +85 -0
- package/bmm/agents/pm.md +61 -0
- package/bmm/agents/quick-flow-solo-dev.md +58 -0
- package/bmm/agents/sm.md +56 -0
- package/bmm/agents/tea.md +57 -0
- package/bmm/agents/tech-writer.md +56 -0
- package/bmm/agents/ux-designer.md +56 -0
- package/bmm/config.yaml +27 -0
- package/bmm/data/odoo-knowledge-base.md +90 -0
- package/bmm/teams/default-team.md +17 -0
- package/bmm/testarch/odoo-test-design/steps/step-01-init.md +44 -0
- package/bmm/testarch/odoo-test-design/steps/step-02-test-cases.md +82 -0
- package/bmm/testarch/odoo-test-design/steps/step-03-complete.md +69 -0
- package/bmm/testarch/odoo-test-design/workflow.md +30 -0
- package/bmm/testarch/odoo-testing-guide.md +30 -0
- package/bmm/workflows/1-analysis/analyze-process/process-analysis.template.md +80 -0
- package/bmm/workflows/1-analysis/analyze-process/steps/step-01-init.md +44 -0
- package/bmm/workflows/1-analysis/analyze-process/steps/step-02-current-state.md +55 -0
- package/bmm/workflows/1-analysis/analyze-process/steps/step-03-pain-points.md +67 -0
- package/bmm/workflows/1-analysis/analyze-process/steps/step-04-odoo-mapping.md +67 -0
- package/bmm/workflows/1-analysis/analyze-process/steps/step-05-recommendations.md +99 -0
- package/bmm/workflows/1-analysis/analyze-process/steps/step-06-complete.md +62 -0
- package/bmm/workflows/1-analysis/analyze-process/workflow.md +60 -0
- package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-01-init.md +45 -0
- package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-02-users-stakeholders.md +46 -0
- package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-03-odoo-modules.md +59 -0
- package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-04-scope-timeline.md +64 -0
- package/bmm/workflows/1-analysis/create-odoo-product-brief/steps/step-05-complete.md +32 -0
- package/bmm/workflows/1-analysis/create-odoo-product-brief/workflow.md +35 -0
- package/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +182 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +166 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +204 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +207 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +210 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +224 -0
- package/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +199 -0
- package/bmm/workflows/1-analysis/create-product-brief/workflow.md +58 -0
- package/bmm/workflows/1-analysis/gap-analysis/steps/step-01-init.md +45 -0
- package/bmm/workflows/1-analysis/gap-analysis/steps/step-02-odoo-capabilities.md +36 -0
- package/bmm/workflows/1-analysis/gap-analysis/steps/step-03-gap-matrix.md +51 -0
- package/bmm/workflows/1-analysis/gap-analysis/workflow.md +45 -0
- package/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
- package/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
- package/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
- package/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +200 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
- package/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
- package/bmm/workflows/1-analysis/research/research.template.md +29 -0
- package/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
- package/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
- package/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
- package/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +239 -0
- package/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
- package/bmm/workflows/1-analysis/research/workflow.md +173 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-addon/steps/step-01-init.md +48 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-addon/steps/step-02-technical-design.md +82 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-addon/steps/step-03-generate.md +86 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-addon/workflow.md +39 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-epic/steps/step-01-init.md +55 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-epic/steps/step-02-stories.md +53 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-epic/steps/step-03-complete.md +39 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-epic/workflow.md +35 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-01-init.md +46 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-02-functional-requirements.md +56 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-03-technical-requirements.md +45 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-prd/steps/step-04-complete.md +40 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-prd/workflow.md +29 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-01-init.md +52 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-02-form-design.md +78 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-03-tree-design.md +84 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/steps/step-04-complete.md +55 -0
- package/bmm/workflows/2-plan-workflows/create-odoo-ux-design/workflow.md +30 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +228 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
- package/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +43 -0
- package/bmm/workflows/2-plan-workflows/plan-odoo-migration/steps/step-01-init.md +49 -0
- package/bmm/workflows/2-plan-workflows/plan-odoo-migration/steps/step-02-risk-assessment.md +51 -0
- package/bmm/workflows/2-plan-workflows/plan-odoo-migration/steps/step-03-roadmap.md +58 -0
- package/bmm/workflows/2-plan-workflows/plan-odoo-migration/workflow.md +29 -0
- package/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +13 -0
- package/bmm/workflows/2-plan-workflows/prd/prd-template.md +11 -0
- package/bmm/workflows/2-plan-workflows/prd/project-types.csv +11 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md +197 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-01b-continue.md +166 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md +421 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md +290 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md +291 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md +271 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md +262 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md +258 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md +299 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md +270 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md +294 -0
- package/bmm/workflows/2-plan-workflows/prd/steps/step-11-complete.md +186 -0
- package/bmm/workflows/2-plan-workflows/prd/workflow.md +63 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +190 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +178 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +139 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +133 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +55 -0
- package/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
- package/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +11 -0
- package/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
- package/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +352 -0
- package/bmm/workflows/3-solutioning/create-architecture/workflow.md +50 -0
- package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
- package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
- package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
- package/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +145 -0
- package/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
- package/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +59 -0
- package/bmm/workflows/3-solutioning/enhance-existing-system/steps/step-01-init.md +44 -0
- package/bmm/workflows/3-solutioning/enhance-existing-system/steps/step-02-inheritance-strategy.md +75 -0
- package/bmm/workflows/3-solutioning/enhance-existing-system/steps/step-03-implementation.md +64 -0
- package/bmm/workflows/3-solutioning/enhance-existing-system/workflow.md +30 -0
- package/bmm/workflows/3-solutioning/quick-addon/workflow.md +23 -0
- package/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
- package/bmm/workflows/4-implementation/code-review/instructions.xml +225 -0
- package/bmm/workflows/4-implementation/code-review/workflow.yaml +50 -0
- package/bmm/workflows/4-implementation/correct-course/checklist.md +279 -0
- package/bmm/workflows/4-implementation/correct-course/instructions.md +206 -0
- package/bmm/workflows/4-implementation/correct-course/workflow.yaml +58 -0
- package/bmm/workflows/4-implementation/create-next-story/steps/step-01-init.md +53 -0
- package/bmm/workflows/4-implementation/create-next-story/steps/step-02-acceptance-criteria.md +63 -0
- package/bmm/workflows/4-implementation/create-next-story/steps/step-03-tasks.md +68 -0
- package/bmm/workflows/4-implementation/create-next-story/steps/step-04-complete.md +70 -0
- package/bmm/workflows/4-implementation/create-next-story/workflow.md +30 -0
- package/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
- package/bmm/workflows/4-implementation/dev-story/instructions.xml +409 -0
- package/bmm/workflows/4-implementation/dev-story/workflow.yaml +25 -0
- package/bmm/workflows/4-implementation/rapid-brownfield/steps/step-01-quick-story.md +79 -0
- package/bmm/workflows/4-implementation/rapid-brownfield/workflow.md +29 -0
- package/bmm/workflows/4-implementation/retrospective/instructions.md +1443 -0
- package/bmm/workflows/4-implementation/retrospective/workflow.yaml +57 -0
- package/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
- package/bmm/workflows/4-implementation/sprint-planning/instructions.md +225 -0
- package/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
- package/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +52 -0
- package/bmm/workflows/4-implementation/sprint-status/instructions.md +229 -0
- package/bmm/workflows/4-implementation/sprint-status/workflow.yaml +35 -0
- package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-01-understand.md +189 -0
- package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-02-investigate.md +144 -0
- package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-03-generate.md +128 -0
- package/bmm/workflows/bmad-quick-flow/create-tech-spec/steps/step-04-review.md +173 -0
- package/bmm/workflows/bmad-quick-flow/create-tech-spec/tech-spec-template.md +74 -0
- package/bmm/workflows/bmad-quick-flow/create-tech-spec/workflow.md +79 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +156 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +120 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +113 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +113 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +106 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +140 -0
- package/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +52 -0
- package/bmm/workflows/document-odoo/steps/step-01-init.md +43 -0
- package/bmm/workflows/document-odoo/steps/step-02-readme.md +98 -0
- package/bmm/workflows/document-odoo/steps/step-03-user-guide.md +76 -0
- package/bmm/workflows/document-odoo/steps/step-04-complete.md +58 -0
- package/bmm/workflows/document-odoo/workflow.md +30 -0
- package/bmm/workflows/document-project/checklist.md +245 -0
- package/bmm/workflows/document-project/documentation-requirements.csv +12 -0
- package/bmm/workflows/document-project/instructions.md +221 -0
- package/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
- package/bmm/workflows/document-project/templates/index-template.md +169 -0
- package/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
- package/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
- package/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
- package/bmm/workflows/document-project/workflow.yaml +28 -0
- package/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
- package/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
- package/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
- package/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
- package/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +90 -0
- package/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +127 -0
- package/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +39 -0
- package/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +130 -0
- package/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +26 -0
- package/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +43 -0
- package/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +141 -0
- package/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +26 -0
- package/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +49 -0
- package/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +241 -0
- package/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +26 -0
- package/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +38 -0
- package/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +133 -0
- package/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +26 -0
- package/bmm/workflows/generate-project-context/project-context-template.md +21 -0
- package/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
- package/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
- package/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
- package/bmm/workflows/generate-project-context/workflow.md +49 -0
- package/bmm/workflows/testarch/atdd/atdd-checklist-template.md +364 -0
- package/bmm/workflows/testarch/atdd/checklist.md +374 -0
- package/bmm/workflows/testarch/atdd/instructions.md +806 -0
- package/bmm/workflows/testarch/atdd/workflow.yaml +45 -0
- package/bmm/workflows/testarch/automate/checklist.md +582 -0
- package/bmm/workflows/testarch/automate/instructions.md +1324 -0
- package/bmm/workflows/testarch/automate/workflow.yaml +52 -0
- package/bmm/workflows/testarch/ci/checklist.md +248 -0
- package/bmm/workflows/testarch/ci/github-actions-template.yaml +198 -0
- package/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
- package/bmm/workflows/testarch/ci/instructions.md +536 -0
- package/bmm/workflows/testarch/ci/workflow.yaml +45 -0
- package/bmm/workflows/testarch/framework/checklist.md +321 -0
- package/bmm/workflows/testarch/framework/instructions.md +481 -0
- package/bmm/workflows/testarch/framework/workflow.yaml +47 -0
- package/bmm/workflows/testarch/nfr-assess/checklist.md +407 -0
- package/bmm/workflows/testarch/nfr-assess/instructions.md +722 -0
- package/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +445 -0
- package/bmm/workflows/testarch/nfr-assess/workflow.yaml +47 -0
- package/bmm/workflows/testarch/test-design/checklist.md +235 -0
- package/bmm/workflows/testarch/test-design/instructions.md +788 -0
- package/bmm/workflows/testarch/test-design/test-design-template.md +294 -0
- package/bmm/workflows/testarch/test-design/workflow.yaml +54 -0
- package/bmm/workflows/testarch/test-review/checklist.md +472 -0
- package/bmm/workflows/testarch/test-review/instructions.md +628 -0
- package/bmm/workflows/testarch/test-review/test-review-template.md +390 -0
- package/bmm/workflows/testarch/test-review/workflow.yaml +46 -0
- package/bmm/workflows/testarch/trace/checklist.md +655 -0
- package/bmm/workflows/testarch/trace/instructions.md +1047 -0
- package/bmm/workflows/testarch/trace/trace-template.md +675 -0
- package/bmm/workflows/testarch/trace/workflow.yaml +55 -0
- package/bmm/workflows/workflow-status/init/instructions.md +346 -0
- package/bmm/workflows/workflow-status/init/workflow.yaml +29 -0
- package/bmm/workflows/workflow-status/instructions.md +395 -0
- package/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +103 -0
- package/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +100 -0
- package/bmm/workflows/workflow-status/paths/method-brownfield.yaml +103 -0
- package/bmm/workflows/workflow-status/paths/method-greenfield.yaml +100 -0
- package/bmm/workflows/workflow-status/project-levels.yaml +59 -0
- package/bmm/workflows/workflow-status/workflow-status-template.yaml +24 -0
- package/bmm/workflows/workflow-status/workflow.yaml +30 -0
- package/core/agents/bmad-odoo-master.md +61 -0
- package/core/config.yaml +7 -0
- package/core/resources/README.md +5 -0
- package/core/tasks/README.md +7 -0
- package/core/workflows/README.md +8 -0
- package/index.js +84 -0
- package/package.json +48 -0
- package/scripts/postinstall.js +447 -0
- package/scripts/setup-cli.js +17 -0
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"title": "Project Scan Report Schema",
|
|
4
|
+
"description": "State tracking file for document-project workflow resumability",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": ["workflow_version", "timestamps", "mode", "scan_level", "completed_steps", "current_step"],
|
|
7
|
+
"properties": {
|
|
8
|
+
"workflow_version": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"description": "Version of document-project workflow",
|
|
11
|
+
"example": "1.2.0"
|
|
12
|
+
},
|
|
13
|
+
"timestamps": {
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": ["started", "last_updated"],
|
|
16
|
+
"properties": {
|
|
17
|
+
"started": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "date-time",
|
|
20
|
+
"description": "ISO 8601 timestamp when workflow started"
|
|
21
|
+
},
|
|
22
|
+
"last_updated": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"format": "date-time",
|
|
25
|
+
"description": "ISO 8601 timestamp of last state update"
|
|
26
|
+
},
|
|
27
|
+
"completed": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"format": "date-time",
|
|
30
|
+
"description": "ISO 8601 timestamp when workflow completed (if finished)"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"mode": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"enum": ["initial_scan", "full_rescan", "deep_dive"],
|
|
37
|
+
"description": "Workflow execution mode"
|
|
38
|
+
},
|
|
39
|
+
"scan_level": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"enum": ["quick", "deep", "exhaustive"],
|
|
42
|
+
"description": "Scan depth level (deep_dive mode always uses exhaustive)"
|
|
43
|
+
},
|
|
44
|
+
"project_root": {
|
|
45
|
+
"type": "string",
|
|
46
|
+
"description": "Absolute path to project root directory"
|
|
47
|
+
},
|
|
48
|
+
"output_folder": {
|
|
49
|
+
"type": "string",
|
|
50
|
+
"description": "Absolute path to output folder"
|
|
51
|
+
},
|
|
52
|
+
"completed_steps": {
|
|
53
|
+
"type": "array",
|
|
54
|
+
"items": {
|
|
55
|
+
"type": "object",
|
|
56
|
+
"required": ["step", "status"],
|
|
57
|
+
"properties": {
|
|
58
|
+
"step": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"description": "Step identifier (e.g., 'step_1', 'step_2')"
|
|
61
|
+
},
|
|
62
|
+
"status": {
|
|
63
|
+
"type": "string",
|
|
64
|
+
"enum": ["completed", "partial", "failed"]
|
|
65
|
+
},
|
|
66
|
+
"timestamp": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"format": "date-time"
|
|
69
|
+
},
|
|
70
|
+
"outputs": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"items": { "type": "string" },
|
|
73
|
+
"description": "Files written during this step"
|
|
74
|
+
},
|
|
75
|
+
"summary": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"description": "1-2 sentence summary of step outcome"
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"current_step": {
|
|
83
|
+
"type": "string",
|
|
84
|
+
"description": "Current step identifier for resumption"
|
|
85
|
+
},
|
|
86
|
+
"findings": {
|
|
87
|
+
"type": "object",
|
|
88
|
+
"description": "High-level summaries only (detailed findings purged after writing)",
|
|
89
|
+
"properties": {
|
|
90
|
+
"project_classification": {
|
|
91
|
+
"type": "object",
|
|
92
|
+
"properties": {
|
|
93
|
+
"repository_type": { "type": "string" },
|
|
94
|
+
"parts_count": { "type": "integer" },
|
|
95
|
+
"primary_language": { "type": "string" },
|
|
96
|
+
"architecture_type": { "type": "string" }
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
"technology_stack": {
|
|
100
|
+
"type": "array",
|
|
101
|
+
"items": {
|
|
102
|
+
"type": "object",
|
|
103
|
+
"properties": {
|
|
104
|
+
"part_id": { "type": "string" },
|
|
105
|
+
"tech_summary": { "type": "string" }
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
"batches_completed": {
|
|
110
|
+
"type": "array",
|
|
111
|
+
"description": "For deep/exhaustive scans: subfolders processed",
|
|
112
|
+
"items": {
|
|
113
|
+
"type": "object",
|
|
114
|
+
"properties": {
|
|
115
|
+
"path": { "type": "string" },
|
|
116
|
+
"files_scanned": { "type": "integer" },
|
|
117
|
+
"summary": { "type": "string" }
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"outputs_generated": {
|
|
124
|
+
"type": "array",
|
|
125
|
+
"items": { "type": "string" },
|
|
126
|
+
"description": "List of all output files generated"
|
|
127
|
+
},
|
|
128
|
+
"resume_instructions": {
|
|
129
|
+
"type": "string",
|
|
130
|
+
"description": "Instructions for resuming from current_step"
|
|
131
|
+
},
|
|
132
|
+
"validation_status": {
|
|
133
|
+
"type": "object",
|
|
134
|
+
"properties": {
|
|
135
|
+
"last_validated": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"format": "date-time"
|
|
138
|
+
},
|
|
139
|
+
"validation_errors": {
|
|
140
|
+
"type": "array",
|
|
141
|
+
"items": { "type": "string" }
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"deep_dive_targets": {
|
|
146
|
+
"type": "array",
|
|
147
|
+
"description": "Track deep-dive areas analyzed (for deep_dive mode)",
|
|
148
|
+
"items": {
|
|
149
|
+
"type": "object",
|
|
150
|
+
"properties": {
|
|
151
|
+
"target_name": { "type": "string" },
|
|
152
|
+
"target_path": { "type": "string" },
|
|
153
|
+
"files_analyzed": { "type": "integer" },
|
|
154
|
+
"output_file": { "type": "string" },
|
|
155
|
+
"timestamp": { "type": "string", "format": "date-time" }
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# {{project_name}} - Source Tree Analysis
|
|
2
|
+
|
|
3
|
+
**Date:** {{date}}
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
{{source_tree_overview}}
|
|
8
|
+
|
|
9
|
+
{{#if is_multi_part}}
|
|
10
|
+
|
|
11
|
+
## Multi-Part Structure
|
|
12
|
+
|
|
13
|
+
This project is organized into {{parts_count}} distinct parts:
|
|
14
|
+
|
|
15
|
+
{{#each project_parts}}
|
|
16
|
+
|
|
17
|
+
- **{{part_name}}** (`{{root_path}}`): {{purpose}}
|
|
18
|
+
{{/each}}
|
|
19
|
+
{{/if}}
|
|
20
|
+
|
|
21
|
+
## Complete Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
{{complete_source_tree}}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Critical Directories
|
|
28
|
+
|
|
29
|
+
{{#each critical_folders}}
|
|
30
|
+
|
|
31
|
+
### `{{folder_path}}`
|
|
32
|
+
|
|
33
|
+
{{description}}
|
|
34
|
+
|
|
35
|
+
**Purpose:** {{purpose}}
|
|
36
|
+
**Contains:** {{contents_summary}}
|
|
37
|
+
{{#if entry_points}}**Entry Points:** {{entry_points}}{{/if}}
|
|
38
|
+
{{#if integration_note}}**Integration:** {{integration_note}}{{/if}}
|
|
39
|
+
|
|
40
|
+
{{/each}}
|
|
41
|
+
|
|
42
|
+
{{#if is_multi_part}}
|
|
43
|
+
|
|
44
|
+
## Part-Specific Trees
|
|
45
|
+
|
|
46
|
+
{{#each project_parts}}
|
|
47
|
+
|
|
48
|
+
### {{part_name}} Structure
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
{{source_tree}}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**Key Directories:**
|
|
55
|
+
{{#each critical_directories}}
|
|
56
|
+
|
|
57
|
+
- **`{{path}}`**: {{description}}
|
|
58
|
+
{{/each}}
|
|
59
|
+
|
|
60
|
+
{{/each}}
|
|
61
|
+
|
|
62
|
+
## Integration Points
|
|
63
|
+
|
|
64
|
+
{{#each integration_points}}
|
|
65
|
+
|
|
66
|
+
### {{from_part}} → {{to_part}}
|
|
67
|
+
|
|
68
|
+
- **Location:** `{{integration_path}}`
|
|
69
|
+
- **Type:** {{integration_type}}
|
|
70
|
+
- **Details:** {{details}}
|
|
71
|
+
{{/each}}
|
|
72
|
+
|
|
73
|
+
{{/if}}
|
|
74
|
+
|
|
75
|
+
## Entry Points
|
|
76
|
+
|
|
77
|
+
{{#if is_single_part}}
|
|
78
|
+
|
|
79
|
+
- **Main Entry:** `{{main_entry_point}}`
|
|
80
|
+
{{#if additional_entry_points}}
|
|
81
|
+
- **Additional:**
|
|
82
|
+
{{#each additional_entry_points}}
|
|
83
|
+
- `{{path}}`: {{description}}
|
|
84
|
+
{{/each}}
|
|
85
|
+
{{/if}}
|
|
86
|
+
{{else}}
|
|
87
|
+
{{#each project_parts}}
|
|
88
|
+
|
|
89
|
+
### {{part_name}}
|
|
90
|
+
|
|
91
|
+
- **Entry Point:** `{{entry_point}}`
|
|
92
|
+
- **Bootstrap:** {{bootstrap_description}}
|
|
93
|
+
{{/each}}
|
|
94
|
+
{{/if}}
|
|
95
|
+
|
|
96
|
+
## File Organization Patterns
|
|
97
|
+
|
|
98
|
+
{{file_organization_patterns}}
|
|
99
|
+
|
|
100
|
+
## Key File Types
|
|
101
|
+
|
|
102
|
+
{{#each file_type_patterns}}
|
|
103
|
+
|
|
104
|
+
### {{file_type}}
|
|
105
|
+
|
|
106
|
+
- **Pattern:** `{{pattern}}`
|
|
107
|
+
- **Purpose:** {{purpose}}
|
|
108
|
+
- **Examples:** {{examples}}
|
|
109
|
+
{{/each}}
|
|
110
|
+
|
|
111
|
+
## Asset Locations
|
|
112
|
+
|
|
113
|
+
{{#if has_assets}}
|
|
114
|
+
{{#each asset_locations}}
|
|
115
|
+
|
|
116
|
+
- **{{asset_type}}**: `{{location}}` ({{file_count}} files, {{total_size}})
|
|
117
|
+
{{/each}}
|
|
118
|
+
{{else}}
|
|
119
|
+
No significant assets detected.
|
|
120
|
+
{{/if}}
|
|
121
|
+
|
|
122
|
+
## Configuration Files
|
|
123
|
+
|
|
124
|
+
{{#each config_files}}
|
|
125
|
+
|
|
126
|
+
- **`{{path}}`**: {{description}}
|
|
127
|
+
{{/each}}
|
|
128
|
+
|
|
129
|
+
## Notes for Development
|
|
130
|
+
|
|
131
|
+
{{development_notes}}
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
_Generated using BMAD Method `document-project` workflow_
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Document Project Workflow Configuration
|
|
2
|
+
name: "document-project"
|
|
3
|
+
version: "1.2.0"
|
|
4
|
+
description: "Analyzes and documents brownfield projects by scanning codebase, architecture, and patterns to create comprehensive reference documentation for AI-assisted development"
|
|
5
|
+
author: "BMad"
|
|
6
|
+
|
|
7
|
+
# Critical variables
|
|
8
|
+
config_source: "{project-root}/_bmad/bmm/config.yaml"
|
|
9
|
+
output_folder: "{config_source}:project_knowledge"
|
|
10
|
+
user_name: "{config_source}:user_name"
|
|
11
|
+
communication_language: "{config_source}:communication_language"
|
|
12
|
+
document_output_language: "{config_source}:document_output_language"
|
|
13
|
+
user_skill_level: "{config_source}:user_skill_level"
|
|
14
|
+
date: system-generated
|
|
15
|
+
|
|
16
|
+
# Module path and component files
|
|
17
|
+
installed_path: "{project-root}/_bmad/bmm/workflows/document-project"
|
|
18
|
+
instructions: "{installed_path}/instructions.md"
|
|
19
|
+
validation: "{installed_path}/checklist.md"
|
|
20
|
+
|
|
21
|
+
# Required data files - CRITICAL for project type detection and documentation requirements
|
|
22
|
+
documentation_requirements_csv: "{installed_path}/documentation-requirements.csv"
|
|
23
|
+
|
|
24
|
+
# Output configuration - Multiple files generated in output folder
|
|
25
|
+
# Primary output: {output_folder}/project-documentation/
|
|
26
|
+
# Additional files generated by sub-workflows based on project structure
|
|
27
|
+
|
|
28
|
+
standalone: true
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
# Deep-Dive Documentation Instructions
|
|
2
|
+
|
|
3
|
+
<workflow>
|
|
4
|
+
|
|
5
|
+
<critical>This workflow performs exhaustive deep-dive documentation of specific areas</critical>
|
|
6
|
+
<critical>Called by: ../document-project/instructions.md router</critical>
|
|
7
|
+
<critical>Handles: deep_dive mode only</critical>
|
|
8
|
+
|
|
9
|
+
<step n="13" goal="Deep-dive documentation of specific area" if="workflow_mode == deep_dive">
|
|
10
|
+
<critical>Deep-dive mode requires literal full-file review. Sampling, guessing, or relying solely on tooling output is FORBIDDEN.</critical>
|
|
11
|
+
<action>Load existing project structure from index.md and project-parts.json (if exists)</action>
|
|
12
|
+
<action>Load source tree analysis to understand available areas</action>
|
|
13
|
+
|
|
14
|
+
<step n="13a" goal="Identify area for deep-dive">
|
|
15
|
+
<action>Analyze existing documentation to suggest deep-dive options</action>
|
|
16
|
+
|
|
17
|
+
<ask>What area would you like to deep-dive into?
|
|
18
|
+
|
|
19
|
+
**Suggested Areas Based on Project Structure:**
|
|
20
|
+
|
|
21
|
+
{{#if has_api_routes}}
|
|
22
|
+
|
|
23
|
+
## API Routes ({{api_route_count}} endpoints found)
|
|
24
|
+
|
|
25
|
+
{{#each api_route_groups}}
|
|
26
|
+
{{group_index}}. {{group_name}} - {{endpoint_count}} endpoints in `{{path}}`
|
|
27
|
+
{{/each}}
|
|
28
|
+
{{/if}}
|
|
29
|
+
|
|
30
|
+
{{#if has_feature_modules}}
|
|
31
|
+
|
|
32
|
+
## Feature Modules ({{feature_count}} features)
|
|
33
|
+
|
|
34
|
+
{{#each feature_modules}}
|
|
35
|
+
{{module_index}}. {{module_name}} - {{file_count}} files in `{{path}}`
|
|
36
|
+
{{/each}}
|
|
37
|
+
{{/if}}
|
|
38
|
+
|
|
39
|
+
{{#if has_ui_components}}
|
|
40
|
+
|
|
41
|
+
### UI Component Areas
|
|
42
|
+
|
|
43
|
+
{{#each component_groups}}
|
|
44
|
+
{{group_index}}. {{group_name}} - {{component_count}} components in `{{path}}`
|
|
45
|
+
{{/each}}
|
|
46
|
+
{{/if}}
|
|
47
|
+
|
|
48
|
+
{{#if has_services}}
|
|
49
|
+
|
|
50
|
+
### Services/Business Logic
|
|
51
|
+
|
|
52
|
+
{{#each service_groups}}
|
|
53
|
+
{{service_index}}. {{service_name}} - `{{path}}`
|
|
54
|
+
{{/each}}
|
|
55
|
+
{{/if}}
|
|
56
|
+
|
|
57
|
+
**Or specify custom:**
|
|
58
|
+
|
|
59
|
+
- Folder path (e.g., "client/src/features/dashboard")
|
|
60
|
+
- File path (e.g., "server/src/api/users.ts")
|
|
61
|
+
- Feature name (e.g., "authentication system")
|
|
62
|
+
|
|
63
|
+
Enter your choice (number or custom path):
|
|
64
|
+
</ask>
|
|
65
|
+
|
|
66
|
+
<action>Parse user input to determine: - target_type: "folder" | "file" | "feature" | "api_group" | "component_group" - target_path: Absolute path to scan - target_name: Human-readable name for documentation - target_scope: List of all files to analyze
|
|
67
|
+
</action>
|
|
68
|
+
|
|
69
|
+
<action>Store as {{deep_dive_target}}</action>
|
|
70
|
+
|
|
71
|
+
<action>Display confirmation:
|
|
72
|
+
Target: {{target_name}}
|
|
73
|
+
Type: {{target_type}}
|
|
74
|
+
Path: {{target_path}}
|
|
75
|
+
Estimated files to analyze: {{estimated_file_count}}
|
|
76
|
+
|
|
77
|
+
This will read EVERY file in this area. Proceed? [y/n]
|
|
78
|
+
</action>
|
|
79
|
+
|
|
80
|
+
<action if="user confirms 'n'">Return to Step 13a (select different area)</action>
|
|
81
|
+
</step>
|
|
82
|
+
|
|
83
|
+
<step n="13b" goal="Comprehensive exhaustive scan of target area">
|
|
84
|
+
<action>Set scan_mode = "exhaustive"</action>
|
|
85
|
+
<action>Initialize file_inventory = []</action>
|
|
86
|
+
<critical>You must read every line of every file in scope and capture a plain-language explanation (what the file does, side effects, why it matters) that future developer agents can act on. No shortcuts.</critical>
|
|
87
|
+
|
|
88
|
+
<check if="target_type == folder">
|
|
89
|
+
<action>Get complete recursive file list from {{target_path}}</action>
|
|
90
|
+
<action>Filter out: node_modules/, .git/, dist/, build/, coverage/, *.min.js, *.map</action>
|
|
91
|
+
<action>For EVERY remaining file in folder:
|
|
92
|
+
- Read complete file contents (all lines)
|
|
93
|
+
- Extract all exports (functions, classes, types, interfaces, constants)
|
|
94
|
+
- Extract all imports (dependencies)
|
|
95
|
+
- Identify purpose from comments and code structure
|
|
96
|
+
- Write 1-2 sentences (minimum) in natural language describing behaviour, side effects, assumptions, and anything a developer must know before modifying the file
|
|
97
|
+
- Extract function signatures with parameter types and return types
|
|
98
|
+
- Note any TODOs, FIXMEs, or comments
|
|
99
|
+
- Identify patterns (hooks, components, services, controllers, etc.)
|
|
100
|
+
- Capture per-file contributor guidance: `contributor_note`, `risks`, `verification_steps`, `suggested_tests`
|
|
101
|
+
- Store in file_inventory
|
|
102
|
+
</action>
|
|
103
|
+
</check>
|
|
104
|
+
|
|
105
|
+
<check if="target_type == file">
|
|
106
|
+
<action>Read complete file at {{target_path}}</action>
|
|
107
|
+
<action>Extract all information as above</action>
|
|
108
|
+
<action>Read all files it imports (follow import chain 1 level deep)</action>
|
|
109
|
+
<action>Find all files that import this file (dependents via grep)</action>
|
|
110
|
+
<action>Store all in file_inventory</action>
|
|
111
|
+
</check>
|
|
112
|
+
|
|
113
|
+
<check if="target_type == api_group">
|
|
114
|
+
<action>Identify all route/controller files in API group</action>
|
|
115
|
+
<action>Read all route handlers completely</action>
|
|
116
|
+
<action>Read associated middleware, controllers, services</action>
|
|
117
|
+
<action>Read data models and schemas used</action>
|
|
118
|
+
<action>Extract complete request/response schemas</action>
|
|
119
|
+
<action>Document authentication and authorization requirements</action>
|
|
120
|
+
<action>Store all in file_inventory</action>
|
|
121
|
+
</check>
|
|
122
|
+
|
|
123
|
+
<check if="target_type == feature">
|
|
124
|
+
<action>Search codebase for all files related to feature name</action>
|
|
125
|
+
<action>Include: UI components, API endpoints, models, services, tests</action>
|
|
126
|
+
<action>Read each file completely</action>
|
|
127
|
+
<action>Store all in file_inventory</action>
|
|
128
|
+
</check>
|
|
129
|
+
|
|
130
|
+
<check if="target_type == component_group">
|
|
131
|
+
<action>Get all component files in group</action>
|
|
132
|
+
<action>Read each component completely</action>
|
|
133
|
+
<action>Extract: Props interfaces, hooks used, child components, state management</action>
|
|
134
|
+
<action>Store all in file_inventory</action>
|
|
135
|
+
</check>
|
|
136
|
+
|
|
137
|
+
<action>For each file in file\*inventory, document: - **File Path:** Full path - **Purpose:** What this file does (1-2 sentences) - **Lines of Code:** Total LOC - **Exports:** Complete list with signatures
|
|
138
|
+
|
|
139
|
+
- Functions: `functionName(param: Type): ReturnType` - Description
|
|
140
|
+
- Classes: `ClassName` - Description with key methods
|
|
141
|
+
- Types/Interfaces: `TypeName` - Description
|
|
142
|
+
- Constants: `CONSTANT_NAME: Type` - Description - **Imports/Dependencies:** What it uses and why - **Used By:** Files that import this (dependents) - **Key Implementation Details:** Important logic, algorithms, patterns - **State Management:** If applicable (Redux, Context, local state) - **Side Effects:** API calls, database queries, file I/O, external services - **Error Handling:** Try/catch blocks, error boundaries, validation - **Testing:** Associated test files and coverage - **Comments/TODOs:** Any inline documentation or planned work
|
|
143
|
+
</action>
|
|
144
|
+
|
|
145
|
+
<template-output>comprehensive_file_inventory</template-output>
|
|
146
|
+
</step>
|
|
147
|
+
|
|
148
|
+
<step n="13c" goal="Analyze relationships and data flow">
|
|
149
|
+
<action>Build dependency graph for scanned area:
|
|
150
|
+
- Create graph with files as nodes
|
|
151
|
+
- Add edges for import relationships
|
|
152
|
+
- Identify circular dependencies if any
|
|
153
|
+
- Find entry points (files not imported by others in scope)
|
|
154
|
+
- Find leaf nodes (files that don't import others in scope)
|
|
155
|
+
</action>
|
|
156
|
+
|
|
157
|
+
<action>Trace data flow through the system: - Follow function calls and data transformations - Track API calls and their responses - Document state updates and propagation - Map database queries and mutations
|
|
158
|
+
</action>
|
|
159
|
+
|
|
160
|
+
<action>Identify integration points: - External APIs consumed - Internal APIs/services called - Shared state accessed - Events published/subscribed - Database tables accessed
|
|
161
|
+
</action>
|
|
162
|
+
|
|
163
|
+
<template-output>dependency_graph</template-output>
|
|
164
|
+
<template-output>data_flow_analysis</template-output>
|
|
165
|
+
<template-output>integration_points</template-output>
|
|
166
|
+
</step>
|
|
167
|
+
|
|
168
|
+
<step n="13d" goal="Find related code and similar patterns">
|
|
169
|
+
<action>Search codebase OUTSIDE scanned area for:
|
|
170
|
+
- Similar file/folder naming patterns
|
|
171
|
+
- Similar function signatures
|
|
172
|
+
- Similar component structures
|
|
173
|
+
- Similar API patterns
|
|
174
|
+
- Reusable utilities that could be used
|
|
175
|
+
</action>
|
|
176
|
+
|
|
177
|
+
<action>Identify code reuse opportunities: - Shared utilities available - Design patterns used elsewhere - Component libraries available - Helper functions that could apply
|
|
178
|
+
</action>
|
|
179
|
+
|
|
180
|
+
<action>Find reference implementations: - Similar features in other parts of codebase - Established patterns to follow - Testing approaches used elsewhere
|
|
181
|
+
</action>
|
|
182
|
+
|
|
183
|
+
<template-output>related_code_references</template-output>
|
|
184
|
+
<template-output>reuse_opportunities</template-output>
|
|
185
|
+
</step>
|
|
186
|
+
|
|
187
|
+
<step n="13e" goal="Generate comprehensive deep-dive documentation">
|
|
188
|
+
<action>Create documentation filename: deep-dive-{{sanitized_target_name}}.md</action>
|
|
189
|
+
<action>Aggregate contributor insights across files:
|
|
190
|
+
- Combine unique risk/gotcha notes into {{risks_notes}}
|
|
191
|
+
- Combine verification steps developers should run before changes into {{verification_steps}}
|
|
192
|
+
- Combine recommended test commands into {{suggested_tests}}
|
|
193
|
+
</action>
|
|
194
|
+
|
|
195
|
+
<action>Load complete deep-dive template from: {installed_path}/templates/deep-dive-template.md</action>
|
|
196
|
+
<action>Fill template with all collected data from steps 13b-13d</action>
|
|
197
|
+
<action>Write filled template to: {output_folder}/deep-dive-{{sanitized_target_name}}.md</action>
|
|
198
|
+
<action>Validate deep-dive document completeness</action>
|
|
199
|
+
|
|
200
|
+
<template-output>deep_dive_documentation</template-output>
|
|
201
|
+
|
|
202
|
+
<action>Update state file: - Add to deep_dive_targets array: {"target_name": "{{target_name}}", "target_path": "{{target_path}}", "files_analyzed": {{file_count}}, "output_file": "deep-dive-{{sanitized_target_name}}.md", "timestamp": "{{now}}"} - Add output to outputs_generated - Update last_updated timestamp
|
|
203
|
+
</action>
|
|
204
|
+
</step>
|
|
205
|
+
|
|
206
|
+
<step n="13f" goal="Update master index with deep-dive link">
|
|
207
|
+
<action>Read existing index.md</action>
|
|
208
|
+
|
|
209
|
+
<action>Check if "Deep-Dive Documentation" section exists</action>
|
|
210
|
+
|
|
211
|
+
<check if="section does not exist">
|
|
212
|
+
<action>Add new section after "Generated Documentation":
|
|
213
|
+
|
|
214
|
+
## Deep-Dive Documentation
|
|
215
|
+
|
|
216
|
+
Detailed exhaustive analysis of specific areas:
|
|
217
|
+
|
|
218
|
+
</action>
|
|
219
|
+
|
|
220
|
+
</check>
|
|
221
|
+
|
|
222
|
+
<action>Add link to new deep-dive doc:
|
|
223
|
+
|
|
224
|
+
- [{{target_name}} Deep-Dive](./deep-dive-{{sanitized_target_name}}.md) - Comprehensive analysis of {{target_description}} ({{file_count}} files, {{total_loc}} LOC) - Generated {{date}}
|
|
225
|
+
</action>
|
|
226
|
+
|
|
227
|
+
<action>Update index metadata:
|
|
228
|
+
Last Updated: {{date}}
|
|
229
|
+
Deep-Dives: {{deep_dive_count}}
|
|
230
|
+
</action>
|
|
231
|
+
|
|
232
|
+
<action>Save updated index.md</action>
|
|
233
|
+
|
|
234
|
+
<template-output>updated_index</template-output>
|
|
235
|
+
</step>
|
|
236
|
+
|
|
237
|
+
<step n="13g" goal="Offer to continue or complete">
|
|
238
|
+
<action>Display summary:
|
|
239
|
+
|
|
240
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
241
|
+
|
|
242
|
+
## Deep-Dive Documentation Complete! ✓
|
|
243
|
+
|
|
244
|
+
**Generated:** {output_folder}/deep-dive-{{target_name}}.md
|
|
245
|
+
**Files Analyzed:** {{file_count}}
|
|
246
|
+
**Lines of Code Scanned:** {{total_loc}}
|
|
247
|
+
**Time Taken:** ~{{duration}}
|
|
248
|
+
|
|
249
|
+
**Documentation Includes:**
|
|
250
|
+
|
|
251
|
+
- Complete file inventory with all exports
|
|
252
|
+
- Dependency graph and data flow
|
|
253
|
+
- Integration points and API contracts
|
|
254
|
+
- Testing analysis and coverage
|
|
255
|
+
- Related code and reuse opportunities
|
|
256
|
+
- Implementation guidance
|
|
257
|
+
|
|
258
|
+
**Index Updated:** {output_folder}/index.md now includes link to this deep-dive
|
|
259
|
+
|
|
260
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
261
|
+
</action>
|
|
262
|
+
|
|
263
|
+
<ask>Would you like to:
|
|
264
|
+
|
|
265
|
+
1. **Deep-dive another area** - Analyze another feature/module/folder
|
|
266
|
+
2. **Finish** - Complete workflow
|
|
267
|
+
|
|
268
|
+
Your choice [1/2]:
|
|
269
|
+
</ask>
|
|
270
|
+
|
|
271
|
+
<action if="user selects 1">
|
|
272
|
+
<action>Clear current deep_dive_target</action>
|
|
273
|
+
<action>Go to Step 13a (select new area)</action>
|
|
274
|
+
</action>
|
|
275
|
+
|
|
276
|
+
<action if="user selects 2">
|
|
277
|
+
<action>Display final message:
|
|
278
|
+
|
|
279
|
+
All deep-dive documentation complete!
|
|
280
|
+
|
|
281
|
+
**Master Index:** {output_folder}/index.md
|
|
282
|
+
**Deep-Dives Generated:** {{deep_dive_count}}
|
|
283
|
+
|
|
284
|
+
These comprehensive docs are now ready for:
|
|
285
|
+
|
|
286
|
+
- Architecture review
|
|
287
|
+
- Implementation planning
|
|
288
|
+
- Code understanding
|
|
289
|
+
- Brownfield PRD creation
|
|
290
|
+
|
|
291
|
+
Thank you for using the document-project workflow!
|
|
292
|
+
</action>
|
|
293
|
+
<action>Exit workflow</action>
|
|
294
|
+
</action>
|
|
295
|
+
</step>
|
|
296
|
+
</step>
|
|
297
|
+
|
|
298
|
+
</workflow>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Deep-Dive Documentation Workflow Configuration
|
|
2
|
+
name: "document-project-deep-dive"
|
|
3
|
+
description: "Exhaustive deep-dive documentation of specific project areas"
|
|
4
|
+
author: "BMad"
|
|
5
|
+
|
|
6
|
+
# This is a sub-workflow called by document-project/workflow.yaml
|
|
7
|
+
parent_workflow: "{project-root}/_bmad/bmm/workflows/document-project/workflow.yaml"
|
|
8
|
+
|
|
9
|
+
# Critical variables inherited from parent
|
|
10
|
+
config_source: "{project-root}/_bmad/bmb/config.yaml"
|
|
11
|
+
output_folder: "{config_source}:output_folder"
|
|
12
|
+
user_name: "{config_source}:user_name"
|
|
13
|
+
date: system-generated
|
|
14
|
+
|
|
15
|
+
# Module path and component files
|
|
16
|
+
installed_path: "{project-root}/_bmad/bmm/workflows/document-project/workflows"
|
|
17
|
+
template: false # Action workflow
|
|
18
|
+
instructions: "{installed_path}/deep-dive-instructions.md"
|
|
19
|
+
validation: "{project-root}/_bmad/bmm/workflows/document-project/checklist.md"
|
|
20
|
+
|
|
21
|
+
# Templates
|
|
22
|
+
deep_dive_template: "{project-root}/_bmad/bmm/workflows/document-project/templates/deep-dive-template.md"
|
|
23
|
+
|
|
24
|
+
# Runtime inputs (passed from parent workflow)
|
|
25
|
+
workflow_mode: "deep_dive"
|
|
26
|
+
scan_level: "exhaustive" # Deep-dive always uses exhaustive scan
|
|
27
|
+
project_root_path: ""
|
|
28
|
+
existing_index_path: "" # Path to existing index.md
|
|
29
|
+
|
|
30
|
+
# Configuration
|
|
31
|
+
autonomous: false # Requires user input to select target area
|