Problem
The TEA module's ATDD workflow (bmad-testarch-atdd) generates failing acceptance test scaffolds before implementation. This is a natural fit between create-story and dev-story in BMM Phase 4. However, three components of the BMM pipeline have no awareness of ATDD:
1. bmad-help cannot recommend ATDD in the correct position
In bmad-help.csv, the ATDD row has prerequisite=false — it floats as an unconnected entry in Phase 4. When a user completes create-story and asks bmad-help what to do next, ATDD is not surfaced as a recommended step before dev-story.
Additionally, bmad-help routing uses "Stay in module" logic. ATDD lives in the "Test Architecture Enterprise" module while the implementation pipeline lives in "BMad Method". Even with a corrected prerequisite chain, the cross-module boundary may prevent help from showing TEA workflows when guiding BMM Phase 4.
2. dev-story ignores pre-existing ATDD test scaffolds
Step 5 of dev-story workflow contains static instructions: "Write FAILING tests first." There is no conditional check for pre-existing test.fixme() tests generated by ATDD.
Result (from real project, also documented in #1784):
- ATDD generated 29 tests marked with
test.fixme()
dev-story wrote its own tests from scratch, ignoring all 29 ATDD scaffolds
- All 29 ATDD tests remained permanently skipped
- Story was marked "Ready for Review" without activating any ATDD tests
3. create-story doesn't surface ATDD artifacts
The story template has no section for ATDD artifacts. When ATDD runs after create-story, the resulting checklist (atdd-checklist-{story_id}.md) is not referenced in the story file. dev-story therefore has no pointer to locate or use these artifacts.
Proposed Changes
bmad-help.csv
Set ATDD prerequisite to bmad-create-story (positions it after create-story in the recommendation chain). Consider cross-module routing: when TEA is installed and the user is in BMM Phase 4, help should be able to recommend TEA workflows that chain into the BMM sequence.
dev-story Step 5
Add conditional logic before the RED phase:
IF ATDD checklist exists at {test_artifacts}/atdd-checklist-{story_key}.md
OR test.fixme() files exist for this story's acceptance criteria:
Load ATDD checklist, identify tests for current task
Convert test.fixme() to test() (activate the RED phase)
Confirm activated tests FAIL
Write additional failing tests ONLY for gaps not covered by ATDD
ELSE:
Write FAILING tests first (current behavior)
dev-story Definition of Done (Step 9)
Add validation criterion: "No test.fixme() calls remain for completed tasks."
Story template (optional)
Add an "ATDD Artifacts" section that create-story or bmad-testarch-atdd can populate with the path to the ATDD checklist.
Impact
- Without fix: Every project using TEA ATDD + BMM
dev-story has permanently disabled test scaffolds. The effort of running ATDD is wasted.
- With fix: Backward compatible. When no ATDD artifacts exist,
dev-story falls back to standard behavior. When they exist, it uses them as the RED phase basis.
Related
Problem
The TEA module's ATDD workflow (
bmad-testarch-atdd) generates failing acceptance test scaffolds before implementation. This is a natural fit betweencreate-storyanddev-storyin BMM Phase 4. However, three components of the BMM pipeline have no awareness of ATDD:1.
bmad-helpcannot recommend ATDD in the correct positionIn
bmad-help.csv, the ATDD row hasprerequisite=false— it floats as an unconnected entry in Phase 4. When a user completescreate-storyand asksbmad-helpwhat to do next, ATDD is not surfaced as a recommended step beforedev-story.Additionally,
bmad-helprouting uses "Stay in module" logic. ATDD lives in the "Test Architecture Enterprise" module while the implementation pipeline lives in "BMad Method". Even with a corrected prerequisite chain, the cross-module boundary may prevent help from showing TEA workflows when guiding BMM Phase 4.2.
dev-storyignores pre-existing ATDD test scaffoldsStep 5 of
dev-storyworkflow contains static instructions: "Write FAILING tests first." There is no conditional check for pre-existingtest.fixme()tests generated by ATDD.Result (from real project, also documented in #1784):
test.fixme()dev-storywrote its own tests from scratch, ignoring all 29 ATDD scaffolds3.
create-storydoesn't surface ATDD artifactsThe story template has no section for ATDD artifacts. When ATDD runs after
create-story, the resulting checklist (atdd-checklist-{story_id}.md) is not referenced in the story file.dev-storytherefore has no pointer to locate or use these artifacts.Proposed Changes
bmad-help.csv
Set ATDD prerequisite to
bmad-create-story(positions it after create-story in the recommendation chain). Consider cross-module routing: when TEA is installed and the user is in BMM Phase 4, help should be able to recommend TEA workflows that chain into the BMM sequence.dev-story Step 5
Add conditional logic before the RED phase:
dev-story Definition of Done (Step 9)
Add validation criterion: "No
test.fixme()calls remain for completed tasks."Story template (optional)
Add an "ATDD Artifacts" section that
create-storyorbmad-testarch-atddcan populate with the path to the ATDD checklist.Impact
dev-storyhas permanently disabled test scaffolds. The effort of running ATDD is wasted.dev-storyfalls back to standard behavior. When they exist, it uses them as the RED phase basis.Related