bmad-method-test-architecture-enterprise 2.0.1-next.3 → 2.0.1-next.5
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/.claude-plugin/marketplace.json +2 -2
- package/README.md +28 -21
- package/package.json +5 -2
- package/skills/bmad-tea/SKILL.md +4 -0
- package/skills/bmad-tea/customize.toml +2 -2
- package/skills/bmad-teach-me-testing/data/curriculum.yaml +1 -1
- package/skills/bmad-teach-me-testing/data/quiz-questions.yaml +2 -2
- package/skills/bmad-teach-me-testing/data/role-paths.yaml +1 -1
- package/skills/bmad-teach-me-testing/data/session-content-map.yaml +6 -6
- package/skills/bmad-teach-me-testing/instructions.md +1 -1
- package/skills/bmad-teach-me-testing/resources/tea-completion-summary.example.md +1 -1
- package/skills/bmad-teach-me-testing/steps-c/step-03-session-menu.md +1 -1
- package/skills/bmad-teach-me-testing/steps-c/step-04-session-01.md +3 -3
- package/skills/bmad-teach-me-testing/steps-c/step-04-session-05.md +22 -14
- package/skills/bmad-teach-me-testing/steps-c/step-05-completion.md +2 -2
- package/skills/bmad-teach-me-testing/templates/completion-summary-template.md +1 -1
- package/skills/bmad-testarch-atdd/SKILL.md +8 -79
- package/skills/bmad-testarch-atdd/bmod.toml +1 -0
- package/skills/bmad-testarch-atdd/workflow.yaml +4 -4
- package/skills/bmad-testarch-automate/SKILL.md +27 -19
- package/skills/bmad-testarch-automate/checklist.md +80 -88
- package/skills/bmad-testarch-automate/instructions.md +17 -2
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/checklist.md +41 -16
- package/skills/bmad-testarch-automate/red/customize.toml +38 -0
- package/skills/bmad-testarch-automate/red/instructions.md +60 -0
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-01-preflight-and-context.md +4 -2
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-01b-resume.md +5 -1
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-02-generation-mode.md +1 -1
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-03-test-strategy.md +1 -1
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-04-generate-tests.md +1 -1
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-04c-aggregate.md +2 -2
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-05-validate-and-complete.md +22 -4
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-e/step-01-assess.md +1 -1
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-e/step-02-apply-edit.md +9 -2
- package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-v/step-01-validate.md +11 -3
- package/skills/bmad-testarch-automate/red/workflow.yaml +40 -0
- package/skills/bmad-testarch-automate/resources/run-and-heal.md +97 -0
- package/skills/bmad-testarch-automate/resources/test-generation-routing.md +77 -0
- package/skills/bmad-testarch-automate/steps-c/step-01-preflight-and-context.md +2 -0
- package/skills/bmad-testarch-automate/steps-c/step-01b-resume.md +5 -1
- package/skills/bmad-testarch-automate/steps-c/step-04-validate-and-summarize.md +21 -3
- package/skills/bmad-testarch-automate/steps-e/step-02-apply-edit.md +9 -2
- package/skills/bmad-testarch-automate/steps-v/step-01-validate.md +10 -2
- package/skills/bmad-testarch-automate/workflow.yaml +1 -1
- package/skills/bmod-tea/bmod.toml +22 -2
- package/skills/bmod-tea/help/help.md +2 -2
- package/skills/bmod-tea/knowledge/test-healing-patterns.md +74 -594
- package/skills/bmod-tea/migration-1.toml +7 -6
- package/skills/bmod-tea/roster.toml +1 -0
- package/skills/bmad-testarch-atdd/instructions.md +0 -44
- /package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/atdd-checklist-template.md +0 -0
- /package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/resources/atdd-checklist-2-4-guest-checkout.example.md +0 -0
- /package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-04a-subagent-api-failing.md +0 -0
- /package/skills/{bmad-testarch-atdd → bmad-testarch-automate/red}/steps-c/step-04b-subagent-e2e-failing.md +0 -0
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
{
|
|
31
31
|
"name": "bmad-method-test-architecture-enterprise",
|
|
32
32
|
"source": "./",
|
|
33
|
-
"description": "Master Test Architect module for quality strategy, test
|
|
34
|
-
"version": "2.0.1-next.
|
|
33
|
+
"description": "Master Test Architect module for quality strategy, test generation in red and expand modes with automatic run-and-heal, combined framework and CI setup, CI/CD quality gates, and structured testing education. The CI and ATDD commands remain available with existing customizations. Part of the BMad Method ecosystem.",
|
|
34
|
+
"version": "2.0.1-next.5",
|
|
35
35
|
"author": {
|
|
36
36
|
"name": "Murat K Ozcan (TEA Creator) & Brian (BMad) Madison"
|
|
37
37
|
},
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
[Documentation](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/) · [Getting started](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/tea-lite-quickstart/) · [Contributing](./CONTRIBUTING.md) · [MIT license](./LICENSE)
|
|
4
4
|
|
|
5
5
|
TEA is a BMad module for test planning, automation, evaluation, and release decisions.
|
|
6
|
-
Its agent, Murat, uses
|
|
6
|
+
Its agent, Murat, uses eight skills and a shared testing knowledge base to turn requirements and risks into tests and evidence.
|
|
7
7
|
You can use TEA on its own or alongside BMad Method.
|
|
8
8
|
|
|
9
9
|
TEA helps you:
|
|
@@ -46,31 +46,38 @@ To install a tagged release, replace `<version>` with the release number:
|
|
|
46
46
|
npx skills add https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/tree/v<version>/skills
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
<a id="start-with-one-workflow"></a>
|
|
50
|
+
|
|
51
|
+
## Start with one skill
|
|
52
|
+
|
|
53
|
+
Ten commands start the eight skills: Framework includes CI setup; Automate includes red and expand modes.
|
|
50
54
|
|
|
51
55
|
In Claude Code, Cursor, and Windsurf, type `/bmad-testarch-test-design` in chat.
|
|
52
56
|
In Codex, type `$bmad-testarch-test-design`.
|
|
53
57
|
You can also load `/bmad-tea` or `$bmad-tea` and choose a menu code.
|
|
54
|
-
Each
|
|
55
|
-
|
|
56
|
-
|
|
|
57
|
-
|
|
|
58
|
-
| [
|
|
59
|
-
| [
|
|
60
|
-
| [
|
|
61
|
-
| [
|
|
62
|
-
| [
|
|
63
|
-
| [
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
58
|
+
Each skill can run directly in a fresh session.
|
|
59
|
+
|
|
60
|
+
| Skill | Command | Menu | Use it to |
|
|
61
|
+
| ------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- | ---- | ---------------------------------------------------- |
|
|
62
|
+
| [Test Review](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-review/) | `/bmad-testarch-test-review` | RV | Audit test quality and score findings |
|
|
63
|
+
| [Automate](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/) | `/bmad-testarch-automate` | TA | Generate red acceptance scaffolds or expand coverage |
|
|
64
|
+
| [Test Design](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-design/) | `/bmad-testarch-test-design` | TD | Plan risks, coverage, and NFR evidence |
|
|
65
|
+
| [Framework](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/setup-test-framework/) | `/bmad-testarch-framework` | TF | Set up a test framework, CI, or both |
|
|
66
|
+
| [NFR](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-nfr-assess/) | `/bmad-testarch-nfr` | NR | Audit implemented NFR evidence |
|
|
67
|
+
| [Teach Me Testing](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/teach-me-testing/) | `/bmad-teach-me-testing` | TMT | Learn testing through seven sessions |
|
|
68
|
+
|
|
69
|
+
Additional skills:
|
|
70
|
+
|
|
71
|
+
- [Trace](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-trace/): `/bmad-testarch-trace`, menu `TR`. Map requirements to tests and decide a release gate.
|
|
72
|
+
- [Evaluate](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/evaluate-your-first-skill/): `/bmad-testarch-evaluate`, menu `EV`. Build and run a behavioral evaluation.
|
|
68
73
|
|
|
69
74
|
Framework and CI setup share one skill, `bmad-testarch-framework`.
|
|
70
75
|
Ask for framework only, CI only, or both; TEA infers the scope from your prompt and asks "Do you want CI too?" once when CI scope is unclear in an interactive session. An unattended request with unclear scope runs framework setup only and states that CI was excluded.
|
|
71
76
|
`/bmad-testarch-ci` and the `CI` menu code still work and start the same skill's CI setup, with your existing CI customizations.
|
|
72
77
|
Create, Resume, Validate, and Edit remain available for the selected setup scope.
|
|
73
78
|
|
|
79
|
+
Automation uses `red` mode before implementation and `expand` mode for existing code. Your prompt selects the mode. `/bmad-testarch-atdd` and `AT` default to red; `/bmad-testarch-automate` and `TA` default to expand. Existing commands and customization files keep working. Create runs execute the generated tests and repair test issues for up to three rounds. Red confirms the intended missing behavior; expand aims for passing coverage and reports product defects.
|
|
80
|
+
|
|
74
81
|
For Codex, replace the leading `/` in the table with `$`.
|
|
75
82
|
The agent menu also accepts `GATE` to route you through test review, NFR evidence audit, and trace Phase 2.
|
|
76
83
|
|
|
@@ -78,15 +85,15 @@ Choose a starting path:
|
|
|
78
85
|
|
|
79
86
|
- [TEA Lite](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/tea-lite-quickstart/) for an existing project that needs more test coverage.
|
|
80
87
|
- [TEA Academy](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/learn-testing-tea-academy/) to learn testing.
|
|
81
|
-
- [TEA Overview](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/tea-overview/) for the lifecycle and
|
|
88
|
+
- [TEA Overview](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/tea-overview/) for the lifecycle and skill order.
|
|
82
89
|
- [Evaluate Your First Skill](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/evaluate-your-first-skill/) for a runnable evaluation tutorial.
|
|
83
90
|
|
|
84
91
|
## How it works
|
|
85
92
|
|
|
86
|
-
Each
|
|
93
|
+
Each skill loads one step file at a time.
|
|
87
94
|
The steps define the task, the evidence to collect, and when to stop.
|
|
88
95
|
They load the knowledge fragments needed for that task from `skills/bmod-tea/knowledge/tea-index.csv`.
|
|
89
|
-
|
|
96
|
+
Skills can delegate independent tasks when the assistant supports workers; execution mode is configurable.
|
|
90
97
|
|
|
91
98
|
Review findings use fixed criteria and severity rules.
|
|
92
99
|
Trace applies coverage thresholds and evidence checks to the release decision.
|
|
@@ -106,7 +113,7 @@ It requires Node.js 22.20.0 or later:
|
|
|
106
113
|
npm install --save-dev bmad-method-test-architecture-enterprise
|
|
107
114
|
```
|
|
108
115
|
|
|
109
|
-
- [`tea-test-review`](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/tea-test-review-cli/) runs the review
|
|
116
|
+
- [`tea-test-review`](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/tea-test-review-cli/) runs the review skill against changed tests and returns a gate verdict.
|
|
110
117
|
- [`tea-evaluate`](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/tea-evaluate-cli/) checks, runs, scores, and compares behavioral evaluations.
|
|
111
118
|
|
|
112
119
|
For `tea-evaluate`, install `eval-quality` alongside TEA in the evaluations folder:
|
|
@@ -116,7 +123,7 @@ npm install --prefix evals bmad-method-test-architecture-enterprise eval-quality
|
|
|
116
123
|
npm exec --prefix evals -- tea-evaluate --help
|
|
117
124
|
```
|
|
118
125
|
|
|
119
|
-
The npm package includes the
|
|
126
|
+
The npm package includes the skills used by the tools.
|
|
120
127
|
See the [CI examples](./cli/examples/README.md) for test-review integration.
|
|
121
128
|
|
|
122
129
|
## Contributing
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "bmad-method-test-architecture-enterprise",
|
|
4
|
-
"version": "2.0.1-next.
|
|
4
|
+
"version": "2.0.1-next.5",
|
|
5
5
|
"description": "Master Test Architect for quality strategy, test automation, and release gates",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"bmad",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"release:minor": "gh workflow run publish.yaml -f channel=latest -f bump=minor",
|
|
89
89
|
"release:next": "gh workflow run publish.yaml -f channel=next",
|
|
90
90
|
"release:patch": "gh workflow run publish.yaml -f channel=latest -f bump=patch",
|
|
91
|
-
"test": "npm run test:conflict-markers && npm run test:schemas && npm run test:install && npm run test:evaluate-guidance && npm run test:evaluate-authoring && npm run test:evaluate-gap-loop && npm run test:evaluate-dogfood && npm run test:evaluate-check && npm run test:evaluate-compare && npm run test:evaluate-before-state && npm run test:evaluate-ci-gates && npm run test:evaluate-ci-tiers && npm run test:evaluate-ci-repositories:tagged-release-pr && npm run test:evaluate-ci-repositories:tagged-release-merge && npm run test:evaluate-ci-repositories:tagged-release-release && npm run test:evaluate-ci-repositories:nightly-deploy-pr && npm run test:evaluate-ci-repositories:nightly-deploy-merge && npm run test:evaluate-ci-repositories:nightly-deploy-scheduled && npm run test:evaluate-ci-repositories:nightly-deploy-release && npm run test:evaluate-ci-render && npm run test:evaluate-pr-mcp && npm run test:evaluate-pr-api && npm run test:evaluate-pr-suite && npm run test:evaluate-pr-workflow && npm run test:evaluate-pr-tool-use && npm run test:evaluate-pr-promptfoo && npm run test:evaluate-pr-ai-feature && npm run test:evaluate-pr-test-review && npm run test:evaluate-pr-gap-loop && npm run test:evaluate-pr-learn && npm run test:evaluate-pr-tutorial && npm run test:evaluate-partitions && npm run test:evaluate-partition-plans-views-and-check && npm run test:evaluate-partition-plans-preflight-and-run && npm run test:evaluate-partition-plans-score && npm run test:evaluate-partition-plans-attempts-seal-and-mappings && npm run test:evaluate-partition-plans-attempts-records && npm run test:evaluate-partition-plans-attempts-gameability && npm run test:evaluate-interpret && npm run test:evaluate-calibration && npm run test:evaluate-boundaries && npm run test:evaluate-preflight && npm run test:evaluate-isolation-conformance && npm run test:evaluate-mutation:qualification-basics && npm run test:evaluate-mutation:qualification-guards && npm run test:evaluate-mutation:recovery && npm run test:evaluate-mutation:journals && npm run test:evaluate-run && npm run test:evaluate-aggregate && npm run test:evaluate-confinement && npm run test:evaluate-confinement-audit && npm run test:evaluate-confinement-history && npm run test:evaluate-confinement-git-state && npm run test:evaluate-confinement-network && npm run test:evaluate-held-inputs && npm run test:evaluate-arms-historical && npm run test:evaluate-arms-deployments && npm run test:evaluate-evaluators && npm run test:evaluate-evaluators-agent-version && npm run test:evaluate-agents && npm run test:evaluate-agents-importers && npm run test:evaluate-agents-sealed-brief && npm run test:evaluate-held-attempts && npm run test:evaluate-private && npm run test:evaluate-records && npm run test:evaluate-mcp && npm run test:evaluate-api && npm run test:evaluate-workflow && npm run test:evaluate-tool-use && npm run test:evaluate-promptfoo && npm run test:evaluate-learned-framework && npm run test:docs-tutorial && npm run test:knowledge && npm run test:criteria-fragments && npm run test:doc-count-sources && npm run test:planning-doc-sources && npm run test:doc-counts && npm run test:doc-claim-sources && npm run test:doc-claims && npm run test:doc-invocation-entry && npm run test:doc-invocations && npm run test:docs-build-names && npm run test:docs-evaluate-sidebar && npm run test:docs-gap-reader && npm run test:enforce-hook && npm run test:framework-scaffold && npm run test:isolation-primitives && npm run test:atdd-isolation && npm run test:atdd-net-guard && npm run test:atdd-scoring && npm run test:atdd-workflow-guidance && npm run test:framework-scaffold-install-isolation && npm run test:transcript-harness && npm run test:suite-manifest && npm run test:teach-me-testing-scoring && npm run test:eval-data && npm run test:eval-atdd-data && npm run test:eval-ci-data && npm run test:eval-framework-scaffold-data && npm run test:eval-nfr-data && npm run test:nfr-validate-corpus && npm run test:nfr-evidence-guidance && npm run test:eval-test-design-data && npm run test:eval-trace-data && npm run test:eval-routing-data && npm run test:eval-routing-boundaries && npm run test:eval-routing-evidence && npm run test:eval-transcript-data && npm run test:eval-teach-me-testing-data && npm run test:eval-schemas && npm run test:eval-diagnostics && npm run test:eval-replay && npm run test:eval-quality-corpus && npm run test:schema-versions && npm run test:contract-sources && npm run test:contracts && npm run test:contract-oracles && npm run test:probe-sources && npm run test:test-design-qualification && npm run test:test-review-qualification && npm run test:trace-qualification && npm run test:nfr-qualification && npm run test:ci-qualification && npm run test:probe-corpus && npm run test:compare-dominance && npm run test:compare-eval-runs && npm run test:trial-set-scoring && npm run test:automate-eval-fixture && npm run test:eval-automate-data && npm run test:clock-port && npm run test:probe-conformance && npm run test:corpus-conformance && npm run test:file-system-conformance && npm run test:file-system-port && npm run test:probe-targets && npm run test:port-totality && npm run test:ci-coverage && npm run test:ci-coverage-filters && npm run test:install-actionlint && npm run test:workflows-lint && npm run test:install-linux-sandbox && npm run test:shards && npm run test:groups && npm run test:cli && npm run test:test-review-pr-scope && npm run test:test-review-report && npm run test:test-review-rubric && npm run test:bmad-output-gated && npm run test:release-metadata && npm run test:release-notes && npm run test:lockfile-age && npm run test:lockfile-age-cache && npm run test:licences && npm run test:supply-chain && npm run test:boundary && npm run test:direction && npm run test:lineage && npm run test:guard-publish && npm run test:layering-boundary-lineage && npm run test:changelog && npm run test:tea-workflow-descriptions && npm run test:docs-mermaid && npm run test:llms-headroom && npm run validate:schemas && npm run lint && npm run lint:md && npm run format:check",
|
|
91
|
+
"test": "npm run test:conflict-markers && npm run test:schemas && npm run test:install && npm run test:evaluate-guidance && npm run test:evaluate-authoring && npm run test:evaluate-gap-loop && npm run test:evaluate-dogfood && npm run test:evaluate-check && npm run test:evaluate-compare && npm run test:evaluate-before-state && npm run test:evaluate-ci-gates && npm run test:evaluate-ci-tiers && npm run test:evaluate-ci-repositories:tagged-release-pr && npm run test:evaluate-ci-repositories:tagged-release-merge && npm run test:evaluate-ci-repositories:tagged-release-release && npm run test:evaluate-ci-repositories:nightly-deploy-pr && npm run test:evaluate-ci-repositories:nightly-deploy-merge && npm run test:evaluate-ci-repositories:nightly-deploy-scheduled && npm run test:evaluate-ci-repositories:nightly-deploy-release && npm run test:evaluate-ci-render && npm run test:evaluate-pr-mcp && npm run test:evaluate-pr-api && npm run test:evaluate-pr-suite && npm run test:evaluate-pr-workflow && npm run test:evaluate-pr-tool-use && npm run test:evaluate-pr-promptfoo && npm run test:evaluate-pr-ai-feature && npm run test:evaluate-pr-test-review && npm run test:evaluate-pr-gap-loop && npm run test:evaluate-pr-learn && npm run test:evaluate-pr-tutorial && npm run test:evaluate-partitions && npm run test:evaluate-partition-plans-views-and-check && npm run test:evaluate-partition-plans-preflight-and-run && npm run test:evaluate-partition-plans-score && npm run test:evaluate-partition-plans-attempts-seal-and-mappings && npm run test:evaluate-partition-plans-attempts-records && npm run test:evaluate-partition-plans-attempts-gameability && npm run test:evaluate-interpret && npm run test:evaluate-calibration && npm run test:evaluate-boundaries && npm run test:evaluate-preflight && npm run test:evaluate-isolation-conformance && npm run test:evaluate-mutation:qualification-basics && npm run test:evaluate-mutation:qualification-guards && npm run test:evaluate-mutation:recovery && npm run test:evaluate-mutation:journals && npm run test:evaluate-run && npm run test:evaluate-aggregate && npm run test:evaluate-confinement && npm run test:evaluate-confinement-audit && npm run test:evaluate-confinement-history && npm run test:evaluate-confinement-git-state && npm run test:evaluate-confinement-network && npm run test:evaluate-held-inputs && npm run test:evaluate-arms-historical && npm run test:evaluate-arms-deployments && npm run test:evaluate-evaluators && npm run test:evaluate-evaluators-agent-version && npm run test:evaluate-agents && npm run test:evaluate-agents-importers && npm run test:evaluate-agents-sealed-brief && npm run test:evaluate-held-attempts && npm run test:evaluate-private && npm run test:evaluate-records && npm run test:evaluate-mcp && npm run test:evaluate-api && npm run test:evaluate-workflow && npm run test:evaluate-tool-use && npm run test:evaluate-promptfoo && npm run test:evaluate-learned-framework && npm run test:docs-tutorial && npm run test:knowledge && npm run test:criteria-fragments && npm run test:doc-count-sources && npm run test:planning-doc-sources && npm run test:doc-counts && npm run test:doc-claim-sources && npm run test:doc-claims && npm run test:doc-invocation-entry && npm run test:doc-invocations && npm run test:doc-link-anchors && npm run test:docs-build-names && npm run test:docs-evaluate-sidebar && npm run test:docs-gap-reader && npm run test:enforce-hook && npm run test:framework-scaffold && npm run test:isolation-primitives && npm run test:atdd-isolation && npm run test:atdd-net-guard && npm run test:atdd-scoring && npm run test:atdd-workflow-guidance && npm run test:generation-healing && npm run test:framework-scaffold-install-isolation && npm run test:transcript-harness && npm run test:suite-manifest && npm run test:teach-me-testing-scoring && npm run test:eval-data && npm run test:eval-atdd-data && npm run test:eval-ci-data && npm run test:eval-framework-scaffold-data && npm run test:eval-nfr-data && npm run test:nfr-validate-corpus && npm run test:nfr-evidence-guidance && npm run test:eval-test-design-data && npm run test:eval-trace-data && npm run test:eval-routing-data && npm run test:eval-routing-boundaries && npm run test:eval-routing-evidence && npm run test:eval-transcript-data && npm run test:eval-teach-me-testing-data && npm run test:eval-schemas && npm run test:eval-diagnostics && npm run test:eval-replay && npm run test:eval-quality-corpus && npm run test:schema-versions && npm run test:contract-sources && npm run test:contracts && npm run test:contract-oracles && npm run test:probe-sources && npm run test:test-design-qualification && npm run test:test-review-qualification && npm run test:trace-qualification && npm run test:nfr-qualification && npm run test:ci-qualification && npm run test:probe-corpus && npm run test:compare-dominance && npm run test:compare-eval-runs && npm run test:trial-set-scoring && npm run test:automate-eval-fixture && npm run test:eval-automate-data && npm run test:clock-port && npm run test:probe-conformance && npm run test:corpus-conformance && npm run test:file-system-conformance && npm run test:file-system-port && npm run test:probe-targets && npm run test:port-totality && npm run test:ci-coverage && npm run test:ci-coverage-filters && npm run test:install-actionlint && npm run test:workflows-lint && npm run test:install-linux-sandbox && npm run test:shards && npm run test:groups && npm run test:cli && npm run test:test-review-pr-scope && npm run test:test-review-report && npm run test:test-review-rubric && npm run test:bmad-output-gated && npm run test:release-metadata && npm run test:release-notes && npm run test:lockfile-age && npm run test:lockfile-age-cache && npm run test:licences && npm run test:supply-chain && npm run test:boundary && npm run test:direction && npm run test:lineage && npm run test:guard-publish && npm run test:layering-boundary-lineage && npm run test:changelog && npm run test:tea-workflow-descriptions && npm run test:docs-mermaid && npm run test:llms-headroom && npm run validate:schemas && npm run lint && npm run lint:md && npm run format:check",
|
|
92
92
|
"test:atdd-isolation": "node test/test-atdd-isolation.js",
|
|
93
93
|
"test:atdd-net-guard": "node test/test-atdd-net-guard.js",
|
|
94
94
|
"test:atdd-scoring": "node test/test-atdd-scoring.js",
|
|
@@ -118,9 +118,11 @@
|
|
|
118
118
|
"test:doc-counts": "eval-quality-gates doc-counts",
|
|
119
119
|
"test:doc-invocation-entry": "node test/test-doc-invocation-entry.js",
|
|
120
120
|
"test:doc-invocations": "eval-quality-gates doc-invocations",
|
|
121
|
+
"test:doc-link-anchors": "node test/test-doc-link-anchors.js",
|
|
121
122
|
"test:docs-build-names": "node test/test-docs-build-names.js",
|
|
122
123
|
"test:docs-evaluate-sidebar": "node test/test-docs-evaluate-sidebar.js",
|
|
123
124
|
"test:docs-gap-reader": "node test/test-docs-gap-reader.js",
|
|
125
|
+
"test:docs-layout": "node test/test-docs-layout.js",
|
|
124
126
|
"test:docs-mermaid": "node test/test-docs-mermaid.js",
|
|
125
127
|
"test:docs-tutorial": "node test/test-docs-tutorial.js",
|
|
126
128
|
"test:enforce-hook": "node test/test-enforce-hook.js",
|
|
@@ -215,6 +217,7 @@
|
|
|
215
217
|
"test:file-system-port": "node test/test-file-system-port.js",
|
|
216
218
|
"test:framework-scaffold": "node test/test-framework-scaffold.js",
|
|
217
219
|
"test:framework-scaffold-install-isolation": "node test/test-framework-scaffold-install-isolation.js",
|
|
220
|
+
"test:generation-healing": "node test/test-generation-healing.js",
|
|
218
221
|
"test:groups": "node test/test-test-groups.js",
|
|
219
222
|
"test:guard-publish": "node test/test-guard-publish.js",
|
|
220
223
|
"test:install": "node test/test-installation-components.js",
|
package/skills/bmad-tea/SKILL.md
CHANGED
|
@@ -80,6 +80,10 @@ Dispatch on a clear match by invoking the item's `skill` or executing its `promp
|
|
|
80
80
|
|
|
81
81
|
TF invokes `bmad-testarch-framework`, the canonical owner of framework and CI setup. CI invokes the installed `bmad-testarch-ci` compatibility entry with CI scope preset. Preserve both codes, names, custom menu overrides, requested scope and operation. A request for framework and pipeline setup routes directly to TF with `setup_scope = both`. The shared router asks “Do you want CI too?” once when setup leaves CI intent unclear.
|
|
82
82
|
|
|
83
|
+
### Test Generation Routing
|
|
84
|
+
|
|
85
|
+
AT invokes `bmad-testarch-atdd`, the red-mode entry of the canonical `bmad-testarch-automate` skill. TA invokes `bmad-testarch-automate` with expand as its default. Preserve both menu codes, both invocation names, custom menu overrides, the requested operation and any explicit red or expand intent. Red writes acceptance tests before implementation and checks the intended failure; expand adds passing coverage for implemented code. Create runs run-and-heal by default in both modes. Validate and Edit report their own checks without repair. A mixed implemented/unimplemented request still needs the deciding scope or sequence when the user has supplied neither.
|
|
86
|
+
|
|
83
87
|
### Routing Ambiguity Boundaries
|
|
84
88
|
|
|
85
89
|
Before dispatching, list the menu items directly supported by facts in the user's message. One supported item is a clear route. Two or more supported items require the missing deciding information when the user has supplied no priority, sequence, or requested deliverable that selects one.
|
|
@@ -79,12 +79,12 @@ skill = "bmad-testarch-ci"
|
|
|
79
79
|
|
|
80
80
|
[[agent.menu]]
|
|
81
81
|
code = "AT"
|
|
82
|
-
description = "ATDD
|
|
82
|
+
description = "ATDD: generate and verify failing acceptance tests in red mode before development"
|
|
83
83
|
skill = "bmad-testarch-atdd"
|
|
84
84
|
|
|
85
85
|
[[agent.menu]]
|
|
86
86
|
code = "TA"
|
|
87
|
-
description = "Test Automation
|
|
87
|
+
description = "Test Automation: generate prioritized tests in expand mode, run and heal test defects, and report product defects"
|
|
88
88
|
skill = "bmad-testarch-automate"
|
|
89
89
|
|
|
90
90
|
[[agent.menu]]
|
|
@@ -54,7 +54,7 @@ sessions:
|
|
|
54
54
|
duration: "60 min"
|
|
55
55
|
difficulty: intermediate
|
|
56
56
|
objective: "Generate tests with TDD red-green approach"
|
|
57
|
-
description: "
|
|
57
|
+
description: "Automation red (ATDD) and expand modes, run and heal, component TDD, API testing"
|
|
58
58
|
recommended_for:
|
|
59
59
|
- intermediate
|
|
60
60
|
- experienced
|
|
@@ -147,12 +147,12 @@ session-05-atdd-automate:
|
|
|
147
147
|
explanation: "Red phase: Tests fail because the code doesn't exist yet. Write tests first, then implement."
|
|
148
148
|
|
|
149
149
|
- id: q2-atdd-vs-automate
|
|
150
|
-
question: "What's the difference between
|
|
150
|
+
question: "What's the difference between automation red/expand modes?"
|
|
151
151
|
options:
|
|
152
152
|
A: "ATDD generates E2E, Automate generates API tests"
|
|
153
153
|
B: "ATDD writes tests first (red phase), Automate tests existing code"
|
|
154
154
|
C: "ATDD is faster than Automate"
|
|
155
|
-
D: "
|
|
155
|
+
D: "Both modes require implemented code before generating tests"
|
|
156
156
|
correct: B
|
|
157
157
|
explanation: "ATDD writes failing tests first (red phase), then you implement. Automate generates tests for existing code (coverage expansion)."
|
|
158
158
|
|
|
@@ -25,7 +25,7 @@ roles:
|
|
|
25
25
|
session-02-concepts: "Emphasize P0-P3 for defending coverage decisions"
|
|
26
26
|
session-03-architecture: "Fixture patterns for maintainable test suites"
|
|
27
27
|
session-04-test-design: "Test design for planning coverage expansion"
|
|
28
|
-
session-05-atdd-automate: "
|
|
28
|
+
session-05-atdd-automate: "Automation red and expand modes for test generation"
|
|
29
29
|
session-06-quality-trace: "Test Review for quality metrics reporting"
|
|
30
30
|
session-07-advanced: "Playwright Utils for advanced testing patterns"
|
|
31
31
|
|
|
@@ -17,7 +17,7 @@ sessions:
|
|
|
17
17
|
title: "TEA Overview"
|
|
18
18
|
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/tea-overview/"
|
|
19
19
|
- path: "/docs/how-to/workflows/run-automate.md"
|
|
20
|
-
title: "Run
|
|
20
|
+
title: "Run Automation Expand Mode"
|
|
21
21
|
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/"
|
|
22
22
|
knowledge_fragments: []
|
|
23
23
|
online_references:
|
|
@@ -28,7 +28,7 @@ sessions:
|
|
|
28
28
|
- "What is TEA"
|
|
29
29
|
- "TEA Lite approach"
|
|
30
30
|
- "Engagement models"
|
|
31
|
-
- "
|
|
31
|
+
- "8 workflows overview"
|
|
32
32
|
|
|
33
33
|
session-02-concepts:
|
|
34
34
|
docs:
|
|
@@ -108,10 +108,10 @@ sessions:
|
|
|
108
108
|
session-05-atdd-automate:
|
|
109
109
|
docs:
|
|
110
110
|
- path: "/docs/how-to/workflows/run-atdd.md"
|
|
111
|
-
title: "Run ATDD
|
|
111
|
+
title: "Run Automation Red Mode (ATDD)"
|
|
112
112
|
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-atdd/"
|
|
113
113
|
- path: "/docs/how-to/workflows/run-automate.md"
|
|
114
|
-
title: "Run
|
|
114
|
+
title: "Run Automation Expand Mode"
|
|
115
115
|
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/"
|
|
116
116
|
knowledge_fragments:
|
|
117
117
|
- path: "{tea-knowledge}/component-tdd.md"
|
|
@@ -127,9 +127,9 @@ sessions:
|
|
|
127
127
|
- atdd
|
|
128
128
|
- automate
|
|
129
129
|
key_concepts:
|
|
130
|
-
- "
|
|
130
|
+
- "Automation red mode (ATDD)"
|
|
131
131
|
- "TDD red-green-refactor"
|
|
132
|
-
- "
|
|
132
|
+
- "Automation expand mode (coverage expansion)"
|
|
133
133
|
- "API testing without browser"
|
|
134
134
|
|
|
135
135
|
session-06-quality-trace:
|
|
@@ -43,7 +43,7 @@ The workflow automatically detects existing progress and resumes where you left
|
|
|
43
43
|
2. **Core Concepts (45 min)** - Risk-based testing, DoD, philosophy
|
|
44
44
|
3. **Architecture (60 min)** - Fixtures, network patterns, framework
|
|
45
45
|
4. **Test Design (60 min)** - Risk assessment workflow
|
|
46
|
-
5. **ATDD & Automate (60 min)** -
|
|
46
|
+
5. **ATDD & Automate (60 min)** - Automation red/expand modes
|
|
47
47
|
6. **Quality & Trace (45 min)** - Test review + Trace workflows
|
|
48
48
|
7. **Advanced Patterns (ongoing)** - Menu-driven knowledge fragment exploration
|
|
49
49
|
|
|
@@ -45,7 +45,7 @@ average_score: 92
|
|
|
45
45
|
Dana Whitfield has demonstrated proficiency in:
|
|
46
46
|
|
|
47
47
|
- ✅ **Testing Fundamentals:** Risk-based testing, test pyramid, test types, P0-P3 prioritization
|
|
48
|
-
- ✅ **TEA Methodology:**
|
|
48
|
+
- ✅ **TEA Methodology:** 8 workflows (Teach Me Testing, Framework and CI Setup, Test Design, Automation, Test Review, Trace, NFR, Evaluate)
|
|
49
49
|
- ✅ **Architecture Patterns:** Fixture composition, network-first patterns, data factories, step-file architecture
|
|
50
50
|
- ✅ **Test Design:** Risk assessment (Probability × Impact), coverage planning, test levels framework
|
|
51
51
|
- ✅ **Test Development:** ATDD red-green TDD approach, test automation, API testing patterns
|
|
@@ -110,7 +110,7 @@ Display:
|
|
|
110
110
|
{if in-progress: Started: {started_date}}
|
|
111
111
|
|
|
112
112
|
**Session 5: ATDD & Automate (60 min)**
|
|
113
|
-
{status_indicator}
|
|
113
|
+
{status_indicator} Automation red/expand modes, TDD approach
|
|
114
114
|
{if completed: Score: {score}/100 | Completed: {completed_date}}
|
|
115
115
|
{if in-progress: Started: {started_date}}
|
|
116
116
|
|
|
@@ -93,7 +93,7 @@ Present this content (mostly autonomous, clear and educational):
|
|
|
93
93
|
|
|
94
94
|
TEA is a comprehensive test architecture framework that provides:
|
|
95
95
|
|
|
96
|
-
- **
|
|
96
|
+
- **8 Workflows:** Teach Me Testing, Test Design, Framework and CI Setup, Automation (red and expand modes), Test Review, NFR Evidence Audit, Trace, Evaluate. The CI and ATDD commands and their menu codes remain available.
|
|
97
97
|
- **Framework and CI setup:** One `bmad-testarch-framework` skill handles framework only, CI only, or both. The `bmad-testarch-ci` command and `CI` menu code start its CI setup. TEA infers the scope from your prompt and asks "Do you want CI too?" once when unclear in an interactive session. An unattended request with unclear scope sets up the framework only. Create, Resume, Validate, and Edit choose the operation.
|
|
98
98
|
- **59 Knowledge Fragments:** Distilled expertise on patterns, best practices, Playwright Utils
|
|
99
99
|
- **Quality Standards:** Definition of Done with execution limits (no flaky tests, no hard waits, etc.)
|
|
@@ -123,7 +123,7 @@ Present this content (adapt examples based on user role from progress file):
|
|
|
123
123
|
|
|
124
124
|
"### 🚀 TEA Lite: Your First Workflow
|
|
125
125
|
|
|
126
|
-
The **
|
|
126
|
+
The **automation skill** generates tests in two modes: red writes acceptance tests before implementation; expand adds coverage to existing code. This quick start uses expand. Create runs execute generated tests and repair test issues for up to three rounds, while reporting real product defects. Existing ATDD and automate commands and menu codes keep working.
|
|
127
127
|
|
|
128
128
|
**How it works:**
|
|
129
129
|
|
|
@@ -307,7 +307,7 @@ duration: '30 min'
|
|
|
307
307
|
|
|
308
308
|
## Key Concepts Covered
|
|
309
309
|
|
|
310
|
-
1. **TEA Framework:**
|
|
310
|
+
1. **TEA Framework:** 8 workflows + 59 knowledge fragments + quality standards
|
|
311
311
|
2. **Risk-Based Testing:** P0-P3 prioritization matrix
|
|
312
312
|
3. **Quality Standards:** Definition of Done (no flaky tests, no hard waits, stateless, self-cleaning)
|
|
313
313
|
4. **Engagement Models:** Lite, Solo, Integrated, Enterprise, Brownfield
|
|
@@ -49,8 +49,8 @@ To teach ATDD (red-green TDD) and Automate workflows for test generation in a 60
|
|
|
49
49
|
|
|
50
50
|
**What you'll learn:**
|
|
51
51
|
|
|
52
|
-
-
|
|
53
|
-
-
|
|
52
|
+
- Automation red mode (failing tests first)
|
|
53
|
+
- Automation expand mode (expand coverage)
|
|
54
54
|
- Component TDD
|
|
55
55
|
- API testing patterns
|
|
56
56
|
|
|
@@ -65,18 +65,21 @@ Load {progressFile} and update session-05-atdd-automate:
|
|
|
65
65
|
|
|
66
66
|
Save the updated progress file.
|
|
67
67
|
|
|
68
|
-
### 3. Teaching: ATDD
|
|
68
|
+
### 3. Teaching: Automation Red Mode (ATDD)
|
|
69
69
|
|
|
70
70
|
"### 🔴 ATDD: Acceptance-Driven Test Development
|
|
71
71
|
|
|
72
72
|
**TDD Red Phase:** Write failing tests FIRST
|
|
73
73
|
|
|
74
|
-
**
|
|
74
|
+
**Automation red mode:** `/bmad-testarch-atdd` and `AT` select red by default. `/bmad-testarch-automate` also supports an explicit red request.
|
|
75
|
+
|
|
76
|
+
**Create sequence:**
|
|
75
77
|
|
|
76
78
|
1. **Preflight:** Check prerequisites
|
|
77
79
|
2. **Test Strategy:** Define what to test
|
|
78
80
|
3. **Generate FAILING Tests:** Red phase (tests fail because code doesn't exist yet)
|
|
79
|
-
4. **
|
|
81
|
+
4. **Run and Heal:** Confirm each failure matches missing behavior; repair test errors for up to three rounds
|
|
82
|
+
5. **Implement Code:** Green phase (make tests pass)
|
|
80
83
|
|
|
81
84
|
**Why Failing Tests First:**
|
|
82
85
|
|
|
@@ -88,22 +91,27 @@ Save the updated progress file.
|
|
|
88
91
|
|
|
89
92
|
**Documentation:** <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-atdd/>"
|
|
90
93
|
|
|
91
|
-
### 4. Teaching:
|
|
94
|
+
### 4. Teaching: Automation Expand Mode
|
|
92
95
|
|
|
93
96
|
"### 🤖 Automate: Expand Test Coverage
|
|
94
97
|
|
|
95
98
|
**Purpose:** Generate tests for existing features
|
|
96
99
|
|
|
97
|
-
**
|
|
100
|
+
**Automation expand mode:** `/bmad-testarch-automate` and `TA` select expand by default. An explicit mode in the prompt selects red or expand. Unattended runs keep the invoked command's default when mode is unclear.
|
|
101
|
+
|
|
102
|
+
**Create sequence:**
|
|
98
103
|
|
|
99
104
|
1. **Identify Targets:** What needs testing
|
|
100
105
|
2. **Generate Tests:** API and/or E2E tests
|
|
101
|
-
3. **
|
|
106
|
+
3. **Run and Heal:** Execute generated tests, classify failures, repair test issues, and rerun up to three rounds
|
|
107
|
+
4. **Review Results:** Passing tests establish coverage; real product defects retain their assertions and remain findings
|
|
102
108
|
|
|
103
|
-
**
|
|
109
|
+
**Two modes in one automation skill:**
|
|
104
110
|
|
|
105
111
|
- ATDD: Tests first, then code (red → green)
|
|
106
|
-
-
|
|
112
|
+
- Expand: Code first, then tests (coverage expansion)
|
|
113
|
+
|
|
114
|
+
Create runs execute and heal by default. Validate reports findings and Edit checks the requested changes; neither operation repairs tests. Each mode keeps its original customization hooks and output folder.
|
|
107
115
|
|
|
108
116
|
{Role-adapted example}
|
|
109
117
|
|
|
@@ -176,11 +184,11 @@ D) Tests are deleted"
|
|
|
176
184
|
|
|
177
185
|
Correct: A
|
|
178
186
|
|
|
179
|
-
**Q2:** "What's the difference between
|
|
187
|
+
**Q2:** "What's the difference between automation red/expand modes?
|
|
180
188
|
A) ATDD generates E2E, Automate generates API tests
|
|
181
189
|
B) ATDD writes tests first (red phase), Automate tests existing code
|
|
182
190
|
C) ATDD is faster than Automate
|
|
183
|
-
D)
|
|
191
|
+
D) Both modes require implemented code before generating tests"
|
|
184
192
|
|
|
185
193
|
Correct: B
|
|
186
194
|
|
|
@@ -198,8 +206,8 @@ Calculate score, handle <70% retry.
|
|
|
198
206
|
|
|
199
207
|
Create {sessionNotesFile} with Session 5 content:
|
|
200
208
|
|
|
201
|
-
-
|
|
202
|
-
-
|
|
209
|
+
- Automation red mode (ATDD, red-green TDD)
|
|
210
|
+
- Automation expand mode (coverage expansion)
|
|
203
211
|
- Component TDD
|
|
204
212
|
- API testing patterns
|
|
205
213
|
- Docs: ATDD, Automate
|
|
@@ -170,7 +170,7 @@ average_score: { average_score }
|
|
|
170
170
|
{user_name} has demonstrated proficiency in:
|
|
171
171
|
|
|
172
172
|
- ✅ **Testing Fundamentals:** Risk-based testing, test pyramid, test types, P0-P3 prioritization
|
|
173
|
-
- ✅ **TEA Methodology:**
|
|
173
|
+
- ✅ **TEA Methodology:** 8 workflows (Teach Me Testing, Framework and CI Setup, Test Design, Automation, Test Review, Trace, NFR, Evaluate)
|
|
174
174
|
- ✅ **Architecture Patterns:** Fixture composition, network-first patterns, data factories, step-file architecture
|
|
175
175
|
- ✅ **Test Design:** Risk assessment (Probability × Impact), coverage planning, test levels framework
|
|
176
176
|
- ✅ **Test Development:** ATDD red-green TDD approach, test automation, API testing patterns
|
|
@@ -283,7 +283,7 @@ You've successfully completed the entire TEA Academy curriculum!
|
|
|
283
283
|
**You're now equipped to:**
|
|
284
284
|
|
|
285
285
|
- Write high-quality tests following TEA principles
|
|
286
|
-
- Use all
|
|
286
|
+
- Use all 8 TEA workflows effectively
|
|
287
287
|
- Apply risk-based testing (P0-P3 prioritization)
|
|
288
288
|
- Implement architecture patterns (fixtures, network-first)
|
|
289
289
|
- Maintain quality through Test Review and Trace
|
|
@@ -45,7 +45,7 @@ average_score: { { average_score } }
|
|
|
45
45
|
{{user_name}} has demonstrated proficiency in:
|
|
46
46
|
|
|
47
47
|
- ✅ **Testing Fundamentals:** Risk-based testing, test pyramid, test types
|
|
48
|
-
- ✅ **TEA Methodology:**
|
|
48
|
+
- ✅ **TEA Methodology:** 8 workflows, engagement models, quality standards
|
|
49
49
|
- ✅ **Architecture Patterns:** Fixtures, network-first patterns, data factories
|
|
50
50
|
- ✅ **Test Design:** Risk assessment, coverage planning, P0-P3 prioritization
|
|
51
51
|
- ✅ **Test Development:** ATDD red-green approach, test automation
|
|
@@ -3,85 +3,14 @@ name: bmad-testarch-atdd
|
|
|
3
3
|
description: 'Generate red-phase acceptance test scaffolds using the TDD cycle. Use when the user says "lets write acceptance tests" or "I want to do ATDD"'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Acceptance Test
|
|
6
|
+
# Acceptance Test Generation
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
`bmad-testarch-automate` owns test generation in red and expand modes.
|
|
9
|
+
This entry preserves the ATDD command and AT menu code, with red as its default.
|
|
9
10
|
|
|
10
|
-
|
|
11
|
+
1. Preserve the original request, supplied artifacts and Create, Resume, Validate or Edit operation. Set `test_entry = bmad-testarch-atdd`; default to red only when the task has no explicit mode signal.
|
|
12
|
+
2. Set `skill-root` to the sibling `bmad-testarch-automate` directory. Require its `SKILL.md`, `resources/test-generation-routing.md`, `resources/run-and-heal.md`, and `red/steps-c/step-01-preflight-and-context.md`. If any are missing, explain that the canonical skill is missing or older than combined test generation and offer `npx skills add bmad-code-org/bmad-method-test-architecture-enterprise --skill bmad-testarch-automate`. Continue only after installation succeeds and all required files exist.
|
|
13
|
+
3. Read `{skill-root}/SKILL.md` completely and execute its router and activation with the original request. Keep `{skill-root}` canonical throughout. Run only the selected mode's customization hooks; do not activate twice or repeat its operation menu.
|
|
11
14
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
## Conventions
|
|
15
|
-
|
|
16
|
-
- Bare paths (e.g. `instructions.md`) resolve from the skill root.
|
|
17
|
-
- `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
|
|
18
|
-
- `{project-root}` is the nearest folder containing `_bmad/`, starting at the project working directory and moving up through its parents.
|
|
19
|
-
- `{tea-knowledge}` is the `knowledge/` folder of the `bmod-tea` skill, installed beside this one: `{skill-root}/../bmod-tea/knowledge`. `tea-index.csv` there lists every fragment by a path relative to that folder.
|
|
20
|
-
- `{skill-name}` resolves to the skill directory's basename.
|
|
21
|
-
- Resolve sibling workflow files such as `instructions.md`, `checklist.md`, `steps-c/...`, `steps-e/...`, `steps-v/...`, and templates from `{skill-root}`.
|
|
22
|
-
|
|
23
|
-
## On Activation
|
|
24
|
-
|
|
25
|
-
### Step 1: Resolve the Workflow Block
|
|
26
|
-
|
|
27
|
-
Run: `uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow`
|
|
28
|
-
|
|
29
|
-
**If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
|
|
30
|
-
|
|
31
|
-
1. `{skill-root}/customize.toml` — defaults
|
|
32
|
-
2. `{project-root}/_bmad/custom/{skill-name}.toml` — team overrides
|
|
33
|
-
3. `{project-root}/_bmad/custom/{skill-name}.user.toml` — personal overrides
|
|
34
|
-
|
|
35
|
-
Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
|
|
36
|
-
|
|
37
|
-
### Step 2: Execute Prepend Steps
|
|
38
|
-
|
|
39
|
-
Execute each entry in `{workflow.activation_steps_prepend}` in order before proceeding.
|
|
40
|
-
|
|
41
|
-
### Step 3: Load Persistent Facts
|
|
42
|
-
|
|
43
|
-
Treat every entry in `{workflow.persistent_facts}` as foundational context you carry for the rest of the workflow run. Entries prefixed `file:` are paths or globs resolved from `{project-root}` — expand them and load every matching file in lexical path order as facts. All other entries are facts verbatim.
|
|
44
|
-
|
|
45
|
-
### Step 4: Load Config
|
|
46
|
-
|
|
47
|
-
Run `uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core --key modules.tea`. If the script fails, merge `{project-root}/_bmad/config.toml`, `{project-root}/_bmad/custom/config.toml` and `{project-root}/_bmad/custom/config.user.toml` yourself, in that order, with the merge rules above. If `_bmad/config.toml` is missing or has no `modules.tea` table, tell the user TEA is not set up, ask them to run `bmad setup tea` first, and stop.
|
|
48
|
-
|
|
49
|
-
Each `core` and `modules.tea` key is available as `{<key>}`, and as `config.<key>` in later steps. Replace `{project-root}` inside a value with the project root. Setup answers are strings: read `"true"` and `"false"` as booleans.
|
|
50
|
-
|
|
51
|
-
If `{tea-knowledge}/tea-index.csv` does not exist, the TEA knowledge base is not installed. Tell the user, offer to install it with `npx skills add bmad-code-org/bmad-method-test-architecture-enterprise --skill bmod-tea`, run that on a yes, and stop until it is there.
|
|
52
|
-
|
|
53
|
-
### Step 5: Greet the User
|
|
54
|
-
|
|
55
|
-
Greet `{user_name}`, speaking in `{communication_language}`.
|
|
56
|
-
|
|
57
|
-
### Step 6: Execute Append Steps
|
|
58
|
-
|
|
59
|
-
Execute each entry in `{workflow.activation_steps_append}` in order.
|
|
60
|
-
|
|
61
|
-
Activation is complete. Begin the workflow below.
|
|
62
|
-
|
|
63
|
-
## Workflow Architecture
|
|
64
|
-
|
|
65
|
-
This workflow uses **tri-modal step-file architecture**:
|
|
66
|
-
|
|
67
|
-
- **Create mode (steps-c/)**: primary execution flow for new runs and resume continuation
|
|
68
|
-
- **Validate mode (steps-v/)**: validation against checklist
|
|
69
|
-
- **Edit mode (steps-e/)**: revise existing outputs
|
|
70
|
-
|
|
71
|
-
## Initialization Sequence
|
|
72
|
-
|
|
73
|
-
### 1. Mode Determination
|
|
74
|
-
|
|
75
|
-
"Welcome to the workflow. What would you like to do?"
|
|
76
|
-
|
|
77
|
-
- **[C] Create** — Run the workflow from the beginning
|
|
78
|
-
- **[R] Resume** — Resume an interrupted Create workflow
|
|
79
|
-
- **[V] Validate** — Validate existing outputs
|
|
80
|
-
- **[E] Edit** — Edit existing outputs
|
|
81
|
-
|
|
82
|
-
### 2. Route to First Step
|
|
83
|
-
|
|
84
|
-
- **If C:** Load `{skill-root}/steps-c/step-01-preflight-and-context.md`
|
|
85
|
-
- **If R:** Load `{skill-root}/steps-c/step-01b-resume.md` (Create-mode continuation)
|
|
86
|
-
- **If V:** Load `{skill-root}/steps-v/step-01-validate.md`
|
|
87
|
-
- **If E:** Load `{skill-root}/steps-e/step-01-assess.md`
|
|
15
|
+
Existing ATDD customization files and checklist paths keep working.
|
|
16
|
+
Resume accepts interrupted 2.0.0 checklists and preserves their story identity and saved next step.
|
|
@@ -7,10 +7,10 @@ description: 'Generate red-phase acceptance test scaffolds using TDD cycle. Use
|
|
|
7
7
|
date: system-generated
|
|
8
8
|
|
|
9
9
|
# Workflow components
|
|
10
|
-
installed_path: "
|
|
11
|
-
instructions: "
|
|
12
|
-
validation: "
|
|
13
|
-
template: "
|
|
10
|
+
installed_path: "../bmad-testarch-automate/red"
|
|
11
|
+
instructions: "../bmad-testarch-automate/red/instructions.md"
|
|
12
|
+
validation: "../bmad-testarch-automate/red/checklist.md"
|
|
13
|
+
template: "../bmad-testarch-automate/red/atdd-checklist-template.md"
|
|
14
14
|
|
|
15
15
|
# Variables and inputs
|
|
16
16
|
variables:
|