bmad-method 6.0.0-alpha.17 → 6.0.0-alpha.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/package.json +1 -1
  3. package/src/modules/bmgd/_module-installer/installer.js +160 -0
  4. package/src/modules/bmgd/_module-installer/platform-specifics/claude-code.js +23 -0
  5. package/src/modules/bmgd/_module-installer/platform-specifics/windsurf.js +18 -0
  6. package/src/modules/bmgd/agents/game-architect.agent.yaml +23 -8
  7. package/src/modules/bmgd/agents/game-designer.agent.yaml +38 -18
  8. package/src/modules/bmgd/agents/game-dev.agent.yaml +30 -14
  9. package/src/modules/bmgd/agents/game-qa.agent.yaml +64 -0
  10. package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +27 -39
  11. package/src/modules/bmgd/agents/game-solo-dev.agent.yaml +56 -0
  12. package/src/modules/bmgd/docs/README.md +180 -0
  13. package/src/modules/bmgd/docs/agents-guide.md +407 -0
  14. package/src/modules/bmgd/docs/game-types-guide.md +503 -0
  15. package/src/modules/bmgd/docs/glossary.md +294 -0
  16. package/src/modules/bmgd/docs/quick-flow-guide.md +288 -0
  17. package/src/modules/bmgd/docs/quick-start.md +250 -0
  18. package/src/modules/bmgd/docs/troubleshooting.md +259 -0
  19. package/src/modules/bmgd/docs/workflow-overview.jpg +0 -0
  20. package/src/modules/bmgd/docs/workflows-guide.md +463 -0
  21. package/src/modules/bmgd/gametest/knowledge/balance-testing.md +220 -0
  22. package/src/modules/bmgd/gametest/knowledge/certification-testing.md +319 -0
  23. package/src/modules/bmgd/gametest/knowledge/compatibility-testing.md +228 -0
  24. package/src/modules/bmgd/gametest/knowledge/godot-testing.md +376 -0
  25. package/src/modules/bmgd/gametest/knowledge/input-testing.md +315 -0
  26. package/src/modules/bmgd/gametest/knowledge/localization-testing.md +304 -0
  27. package/src/modules/bmgd/gametest/knowledge/multiplayer-testing.md +322 -0
  28. package/src/modules/bmgd/gametest/knowledge/performance-testing.md +204 -0
  29. package/src/modules/bmgd/gametest/knowledge/playtesting.md +384 -0
  30. package/src/modules/bmgd/gametest/knowledge/qa-automation.md +190 -0
  31. package/src/modules/bmgd/gametest/knowledge/regression-testing.md +280 -0
  32. package/src/modules/bmgd/gametest/knowledge/save-testing.md +280 -0
  33. package/src/modules/bmgd/gametest/knowledge/smoke-testing.md +404 -0
  34. package/src/modules/bmgd/gametest/knowledge/test-priorities.md +271 -0
  35. package/src/modules/bmgd/gametest/knowledge/unity-testing.md +383 -0
  36. package/src/modules/bmgd/gametest/knowledge/unreal-testing.md +388 -0
  37. package/src/modules/bmgd/gametest/qa-index.csv +17 -0
  38. package/src/modules/bmgd/module.yaml +25 -9
  39. package/src/modules/bmgd/teams/default-party.csv +2 -0
  40. package/src/modules/bmgd/teams/team-gamedev.yaml +12 -1
  41. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-01-init.md +164 -0
  42. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-02-context.md +210 -0
  43. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-03-ideation.md +289 -0
  44. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-04-complete.md +275 -0
  45. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/workflow.md +49 -0
  46. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/workflow.yaml +29 -8
  47. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-01-init.md +223 -0
  48. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-01b-continue.md +151 -0
  49. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-02-vision.md +218 -0
  50. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-03-market.md +218 -0
  51. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-04-fundamentals.md +231 -0
  52. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-05-scope.md +242 -0
  53. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-06-references.md +224 -0
  54. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-07-content.md +282 -0
  55. package/src/modules/bmgd/workflows/1-preproduction/game-brief/steps/step-08-complete.md +296 -0
  56. package/src/modules/bmgd/workflows/1-preproduction/game-brief/workflow.md +62 -0
  57. package/src/modules/bmgd/workflows/1-preproduction/game-brief/workflow.yaml +40 -9
  58. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-01-init.md +248 -0
  59. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-01b-continue.md +173 -0
  60. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-02-context.md +332 -0
  61. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-03-platforms.md +245 -0
  62. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-04-vision.md +229 -0
  63. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-05-core-gameplay.md +258 -0
  64. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-06-mechanics.md +249 -0
  65. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-07-game-type.md +266 -0
  66. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-08-progression.md +272 -0
  67. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-09-levels.md +264 -0
  68. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-10-art-audio.md +255 -0
  69. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-11-technical.md +275 -0
  70. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-12-epics.md +284 -0
  71. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-13-metrics.md +250 -0
  72. package/src/modules/bmgd/workflows/2-design/gdd/steps/step-14-complete.md +335 -0
  73. package/src/modules/bmgd/workflows/2-design/gdd/workflow.md +61 -0
  74. package/src/modules/bmgd/workflows/2-design/gdd/workflow.yaml +27 -7
  75. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-01-init.md +228 -0
  76. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-01b-continue.md +163 -0
  77. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-02-foundation.md +262 -0
  78. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-03-story.md +238 -0
  79. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-04-characters.md +297 -0
  80. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-05-world.md +262 -0
  81. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-06-dialogue.md +250 -0
  82. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-07-environmental.md +244 -0
  83. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-08-delivery.md +264 -0
  84. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-09-integration.md +254 -0
  85. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-10-production.md +262 -0
  86. package/src/modules/bmgd/workflows/2-design/narrative/steps/step-11-complete.md +331 -0
  87. package/src/modules/bmgd/workflows/2-design/narrative/workflow.md +57 -0
  88. package/src/modules/bmgd/workflows/2-design/narrative/workflow.yaml +53 -8
  89. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-01-init.md +223 -0
  90. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-01b-continue.md +153 -0
  91. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-02-context.md +262 -0
  92. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-03-starter.md +290 -0
  93. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-04-decisions.md +300 -0
  94. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-05-crosscutting.md +319 -0
  95. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-06-structure.md +304 -0
  96. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-07-patterns.md +349 -0
  97. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-08-validation.md +293 -0
  98. package/src/modules/bmgd/workflows/3-technical/game-architecture/steps/step-09-complete.md +302 -0
  99. package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.md +55 -0
  100. package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.yaml +50 -21
  101. package/src/modules/bmgd/workflows/4-production/code-review/checklist.md +23 -0
  102. package/src/modules/bmgd/workflows/4-production/code-review/instructions.xml +225 -0
  103. package/src/modules/bmgd/workflows/4-production/code-review/workflow.yaml +18 -15
  104. package/src/modules/bmgd/workflows/4-production/correct-course/checklist.md +1 -1
  105. package/src/modules/bmgd/workflows/4-production/correct-course/instructions.md +1 -1
  106. package/src/modules/bmgd/workflows/4-production/correct-course/workflow.yaml +11 -6
  107. package/src/modules/bmgd/workflows/4-production/create-story/checklist.md +332 -214
  108. package/src/modules/bmgd/workflows/4-production/create-story/instructions.xml +298 -0
  109. package/src/modules/bmgd/workflows/4-production/create-story/template.md +3 -5
  110. package/src/modules/bmgd/workflows/4-production/create-story/workflow.yaml +12 -7
  111. package/src/modules/bmgd/workflows/4-production/dev-story/checklist.md +65 -23
  112. package/src/modules/bmgd/workflows/4-production/dev-story/instructions.xml +409 -0
  113. package/src/modules/bmgd/workflows/4-production/dev-story/workflow.yaml +13 -3
  114. package/src/modules/bmgd/workflows/4-production/retrospective/instructions.md +4 -4
  115. package/src/modules/bmgd/workflows/4-production/retrospective/workflow.yaml +12 -7
  116. package/src/modules/bmgd/workflows/4-production/sprint-planning/instructions.md +32 -41
  117. package/src/modules/bmgd/workflows/4-production/sprint-planning/sprint-status-template.yaml +13 -13
  118. package/src/modules/bmgd/workflows/4-production/sprint-planning/workflow.yaml +6 -1
  119. package/src/modules/bmgd/workflows/4-production/sprint-status/instructions.md +229 -0
  120. package/src/modules/bmgd/workflows/4-production/sprint-status/workflow.yaml +35 -0
  121. package/src/modules/bmgd/workflows/bmgd-quick-flow/create-tech-spec/instructions.md +140 -0
  122. package/src/modules/bmgd/workflows/bmgd-quick-flow/create-tech-spec/workflow.yaml +27 -0
  123. package/src/modules/bmgd/workflows/bmgd-quick-flow/quick-dev/checklist.md +37 -0
  124. package/src/modules/bmgd/workflows/bmgd-quick-flow/quick-dev/instructions.md +220 -0
  125. package/src/modules/bmgd/workflows/bmgd-quick-flow/quick-dev/workflow.yaml +45 -0
  126. package/src/modules/bmgd/workflows/bmgd-quick-flow/quick-prototype/checklist.md +26 -0
  127. package/src/modules/bmgd/workflows/bmgd-quick-flow/quick-prototype/instructions.md +156 -0
  128. package/src/modules/bmgd/workflows/bmgd-quick-flow/quick-prototype/workflow.yaml +36 -0
  129. package/src/modules/bmgd/workflows/gametest/automate/checklist.md +93 -0
  130. package/src/modules/bmgd/workflows/gametest/automate/instructions.md +317 -0
  131. package/src/modules/bmgd/workflows/gametest/automate/workflow.yaml +50 -0
  132. package/src/modules/bmgd/workflows/gametest/performance/checklist.md +96 -0
  133. package/src/modules/bmgd/workflows/gametest/performance/instructions.md +323 -0
  134. package/src/modules/bmgd/workflows/gametest/performance/performance-template.md +256 -0
  135. package/src/modules/bmgd/workflows/gametest/performance/workflow.yaml +48 -0
  136. package/src/modules/bmgd/workflows/gametest/playtest-plan/checklist.md +93 -0
  137. package/src/modules/bmgd/workflows/gametest/playtest-plan/instructions.md +297 -0
  138. package/src/modules/bmgd/workflows/gametest/playtest-plan/playtest-template.md +208 -0
  139. package/src/modules/bmgd/workflows/gametest/playtest-plan/workflow.yaml +59 -0
  140. package/src/modules/bmgd/workflows/gametest/test-design/checklist.md +98 -0
  141. package/src/modules/bmgd/workflows/gametest/test-design/instructions.md +280 -0
  142. package/src/modules/bmgd/workflows/gametest/test-design/test-design-template.md +205 -0
  143. package/src/modules/bmgd/workflows/gametest/test-design/workflow.yaml +47 -0
  144. package/src/modules/bmgd/workflows/gametest/test-framework/checklist.md +103 -0
  145. package/src/modules/bmgd/workflows/gametest/test-framework/instructions.md +348 -0
  146. package/src/modules/bmgd/workflows/gametest/test-framework/workflow.yaml +48 -0
  147. package/src/modules/bmgd/workflows/gametest/test-review/checklist.md +87 -0
  148. package/src/modules/bmgd/workflows/gametest/test-review/instructions.md +272 -0
  149. package/src/modules/bmgd/workflows/gametest/test-review/test-review-template.md +203 -0
  150. package/src/modules/bmgd/workflows/gametest/test-review/workflow.yaml +48 -0
  151. package/src/modules/bmgd/workflows/workflow-status/init/instructions.md +299 -0
  152. package/src/modules/bmgd/workflows/workflow-status/init/workflow.yaml +29 -0
  153. package/src/modules/bmgd/workflows/workflow-status/instructions.md +395 -0
  154. package/src/modules/bmgd/workflows/workflow-status/paths/gamedev-brownfield.yaml +65 -0
  155. package/src/modules/bmgd/workflows/workflow-status/paths/gamedev-greenfield.yaml +71 -0
  156. package/src/modules/bmgd/workflows/workflow-status/paths/quickflow-brownfield.yaml +29 -0
  157. package/src/modules/bmgd/workflows/workflow-status/paths/quickflow-greenfield.yaml +39 -0
  158. package/src/modules/bmgd/workflows/workflow-status/project-levels.yaml +63 -0
  159. package/src/modules/bmgd/workflows/workflow-status/workflow-status-template.yaml +24 -0
  160. package/src/modules/bmgd/workflows/workflow-status/workflow.yaml +30 -0
  161. package/tools/cli/commands/install.js +9 -0
  162. package/tools/cli/installers/lib/core/installer.js +109 -109
  163. package/tools/cli/installers/lib/core/installer.js.bak +3204 -0
  164. package/tools/cli/installers/lib/modules/manager.js +16 -4
  165. package/tools/cli/lib/agent/compiler.js +99 -0
  166. package/tools/cli/lib/ui.js +78 -27
  167. package/src/modules/bmgd/workflows/2-design/gdd/instructions-gdd.md +0 -502
  168. package/src/modules/bmgd/workflows/4-production/code-review/instructions.md +0 -398
  169. package/src/modules/bmgd/workflows/4-production/create-story/instructions.md +0 -256
  170. package/src/modules/bmgd/workflows/4-production/dev-story/instructions.md +0 -267
  171. package/src/modules/bmgd/workflows/4-production/epic-tech-context/checklist.md +0 -17
  172. package/src/modules/bmgd/workflows/4-production/epic-tech-context/instructions.md +0 -164
  173. package/src/modules/bmgd/workflows/4-production/epic-tech-context/template.md +0 -76
  174. package/src/modules/bmgd/workflows/4-production/epic-tech-context/workflow.yaml +0 -58
  175. package/src/modules/bmgd/workflows/4-production/story-context/checklist.md +0 -16
  176. package/src/modules/bmgd/workflows/4-production/story-context/context-template.xml +0 -34
  177. package/src/modules/bmgd/workflows/4-production/story-context/instructions.md +0 -209
  178. package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +0 -63
  179. package/src/modules/bmgd/workflows/4-production/story-done/instructions.md +0 -111
  180. package/src/modules/bmgd/workflows/4-production/story-done/workflow.yaml +0 -28
  181. package/src/modules/bmgd/workflows/4-production/story-ready/instructions.md +0 -117
  182. package/src/modules/bmgd/workflows/4-production/story-ready/workflow.yaml +0 -25
  183. /package/src/modules/bmgd/workflows/1-preproduction/game-brief/{template.md → templates/game-brief-template.md} +0 -0
  184. /package/src/modules/bmgd/workflows/2-design/gdd/{gdd-template.md → templates/gdd-template.md} +0 -0
  185. /package/src/modules/bmgd/workflows/2-design/narrative/{narrative-template.md → templates/narrative-template.md} +0 -0
  186. /package/src/modules/bmgd/workflows/3-technical/game-architecture/{architecture-template.md → templates/architecture-template.md} +0 -0
@@ -0,0 +1,272 @@
1
+ <!-- Powered by BMAD-CORE™ -->
2
+
3
+ # Test Review
4
+
5
+ **Workflow ID**: `_bmad/bmgd/gametest/test-review`
6
+ **Version**: 1.0 (BMad v6)
7
+
8
+ ---
9
+
10
+ ## Overview
11
+
12
+ Review existing test suite quality, identify coverage gaps, and recommend improvements. Regular test review prevents test rot and maintains test value over time.
13
+
14
+ **Knowledge Base Reference**: `knowledge/regression-testing.md`, `knowledge/test-priorities.md`
15
+
16
+ ---
17
+
18
+ ## Preflight Requirements
19
+
20
+ - ✅ Test suite exists (some tests to review)
21
+ - ✅ Access to test execution results
22
+ - ✅ Understanding of game features
23
+
24
+ ---
25
+
26
+ ## Step 1: Gather Test Suite Metrics
27
+
28
+ ### Actions
29
+
30
+ 1. **Count Tests by Type**
31
+
32
+ | Type | Count | Pass Rate | Avg Duration |
33
+ | -------------------- | ----- | --------- | ------------ |
34
+ | Unit | | | |
35
+ | Integration | | | |
36
+ | Play Mode/Functional | | | |
37
+ | Performance | | | |
38
+ | **Total** | | | |
39
+
40
+ 2. **Analyze Test Results**
41
+ - Recent pass rate (last 10 runs)
42
+ - Flaky tests (inconsistent results)
43
+ - Slow tests (> 30s individual)
44
+ - Disabled/skipped tests
45
+
46
+ 3. **Map Coverage**
47
+ - Features with tests
48
+ - Features without tests
49
+ - Critical paths covered
50
+
51
+ ---
52
+
53
+ ## Step 2: Assess Test Quality
54
+
55
+ ### Quality Criteria
56
+
57
+ For each test, evaluate:
58
+
59
+ | Criterion | Good | Bad |
60
+ | ----------------- | -------------------------------- | ---------------------------- |
61
+ | **Deterministic** | Same input = same result | Flaky, timing-dependent |
62
+ | **Isolated** | No shared state | Tests affect each other |
63
+ | **Fast** | < 5s (unit), < 30s (integration) | Minutes per test |
64
+ | **Readable** | Clear intent, good names | Cryptic, no comments |
65
+ | **Maintained** | Up-to-date, passing | Disabled, stale |
66
+ | **Valuable** | Tests real behavior | Tests implementation details |
67
+
68
+ ### Anti-Pattern Detection
69
+
70
+ Look for these common issues:
71
+
72
+ ```
73
+ ❌ Hard-coded waits
74
+ await Task.Delay(5000); // Bad
75
+ await WaitUntil(() => condition); // Good
76
+
77
+ ❌ Shared test state
78
+ static bool wasSetup; // Dangerous
79
+ [SetUp] void Setup() { /* fresh state */ } // Good
80
+
81
+ ❌ Testing private implementation
82
+ var result = obj.GetPrivateField(); // Bad
83
+ var result = obj.PublicBehavior(); // Good
84
+
85
+ ❌ Missing cleanup
86
+ var go = Instantiate(prefab); // Leaks
87
+ var go = Instantiate(prefab);
88
+ AddCleanup(() => Destroy(go)); // Good
89
+
90
+ ❌ Assertion-free tests
91
+ void Test() { DoSomething(); } // What does it test?
92
+ void Test() { DoSomething(); Assert.That(...); } // Clear
93
+ ```
94
+
95
+ ---
96
+
97
+ ## Step 3: Identify Coverage Gaps
98
+
99
+ ### Critical Areas to Verify
100
+
101
+ | Area | P0 Coverage | P1 Coverage | Gap? |
102
+ | ------------- | ----------- | ----------- | ---- |
103
+ | Core Loop | | | |
104
+ | Save/Load | | | |
105
+ | Progression | | | |
106
+ | Combat | | | |
107
+ | UI/Menus | | | |
108
+ | Multiplayer | | | |
109
+ | Platform Cert | | | |
110
+
111
+ ### Gap Identification Process
112
+
113
+ 1. List all game features
114
+ 2. Check if each feature has tests
115
+ 3. Assess test depth (happy path only vs edge cases)
116
+ 4. Prioritize gaps by risk
117
+
118
+ ---
119
+
120
+ ## Step 4: Review Test Infrastructure
121
+
122
+ ### Framework Health
123
+
124
+ - [ ] Tests run in CI
125
+ - [ ] Results are visible to team
126
+ - [ ] Failures block deployments
127
+ - [ ] Test data is versioned
128
+ - [ ] Fixtures are reusable
129
+ - [ ] Helpers reduce duplication
130
+
131
+ ### Maintenance Burden
132
+
133
+ - How often do tests need updates?
134
+ - Are updates proportional to code changes?
135
+ - Do refactors break tests unnecessarily?
136
+
137
+ ---
138
+
139
+ ## Step 5: Generate Recommendations
140
+
141
+ ### Priority Matrix
142
+
143
+ | Finding | Severity | Effort | Recommendation |
144
+ | --------- | -------------- | -------------- | -------------- |
145
+ | {finding} | {High/Med/Low} | {High/Med/Low} | {action} |
146
+
147
+ ### Common Recommendations
148
+
149
+ **For Flaky Tests**:
150
+
151
+ - Replace `Thread.Sleep` with explicit waits
152
+ - Add proper synchronization
153
+ - Isolate test state
154
+
155
+ **For Slow Tests**:
156
+
157
+ - Move to nightly builds
158
+ - Optimize test setup
159
+ - Mock expensive dependencies
160
+
161
+ **For Coverage Gaps**:
162
+
163
+ - Prioritize P0/P1 features
164
+ - Add smoke tests first
165
+ - Use test-design workflow
166
+
167
+ **For Maintenance Issues**:
168
+
169
+ - Refactor common patterns
170
+ - Create test utilities
171
+ - Improve documentation
172
+
173
+ ---
174
+
175
+ ## Step 6: Generate Test Review Report
176
+
177
+ ### Report Structure
178
+
179
+ ```markdown
180
+ # Test Review Report: {Project Name}
181
+
182
+ ## Executive Summary
183
+
184
+ - Overall health: {Good/Needs Work/Critical}
185
+ - Key findings: {3-5 bullet points}
186
+ - Recommended actions: {prioritized list}
187
+
188
+ ## Metrics
189
+
190
+ ### Test Suite Statistics
191
+
192
+ [Tables from Step 1]
193
+
194
+ ### Recent History
195
+
196
+ [Pass rates, trends]
197
+
198
+ ## Quality Assessment
199
+
200
+ ### Strengths
201
+
202
+ - {What's working well}
203
+
204
+ ### Issues Found
205
+
206
+ | Issue | Severity | Tests Affected | Fix |
207
+ | ----- | -------- | -------------- | --- |
208
+ | | | | |
209
+
210
+ ## Coverage Analysis
211
+
212
+ ### Current Coverage
213
+
214
+ [Feature coverage table]
215
+
216
+ ### Critical Gaps
217
+
218
+ [Prioritized list of missing coverage]
219
+
220
+ ## Recommendations
221
+
222
+ ### Immediate (This Sprint)
223
+
224
+ 1. {Fix critical issues}
225
+
226
+ ### Short-term (This Milestone)
227
+
228
+ 1. {Address major gaps}
229
+
230
+ ### Long-term (Ongoing)
231
+
232
+ 1. {Improve infrastructure}
233
+
234
+ ## Appendix
235
+
236
+ ### Flaky Tests
237
+
238
+ [List with failure patterns]
239
+
240
+ ### Slow Tests
241
+
242
+ [List with durations]
243
+
244
+ ### Disabled Tests
245
+
246
+ [List with reasons]
247
+ ```
248
+
249
+ ---
250
+
251
+ ## Review Frequency
252
+
253
+ | Review Type | Frequency | Scope | Owner |
254
+ | ----------- | --------- | ------------------------ | --------- |
255
+ | Quick Check | Weekly | Pass rates, flaky tests | QA |
256
+ | Full Review | Monthly | Coverage, quality | Tech Lead |
257
+ | Deep Dive | Quarterly | Infrastructure, strategy | Team |
258
+
259
+ ---
260
+
261
+ ## Deliverables
262
+
263
+ 1. **Test Review Report** - Comprehensive analysis
264
+ 2. **Action Items** - Prioritized improvements
265
+ 3. **Coverage Matrix** - Visual gap identification
266
+ 4. **Technical Debt List** - Tests needing refactor
267
+
268
+ ---
269
+
270
+ ## Validation
271
+
272
+ Refer to `checklist.md` for validation criteria.
@@ -0,0 +1,203 @@
1
+ # Test Review Report: {PROJECT_NAME}
2
+
3
+ **Review Date**: {DATE}
4
+ **Reviewer**: {REVIEWER}
5
+ **Period Covered**: {START_DATE} to {END_DATE}
6
+
7
+ ---
8
+
9
+ ## Executive Summary
10
+
11
+ ### Overall Health: {Good | Needs Work | Critical}
12
+
13
+ ### Key Findings
14
+
15
+ 1. {Finding 1}
16
+ 2. {Finding 2}
17
+ 3. {Finding 3}
18
+
19
+ ### Recommended Actions
20
+
21
+ 1. {High priority action}
22
+ 2. {Medium priority action}
23
+ 3. {Ongoing improvement}
24
+
25
+ ---
26
+
27
+ ## Test Suite Metrics
28
+
29
+ ### Test Distribution
30
+
31
+ | Type | Count | % of Total |
32
+ | -------------------- | ----- | ---------- |
33
+ | Unit Tests | | |
34
+ | Integration Tests | | |
35
+ | Play Mode/Functional | | |
36
+ | Performance Tests | | |
37
+ | **Total** | | 100% |
38
+
39
+ ### Execution Metrics
40
+
41
+ | Metric | Current | Previous | Trend |
42
+ | -------------- | ------- | -------- | ----- |
43
+ | Pass Rate | | | {↑↓→} |
44
+ | Avg Duration | | | {↑↓→} |
45
+ | Flaky Tests | | | {↑↓→} |
46
+ | Disabled Tests | | | {↑↓→} |
47
+
48
+ ### Recent Run History
49
+
50
+ | Date | Passed | Failed | Skipped | Duration |
51
+ | ---- | ------ | ------ | ------- | -------- |
52
+ | | | | | |
53
+ | | | | | |
54
+ | | | | | |
55
+
56
+ ---
57
+
58
+ ## Quality Assessment
59
+
60
+ ### Strengths
61
+
62
+ - {What the test suite does well}
63
+ - {Good patterns observed}
64
+ - {Areas of strong coverage}
65
+
66
+ ### Issues Found
67
+
68
+ | Issue | Severity | Count | Example | Recommended Fix |
69
+ | ------------------ | -------- | ----- | ------- | --------------- |
70
+ | Flaky tests | High | | | |
71
+ | Slow tests | Medium | | | |
72
+ | Missing cleanup | Medium | | | |
73
+ | Hard-coded waits | Low | | | |
74
+ | Unclear assertions | Low | | | |
75
+
76
+ ### Anti-Patterns Detected
77
+
78
+ | Pattern | Occurrences | Impact | Fix Effort |
79
+ | --------- | ----------- | ------ | ---------- |
80
+ | {pattern} | | | |
81
+
82
+ ---
83
+
84
+ ## Coverage Analysis
85
+
86
+ ### Feature Coverage Matrix
87
+
88
+ | Feature | P0 Tests | P1 Tests | P2 Tests | Gap? |
89
+ | ------------- | -------- | -------- | -------- | ---- |
90
+ | Core Loop | | | | |
91
+ | Combat/Action | | | | |
92
+ | Movement | | | | |
93
+ | UI/Menus | | | | |
94
+ | Save/Load | | | | |
95
+ | Progression | | | | |
96
+ | Multiplayer | | | | |
97
+ | Audio | | | | |
98
+ | Platform | | | | |
99
+
100
+ ### Critical Gaps
101
+
102
+ | Gap | Risk | Impact | Priority to Fix |
103
+ | ----------------------- | ------------ | ----------- | --------------- |
104
+ | {feature without tests} | {risk level} | {if breaks} | P{0-3} |
105
+
106
+ ### Coverage by Priority
107
+
108
+ ```
109
+ P0 Coverage: {X}% ████████░░
110
+ P1 Coverage: {X}% ██████░░░░
111
+ P2 Coverage: {X}% ████░░░░░░
112
+ P3 Coverage: {X}% ██░░░░░░░░
113
+ ```
114
+
115
+ ---
116
+
117
+ ## Infrastructure Review
118
+
119
+ ### CI/CD Integration
120
+
121
+ | Aspect | Status | Notes |
122
+ | ----------------- | ------- | ----- |
123
+ | Tests in CI | {✅/❌} | |
124
+ | Results visible | {✅/❌} | |
125
+ | Failures block | {✅/❌} | |
126
+ | Nightly runs | {✅/❌} | |
127
+ | Performance tests | {✅/❌} | |
128
+
129
+ ### Test Infrastructure Quality
130
+
131
+ | Component | Quality | Notes |
132
+ | -------------- | ---------------- | ----- |
133
+ | Fixtures | {Good/Fair/Poor} | |
134
+ | Helpers | {Good/Fair/Poor} | |
135
+ | Data factories | {Good/Fair/Poor} | |
136
+ | Documentation | {Good/Fair/Poor} | |
137
+
138
+ ### Maintenance Burden
139
+
140
+ - Test update frequency: {high/medium/low}
141
+ - Brittleness score: {high/medium/low}
142
+ - Developer friction: {high/medium/low}
143
+
144
+ ---
145
+
146
+ ## Recommendations
147
+
148
+ ### Immediate (This Sprint)
149
+
150
+ | Action | Effort | Impact | Owner |
151
+ | ------------------------- | ------- | ------ | ----- |
152
+ | {fix critical flaky test} | {hours} | High | |
153
+ | {add P0 test for X} | {hours} | High | |
154
+
155
+ ### Short-term (This Milestone)
156
+
157
+ | Action | Effort | Impact | Owner |
158
+ | ----------------------------- | ------ | ------ | ----- |
159
+ | {refactor slow tests} | {days} | Medium | |
160
+ | {add integration tests for Y} | {days} | Medium | |
161
+
162
+ ### Long-term (Ongoing)
163
+
164
+ | Action | Effort | Impact | Notes |
165
+ | ----------------------------- | ------- | ------ | ----- |
166
+ | {improve test infrastructure} | {weeks} | High | |
167
+ | {expand coverage to Z} | {weeks} | Medium | |
168
+
169
+ ---
170
+
171
+ ## Appendices
172
+
173
+ ### Appendix A: Flaky Tests
174
+
175
+ | Test Name | Failure Rate | Failure Pattern | Fix Priority |
176
+ | --------- | ------------ | --------------- | ------------ |
177
+ | | | | |
178
+
179
+ ### Appendix B: Slow Tests
180
+
181
+ | Test Name | Duration | Type | Action |
182
+ | --------- | -------- | ---- | -------------------------- |
183
+ | | | | {optimize/move to nightly} |
184
+
185
+ ### Appendix C: Disabled Tests
186
+
187
+ | Test Name | Disabled Since | Reason | Action |
188
+ | --------- | -------------- | ------ | ------------ |
189
+ | | | | {fix/delete} |
190
+
191
+ ### Appendix D: Technical Debt
192
+
193
+ | Item | Description | Effort | Priority |
194
+ | ---- | ----------- | ------ | -------- |
195
+ | | | | |
196
+
197
+ ---
198
+
199
+ ## Next Review
200
+
201
+ **Scheduled**: {DATE}
202
+ **Focus Areas**: {areas to pay attention to}
203
+ **Success Criteria**: {what would make next review "green"}
@@ -0,0 +1,48 @@
1
+ # Game QA workflow: test-review
2
+ name: gametest-test-review
3
+ description: "Review test quality, coverage, and identify gaps in game testing"
4
+ author: "BMad"
5
+
6
+ # Critical variables from config
7
+ config_source: "{project-root}/_bmad/bmgd/config.yaml"
8
+ output_folder: "{config_source}:output_folder"
9
+ user_name: "{config_source}:user_name"
10
+ communication_language: "{config_source}:communication_language"
11
+ document_output_language: "{config_source}:document_output_language"
12
+ date: system-generated
13
+
14
+ # Workflow components
15
+ installed_path: "{project-root}/_bmad/bmgd/workflows/gametest/test-review"
16
+ instructions: "{installed_path}/instructions.md"
17
+ validation: "{installed_path}/checklist.md"
18
+ template: "{installed_path}/test-review-template.md"
19
+
20
+ # Variables and inputs
21
+ variables:
22
+ review_scope: "full" # full, targeted, quick
23
+ game_engine: "auto" # auto, unity, unreal, godot
24
+
25
+ # Output configuration
26
+ default_output_file: "{output_folder}/test-review-report.md"
27
+
28
+ # Required tools
29
+ required_tools:
30
+ - read_file
31
+ - write_file
32
+ - list_files
33
+ - search_repo
34
+ - glob
35
+
36
+ tags:
37
+ - qa
38
+ - review
39
+ - coverage
40
+ - quality
41
+ - maintenance
42
+
43
+ execution_hints:
44
+ interactive: false
45
+ autonomous: true
46
+ iterative: true
47
+
48
+ web_bundle: false