bmad-method-test-architecture-enterprise 0.1.1-beta.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.
Files changed (320) hide show
  1. package/.github/CODE_OF_CONDUCT.md +128 -0
  2. package/.github/FUNDING.yaml +15 -0
  3. package/.github/ISSUE_TEMPLATE/config.yaml +11 -0
  4. package/.github/ISSUE_TEMPLATE/feature_request.md +70 -0
  5. package/.github/ISSUE_TEMPLATE/issue.md +61 -0
  6. package/.github/workflows/docs.yaml +66 -0
  7. package/.github/workflows/manual-release.yaml +195 -0
  8. package/.github/workflows/quality.yaml +114 -0
  9. package/.husky/pre-commit +20 -0
  10. package/.markdownlint-cli2.yaml +36 -0
  11. package/.nvmrc +1 -0
  12. package/.prettierignore +9 -0
  13. package/.vscode/settings.json +47 -0
  14. package/CHANGELOG.md +217 -0
  15. package/CONTRIBUTING.md +268 -0
  16. package/LICENSE +26 -0
  17. package/README.md +300 -0
  18. package/SECURITY.md +85 -0
  19. package/TEA-MODULE-MIGRATION-PLAN.md +3788 -0
  20. package/docs/404.md +20 -0
  21. package/docs/MIGRATION.md +447 -0
  22. package/docs/explanation/engagement-models.md +767 -0
  23. package/docs/explanation/fixture-architecture.md +484 -0
  24. package/docs/explanation/knowledge-base-system.md +599 -0
  25. package/docs/explanation/network-first-patterns.md +884 -0
  26. package/docs/explanation/risk-based-testing.md +628 -0
  27. package/docs/explanation/step-file-architecture.md +609 -0
  28. package/docs/explanation/subprocess-architecture.md +578 -0
  29. package/docs/explanation/subprocess-implementation-status.md +327 -0
  30. package/docs/explanation/tea-overview.md +425 -0
  31. package/docs/explanation/test-quality-standards.md +965 -0
  32. package/docs/explanation/testing-as-engineering.md +111 -0
  33. package/docs/glossary/index.md +160 -0
  34. package/docs/how-to/brownfield/use-tea-for-enterprise.md +571 -0
  35. package/docs/how-to/brownfield/use-tea-with-existing-tests.md +631 -0
  36. package/docs/how-to/customization/enable-tea-mcp-enhancements.md +455 -0
  37. package/docs/how-to/customization/integrate-playwright-utils.md +846 -0
  38. package/docs/how-to/workflows/run-atdd.md +460 -0
  39. package/docs/how-to/workflows/run-automate.md +690 -0
  40. package/docs/how-to/workflows/run-nfr-assess.md +731 -0
  41. package/docs/how-to/workflows/run-test-design.md +144 -0
  42. package/docs/how-to/workflows/run-test-review.md +638 -0
  43. package/docs/how-to/workflows/run-trace.md +951 -0
  44. package/docs/how-to/workflows/setup-ci.md +761 -0
  45. package/docs/how-to/workflows/setup-test-framework.md +99 -0
  46. package/docs/index.md +122 -0
  47. package/docs/reference/commands.md +300 -0
  48. package/docs/reference/configuration.md +729 -0
  49. package/docs/reference/knowledge-base.md +365 -0
  50. package/docs/reference/troubleshooting.md +717 -0
  51. package/docs/tutorials/tea-lite-quickstart.md +465 -0
  52. package/eslint.config.mjs +152 -0
  53. package/package.json +117 -0
  54. package/prettier.config.mjs +32 -0
  55. package/release_notes.md +28 -0
  56. package/src/_module-installer/installer.js +92 -0
  57. package/src/agents/tea.agent.yaml +63 -0
  58. package/src/module-help.csv +9 -0
  59. package/src/module.yaml +91 -0
  60. package/src/testarch/knowledge/adr-quality-readiness-checklist.md +377 -0
  61. package/src/testarch/knowledge/api-request.md +442 -0
  62. package/src/testarch/knowledge/api-testing-patterns.md +851 -0
  63. package/src/testarch/knowledge/auth-session.md +548 -0
  64. package/src/testarch/knowledge/burn-in.md +273 -0
  65. package/src/testarch/knowledge/ci-burn-in.md +675 -0
  66. package/src/testarch/knowledge/component-tdd.md +486 -0
  67. package/src/testarch/knowledge/contract-testing.md +957 -0
  68. package/src/testarch/knowledge/data-factories.md +500 -0
  69. package/src/testarch/knowledge/email-auth.md +721 -0
  70. package/src/testarch/knowledge/error-handling.md +725 -0
  71. package/src/testarch/knowledge/feature-flags.md +750 -0
  72. package/src/testarch/knowledge/file-utils.md +456 -0
  73. package/src/testarch/knowledge/fixture-architecture.md +401 -0
  74. package/src/testarch/knowledge/fixtures-composition.md +382 -0
  75. package/src/testarch/knowledge/intercept-network-call.md +426 -0
  76. package/src/testarch/knowledge/log.md +426 -0
  77. package/src/testarch/knowledge/network-error-monitor.md +401 -0
  78. package/src/testarch/knowledge/network-first.md +486 -0
  79. package/src/testarch/knowledge/network-recorder.md +527 -0
  80. package/src/testarch/knowledge/nfr-criteria.md +670 -0
  81. package/src/testarch/knowledge/overview.md +286 -0
  82. package/src/testarch/knowledge/playwright-config.md +730 -0
  83. package/src/testarch/knowledge/probability-impact.md +601 -0
  84. package/src/testarch/knowledge/recurse.md +421 -0
  85. package/src/testarch/knowledge/risk-governance.md +615 -0
  86. package/src/testarch/knowledge/selective-testing.md +732 -0
  87. package/src/testarch/knowledge/selector-resilience.md +527 -0
  88. package/src/testarch/knowledge/test-healing-patterns.md +644 -0
  89. package/src/testarch/knowledge/test-levels-framework.md +473 -0
  90. package/src/testarch/knowledge/test-priorities-matrix.md +373 -0
  91. package/src/testarch/knowledge/test-quality.md +664 -0
  92. package/src/testarch/knowledge/timing-debugging.md +372 -0
  93. package/src/testarch/knowledge/visual-debugging.md +524 -0
  94. package/src/testarch/tea-index.csv +35 -0
  95. package/src/workflows/testarch/README.md +74 -0
  96. package/src/workflows/testarch/atdd/atdd-checklist-template.md +363 -0
  97. package/src/workflows/testarch/atdd/checklist.md +374 -0
  98. package/src/workflows/testarch/atdd/instructions.md +38 -0
  99. package/src/workflows/testarch/atdd/steps-c/step-01-preflight-and-context.md +110 -0
  100. package/src/workflows/testarch/atdd/steps-c/step-02-generation-mode.md +79 -0
  101. package/src/workflows/testarch/atdd/steps-c/step-03-test-strategy.md +76 -0
  102. package/src/workflows/testarch/atdd/steps-c/step-04-generate-tests.md +228 -0
  103. package/src/workflows/testarch/atdd/steps-c/step-04a-subprocess-api-failing.md +215 -0
  104. package/src/workflows/testarch/atdd/steps-c/step-04b-subprocess-e2e-failing.md +212 -0
  105. package/src/workflows/testarch/atdd/steps-c/step-04c-aggregate.md +329 -0
  106. package/src/workflows/testarch/atdd/steps-c/step-05-validate-and-complete.md +68 -0
  107. package/src/workflows/testarch/atdd/steps-e/step-01-assess.md +65 -0
  108. package/src/workflows/testarch/atdd/steps-e/step-02-apply-edit.md +60 -0
  109. package/src/workflows/testarch/atdd/steps-v/step-01-validate.md +67 -0
  110. package/src/workflows/testarch/atdd/validation-report-20260127-095021.md +73 -0
  111. package/src/workflows/testarch/atdd/validation-report-20260127-102401.md +116 -0
  112. package/src/workflows/testarch/atdd/workflow-plan.md +21 -0
  113. package/src/workflows/testarch/atdd/workflow.md +39 -0
  114. package/src/workflows/testarch/atdd/workflow.yaml +47 -0
  115. package/src/workflows/testarch/automate/checklist.md +582 -0
  116. package/src/workflows/testarch/automate/instructions.md +43 -0
  117. package/src/workflows/testarch/automate/steps-c/step-01-preflight-and-context.md +127 -0
  118. package/src/workflows/testarch/automate/steps-c/step-02-identify-targets.md +95 -0
  119. package/src/workflows/testarch/automate/steps-c/step-03-generate-tests.md +199 -0
  120. package/src/workflows/testarch/automate/steps-c/step-03a-subprocess-api.md +183 -0
  121. package/src/workflows/testarch/automate/steps-c/step-03b-subprocess-e2e.md +181 -0
  122. package/src/workflows/testarch/automate/steps-c/step-03c-aggregate.md +300 -0
  123. package/src/workflows/testarch/automate/steps-c/step-04-validate-and-summarize.md +69 -0
  124. package/src/workflows/testarch/automate/steps-e/step-01-assess.md +65 -0
  125. package/src/workflows/testarch/automate/steps-e/step-02-apply-edit.md +60 -0
  126. package/src/workflows/testarch/automate/steps-v/step-01-validate.md +67 -0
  127. package/src/workflows/testarch/automate/validation-report-20260127-095021.md +72 -0
  128. package/src/workflows/testarch/automate/validation-report-20260127-102401.md +114 -0
  129. package/src/workflows/testarch/automate/workflow-plan.md +20 -0
  130. package/src/workflows/testarch/automate/workflow.md +39 -0
  131. package/src/workflows/testarch/automate/workflow.yaml +54 -0
  132. package/src/workflows/testarch/ci/checklist.md +247 -0
  133. package/src/workflows/testarch/ci/github-actions-template.yaml +198 -0
  134. package/src/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
  135. package/src/workflows/testarch/ci/instructions.md +38 -0
  136. package/src/workflows/testarch/ci/steps-c/step-01-preflight.md +92 -0
  137. package/src/workflows/testarch/ci/steps-c/step-02-generate-pipeline.md +82 -0
  138. package/src/workflows/testarch/ci/steps-c/step-03-configure-quality-gates.md +75 -0
  139. package/src/workflows/testarch/ci/steps-c/step-04-validate-and-summary.md +67 -0
  140. package/src/workflows/testarch/ci/steps-e/step-01-assess.md +65 -0
  141. package/src/workflows/testarch/ci/steps-e/step-02-apply-edit.md +60 -0
  142. package/src/workflows/testarch/ci/steps-v/step-01-validate.md +67 -0
  143. package/src/workflows/testarch/ci/validation-report-20260127-095021.md +72 -0
  144. package/src/workflows/testarch/ci/validation-report-20260127-102401.md +114 -0
  145. package/src/workflows/testarch/ci/workflow-plan.md +20 -0
  146. package/src/workflows/testarch/ci/workflow.md +39 -0
  147. package/src/workflows/testarch/ci/workflow.yaml +47 -0
  148. package/src/workflows/testarch/framework/checklist.md +320 -0
  149. package/src/workflows/testarch/framework/instructions.md +38 -0
  150. package/src/workflows/testarch/framework/steps-c/step-01-preflight.md +75 -0
  151. package/src/workflows/testarch/framework/steps-c/step-02-select-framework.md +73 -0
  152. package/src/workflows/testarch/framework/steps-c/step-03-scaffold-framework.md +120 -0
  153. package/src/workflows/testarch/framework/steps-c/step-04-docs-and-scripts.md +70 -0
  154. package/src/workflows/testarch/framework/steps-c/step-05-validate-and-summary.md +68 -0
  155. package/src/workflows/testarch/framework/steps-e/step-01-assess.md +65 -0
  156. package/src/workflows/testarch/framework/steps-e/step-02-apply-edit.md +60 -0
  157. package/src/workflows/testarch/framework/steps-v/step-01-validate.md +67 -0
  158. package/src/workflows/testarch/framework/validation-report-20260127-095021.md +73 -0
  159. package/src/workflows/testarch/framework/validation-report-20260127-102401.md +116 -0
  160. package/src/workflows/testarch/framework/workflow-plan.md +22 -0
  161. package/src/workflows/testarch/framework/workflow.md +39 -0
  162. package/src/workflows/testarch/framework/workflow.yaml +49 -0
  163. package/src/workflows/testarch/nfr-assess/checklist.md +407 -0
  164. package/src/workflows/testarch/nfr-assess/instructions.md +36 -0
  165. package/src/workflows/testarch/nfr-assess/nfr-report-template.md +462 -0
  166. package/src/workflows/testarch/nfr-assess/steps-c/step-01-load-context.md +85 -0
  167. package/src/workflows/testarch/nfr-assess/steps-c/step-02-define-thresholds.md +82 -0
  168. package/src/workflows/testarch/nfr-assess/steps-c/step-03-gather-evidence.md +64 -0
  169. package/src/workflows/testarch/nfr-assess/steps-c/step-04-evaluate-and-score.md +140 -0
  170. package/src/workflows/testarch/nfr-assess/steps-c/step-04a-subprocess-security.md +138 -0
  171. package/src/workflows/testarch/nfr-assess/steps-c/step-04b-subprocess-performance.md +84 -0
  172. package/src/workflows/testarch/nfr-assess/steps-c/step-04c-subprocess-reliability.md +85 -0
  173. package/src/workflows/testarch/nfr-assess/steps-c/step-04d-subprocess-scalability.md +88 -0
  174. package/src/workflows/testarch/nfr-assess/steps-c/step-04e-aggregate-nfr.md +219 -0
  175. package/src/workflows/testarch/nfr-assess/steps-c/step-05-generate-report.md +71 -0
  176. package/src/workflows/testarch/nfr-assess/steps-e/step-01-assess.md +65 -0
  177. package/src/workflows/testarch/nfr-assess/steps-e/step-02-apply-edit.md +60 -0
  178. package/src/workflows/testarch/nfr-assess/steps-v/step-01-validate.md +67 -0
  179. package/src/workflows/testarch/nfr-assess/validation-report-20260127-095021.md +73 -0
  180. package/src/workflows/testarch/nfr-assess/validation-report-20260127-102401.md +116 -0
  181. package/src/workflows/testarch/nfr-assess/workflow-plan.md +19 -0
  182. package/src/workflows/testarch/nfr-assess/workflow.md +39 -0
  183. package/src/workflows/testarch/nfr-assess/workflow.yaml +49 -0
  184. package/src/workflows/testarch/test-design/checklist.md +410 -0
  185. package/src/workflows/testarch/test-design/instructions.md +52 -0
  186. package/src/workflows/testarch/test-design/steps-c/step-01-detect-mode.md +109 -0
  187. package/src/workflows/testarch/test-design/steps-c/step-02-load-context.md +127 -0
  188. package/src/workflows/testarch/test-design/steps-c/step-03-risk-and-testability.md +85 -0
  189. package/src/workflows/testarch/test-design/steps-c/step-04-coverage-plan.md +98 -0
  190. package/src/workflows/testarch/test-design/steps-c/step-05-generate-output.md +97 -0
  191. package/src/workflows/testarch/test-design/steps-e/step-01-assess.md +65 -0
  192. package/src/workflows/testarch/test-design/steps-e/step-02-apply-edit.md +60 -0
  193. package/src/workflows/testarch/test-design/steps-v/step-01-validate.md +67 -0
  194. package/src/workflows/testarch/test-design/test-design-architecture-template.md +222 -0
  195. package/src/workflows/testarch/test-design/test-design-qa-template.md +296 -0
  196. package/src/workflows/testarch/test-design/test-design-template.md +294 -0
  197. package/src/workflows/testarch/test-design/validation-report-20260127-095021.md +73 -0
  198. package/src/workflows/testarch/test-design/validation-report-20260127-102401.md +116 -0
  199. package/src/workflows/testarch/test-design/workflow-plan.md +22 -0
  200. package/src/workflows/testarch/test-design/workflow.md +39 -0
  201. package/src/workflows/testarch/test-design/workflow.yaml +71 -0
  202. package/src/workflows/testarch/test-review/checklist.md +472 -0
  203. package/src/workflows/testarch/test-review/instructions.md +36 -0
  204. package/src/workflows/testarch/test-review/steps-c/step-01-load-context.md +101 -0
  205. package/src/workflows/testarch/test-review/steps-c/step-02-discover-tests.md +69 -0
  206. package/src/workflows/testarch/test-review/steps-c/step-03-quality-evaluation.md +184 -0
  207. package/src/workflows/testarch/test-review/steps-c/step-03a-subprocess-determinism.md +214 -0
  208. package/src/workflows/testarch/test-review/steps-c/step-03b-subprocess-isolation.md +125 -0
  209. package/src/workflows/testarch/test-review/steps-c/step-03c-subprocess-maintainability.md +102 -0
  210. package/src/workflows/testarch/test-review/steps-c/step-03d-subprocess-coverage.md +111 -0
  211. package/src/workflows/testarch/test-review/steps-c/step-03e-subprocess-performance.md +117 -0
  212. package/src/workflows/testarch/test-review/steps-c/step-03f-aggregate-scores.md +246 -0
  213. package/src/workflows/testarch/test-review/steps-c/step-04-generate-report.md +72 -0
  214. package/src/workflows/testarch/test-review/steps-e/step-01-assess.md +65 -0
  215. package/src/workflows/testarch/test-review/steps-e/step-02-apply-edit.md +60 -0
  216. package/src/workflows/testarch/test-review/steps-v/step-01-validate.md +67 -0
  217. package/src/workflows/testarch/test-review/test-review-template.md +390 -0
  218. package/src/workflows/testarch/test-review/validation-report-20260127-095021.md +72 -0
  219. package/src/workflows/testarch/test-review/validation-report-20260127-102401.md +114 -0
  220. package/src/workflows/testarch/test-review/workflow-plan.md +18 -0
  221. package/src/workflows/testarch/test-review/workflow.md +39 -0
  222. package/src/workflows/testarch/test-review/workflow.yaml +48 -0
  223. package/src/workflows/testarch/trace/checklist.md +642 -0
  224. package/src/workflows/testarch/trace/instructions.md +36 -0
  225. package/src/workflows/testarch/trace/steps-c/step-01-load-context.md +80 -0
  226. package/src/workflows/testarch/trace/steps-c/step-02-discover-tests.md +69 -0
  227. package/src/workflows/testarch/trace/steps-c/step-03-map-criteria.md +65 -0
  228. package/src/workflows/testarch/trace/steps-c/step-04-analyze-gaps.md +244 -0
  229. package/src/workflows/testarch/trace/steps-c/step-05-gate-decision.md +232 -0
  230. package/src/workflows/testarch/trace/steps-e/step-01-assess.md +65 -0
  231. package/src/workflows/testarch/trace/steps-e/step-02-apply-edit.md +60 -0
  232. package/src/workflows/testarch/trace/steps-v/step-01-validate.md +67 -0
  233. package/src/workflows/testarch/trace/trace-template.md +675 -0
  234. package/src/workflows/testarch/trace/validation-report-20260127-095021.md +73 -0
  235. package/src/workflows/testarch/trace/validation-report-20260127-102401.md +116 -0
  236. package/src/workflows/testarch/trace/workflow-plan.md +21 -0
  237. package/src/workflows/testarch/trace/workflow.md +39 -0
  238. package/src/workflows/testarch/trace/workflow.yaml +57 -0
  239. package/test/README.md +23 -0
  240. package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +27 -0
  241. package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +30 -0
  242. package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +22 -0
  243. package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +20 -0
  244. package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +25 -0
  245. package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +24 -0
  246. package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +25 -0
  247. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
  248. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
  249. package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +31 -0
  250. package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +25 -0
  251. package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +25 -0
  252. package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +25 -0
  253. package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +25 -0
  254. package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
  255. package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
  256. package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +27 -0
  257. package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
  258. package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +24 -0
  259. package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +27 -0
  260. package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +27 -0
  261. package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +24 -0
  262. package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +29 -0
  263. package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +31 -0
  264. package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +28 -0
  265. package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +28 -0
  266. package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
  267. package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +28 -0
  268. package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
  269. package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
  270. package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
  271. package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +24 -0
  272. package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +22 -0
  273. package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +27 -0
  274. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +31 -0
  275. package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +22 -0
  276. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +38 -0
  277. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +24 -0
  278. package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
  279. package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +34 -0
  280. package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
  281. package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +24 -0
  282. package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +24 -0
  283. package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +24 -0
  284. package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
  285. package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
  286. package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +24 -0
  287. package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +24 -0
  288. package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +22 -0
  289. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +28 -0
  290. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +30 -0
  291. package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +24 -0
  292. package/test/schema/agent.js +491 -0
  293. package/test/test-agent-schema.js +387 -0
  294. package/test/test-installation-components.js +183 -0
  295. package/test/test-knowledge-base.js +199 -0
  296. package/test/unit-test-schema.js +133 -0
  297. package/test/validate-agent-schema.js +110 -0
  298. package/tools/build-docs.js +575 -0
  299. package/tools/fix-doc-links.js +288 -0
  300. package/tools/schema/agent.js +491 -0
  301. package/tools/validate-agent-schema.js +111 -0
  302. package/tools/validate-doc-links.js +371 -0
  303. package/tools/verify-paths.js +100 -0
  304. package/website/README.md +137 -0
  305. package/website/astro.config.mjs +158 -0
  306. package/website/package-lock.json +6856 -0
  307. package/website/package.json +23 -0
  308. package/website/public/favicon.ico +0 -0
  309. package/website/public/img/tea-logo.svg +7 -0
  310. package/website/public/robots.txt +37 -0
  311. package/website/src/components/Banner.astro +59 -0
  312. package/website/src/components/Header.astro +121 -0
  313. package/website/src/components/MobileMenuFooter.astro +53 -0
  314. package/website/src/content/config.ts +6 -0
  315. package/website/src/lib/site-url.js +25 -0
  316. package/website/src/pages/404.astro +11 -0
  317. package/website/src/rehype-base-paths.js +89 -0
  318. package/website/src/rehype-markdown-links.js +117 -0
  319. package/website/src/styles/custom.css +499 -0
  320. package/website/tsconfig.json +9 -0
@@ -0,0 +1,455 @@
1
+ ---
2
+ title: 'Enable TEA MCP Enhancements'
3
+ description: Configure Playwright MCP servers for live browser verification during TEA workflows
4
+ ---
5
+
6
+ # Enable TEA MCP Enhancements
7
+
8
+ Configure Model Context Protocol (MCP) servers to enable live browser verification, exploratory mode, and recording mode in TEA workflows.
9
+
10
+ ## What are MCP Enhancements?
11
+
12
+ MCP (Model Context Protocol) servers enable AI agents to interact with live browsers during test generation. This allows TEA to:
13
+
14
+ - **Explore UIs interactively** - Discover actual functionality through browser automation
15
+ - **Verify selectors** - Generate accurate locators from real DOM
16
+ - **Validate behavior** - Confirm test scenarios against live applications
17
+ - **Debug visually** - Use trace viewer and screenshots during generation
18
+
19
+ ## When to Use This
20
+
21
+ **For UI Testing:**
22
+
23
+ - Want exploratory mode in `test-design` (browser-based UI discovery)
24
+ - Want recording mode in `atdd` or `automate` (verify selectors with live browser)
25
+ - Want healing mode in `automate` (fix tests with visual debugging)
26
+ - Need accurate selectors from actual DOM
27
+ - Debugging complex UI interactions
28
+
29
+ **For API Testing:**
30
+
31
+ - Want healing mode in `automate` (analyze failures with trace data)
32
+ - Need to debug test failures (network responses, request/response data, timing)
33
+ - Want to inspect trace files (network traffic, errors, race conditions)
34
+
35
+ **For Both:**
36
+
37
+ - Visual debugging (trace viewer shows network + UI)
38
+ - Test failure analysis (MCP can run tests and extract errors)
39
+ - Understanding complex test failures (network + DOM together)
40
+
41
+ **Don't use if:**
42
+
43
+ - You don't have MCP servers configured
44
+
45
+ ## Prerequisites
46
+
47
+ - BMad Method installed
48
+ - TEA agent available
49
+ - IDE with MCP support (Cursor, VS Code with Claude extension)
50
+ - Node.js v18 or later
51
+ - Playwright installed
52
+
53
+ ## Available MCP Servers
54
+
55
+ **Two Playwright MCP servers** (actively maintained, continuously updated):
56
+
57
+ ### 1. Playwright MCP - Browser Automation
58
+
59
+ **Command:** `npx @playwright/mcp@latest`
60
+
61
+ **Capabilities:**
62
+
63
+ - Navigate to URLs
64
+ - Click elements
65
+ - Fill forms
66
+ - Take screenshots
67
+ - Extract DOM information
68
+
69
+ **Best for:** Exploratory mode, recording mode
70
+
71
+ ### 2. Playwright Test MCP - Test Runner
72
+
73
+ **Command:** `npx playwright run-test-mcp-server`
74
+
75
+ **Capabilities:**
76
+
77
+ - Run test files
78
+ - Analyze failures
79
+ - Extract error messages
80
+ - Show trace files
81
+
82
+ **Best for:** Healing mode, debugging
83
+
84
+ ### Recommended: Configure Both
85
+
86
+ Both servers work together to provide full TEA MCP capabilities.
87
+
88
+ ## Setup
89
+
90
+ ### 1. Configure MCP Servers
91
+
92
+ Add to your IDE's MCP configuration:
93
+
94
+ ```json
95
+ {
96
+ "mcpServers": {
97
+ "playwright": {
98
+ "command": "npx",
99
+ "args": ["@playwright/mcp@latest"]
100
+ },
101
+ "playwright-test": {
102
+ "command": "npx",
103
+ "args": ["playwright", "run-test-mcp-server"]
104
+ }
105
+ }
106
+ }
107
+ ```
108
+
109
+ See [TEA Overview](/docs/explanation/tea-overview.md#playwright-mcp-enhancements) for IDE-specific config locations.
110
+
111
+ ### 2. Enable in BMAD
112
+
113
+ Answer "Yes" when prompted during installation, or set in config:
114
+
115
+ ```yaml
116
+ # _bmad/tea/config.yaml
117
+ tea_use_mcp_enhancements: true
118
+ ```
119
+
120
+ ### 3. Verify MCPs Running
121
+
122
+ Ensure your MCP servers are running in your IDE.
123
+
124
+ ## How MCP Enhances TEA Workflows
125
+
126
+ ### test-design: Exploratory Mode
127
+
128
+ **Without MCP:**
129
+
130
+ - TEA infers UI functionality from documentation
131
+ - Relies on your description of features
132
+ - May miss actual UI behavior
133
+
134
+ **With MCP:**
135
+ TEA can open live browser to:
136
+
137
+ ```
138
+ "Let me explore the profile page to understand the UI"
139
+
140
+ [TEA navigates to /profile]
141
+ [Takes screenshot]
142
+ [Extracts accessible elements]
143
+
144
+ "I see the profile has:
145
+ - Name field (editable)
146
+ - Email field (editable)
147
+ - Avatar upload button
148
+ - Save button
149
+ - Cancel button
150
+
151
+ I'll design tests for these interactions."
152
+ ```
153
+
154
+ **Benefits:**
155
+
156
+ - Accurate test design based on actual UI
157
+ - Discovers functionality you might not describe
158
+ - Validates test scenarios are possible
159
+
160
+ ### atdd: Recording Mode
161
+
162
+ **Without MCP:**
163
+
164
+ - TEA generates selectors from best practices
165
+ - TEA infers API patterns from documentation
166
+
167
+ **With MCP (Recording Mode):**
168
+
169
+ **For UI Tests:**
170
+
171
+ ```
172
+ [TEA navigates to /login with live browser]
173
+ [Inspects actual form fields]
174
+
175
+ "I see:
176
+ - Email input has label 'Email Address' (not 'Email')
177
+ - Password input has label 'Your Password'
178
+ - Submit button has text 'Sign In' (not 'Login')
179
+
180
+ I'll use these exact selectors."
181
+ ```
182
+
183
+ **For API Tests:**
184
+
185
+ ```
186
+ [TEA analyzes trace files from test runs]
187
+ [Inspects network requests/responses]
188
+
189
+ "I see the API returns:
190
+ - POST /api/login → 200 with { token, userId }
191
+ - Response time: 150ms
192
+ - Required headers: Content-Type, Authorization
193
+
194
+ I'll validate these in tests."
195
+ ```
196
+
197
+ **Benefits:**
198
+
199
+ - UI: Accurate selectors from real DOM
200
+ - API: Validated request/response patterns from trace
201
+ - Both: Tests work on first run
202
+
203
+ ### automate: Healing + Recording Modes
204
+
205
+ **Without MCP:**
206
+
207
+ - TEA analyzes test code only
208
+ - Suggests fixes based on static analysis
209
+ - Generates tests from documentation/code
210
+
211
+ **With MCP:**
212
+
213
+ **Healing Mode (UI + API):**
214
+
215
+ ```
216
+ [TEA opens trace file]
217
+ [Analyzes screenshots + network tab]
218
+
219
+ UI failures: "Button selector changed from 'Save' to 'Save Changes'"
220
+ API failures: "Response structure changed, expected {id} got {userId}"
221
+
222
+ [TEA makes fixes]
223
+ [Verifies with trace analysis]
224
+ ```
225
+
226
+ **Recording Mode (UI + API):**
227
+
228
+ ```
229
+ UI: [Inspects actual DOM, generates verified selectors]
230
+ API: [Analyzes network traffic, validates request/response patterns]
231
+
232
+ [Generates tests with verified patterns]
233
+ [Tests work on first run]
234
+ ```
235
+
236
+ **Benefits:**
237
+
238
+ - Visual debugging + trace analysis (not just UI)
239
+ - Verified selectors (UI) + network patterns (API)
240
+ - Tests verified against actual application behavior
241
+
242
+ ## Usage Examples
243
+
244
+ ### Exploratory Mode Example
245
+
246
+ ```
247
+ User: Run test-design
248
+
249
+ TEA: What feature are you designing tests for?
250
+
251
+ User: The checkout flow at https://shop.example.com
252
+
253
+ TEA: [With MCP] Let me explore the checkout flow
254
+ [Opens browser]
255
+ [Navigates to checkout]
256
+ [Takes screenshots]
257
+ [Identifies all interactive elements]
258
+
259
+ TEA: I've explored the checkout flow. I found:
260
+ - 4-step wizard (Cart → Shipping → Payment → Confirm)
261
+ - Shipping options (Standard, Express, Overnight)
262
+ - Payment methods (Credit Card, PayPal)
263
+ - Promo code field
264
+ - Order summary with real-time totals
265
+
266
+ Test design will cover all these scenarios.
267
+ ```
268
+
269
+ ### Recording Mode Example
270
+
271
+ ```
272
+ User: Run atdd for user registration feature
273
+
274
+ TEA: [With MCP] Let me verify the registration form selectors
275
+ [Opens browser at /register]
276
+ [Inspects form]
277
+
278
+ TEA: I see the actual form has:
279
+ - "Full Name" label (not "Name")
280
+ - "Email Address" label (not "Email")
281
+ - "Create Password" label (not "Password")
282
+ - "I agree to Terms" checkbox
283
+ - "Create Account" button (not "Register")
284
+
285
+ Generating tests with verified selectors...
286
+ ```
287
+
288
+ ### Healing Mode Example
289
+
290
+ ```
291
+ User: Run automate with healing mode
292
+
293
+ TEA: [With MCP] Running tests and checking for failures
294
+ [Runs test suite]
295
+ [Test fails: selector not found]
296
+
297
+ TEA: Test failed on selector '.submit-btn'
298
+ [Opens trace viewer]
299
+ [Sees button class changed to '.submit-button']
300
+
301
+ Fixing selector and verifying...
302
+ [Updates test]
303
+ [Re-runs with MCP]
304
+ [Test passes]
305
+
306
+ Updated test with corrected selector.
307
+ ```
308
+
309
+ ## Troubleshooting
310
+
311
+ ### MCP Servers Not Running
312
+
313
+ **Problem:** TEA says MCP enhancements aren't available.
314
+
315
+ **Causes:**
316
+
317
+ 1. MCP servers not configured in IDE
318
+ 2. Config syntax error in JSON
319
+ 3. IDE not restarted after config
320
+
321
+ **Solution:**
322
+
323
+ ```bash
324
+ # Verify MCP config file exists
325
+ ls ~/.cursor/config.json
326
+
327
+ # Validate JSON syntax
328
+ cat ~/.cursor/config.json | python -m json.tool
329
+
330
+ # Restart IDE
331
+ # Cmd+Q (quit) then reopen
332
+ ```
333
+
334
+ ### Browser Doesn't Open
335
+
336
+ **Problem:** MCP enabled but browser never opens.
337
+
338
+ **Causes:**
339
+
340
+ 1. Playwright browsers not installed
341
+ 2. Headless mode enabled
342
+ 3. MCP server crashed
343
+
344
+ **Solution:**
345
+
346
+ ```bash
347
+ # Install browsers
348
+ npx playwright install
349
+
350
+ # Check MCP server logs (in IDE)
351
+ # Look for error messages
352
+
353
+ # Try manual MCP server
354
+ npx @playwright/mcp@latest
355
+ # Should start without errors
356
+ ```
357
+
358
+ ### TEA Doesn't Use MCP
359
+
360
+ **Problem:** `tea_use_mcp_enhancements: true` but TEA doesn't use browser.
361
+
362
+ **Causes:**
363
+
364
+ 1. Config not saved
365
+ 2. Workflow run before config update
366
+ 3. MCP servers not running
367
+
368
+ **Solution:**
369
+
370
+ ```bash
371
+ # Verify config
372
+ grep tea_use_mcp_enhancements _bmad/tea/config.yaml
373
+ # Should show: tea_use_mcp_enhancements: true
374
+
375
+ # Restart IDE (reload MCP servers)
376
+
377
+ # Start fresh chat (TEA loads config at start)
378
+ ```
379
+
380
+ ### Selector Verification Fails
381
+
382
+ **Problem:** MCP can't find elements TEA is looking for.
383
+
384
+ **Causes:**
385
+
386
+ 1. Page not fully loaded
387
+ 2. Element behind modal/overlay
388
+ 3. Element requires authentication
389
+
390
+ **Solution:**
391
+ TEA will handle this automatically:
392
+
393
+ - Wait for page load
394
+ - Dismiss modals if present
395
+ - Handle auth if needed
396
+
397
+ If persistent, provide TEA more context:
398
+
399
+ ```
400
+ "The element is behind a modal - dismiss the modal first"
401
+ "The page requires login - use credentials X"
402
+ ```
403
+
404
+ ### MCP Slows Down Workflows
405
+
406
+ **Problem:** Workflows take much longer with MCP enabled.
407
+
408
+ **Cause:** Browser automation adds overhead.
409
+
410
+ **Solution:**
411
+ Use MCP selectively:
412
+
413
+ - **Enable for:** Complex UIs, new projects, debugging
414
+ - **Disable for:** Simple features, well-known patterns, API-only testing
415
+
416
+ Toggle quickly:
417
+
418
+ ```yaml
419
+ # For this feature (complex UI)
420
+ tea_use_mcp_enhancements: true
421
+
422
+ # For next feature (simple API)
423
+ tea_use_mcp_enhancements: false
424
+ ```
425
+
426
+ ## Related Guides
427
+
428
+ **Getting Started:**
429
+
430
+ - [TEA Lite Quickstart Tutorial](/docs/tutorials/tea-lite-quickstart.md) - Learn TEA basics first
431
+
432
+ **Workflow Guides (MCP-Enhanced):**
433
+
434
+ - [How to Run Test Design](/docs/how-to/workflows/run-test-design.md) - Exploratory mode with browser
435
+ - [How to Run ATDD](/docs/how-to/workflows/run-atdd.md) - Recording mode for accurate selectors
436
+ - [How to Run Automate](/docs/how-to/workflows/run-automate.md) - Healing mode for debugging
437
+
438
+ **Other Customization:**
439
+
440
+ - [Integrate Playwright Utils](/docs/how-to/customization/integrate-playwright-utils.md) - Production-ready utilities
441
+
442
+ ## Understanding the Concepts
443
+
444
+ - [TEA Overview](/docs/explanation/tea-overview.md) - MCP enhancements in lifecycle
445
+ - [Engagement Models](/docs/explanation/engagement-models.md) - When to use MCP enhancements
446
+
447
+ ## Reference
448
+
449
+ - [TEA Configuration](/docs/reference/configuration.md) - tea_use_mcp_enhancements option
450
+ - [TEA Command Reference](/docs/reference/commands.md) - MCP-enhanced workflows
451
+ - [Glossary](/docs/glossary/index.md#test-architect-tea-concepts) - MCP Enhancements term
452
+
453
+ ---
454
+
455
+ Generated with [BMad Method](https://bmad-method.org) - TEA (Test Architect)