@cregis-dev/cckit 0.2.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/LICENSE +21 -0
- package/README.md +253 -0
- package/bin/cckit.js +3 -0
- package/package.json +52 -0
- package/registry.json +194 -0
- package/src/adapters/trae-adapter.js +90 -0
- package/src/cli.js +88 -0
- package/src/commands/add.js +192 -0
- package/src/commands/init.js +333 -0
- package/src/commands/status.js +62 -0
- package/src/commands/sync.js +325 -0
- package/src/commands/update.js +425 -0
- package/src/core/config.js +82 -0
- package/src/core/differ.js +57 -0
- package/src/core/installer.js +97 -0
- package/src/core/plugin-installer.js +237 -0
- package/src/core/registry.js +75 -0
- package/src/core/templatize.js +42 -0
- package/src/core/upstream.js +357 -0
- package/src/utils/fs.js +50 -0
- package/src/utils/logger.js +16 -0
- package/templates/bmad/_config/agent-manifest.csv +12 -0
- package/templates/bmad/_config/agents/bmm-analyst.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-architect.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-dev.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-pm.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-qa.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-quick-flow-solo-dev.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-sm.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-tech-writer.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-ux-designer.customize.yaml +41 -0
- package/templates/bmad/_config/agents/core-bmad-master.customize.yaml +41 -0
- package/templates/bmad/_config/agents/tea-tea.customize.yaml +41 -0
- package/templates/bmad/_config/bmad-help.csv +48 -0
- package/templates/bmad/_config/files-manifest.csv +431 -0
- package/templates/bmad/_config/ides/claude-code.yaml +5 -0
- package/templates/bmad/_config/ides/opencode.yaml +5 -0
- package/templates/bmad/_config/ides/trae.yaml +5 -0
- package/templates/bmad/_config/task-manifest.csv +7 -0
- package/templates/bmad/_config/tool-manifest.csv +1 -0
- package/templates/bmad/_config/workflow-manifest.csv +35 -0
- package/templates/bmad/bmm/agents/analyst.md +78 -0
- package/templates/bmad/bmm/agents/architect.md +58 -0
- package/templates/bmad/bmm/agents/dev.md +69 -0
- package/templates/bmad/bmm/agents/pm.md +72 -0
- package/templates/bmad/bmm/agents/qa.md +92 -0
- package/templates/bmad/bmm/agents/quick-flow-solo-dev.md +69 -0
- package/templates/bmad/bmm/agents/sm.md +70 -0
- package/templates/bmad/bmm/agents/tech-writer/tech-writer.md +70 -0
- package/templates/bmad/bmm/agents/ux-designer.md +57 -0
- package/templates/bmad/bmm/config.yaml +15 -0
- package/templates/bmad/bmm/data/project-context-template.md +26 -0
- package/templates/bmad/bmm/module-help.csv +31 -0
- package/templates/bmad/bmm/teams/default-party.csv +20 -0
- package/templates/bmad/bmm/teams/team-fullstack.yaml +12 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +162 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +57 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +444 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +476 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/research.template.md +29 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +233 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +487 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/workflow-domain-research.md +54 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/workflow-market-research.md +54 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/workflow-technical-research.md +54 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +15 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +197 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +11 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +191 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +152 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +224 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +154 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +170 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +226 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +213 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +207 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +226 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +237 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +228 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +231 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +242 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +217 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +124 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +247 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +249 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +253 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +168 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +226 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +191 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +209 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +174 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +228 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +217 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +263 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +209 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +242 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +231 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +10 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-create-prd.md +63 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-edit-prd.md +65 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +63 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +171 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +42 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +184 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +172 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +173 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +133 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +245 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +129 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +54 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +13 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +173 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +329 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +76 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +49 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +149 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +58 -0
- package/templates/bmad/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
- package/templates/bmad/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
- package/templates/bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +43 -0
- package/templates/bmad/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
- package/templates/bmad/bmm/workflows/4-implementation/correct-course/instructions.md +207 -0
- package/templates/bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +53 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/instructions.xml +346 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/template.md +49 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +52 -0
- package/templates/bmad/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
- package/templates/bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -0
- package/templates/bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +20 -0
- package/templates/bmad/bmm/workflows/4-implementation/retrospective/instructions.md +1444 -0
- package/templates/bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +52 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +226 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +47 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +230 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +25 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +174 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +118 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +111 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +111 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +104 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +146 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +50 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +189 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +143 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +126 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +200 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
- package/templates/bmad/bmm/workflows/document-project/checklist.md +245 -0
- package/templates/bmad/bmm/workflows/document-project/documentation-requirements.csv +12 -0
- package/templates/bmad/bmm/workflows/document-project/instructions.md +130 -0
- package/templates/bmad/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
- package/templates/bmad/bmm/workflows/document-project/templates/index-template.md +169 -0
- package/templates/bmad/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
- package/templates/bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
- package/templates/bmad/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
- package/templates/bmad/bmm/workflows/document-project/workflow.yaml +22 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
- package/templates/bmad/bmm/workflows/generate-project-context/project-context-template.md +21 -0
- package/templates/bmad/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
- package/templates/bmad/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
- package/templates/bmad/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
- package/templates/bmad/bmm/workflows/generate-project-context/workflow.md +49 -0
- package/templates/bmad/bmm/workflows/qa/automate/checklist.md +33 -0
- package/templates/bmad/bmm/workflows/qa/automate/instructions.md +110 -0
- package/templates/bmad/bmm/workflows/qa/automate/workflow.yaml +44 -0
- package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/checklist.md +33 -0
- package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/instructions.md +110 -0
- package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/workflow.yaml +42 -0
- package/templates/bmad/commands/bmad-agent-bmad-master.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-analyst.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-architect.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-dev.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-pm.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-qa.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-quick-flow-solo-dev.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-sm.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-tech-writer.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-ux-designer.md +15 -0
- package/templates/bmad/commands/bmad-agent-tea-tea.md +15 -0
- package/templates/bmad/commands/bmad-bmm-check-implementation-readiness.md +6 -0
- package/templates/bmad/commands/bmad-bmm-code-review.md +14 -0
- package/templates/bmad/commands/bmad-bmm-correct-course.md +14 -0
- package/templates/bmad/commands/bmad-bmm-create-architecture.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-epics-and-stories.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-prd.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-product-brief.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-story.md +14 -0
- package/templates/bmad/commands/bmad-bmm-create-ux-design.md +6 -0
- package/templates/bmad/commands/bmad-bmm-dev-story.md +14 -0
- package/templates/bmad/commands/bmad-bmm-document-project.md +14 -0
- package/templates/bmad/commands/bmad-bmm-domain-research.md +6 -0
- package/templates/bmad/commands/bmad-bmm-edit-prd.md +6 -0
- package/templates/bmad/commands/bmad-bmm-generate-project-context.md +6 -0
- package/templates/bmad/commands/bmad-bmm-market-research.md +6 -0
- package/templates/bmad/commands/bmad-bmm-qa-automate.md +15 -0
- package/templates/bmad/commands/bmad-bmm-qa-generate-e2e-tests.md +14 -0
- package/templates/bmad/commands/bmad-bmm-quick-dev.md +6 -0
- package/templates/bmad/commands/bmad-bmm-quick-spec.md +6 -0
- package/templates/bmad/commands/bmad-bmm-retrospective.md +14 -0
- package/templates/bmad/commands/bmad-bmm-sprint-planning.md +14 -0
- package/templates/bmad/commands/bmad-bmm-sprint-status.md +14 -0
- package/templates/bmad/commands/bmad-bmm-technical-research.md +6 -0
- package/templates/bmad/commands/bmad-bmm-validate-prd.md +6 -0
- package/templates/bmad/commands/bmad-brainstorming.md +6 -0
- package/templates/bmad/commands/bmad-editorial-review-prose.md +10 -0
- package/templates/bmad/commands/bmad-editorial-review-structure.md +10 -0
- package/templates/bmad/commands/bmad-help.md +10 -0
- package/templates/bmad/commands/bmad-index-docs.md +10 -0
- package/templates/bmad/commands/bmad-party-mode.md +6 -0
- package/templates/bmad/commands/bmad-review-adversarial-general.md +10 -0
- package/templates/bmad/commands/bmad-shard-doc.md +10 -0
- package/templates/bmad/commands/bmad-tea-teach-me-testing.md +6 -0
- package/templates/bmad/commands/bmad-tea-testarch-atdd.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-automate.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-ci.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-framework.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-nfr.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-test-design.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-test-review.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-trace.md +14 -0
- package/templates/bmad/core/agents/bmad-master.md +56 -0
- package/templates/bmad/core/config.yaml +8 -0
- package/templates/bmad/core/module-help.csv +9 -0
- package/templates/bmad/core/tasks/editorial-review-prose.xml +102 -0
- package/templates/bmad/core/tasks/editorial-review-structure.xml +208 -0
- package/templates/bmad/core/tasks/help.md +86 -0
- package/templates/bmad/core/tasks/index-docs.xml +65 -0
- package/templates/bmad/core/tasks/review-adversarial-general.xml +49 -0
- package/templates/bmad/core/tasks/shard-doc.xml +108 -0
- package/templates/bmad/core/tasks/workflow.xml +235 -0
- package/templates/bmad/core/workflows/advanced-elicitation/methods.csv +51 -0
- package/templates/bmad/core/workflows/advanced-elicitation/workflow.xml +118 -0
- package/templates/bmad/core/workflows/brainstorming/brain-methods.csv +62 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
- package/templates/bmad/core/workflows/brainstorming/template.md +15 -0
- package/templates/bmad/core/workflows/brainstorming/workflow.md +58 -0
- package/templates/bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
- package/templates/bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
- package/templates/bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +168 -0
- package/templates/bmad/core/workflows/party-mode/workflow.md +194 -0
- package/templates/bmad/tea/agents/tea.md +71 -0
- package/templates/bmad/tea/config.yaml +20 -0
- package/templates/bmad/tea/module-help.csv +10 -0
- package/templates/bmad/tea/teams/default-party.csv +2 -0
- package/templates/bmad/tea/testarch/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/templates/bmad/tea/testarch/knowledge/api-request.md +563 -0
- package/templates/bmad/tea/testarch/knowledge/api-testing-patterns.md +915 -0
- package/templates/bmad/tea/testarch/knowledge/auth-session.md +548 -0
- package/templates/bmad/tea/testarch/knowledge/burn-in.md +273 -0
- package/templates/bmad/tea/testarch/knowledge/ci-burn-in.md +675 -0
- package/templates/bmad/tea/testarch/knowledge/component-tdd.md +486 -0
- package/templates/bmad/tea/testarch/knowledge/contract-testing.md +957 -0
- package/templates/bmad/tea/testarch/knowledge/data-factories.md +500 -0
- package/templates/bmad/tea/testarch/knowledge/email-auth.md +721 -0
- package/templates/bmad/tea/testarch/knowledge/error-handling.md +725 -0
- package/templates/bmad/tea/testarch/knowledge/feature-flags.md +750 -0
- package/templates/bmad/tea/testarch/knowledge/file-utils.md +456 -0
- package/templates/bmad/tea/testarch/knowledge/fixture-architecture.md +401 -0
- package/templates/bmad/tea/testarch/knowledge/fixtures-composition.md +382 -0
- package/templates/bmad/tea/testarch/knowledge/intercept-network-call.md +426 -0
- package/templates/bmad/tea/testarch/knowledge/log.md +426 -0
- package/templates/bmad/tea/testarch/knowledge/network-error-monitor.md +401 -0
- package/templates/bmad/tea/testarch/knowledge/network-first.md +486 -0
- package/templates/bmad/tea/testarch/knowledge/network-recorder.md +527 -0
- package/templates/bmad/tea/testarch/knowledge/nfr-criteria.md +670 -0
- package/templates/bmad/tea/testarch/knowledge/overview.md +286 -0
- package/templates/bmad/tea/testarch/knowledge/playwright-cli.md +165 -0
- package/templates/bmad/tea/testarch/knowledge/playwright-config.md +730 -0
- package/templates/bmad/tea/testarch/knowledge/probability-impact.md +601 -0
- package/templates/bmad/tea/testarch/knowledge/recurse.md +421 -0
- package/templates/bmad/tea/testarch/knowledge/risk-governance.md +615 -0
- package/templates/bmad/tea/testarch/knowledge/selective-testing.md +732 -0
- package/templates/bmad/tea/testarch/knowledge/selector-resilience.md +527 -0
- package/templates/bmad/tea/testarch/knowledge/test-healing-patterns.md +644 -0
- package/templates/bmad/tea/testarch/knowledge/test-levels-framework.md +473 -0
- package/templates/bmad/tea/testarch/knowledge/test-priorities-matrix.md +373 -0
- package/templates/bmad/tea/testarch/knowledge/test-quality.md +664 -0
- package/templates/bmad/tea/testarch/knowledge/timing-debugging.md +372 -0
- package/templates/bmad/tea/testarch/knowledge/visual-debugging.md +524 -0
- package/templates/bmad/tea/testarch/tea-index.csv +36 -0
- package/templates/bmad/tea/workflows/testarch/README.md +74 -0
- package/templates/bmad/tea/workflows/testarch/atdd/atdd-checklist-template.md +371 -0
- package/templates/bmad/tea/workflows/testarch/atdd/checklist.md +374 -0
- package/templates/bmad/tea/workflows/testarch/atdd/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-01-preflight-and-context.md +196 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-01b-resume.md +96 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-02-generation-mode.md +125 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-03-test-strategy.md +110 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04-generate-tests.md +229 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04a-subprocess-api-failing.md +215 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04b-subprocess-e2e-failing.md +244 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04c-aggregate.md +354 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-05-validate-and-complete.md +106 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/atdd/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/atdd/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/atdd/workflow-plan.md +21 -0
- package/templates/bmad/tea/workflows/testarch/atdd/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/atdd/workflow.yaml +46 -0
- package/templates/bmad/tea/workflows/testarch/automate/checklist.md +582 -0
- package/templates/bmad/tea/workflows/testarch/automate/instructions.md +50 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-01-preflight-and-context.md +205 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-01b-resume.md +94 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-02-identify-targets.md +145 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03-generate-tests.md +278 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03a-subprocess-api.md +183 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-backend.md +246 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-e2e.md +213 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03c-aggregate.md +377 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-04-validate-and-summarize.md +106 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/automate/validation-report-20260127-095021.md +72 -0
- package/templates/bmad/tea/workflows/testarch/automate/validation-report-20260127-102401.md +114 -0
- package/templates/bmad/tea/workflows/testarch/automate/workflow-plan.md +20 -0
- package/templates/bmad/tea/workflows/testarch/automate/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/automate/workflow.yaml +53 -0
- package/templates/bmad/tea/workflows/testarch/ci/azure-pipelines-template.yaml +155 -0
- package/templates/bmad/tea/workflows/testarch/ci/checklist.md +288 -0
- package/templates/bmad/tea/workflows/testarch/ci/github-actions-template.yaml +210 -0
- package/templates/bmad/tea/workflows/testarch/ci/gitlab-ci-template.yaml +158 -0
- package/templates/bmad/tea/workflows/testarch/ci/harness-pipeline-template.yaml +159 -0
- package/templates/bmad/tea/workflows/testarch/ci/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/ci/jenkins-pipeline-template.groovy +129 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-01-preflight.md +158 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-01b-resume.md +110 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-02-generate-pipeline.md +118 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-03-configure-quality-gates.md +105 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-04-validate-and-summary.md +92 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/ci/validation-report-20260127-095021.md +72 -0
- package/templates/bmad/tea/workflows/testarch/ci/validation-report-20260127-102401.md +114 -0
- package/templates/bmad/tea/workflows/testarch/ci/workflow-plan.md +20 -0
- package/templates/bmad/tea/workflows/testarch/ci/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/ci/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/framework/checklist.md +321 -0
- package/templates/bmad/tea/workflows/testarch/framework/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-01-preflight.md +132 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-01b-resume.md +116 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-02-select-framework.md +117 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-03-scaffold-framework.md +196 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-04-docs-and-scripts.md +105 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-05-validate-and-summary.md +93 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/framework/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/framework/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/framework/workflow-plan.md +22 -0
- package/templates/bmad/tea/workflows/testarch/framework/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/framework/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/checklist.md +407 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/instructions.md +43 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/nfr-report-template.md +470 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01-load-context.md +138 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01b-resume.md +106 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-02-define-thresholds.md +107 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-03-gather-evidence.md +108 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04-evaluate-and-score.md +140 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04a-subprocess-security.md +138 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04b-subprocess-performance.md +84 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04c-subprocess-reliability.md +85 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04d-subprocess-scalability.md +88 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04e-aggregate-nfr.md +247 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-05-generate-report.md +108 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow-plan.md +19 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/checklist.md +197 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/curriculum.yaml +129 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/quiz-questions.yaml +206 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/role-paths.yaml +136 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/session-content-map.yaml +207 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/tea-resources-index.yaml +359 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/instructions.md +130 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01-init.md +235 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01b-continue.md +147 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-02-assess.md +258 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-03-session-menu.md +219 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-01.md +460 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-02.md +465 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-03.md +301 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-04.md +234 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-05.md +234 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-06.md +209 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-07.md +212 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-05-completion.md +339 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-01-assess-workflow.md +141 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-02-apply-edits.md +122 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-v/step-v-01-validate.md +263 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/certificate-template.md +86 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/progress-template.yaml +95 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/session-notes-template.md +83 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/workflow-plan-teach-me-testing.md +950 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/workflow.md +90 -0
- package/templates/bmad/tea/workflows/testarch/test-design/checklist.md +464 -0
- package/templates/bmad/tea/workflows/testarch/test-design/instructions.md +105 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-01-detect-mode.md +134 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-01b-resume.md +102 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-02-load-context.md +212 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-03-risk-and-testability.md +110 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-04-coverage-plan.md +123 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-05-generate-output.md +151 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-architecture-template.md +230 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-handoff-template.md +70 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-qa-template.md +396 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-template.md +344 -0
- package/templates/bmad/tea/workflows/testarch/test-design/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/test-design/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/test-design/workflow-plan.md +22 -0
- package/templates/bmad/tea/workflows/testarch/test-design/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/test-design/workflow.yaml +77 -0
- package/templates/bmad/tea/workflows/testarch/test-review/checklist.md +475 -0
- package/templates/bmad/tea/workflows/testarch/test-review/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-01-load-context.md +169 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-01b-resume.md +104 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-02-discover-tests.md +113 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03-quality-evaluation.md +173 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03a-subprocess-determinism.md +214 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03b-subprocess-isolation.md +125 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03c-subprocess-maintainability.md +102 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03d-subprocess-coverage.md +111 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03e-subprocess-performance.md +117 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03f-aggregate-scores.md +277 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-04-generate-report.md +111 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/test-review/test-review-template.md +387 -0
- package/templates/bmad/tea/workflows/testarch/test-review/validation-report-20260127-095021.md +72 -0
- package/templates/bmad/tea/workflows/testarch/test-review/validation-report-20260127-102401.md +114 -0
- package/templates/bmad/tea/workflows/testarch/test-review/workflow-plan.md +18 -0
- package/templates/bmad/tea/workflows/testarch/test-review/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/test-review/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/trace/checklist.md +647 -0
- package/templates/bmad/tea/workflows/testarch/trace/instructions.md +43 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-01-load-context.md +105 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-01b-resume.md +102 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-02-discover-tests.md +112 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-03-map-criteria.md +97 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-04-analyze-gaps.md +330 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-05-gate-decision.md +266 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/trace/trace-template.md +708 -0
- package/templates/bmad/tea/workflows/testarch/trace/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/trace/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/trace/workflow-plan.md +21 -0
- package/templates/bmad/tea/workflows/testarch/trace/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/trace/workflow.yaml +56 -0
- package/templates/ecc/agents/architect.md +211 -0
- package/templates/ecc/agents/build-error-resolver.md +114 -0
- package/templates/ecc/agents/code-reviewer.md +224 -0
- package/templates/ecc/agents/database-reviewer.md +91 -0
- package/templates/ecc/agents/doc-updater.md +107 -0
- package/templates/ecc/agents/e2e-runner.md +107 -0
- package/templates/ecc/agents/go-build-resolver.md +94 -0
- package/templates/ecc/agents/go-reviewer.md +76 -0
- package/templates/ecc/agents/planner.md +212 -0
- package/templates/ecc/agents/python-reviewer.md +98 -0
- package/templates/ecc/agents/refactor-cleaner.md +85 -0
- package/templates/ecc/agents/security-reviewer.md +108 -0
- package/templates/ecc/agents/tdd-guide.md +80 -0
- package/templates/ecc/commands/build-fix.md +62 -0
- package/templates/ecc/commands/checkpoint.md +74 -0
- package/templates/ecc/commands/code-review.md +40 -0
- package/templates/ecc/commands/e2e.md +363 -0
- package/templates/ecc/commands/eval.md +120 -0
- package/templates/ecc/commands/evolve.md +193 -0
- package/templates/ecc/commands/go-build.md +183 -0
- package/templates/ecc/commands/go-review.md +148 -0
- package/templates/ecc/commands/go-test.md +268 -0
- package/templates/ecc/commands/instinct-export.md +91 -0
- package/templates/ecc/commands/instinct-import.md +142 -0
- package/templates/ecc/commands/instinct-status.md +86 -0
- package/templates/ecc/commands/learn-eval.md +91 -0
- package/templates/ecc/commands/learn.md +70 -0
- package/templates/ecc/commands/multi-backend.md +158 -0
- package/templates/ecc/commands/multi-execute.md +310 -0
- package/templates/ecc/commands/multi-frontend.md +158 -0
- package/templates/ecc/commands/multi-plan.md +261 -0
- package/templates/ecc/commands/multi-workflow.md +183 -0
- package/templates/ecc/commands/orchestrate.md +172 -0
- package/templates/ecc/commands/plan.md +113 -0
- package/templates/ecc/commands/pm2.md +272 -0
- package/templates/ecc/commands/python-review.md +297 -0
- package/templates/ecc/commands/refactor-clean.md +80 -0
- package/templates/ecc/commands/sessions.md +305 -0
- package/templates/ecc/commands/setup-pm.md +80 -0
- package/templates/ecc/commands/skill-create.md +174 -0
- package/templates/ecc/commands/tdd.md +326 -0
- package/templates/ecc/commands/test-coverage.md +69 -0
- package/templates/ecc/commands/update-codemaps.md +72 -0
- package/templates/ecc/commands/update-docs.md +84 -0
- package/templates/ecc/commands/verify.md +59 -0
- package/templates/ecc/rules/README.md +82 -0
- package/templates/ecc/rules/common/agents.md +49 -0
- package/templates/ecc/rules/common/coding-style.md +48 -0
- package/templates/ecc/rules/common/git-workflow.md +45 -0
- package/templates/ecc/rules/common/hooks.md +30 -0
- package/templates/ecc/rules/common/patterns.md +31 -0
- package/templates/ecc/rules/common/performance.md +55 -0
- package/templates/ecc/rules/common/security.md +29 -0
- package/templates/ecc/rules/common/testing.md +29 -0
- package/templates/ecc/rules/golang/coding-style.md +32 -0
- package/templates/ecc/rules/golang/hooks.md +17 -0
- package/templates/ecc/rules/golang/patterns.md +45 -0
- package/templates/ecc/rules/golang/security.md +34 -0
- package/templates/ecc/rules/golang/testing.md +31 -0
- package/templates/ecc/rules/python/coding-style.md +42 -0
- package/templates/ecc/rules/python/hooks.md +19 -0
- package/templates/ecc/rules/python/patterns.md +39 -0
- package/templates/ecc/rules/python/security.md +30 -0
- package/templates/ecc/rules/python/testing.md +38 -0
- package/templates/ecc/rules/typescript/coding-style.md +65 -0
- package/templates/ecc/rules/typescript/hooks.md +22 -0
- package/templates/ecc/rules/typescript/patterns.md +52 -0
- package/templates/ecc/rules/typescript/security.md +28 -0
- package/templates/ecc/rules/typescript/testing.md +18 -0
- package/templates/ecc/skills/api-design/SKILL.md +522 -0
- package/templates/ecc/skills/backend-patterns/SKILL.md +597 -0
- package/templates/ecc/skills/clickhouse-io/SKILL.md +438 -0
- package/templates/ecc/skills/coding-standards/SKILL.md +529 -0
- package/templates/ecc/skills/configure-ecc/SKILL.md +298 -0
- package/templates/ecc/skills/content-hash-cache-pattern/SKILL.md +160 -0
- package/templates/ecc/skills/continuous-learning/SKILL.md +118 -0
- package/templates/ecc/skills/continuous-learning/config.json +18 -0
- package/templates/ecc/skills/continuous-learning/evaluate-session.sh +69 -0
- package/templates/ecc/skills/continuous-learning-v2/SKILL.md +292 -0
- package/templates/ecc/skills/continuous-learning-v2/agents/observer.md +137 -0
- package/templates/ecc/skills/continuous-learning-v2/agents/start-observer.sh +143 -0
- package/templates/ecc/skills/continuous-learning-v2/config.json +41 -0
- package/templates/ecc/skills/continuous-learning-v2/hooks/observe.sh +157 -0
- package/templates/ecc/skills/continuous-learning-v2/scripts/instinct-cli.py +575 -0
- package/templates/ecc/skills/continuous-learning-v2/scripts/test_parse_instinct.py +82 -0
- package/templates/ecc/skills/cost-aware-llm-pipeline/SKILL.md +182 -0
- package/templates/ecc/skills/cpp-coding-standards/SKILL.md +722 -0
- package/templates/ecc/skills/cpp-testing/SKILL.md +322 -0
- package/templates/ecc/skills/database-migrations/SKILL.md +334 -0
- package/templates/ecc/skills/deployment-patterns/SKILL.md +426 -0
- package/templates/ecc/skills/django-patterns/SKILL.md +733 -0
- package/templates/ecc/skills/django-security/SKILL.md +592 -0
- package/templates/ecc/skills/django-tdd/SKILL.md +728 -0
- package/templates/ecc/skills/django-verification/SKILL.md +468 -0
- package/templates/ecc/skills/docker-patterns/SKILL.md +363 -0
- package/templates/ecc/skills/e2e-testing/SKILL.md +325 -0
- package/templates/ecc/skills/eval-harness/SKILL.md +235 -0
- package/templates/ecc/skills/frontend-patterns/SKILL.md +641 -0
- package/templates/ecc/skills/golang-patterns/SKILL.md +673 -0
- package/templates/ecc/skills/golang-testing/SKILL.md +719 -0
- package/templates/ecc/skills/iterative-retrieval/SKILL.md +210 -0
- package/templates/ecc/skills/java-coding-standards/SKILL.md +146 -0
- package/templates/ecc/skills/jpa-patterns/SKILL.md +150 -0
- package/templates/ecc/skills/nutrient-document-processing/SKILL.md +165 -0
- package/templates/ecc/skills/postgres-patterns/SKILL.md +146 -0
- package/templates/ecc/skills/project-guidelines-example/SKILL.md +348 -0
- package/templates/ecc/skills/python-patterns/SKILL.md +749 -0
- package/templates/ecc/skills/python-testing/SKILL.md +815 -0
- package/templates/ecc/skills/regex-vs-llm-structured-text/SKILL.md +219 -0
- package/templates/ecc/skills/search-first/SKILL.md +159 -0
- package/templates/ecc/skills/security-review/SKILL.md +494 -0
- package/templates/ecc/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/templates/ecc/skills/security-scan/SKILL.md +164 -0
- package/templates/ecc/skills/springboot-patterns/SKILL.md +313 -0
- package/templates/ecc/skills/springboot-security/SKILL.md +271 -0
- package/templates/ecc/skills/springboot-tdd/SKILL.md +157 -0
- package/templates/ecc/skills/springboot-verification/SKILL.md +230 -0
- package/templates/ecc/skills/strategic-compact/SKILL.md +102 -0
- package/templates/ecc/skills/strategic-compact/suggest-compact.sh +54 -0
- package/templates/ecc/skills/swift-actor-persistence/SKILL.md +142 -0
- package/templates/ecc/skills/swift-protocol-di-testing/SKILL.md +189 -0
- package/templates/ecc/skills/tdd-workflow/SKILL.md +409 -0
- package/templates/ecc/skills/verification-loop/SKILL.md +125 -0
- package/templates/ext-skills/pinchtab/SKILL.md +570 -0
- package/templates/mcp/claude-code/.mcp.json +35 -0
- package/templates/mcp/trae/mcp.json +35 -0
- package/templates/trae-bmad/rules/bmad-agent-bmad-master.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-analyst.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-architect.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-dev.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-pm.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-qa.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-quick-flow-solo-dev.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-sm.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-tech-writer.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-ux-designer.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-tea-tea.md +15 -0
- package/templates/trae-bmad/rules/bmad-bmm-check-implementation-readiness.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-code-review.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-correct-course.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-architecture.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-epics-and-stories.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-prd.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-product-brief.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-story.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-ux-design.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-dev-story.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-document-project.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-domain-research.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-edit-prd.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-generate-project-context.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-market-research.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-qa-automate.md +15 -0
- package/templates/trae-bmad/rules/bmad-bmm-qa-generate-e2e-tests.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-quick-dev.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-quick-spec.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-retrospective.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-sprint-planning.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-sprint-status.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-technical-research.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-validate-prd.md +6 -0
- package/templates/trae-bmad/rules/bmad-brainstorming.md +6 -0
- package/templates/trae-bmad/rules/bmad-editorial-review-prose.md +10 -0
- package/templates/trae-bmad/rules/bmad-editorial-review-structure.md +10 -0
- package/templates/trae-bmad/rules/bmad-help.md +10 -0
- package/templates/trae-bmad/rules/bmad-index-docs.md +10 -0
- package/templates/trae-bmad/rules/bmad-party-mode.md +6 -0
- package/templates/trae-bmad/rules/bmad-review-adversarial-general.md +10 -0
- package/templates/trae-bmad/rules/bmad-shard-doc.md +10 -0
- package/templates/trae-bmad/rules/bmad-tea-teach-me-testing.md +6 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-atdd.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-automate.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-ci.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-framework.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-nfr.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-test-design.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-test-review.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-trace.md +14 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-03-generate-tests'
|
|
3
|
+
description: 'Orchestrate parallel test generation via subprocesses'
|
|
4
|
+
nextStepFile: './step-03c-aggregate.md'
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 3: Orchestrate Parallel Test Generation
|
|
8
|
+
|
|
9
|
+
## STEP GOAL
|
|
10
|
+
|
|
11
|
+
Launch parallel subprocesses to generate tests simultaneously for maximum performance. Subprocess selection depends on `{detected_stack}`.
|
|
12
|
+
|
|
13
|
+
## MANDATORY EXECUTION RULES
|
|
14
|
+
|
|
15
|
+
- 📖 Read the entire step file before acting
|
|
16
|
+
- ✅ Speak in `{communication_language}`
|
|
17
|
+
- ✅ Launch subprocesses in PARALLEL based on `{detected_stack}`
|
|
18
|
+
- ✅ Wait for ALL launched subprocesses to complete
|
|
19
|
+
- ❌ Do NOT generate tests sequentially (use subprocesses)
|
|
20
|
+
- ❌ Do NOT proceed until all subprocesses finish
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## EXECUTION PROTOCOLS:
|
|
25
|
+
|
|
26
|
+
- 🎯 Follow the MANDATORY SEQUENCE exactly
|
|
27
|
+
- 💾 Wait for subprocess outputs
|
|
28
|
+
- 📖 Load the next step only when instructed
|
|
29
|
+
|
|
30
|
+
## CONTEXT BOUNDARIES:
|
|
31
|
+
|
|
32
|
+
- Available context: config, coverage plan from Step 2, knowledge fragments
|
|
33
|
+
- Focus: subprocess orchestration only
|
|
34
|
+
- Limits: do not generate tests directly (delegate to subprocesses)
|
|
35
|
+
- Dependencies: Step 2 outputs (coverage plan, target features)
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## MANDATORY SEQUENCE
|
|
40
|
+
|
|
41
|
+
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
|
|
42
|
+
|
|
43
|
+
### 1. Prepare Subprocess Inputs
|
|
44
|
+
|
|
45
|
+
**Generate unique timestamp** for temp file naming:
|
|
46
|
+
|
|
47
|
+
```javascript
|
|
48
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Prepare input context for subprocesses:**
|
|
52
|
+
|
|
53
|
+
```javascript
|
|
54
|
+
const subprocessContext = {
|
|
55
|
+
features: /* from Step 2 coverage plan */,
|
|
56
|
+
knowledge_fragments_loaded: /* list of fragments */,
|
|
57
|
+
config: {
|
|
58
|
+
test_framework: config.test_framework,
|
|
59
|
+
use_playwright_utils: config.tea_use_playwright_utils,
|
|
60
|
+
browser_automation: config.tea_browser_automation, // "auto" | "cli" | "mcp" | "none"
|
|
61
|
+
detected_stack: '{detected_stack}' // "frontend" | "backend" | "fullstack"
|
|
62
|
+
},
|
|
63
|
+
timestamp: timestamp
|
|
64
|
+
};
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### 2. Subprocess Dispatch Matrix
|
|
70
|
+
|
|
71
|
+
**Select subprocesses based on `{detected_stack}`:**
|
|
72
|
+
|
|
73
|
+
| `{detected_stack}` | Subprocess A (API) | Subprocess B (E2E) | Subprocess B-backend |
|
|
74
|
+
| ------------------ | ------------------ | ------------------ | -------------------- |
|
|
75
|
+
| `frontend` | Launch | Launch | Skip |
|
|
76
|
+
| `backend` | Launch | Skip | Launch |
|
|
77
|
+
| `fullstack` | Launch | Launch | Launch |
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
### 3. Launch Subprocess A: API Test Generation (always)
|
|
82
|
+
|
|
83
|
+
**Launch subprocess in parallel:**
|
|
84
|
+
|
|
85
|
+
- **Subprocess File:** `./step-03a-subprocess-api.md`
|
|
86
|
+
- **Output File:** `/tmp/tea-automate-api-tests-${timestamp}.json`
|
|
87
|
+
- **Context:** Pass `subprocessContext`
|
|
88
|
+
- **Execution:** PARALLEL (non-blocking)
|
|
89
|
+
|
|
90
|
+
**System Action:**
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
🚀 Launching Subprocess A: API Test Generation
|
|
94
|
+
📝 Output: /tmp/tea-automate-api-tests-${timestamp}.json
|
|
95
|
+
⏳ Status: Running in parallel...
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
### 4. Launch Subprocess B: E2E Test Generation (frontend/fullstack only)
|
|
101
|
+
|
|
102
|
+
**If {detected_stack} is `frontend` or `fullstack`:**
|
|
103
|
+
|
|
104
|
+
**Launch subprocess in parallel:**
|
|
105
|
+
|
|
106
|
+
- **Subprocess File:** `./step-03b-subprocess-e2e.md`
|
|
107
|
+
- **Output File:** `/tmp/tea-automate-e2e-tests-${timestamp}.json`
|
|
108
|
+
- **Context:** Pass `subprocessContext`
|
|
109
|
+
- **Execution:** PARALLEL (non-blocking)
|
|
110
|
+
|
|
111
|
+
**System Action:**
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
🚀 Launching Subprocess B: E2E Test Generation
|
|
115
|
+
📝 Output: /tmp/tea-automate-e2e-tests-${timestamp}.json
|
|
116
|
+
⏳ Status: Running in parallel...
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**If {detected_stack} is `backend`:** Skip this subprocess.
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
### 5. Launch Subprocess B-backend: Backend Test Generation (backend/fullstack only)
|
|
124
|
+
|
|
125
|
+
**If {detected_stack} is `backend` or `fullstack`:**
|
|
126
|
+
|
|
127
|
+
**Launch subprocess in parallel:**
|
|
128
|
+
|
|
129
|
+
- **Subprocess File:** `./step-03b-subprocess-backend.md`
|
|
130
|
+
- **Output File:** `/tmp/tea-automate-backend-tests-${timestamp}.json`
|
|
131
|
+
- **Context:** Pass `subprocessContext`
|
|
132
|
+
- **Execution:** PARALLEL (non-blocking)
|
|
133
|
+
|
|
134
|
+
**System Action:**
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
🚀 Launching Subprocess B-backend: Backend Test Generation
|
|
138
|
+
📝 Output: /tmp/tea-automate-backend-tests-${timestamp}.json
|
|
139
|
+
⏳ Status: Running in parallel...
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
**If {detected_stack} is `frontend`:** Skip this subprocess.
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
### 6. Wait for All Subprocesses to Complete
|
|
147
|
+
|
|
148
|
+
**Monitor subprocess execution based on `{detected_stack}`:**
|
|
149
|
+
|
|
150
|
+
```
|
|
151
|
+
⏳ Waiting for subprocesses to complete...
|
|
152
|
+
├── Subprocess A (API): Running... ⟳
|
|
153
|
+
├── Subprocess B (E2E): Running... ⟳ [if frontend/fullstack]
|
|
154
|
+
└── Subprocess B-backend: Running... ⟳ [if backend/fullstack]
|
|
155
|
+
|
|
156
|
+
[... time passes ...]
|
|
157
|
+
|
|
158
|
+
├── Subprocess A (API): Complete ✅
|
|
159
|
+
├── Subprocess B (E2E): Complete ✅ [if frontend/fullstack]
|
|
160
|
+
└── Subprocess B-backend: Complete ✅ [if backend/fullstack]
|
|
161
|
+
|
|
162
|
+
✅ All subprocesses completed successfully!
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
**Verify outputs exist (based on `{detected_stack}`):**
|
|
166
|
+
|
|
167
|
+
```javascript
|
|
168
|
+
const apiOutputExists = fs.existsSync(`/tmp/tea-automate-api-tests-${timestamp}.json`);
|
|
169
|
+
|
|
170
|
+
// Check based on detected_stack
|
|
171
|
+
if (detected_stack === 'frontend' || detected_stack === 'fullstack') {
|
|
172
|
+
const e2eOutputExists = fs.existsSync(`/tmp/tea-automate-e2e-tests-${timestamp}.json`);
|
|
173
|
+
if (!e2eOutputExists) throw new Error('E2E subprocess output missing!');
|
|
174
|
+
}
|
|
175
|
+
if (detected_stack === 'backend' || detected_stack === 'fullstack') {
|
|
176
|
+
const backendOutputExists = fs.existsSync(`/tmp/tea-automate-backend-tests-${timestamp}.json`);
|
|
177
|
+
if (!backendOutputExists) throw new Error('Backend subprocess output missing!');
|
|
178
|
+
}
|
|
179
|
+
if (!apiOutputExists) throw new Error('API subprocess output missing!');
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
### Subprocess Output Schema Contract
|
|
185
|
+
|
|
186
|
+
Both `step-03b-subprocess-e2e.md` and `step-03b-subprocess-backend.md` MUST write JSON to their output file with identical schema:
|
|
187
|
+
|
|
188
|
+
```json
|
|
189
|
+
{
|
|
190
|
+
"subprocessType": "e2e | backend",
|
|
191
|
+
"testsGenerated": [
|
|
192
|
+
{
|
|
193
|
+
"file": "path/to/test-file",
|
|
194
|
+
"content": "[full test file content]",
|
|
195
|
+
"description": "Test description",
|
|
196
|
+
"priority_coverage": { "P0": 0, "P1": 0, "P2": 0, "P3": 0 }
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
"coverageSummary": {
|
|
200
|
+
"totalTests": 0,
|
|
201
|
+
"testLevels": ["unit", "integration", "api", "e2e"],
|
|
202
|
+
"fixtureNeeds": []
|
|
203
|
+
},
|
|
204
|
+
"status": "complete | partial"
|
|
205
|
+
}
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
The aggregate step reads whichever output file(s) exist based on `{detected_stack}`.
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
### 7. Performance Report
|
|
213
|
+
|
|
214
|
+
**Display performance metrics:**
|
|
215
|
+
|
|
216
|
+
```
|
|
217
|
+
🚀 Performance Report:
|
|
218
|
+
- Execution Mode: PARALLEL (subprocesses based on {detected_stack})
|
|
219
|
+
- Stack Type: {detected_stack}
|
|
220
|
+
- API Test Generation: ~X minutes
|
|
221
|
+
- E2E Test Generation: ~Y minutes [if frontend/fullstack]
|
|
222
|
+
- Backend Test Generation: ~Z minutes [if backend/fullstack]
|
|
223
|
+
- Total Elapsed: ~max(X, Y, Z) minutes
|
|
224
|
+
- Sequential Would Take: ~(X + Y + Z) minutes
|
|
225
|
+
- Performance Gain: ~40-70% faster!
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
### 8. Proceed to Aggregation
|
|
231
|
+
|
|
232
|
+
**Load aggregation step:**
|
|
233
|
+
Load next step: `{nextStepFile}`
|
|
234
|
+
|
|
235
|
+
The aggregation step (3C) will:
|
|
236
|
+
|
|
237
|
+
- Read all subprocess outputs (based on `{detected_stack}`)
|
|
238
|
+
- Write all test files to disk
|
|
239
|
+
- Generate shared fixtures and helpers
|
|
240
|
+
- Calculate summary statistics
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## EXIT CONDITION
|
|
245
|
+
|
|
246
|
+
Proceed to Step 3C (Aggregation) when:
|
|
247
|
+
|
|
248
|
+
- ✅ Subprocess A (API tests) completed successfully
|
|
249
|
+
- ✅ Subprocess B (E2E tests) completed successfully [if frontend/fullstack]
|
|
250
|
+
- ✅ Subprocess B-backend (Backend tests) completed successfully [if backend/fullstack]
|
|
251
|
+
- ✅ All expected output files exist and are valid JSON
|
|
252
|
+
- ✅ Performance metrics displayed
|
|
253
|
+
|
|
254
|
+
**Do NOT proceed if:**
|
|
255
|
+
|
|
256
|
+
- ❌ Any launched subprocess failed
|
|
257
|
+
- ❌ Output files missing or corrupted
|
|
258
|
+
- ❌ Timeout occurred (subprocesses took too long)
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## 🚨 SYSTEM SUCCESS/FAILURE METRICS:
|
|
263
|
+
|
|
264
|
+
### ✅ SUCCESS:
|
|
265
|
+
|
|
266
|
+
- All required subprocesses launched successfully (based on `{detected_stack}`)
|
|
267
|
+
- All subprocesses completed without errors
|
|
268
|
+
- Output files generated and valid
|
|
269
|
+
- Parallel execution achieved ~40-70% performance gain
|
|
270
|
+
|
|
271
|
+
### ❌ SYSTEM FAILURE:
|
|
272
|
+
|
|
273
|
+
- Failed to launch subprocesses
|
|
274
|
+
- One or more subprocesses failed
|
|
275
|
+
- Output files missing or invalid
|
|
276
|
+
- Attempted sequential generation instead of parallel
|
|
277
|
+
|
|
278
|
+
**Master Rule:** Parallel subprocess execution is MANDATORY for performance.
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-03a-subprocess-api'
|
|
3
|
+
description: 'Subprocess: Generate API tests only'
|
|
4
|
+
subprocess: true
|
|
5
|
+
outputFile: '/tmp/tea-automate-api-tests-{{timestamp}}.json'
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Subprocess 3A: Generate API Tests
|
|
9
|
+
|
|
10
|
+
## SUBPROCESS CONTEXT
|
|
11
|
+
|
|
12
|
+
This is an **isolated subprocess** running in parallel with E2E test generation.
|
|
13
|
+
|
|
14
|
+
**What you have from parent workflow:**
|
|
15
|
+
|
|
16
|
+
- Target features/components identified in Step 2
|
|
17
|
+
- Knowledge fragments loaded: api-request, data-factories, api-testing-patterns
|
|
18
|
+
- Config: test framework, Playwright Utils enabled/disabled
|
|
19
|
+
- Coverage plan: which API endpoints need testing
|
|
20
|
+
|
|
21
|
+
**Your task:** Generate API tests ONLY (not E2E, not fixtures, not other test types).
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## MANDATORY EXECUTION RULES
|
|
26
|
+
|
|
27
|
+
- 📖 Read this entire subprocess file before acting
|
|
28
|
+
- ✅ Generate API tests ONLY
|
|
29
|
+
- ✅ Output structured JSON to temp file
|
|
30
|
+
- ✅ Follow knowledge fragment patterns
|
|
31
|
+
- ❌ Do NOT generate E2E tests (that's subprocess 3B)
|
|
32
|
+
- ❌ Do NOT run tests (that's step 4)
|
|
33
|
+
- ❌ Do NOT generate fixtures yet (that's step 3C aggregation)
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## SUBPROCESS TASK
|
|
38
|
+
|
|
39
|
+
### 1. Identify API Endpoints
|
|
40
|
+
|
|
41
|
+
From the coverage plan (Step 2 output), identify:
|
|
42
|
+
|
|
43
|
+
- Which API endpoints need test coverage
|
|
44
|
+
- Expected request/response formats
|
|
45
|
+
- Authentication requirements
|
|
46
|
+
- Error scenarios to test
|
|
47
|
+
|
|
48
|
+
### 2. Generate API Test Files
|
|
49
|
+
|
|
50
|
+
For each API endpoint, create test file in `tests/api/[feature].spec.ts`:
|
|
51
|
+
|
|
52
|
+
**Test Structure:**
|
|
53
|
+
|
|
54
|
+
```typescript
|
|
55
|
+
import { test, expect } from '@playwright/test';
|
|
56
|
+
// If Playwright Utils enabled:
|
|
57
|
+
// import { apiRequest } from '@playwright-utils/api';
|
|
58
|
+
|
|
59
|
+
test.describe('[Feature] API Tests', () => {
|
|
60
|
+
test('[P0] should handle successful [operation]', async ({ request }) => {
|
|
61
|
+
// Use apiRequest helper if Playwright Utils enabled
|
|
62
|
+
// Otherwise use standard request fixture
|
|
63
|
+
const response = await request.post('/api/endpoint', {
|
|
64
|
+
data: {
|
|
65
|
+
/* test data */
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
expect(response.status()).toBe(200);
|
|
70
|
+
expect(await response.json()).toMatchObject({
|
|
71
|
+
/* expected */
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
test('[P1] should handle [error scenario]', async ({ request }) => {
|
|
76
|
+
// Test error handling
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Requirements:**
|
|
82
|
+
|
|
83
|
+
- ✅ Use `apiRequest()` helper if Playwright Utils enabled (from api-request fragment)
|
|
84
|
+
- ✅ Use data factories for test data (from data-factories fragment)
|
|
85
|
+
- ✅ Follow API testing patterns (from api-testing-patterns fragment)
|
|
86
|
+
- ✅ Include priority tags [P0], [P1], [P2], [P3]
|
|
87
|
+
- ✅ Test both happy path and error scenarios
|
|
88
|
+
- ✅ Use proper TypeScript types
|
|
89
|
+
- ✅ Deterministic assertions (no timing dependencies)
|
|
90
|
+
|
|
91
|
+
### 3. Track Fixture Needs
|
|
92
|
+
|
|
93
|
+
Identify fixtures needed for API tests:
|
|
94
|
+
|
|
95
|
+
- Authentication fixtures (auth tokens, API keys)
|
|
96
|
+
- Data factories (user data, product data, etc.)
|
|
97
|
+
- API client configurations
|
|
98
|
+
|
|
99
|
+
**Do NOT create fixtures yet** - just track what's needed for aggregation step.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## OUTPUT FORMAT
|
|
104
|
+
|
|
105
|
+
Write JSON to temp file: `/tmp/tea-automate-api-tests-{{timestamp}}.json`
|
|
106
|
+
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"success": true,
|
|
110
|
+
"subprocess": "api-tests",
|
|
111
|
+
"tests": [
|
|
112
|
+
{
|
|
113
|
+
"file": "tests/api/auth.spec.ts",
|
|
114
|
+
"content": "[full TypeScript test file content]",
|
|
115
|
+
"description": "API tests for authentication endpoints",
|
|
116
|
+
"priority_coverage": {
|
|
117
|
+
"P0": 3,
|
|
118
|
+
"P1": 2,
|
|
119
|
+
"P2": 1,
|
|
120
|
+
"P3": 0
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"file": "tests/api/checkout.spec.ts",
|
|
125
|
+
"content": "[full TypeScript test file content]",
|
|
126
|
+
"description": "API tests for checkout endpoints",
|
|
127
|
+
"priority_coverage": {
|
|
128
|
+
"P0": 2,
|
|
129
|
+
"P1": 3,
|
|
130
|
+
"P2": 1,
|
|
131
|
+
"P3": 0
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
],
|
|
135
|
+
"fixture_needs": ["authToken", "userDataFactory", "productDataFactory"],
|
|
136
|
+
"knowledge_fragments_used": ["api-request", "data-factories", "api-testing-patterns"],
|
|
137
|
+
"test_count": 12,
|
|
138
|
+
"summary": "Generated 12 API test cases covering 3 features"
|
|
139
|
+
}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
**On Error:**
|
|
143
|
+
|
|
144
|
+
```json
|
|
145
|
+
{
|
|
146
|
+
"success": false,
|
|
147
|
+
"subprocess": "api-tests",
|
|
148
|
+
"error": "Error message describing what went wrong",
|
|
149
|
+
"partial_output": {
|
|
150
|
+
/* any tests generated before error */
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## EXIT CONDITION
|
|
158
|
+
|
|
159
|
+
Subprocess completes when:
|
|
160
|
+
|
|
161
|
+
- ✅ All API endpoints have test files generated
|
|
162
|
+
- ✅ All tests follow knowledge fragment patterns
|
|
163
|
+
- ✅ JSON output written to temp file
|
|
164
|
+
- ✅ Fixture needs tracked
|
|
165
|
+
|
|
166
|
+
**Subprocess terminates here.** Parent workflow will read output and proceed to aggregation.
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## 🚨 SUBPROCESS SUCCESS METRICS
|
|
171
|
+
|
|
172
|
+
### ✅ SUCCESS:
|
|
173
|
+
|
|
174
|
+
- All API tests generated following patterns
|
|
175
|
+
- JSON output valid and complete
|
|
176
|
+
- No E2E/component/unit tests included (out of scope)
|
|
177
|
+
|
|
178
|
+
### ❌ FAILURE:
|
|
179
|
+
|
|
180
|
+
- Generated tests other than API tests
|
|
181
|
+
- Did not follow knowledge fragment patterns
|
|
182
|
+
- Invalid or missing JSON output
|
|
183
|
+
- Ran tests (not subprocess responsibility)
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-03b-subprocess-backend'
|
|
3
|
+
description: 'Subprocess: Generate backend tests only (unit, integration, contract)'
|
|
4
|
+
subprocess: true
|
|
5
|
+
outputFile: '/tmp/tea-automate-backend-tests-{{timestamp}}.json'
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Subprocess 3B-backend: Generate Backend Tests
|
|
9
|
+
|
|
10
|
+
## SUBPROCESS CONTEXT
|
|
11
|
+
|
|
12
|
+
This is an **isolated subprocess** running in parallel with API test generation (and optionally E2E test generation for fullstack projects).
|
|
13
|
+
|
|
14
|
+
**What you have from parent workflow:**
|
|
15
|
+
|
|
16
|
+
- Target features/services identified in Step 2
|
|
17
|
+
- Knowledge fragments loaded: test-levels-framework, test-priorities-matrix, data-factories
|
|
18
|
+
- Config: test framework, detected stack type
|
|
19
|
+
- Coverage plan: which services/modules need backend testing
|
|
20
|
+
|
|
21
|
+
**Your task:** Generate backend tests ONLY (unit, integration, contract - not API endpoint tests, not E2E).
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## MANDATORY EXECUTION RULES
|
|
26
|
+
|
|
27
|
+
- Read this entire subprocess file before acting
|
|
28
|
+
- Generate backend tests ONLY (unit, integration, contract)
|
|
29
|
+
- Output structured JSON to temp file using the subprocess output schema contract
|
|
30
|
+
- Follow knowledge fragment patterns
|
|
31
|
+
- Do NOT generate API endpoint tests (that's subprocess 3A)
|
|
32
|
+
- Do NOT generate E2E tests (that's subprocess 3B)
|
|
33
|
+
- Do NOT run tests (that's step 4)
|
|
34
|
+
- Do NOT generate fixtures yet (that's step 3C aggregation)
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## SUBPROCESS TASK
|
|
39
|
+
|
|
40
|
+
### 1. Identify Test Targets
|
|
41
|
+
|
|
42
|
+
From the coverage plan (Step 2 output), identify:
|
|
43
|
+
|
|
44
|
+
- Which services/modules need unit test coverage
|
|
45
|
+
- Which integrations need integration test coverage (database, message queues, external services)
|
|
46
|
+
- Which service contracts need contract test coverage (Pact, schema validation)
|
|
47
|
+
- Business logic functions requiring edge case coverage
|
|
48
|
+
|
|
49
|
+
### 2. Detect Framework & Language
|
|
50
|
+
|
|
51
|
+
From `config.test_framework` and project manifests, determine:
|
|
52
|
+
|
|
53
|
+
- **Python (pytest)**: Use `pytest` conventions, `conftest.py` fixtures, `@pytest.mark` decorators
|
|
54
|
+
- **Java/Kotlin (JUnit)**: Use JUnit 5 annotations (`@Test`, `@BeforeEach`, `@Nested`), Mockito for mocking
|
|
55
|
+
- **Go (go test)**: Use `*_test.go` files, `testing.T`, table-driven tests, `testify` assertions
|
|
56
|
+
- **C#/.NET (xUnit)**: Use `[Fact]`, `[Theory]`, `[InlineData]`, `Moq` for mocking
|
|
57
|
+
- **Ruby (RSpec)**: Use `describe`/`context`/`it` blocks, `let`/`before` helpers, `FactoryBot`
|
|
58
|
+
|
|
59
|
+
### 3. Generate Unit Tests
|
|
60
|
+
|
|
61
|
+
For each module/service, create test files following language-idiomatic patterns:
|
|
62
|
+
|
|
63
|
+
**Python (pytest) example:**
|
|
64
|
+
|
|
65
|
+
```python
|
|
66
|
+
import pytest
|
|
67
|
+
from unittest.mock import MagicMock, patch
|
|
68
|
+
from myapp.services.user_service import UserService
|
|
69
|
+
|
|
70
|
+
class TestUserService:
|
|
71
|
+
"""[P0] Unit tests for UserService"""
|
|
72
|
+
|
|
73
|
+
def test_create_user_with_valid_data(self, user_factory):
|
|
74
|
+
"""Should create user when data is valid"""
|
|
75
|
+
user_data = user_factory.build()
|
|
76
|
+
result = UserService.create(user_data)
|
|
77
|
+
assert result.email == user_data["email"]
|
|
78
|
+
|
|
79
|
+
def test_create_user_rejects_duplicate_email(self, user_factory):
|
|
80
|
+
"""[P1] Should reject duplicate email"""
|
|
81
|
+
user_data = user_factory.build(email="existing@test.com")
|
|
82
|
+
with pytest.raises(DuplicateEmailError):
|
|
83
|
+
UserService.create(user_data)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Go (go test) example:**
|
|
87
|
+
|
|
88
|
+
```go
|
|
89
|
+
func TestUserService_Create(t *testing.T) {
|
|
90
|
+
tests := []struct {
|
|
91
|
+
name string
|
|
92
|
+
input CreateUserInput
|
|
93
|
+
wantErr bool
|
|
94
|
+
}{
|
|
95
|
+
{"valid user", validInput(), false},
|
|
96
|
+
{"duplicate email", duplicateInput(), true},
|
|
97
|
+
}
|
|
98
|
+
for _, tt := range tests {
|
|
99
|
+
t.Run(tt.name, func(t *testing.T) {
|
|
100
|
+
svc := NewUserService(mockRepo)
|
|
101
|
+
_, err := svc.Create(tt.input)
|
|
102
|
+
if (err != nil) != tt.wantErr {
|
|
103
|
+
t.Errorf("Create() error = %v, wantErr %v", err, tt.wantErr)
|
|
104
|
+
}
|
|
105
|
+
})
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Requirements:**
|
|
111
|
+
|
|
112
|
+
- Follow the detected framework's idiomatic test patterns
|
|
113
|
+
- Include priority tags [P0], [P1], [P2], [P3] in test descriptions
|
|
114
|
+
- Use proper mocking for external dependencies (database, APIs, message queues)
|
|
115
|
+
- Test both happy path and error cases
|
|
116
|
+
- Use proper typing/type hints where applicable
|
|
117
|
+
- No hard-coded test data; use factories or builders
|
|
118
|
+
|
|
119
|
+
### 4. Generate Integration Tests
|
|
120
|
+
|
|
121
|
+
For service integrations, create integration test files:
|
|
122
|
+
|
|
123
|
+
- Database integration tests (with test database or in-memory alternatives)
|
|
124
|
+
- Message queue consumer/producer tests
|
|
125
|
+
- Cache integration tests
|
|
126
|
+
- External service integration tests (with mocked HTTP clients)
|
|
127
|
+
|
|
128
|
+
### 5. Generate Contract Tests (if applicable)
|
|
129
|
+
|
|
130
|
+
If the project uses microservices or has defined API contracts:
|
|
131
|
+
|
|
132
|
+
- Pact consumer/provider tests
|
|
133
|
+
- Schema validation tests (JSON Schema, Protobuf)
|
|
134
|
+
- OpenAPI spec compliance tests
|
|
135
|
+
|
|
136
|
+
### 6. Track Fixture Needs
|
|
137
|
+
|
|
138
|
+
Identify fixtures/helpers needed for backend tests:
|
|
139
|
+
|
|
140
|
+
- Database fixtures (seed data, cleanup)
|
|
141
|
+
- Factory functions (test data builders)
|
|
142
|
+
- Mock services (HTTP mocks, message queue mocks)
|
|
143
|
+
- Configuration fixtures (test environment config)
|
|
144
|
+
|
|
145
|
+
**Do NOT create fixtures yet** - just track what's needed for aggregation step.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## OUTPUT FORMAT
|
|
150
|
+
|
|
151
|
+
Write JSON to temp file: `/tmp/tea-automate-backend-tests-{{timestamp}}.json`
|
|
152
|
+
|
|
153
|
+
```json
|
|
154
|
+
{
|
|
155
|
+
"subprocessType": "backend",
|
|
156
|
+
"testsGenerated": [
|
|
157
|
+
{
|
|
158
|
+
"file": "tests/unit/test_user_service.py",
|
|
159
|
+
"content": "[full test file content]",
|
|
160
|
+
"description": "Unit tests for UserService",
|
|
161
|
+
"priority_coverage": {
|
|
162
|
+
"P0": 3,
|
|
163
|
+
"P1": 2,
|
|
164
|
+
"P2": 1,
|
|
165
|
+
"P3": 0
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"file": "tests/integration/test_user_repository.py",
|
|
170
|
+
"content": "[full test file content]",
|
|
171
|
+
"description": "Integration tests for user database operations",
|
|
172
|
+
"priority_coverage": {
|
|
173
|
+
"P0": 1,
|
|
174
|
+
"P1": 2,
|
|
175
|
+
"P2": 1,
|
|
176
|
+
"P3": 0
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
"coverageSummary": {
|
|
181
|
+
"totalTests": 15,
|
|
182
|
+
"testLevels": ["unit", "integration", "contract"],
|
|
183
|
+
"fixtureNeeds": ["databaseFixture", "userFactory", "mockHttpClient"]
|
|
184
|
+
},
|
|
185
|
+
"status": "complete",
|
|
186
|
+
"success": true,
|
|
187
|
+
"subprocess": "backend-tests",
|
|
188
|
+
"knowledge_fragments_used": ["test-levels-framework", "test-priorities-matrix", "data-factories"],
|
|
189
|
+
"summary": "Generated 15 backend test cases (10 unit, 4 integration, 1 contract)"
|
|
190
|
+
}
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**On Error:**
|
|
194
|
+
|
|
195
|
+
```json
|
|
196
|
+
{
|
|
197
|
+
"subprocessType": "backend",
|
|
198
|
+
"testsGenerated": [],
|
|
199
|
+
"coverageSummary": {
|
|
200
|
+
"totalTests": 0,
|
|
201
|
+
"testLevels": [],
|
|
202
|
+
"fixtureNeeds": []
|
|
203
|
+
},
|
|
204
|
+
"status": "partial",
|
|
205
|
+
"success": false,
|
|
206
|
+
"subprocess": "backend-tests",
|
|
207
|
+
"error": "Error message describing what went wrong",
|
|
208
|
+
"partial_output": {
|
|
209
|
+
/* any tests generated before error */
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
## EXIT CONDITION
|
|
217
|
+
|
|
218
|
+
Subprocess completes when:
|
|
219
|
+
|
|
220
|
+
- All identified modules have backend test files generated
|
|
221
|
+
- All tests follow language-idiomatic patterns
|
|
222
|
+
- JSON output written to temp file using the subprocess output schema contract
|
|
223
|
+
- Fixture needs tracked
|
|
224
|
+
|
|
225
|
+
**Subprocess terminates here.** Parent workflow will read output and proceed to aggregation.
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
|
|
229
|
+
## SUBPROCESS SUCCESS METRICS
|
|
230
|
+
|
|
231
|
+
### SUCCESS:
|
|
232
|
+
|
|
233
|
+
- All backend tests generated following idiomatic patterns
|
|
234
|
+
- JSON output valid and complete, matches subprocess output schema contract
|
|
235
|
+
- No E2E or browser tests included (out of scope)
|
|
236
|
+
- Proper mocking used for external dependencies
|
|
237
|
+
- Priority tags assigned to all test cases
|
|
238
|
+
|
|
239
|
+
### FAILURE:
|
|
240
|
+
|
|
241
|
+
- Generated tests other than backend tests (unit/integration/contract)
|
|
242
|
+
- Did not follow language-idiomatic patterns
|
|
243
|
+
- Invalid or missing JSON output
|
|
244
|
+
- Output schema does not match the contract
|
|
245
|
+
- Ran tests (not subprocess responsibility)
|
|
246
|
+
- Used real external services instead of mocks
|