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.
- package/.github/CODE_OF_CONDUCT.md +128 -0
- package/.github/FUNDING.yaml +15 -0
- package/.github/ISSUE_TEMPLATE/config.yaml +11 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +70 -0
- package/.github/ISSUE_TEMPLATE/issue.md +61 -0
- package/.github/workflows/docs.yaml +66 -0
- package/.github/workflows/manual-release.yaml +195 -0
- package/.github/workflows/quality.yaml +114 -0
- package/.husky/pre-commit +20 -0
- package/.markdownlint-cli2.yaml +36 -0
- package/.nvmrc +1 -0
- package/.prettierignore +9 -0
- package/.vscode/settings.json +47 -0
- package/CHANGELOG.md +217 -0
- package/CONTRIBUTING.md +268 -0
- package/LICENSE +26 -0
- package/README.md +300 -0
- package/SECURITY.md +85 -0
- package/TEA-MODULE-MIGRATION-PLAN.md +3788 -0
- package/docs/404.md +20 -0
- package/docs/MIGRATION.md +447 -0
- package/docs/explanation/engagement-models.md +767 -0
- package/docs/explanation/fixture-architecture.md +484 -0
- package/docs/explanation/knowledge-base-system.md +599 -0
- package/docs/explanation/network-first-patterns.md +884 -0
- package/docs/explanation/risk-based-testing.md +628 -0
- package/docs/explanation/step-file-architecture.md +609 -0
- package/docs/explanation/subprocess-architecture.md +578 -0
- package/docs/explanation/subprocess-implementation-status.md +327 -0
- package/docs/explanation/tea-overview.md +425 -0
- package/docs/explanation/test-quality-standards.md +965 -0
- package/docs/explanation/testing-as-engineering.md +111 -0
- package/docs/glossary/index.md +160 -0
- package/docs/how-to/brownfield/use-tea-for-enterprise.md +571 -0
- package/docs/how-to/brownfield/use-tea-with-existing-tests.md +631 -0
- package/docs/how-to/customization/enable-tea-mcp-enhancements.md +455 -0
- package/docs/how-to/customization/integrate-playwright-utils.md +846 -0
- package/docs/how-to/workflows/run-atdd.md +460 -0
- package/docs/how-to/workflows/run-automate.md +690 -0
- package/docs/how-to/workflows/run-nfr-assess.md +731 -0
- package/docs/how-to/workflows/run-test-design.md +144 -0
- package/docs/how-to/workflows/run-test-review.md +638 -0
- package/docs/how-to/workflows/run-trace.md +951 -0
- package/docs/how-to/workflows/setup-ci.md +761 -0
- package/docs/how-to/workflows/setup-test-framework.md +99 -0
- package/docs/index.md +122 -0
- package/docs/reference/commands.md +300 -0
- package/docs/reference/configuration.md +729 -0
- package/docs/reference/knowledge-base.md +365 -0
- package/docs/reference/troubleshooting.md +717 -0
- package/docs/tutorials/tea-lite-quickstart.md +465 -0
- package/eslint.config.mjs +152 -0
- package/package.json +117 -0
- package/prettier.config.mjs +32 -0
- package/release_notes.md +28 -0
- package/src/_module-installer/installer.js +92 -0
- package/src/agents/tea.agent.yaml +63 -0
- package/src/module-help.csv +9 -0
- package/src/module.yaml +91 -0
- package/src/testarch/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/testarch/knowledge/api-request.md +442 -0
- package/src/testarch/knowledge/api-testing-patterns.md +851 -0
- package/src/testarch/knowledge/auth-session.md +548 -0
- package/src/testarch/knowledge/burn-in.md +273 -0
- package/src/testarch/knowledge/ci-burn-in.md +675 -0
- package/src/testarch/knowledge/component-tdd.md +486 -0
- package/src/testarch/knowledge/contract-testing.md +957 -0
- package/src/testarch/knowledge/data-factories.md +500 -0
- package/src/testarch/knowledge/email-auth.md +721 -0
- package/src/testarch/knowledge/error-handling.md +725 -0
- package/src/testarch/knowledge/feature-flags.md +750 -0
- package/src/testarch/knowledge/file-utils.md +456 -0
- package/src/testarch/knowledge/fixture-architecture.md +401 -0
- package/src/testarch/knowledge/fixtures-composition.md +382 -0
- package/src/testarch/knowledge/intercept-network-call.md +426 -0
- package/src/testarch/knowledge/log.md +426 -0
- package/src/testarch/knowledge/network-error-monitor.md +401 -0
- package/src/testarch/knowledge/network-first.md +486 -0
- package/src/testarch/knowledge/network-recorder.md +527 -0
- package/src/testarch/knowledge/nfr-criteria.md +670 -0
- package/src/testarch/knowledge/overview.md +286 -0
- package/src/testarch/knowledge/playwright-config.md +730 -0
- package/src/testarch/knowledge/probability-impact.md +601 -0
- package/src/testarch/knowledge/recurse.md +421 -0
- package/src/testarch/knowledge/risk-governance.md +615 -0
- package/src/testarch/knowledge/selective-testing.md +732 -0
- package/src/testarch/knowledge/selector-resilience.md +527 -0
- package/src/testarch/knowledge/test-healing-patterns.md +644 -0
- package/src/testarch/knowledge/test-levels-framework.md +473 -0
- package/src/testarch/knowledge/test-priorities-matrix.md +373 -0
- package/src/testarch/knowledge/test-quality.md +664 -0
- package/src/testarch/knowledge/timing-debugging.md +372 -0
- package/src/testarch/knowledge/visual-debugging.md +524 -0
- package/src/testarch/tea-index.csv +35 -0
- package/src/workflows/testarch/README.md +74 -0
- package/src/workflows/testarch/atdd/atdd-checklist-template.md +363 -0
- package/src/workflows/testarch/atdd/checklist.md +374 -0
- package/src/workflows/testarch/atdd/instructions.md +38 -0
- package/src/workflows/testarch/atdd/steps-c/step-01-preflight-and-context.md +110 -0
- package/src/workflows/testarch/atdd/steps-c/step-02-generation-mode.md +79 -0
- package/src/workflows/testarch/atdd/steps-c/step-03-test-strategy.md +76 -0
- package/src/workflows/testarch/atdd/steps-c/step-04-generate-tests.md +228 -0
- package/src/workflows/testarch/atdd/steps-c/step-04a-subprocess-api-failing.md +215 -0
- package/src/workflows/testarch/atdd/steps-c/step-04b-subprocess-e2e-failing.md +212 -0
- package/src/workflows/testarch/atdd/steps-c/step-04c-aggregate.md +329 -0
- package/src/workflows/testarch/atdd/steps-c/step-05-validate-and-complete.md +68 -0
- package/src/workflows/testarch/atdd/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/atdd/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/atdd/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/atdd/validation-report-20260127-095021.md +73 -0
- package/src/workflows/testarch/atdd/validation-report-20260127-102401.md +116 -0
- package/src/workflows/testarch/atdd/workflow-plan.md +21 -0
- package/src/workflows/testarch/atdd/workflow.md +39 -0
- package/src/workflows/testarch/atdd/workflow.yaml +47 -0
- package/src/workflows/testarch/automate/checklist.md +582 -0
- package/src/workflows/testarch/automate/instructions.md +43 -0
- package/src/workflows/testarch/automate/steps-c/step-01-preflight-and-context.md +127 -0
- package/src/workflows/testarch/automate/steps-c/step-02-identify-targets.md +95 -0
- package/src/workflows/testarch/automate/steps-c/step-03-generate-tests.md +199 -0
- package/src/workflows/testarch/automate/steps-c/step-03a-subprocess-api.md +183 -0
- package/src/workflows/testarch/automate/steps-c/step-03b-subprocess-e2e.md +181 -0
- package/src/workflows/testarch/automate/steps-c/step-03c-aggregate.md +300 -0
- package/src/workflows/testarch/automate/steps-c/step-04-validate-and-summarize.md +69 -0
- package/src/workflows/testarch/automate/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/automate/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/automate/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/automate/validation-report-20260127-095021.md +72 -0
- package/src/workflows/testarch/automate/validation-report-20260127-102401.md +114 -0
- package/src/workflows/testarch/automate/workflow-plan.md +20 -0
- package/src/workflows/testarch/automate/workflow.md +39 -0
- package/src/workflows/testarch/automate/workflow.yaml +54 -0
- package/src/workflows/testarch/ci/checklist.md +247 -0
- package/src/workflows/testarch/ci/github-actions-template.yaml +198 -0
- package/src/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
- package/src/workflows/testarch/ci/instructions.md +38 -0
- package/src/workflows/testarch/ci/steps-c/step-01-preflight.md +92 -0
- package/src/workflows/testarch/ci/steps-c/step-02-generate-pipeline.md +82 -0
- package/src/workflows/testarch/ci/steps-c/step-03-configure-quality-gates.md +75 -0
- package/src/workflows/testarch/ci/steps-c/step-04-validate-and-summary.md +67 -0
- package/src/workflows/testarch/ci/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/ci/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/ci/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/ci/validation-report-20260127-095021.md +72 -0
- package/src/workflows/testarch/ci/validation-report-20260127-102401.md +114 -0
- package/src/workflows/testarch/ci/workflow-plan.md +20 -0
- package/src/workflows/testarch/ci/workflow.md +39 -0
- package/src/workflows/testarch/ci/workflow.yaml +47 -0
- package/src/workflows/testarch/framework/checklist.md +320 -0
- package/src/workflows/testarch/framework/instructions.md +38 -0
- package/src/workflows/testarch/framework/steps-c/step-01-preflight.md +75 -0
- package/src/workflows/testarch/framework/steps-c/step-02-select-framework.md +73 -0
- package/src/workflows/testarch/framework/steps-c/step-03-scaffold-framework.md +120 -0
- package/src/workflows/testarch/framework/steps-c/step-04-docs-and-scripts.md +70 -0
- package/src/workflows/testarch/framework/steps-c/step-05-validate-and-summary.md +68 -0
- package/src/workflows/testarch/framework/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/framework/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/framework/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/framework/validation-report-20260127-095021.md +73 -0
- package/src/workflows/testarch/framework/validation-report-20260127-102401.md +116 -0
- package/src/workflows/testarch/framework/workflow-plan.md +22 -0
- package/src/workflows/testarch/framework/workflow.md +39 -0
- package/src/workflows/testarch/framework/workflow.yaml +49 -0
- package/src/workflows/testarch/nfr-assess/checklist.md +407 -0
- package/src/workflows/testarch/nfr-assess/instructions.md +36 -0
- package/src/workflows/testarch/nfr-assess/nfr-report-template.md +462 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-01-load-context.md +85 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-02-define-thresholds.md +82 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-03-gather-evidence.md +64 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-04-evaluate-and-score.md +140 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-04a-subprocess-security.md +138 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-04b-subprocess-performance.md +84 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-04c-subprocess-reliability.md +85 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-04d-subprocess-scalability.md +88 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-04e-aggregate-nfr.md +219 -0
- package/src/workflows/testarch/nfr-assess/steps-c/step-05-generate-report.md +71 -0
- package/src/workflows/testarch/nfr-assess/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/nfr-assess/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/nfr-assess/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/nfr-assess/validation-report-20260127-095021.md +73 -0
- package/src/workflows/testarch/nfr-assess/validation-report-20260127-102401.md +116 -0
- package/src/workflows/testarch/nfr-assess/workflow-plan.md +19 -0
- package/src/workflows/testarch/nfr-assess/workflow.md +39 -0
- package/src/workflows/testarch/nfr-assess/workflow.yaml +49 -0
- package/src/workflows/testarch/test-design/checklist.md +410 -0
- package/src/workflows/testarch/test-design/instructions.md +52 -0
- package/src/workflows/testarch/test-design/steps-c/step-01-detect-mode.md +109 -0
- package/src/workflows/testarch/test-design/steps-c/step-02-load-context.md +127 -0
- package/src/workflows/testarch/test-design/steps-c/step-03-risk-and-testability.md +85 -0
- package/src/workflows/testarch/test-design/steps-c/step-04-coverage-plan.md +98 -0
- package/src/workflows/testarch/test-design/steps-c/step-05-generate-output.md +97 -0
- package/src/workflows/testarch/test-design/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/test-design/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/test-design/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/test-design/test-design-architecture-template.md +222 -0
- package/src/workflows/testarch/test-design/test-design-qa-template.md +296 -0
- package/src/workflows/testarch/test-design/test-design-template.md +294 -0
- package/src/workflows/testarch/test-design/validation-report-20260127-095021.md +73 -0
- package/src/workflows/testarch/test-design/validation-report-20260127-102401.md +116 -0
- package/src/workflows/testarch/test-design/workflow-plan.md +22 -0
- package/src/workflows/testarch/test-design/workflow.md +39 -0
- package/src/workflows/testarch/test-design/workflow.yaml +71 -0
- package/src/workflows/testarch/test-review/checklist.md +472 -0
- package/src/workflows/testarch/test-review/instructions.md +36 -0
- package/src/workflows/testarch/test-review/steps-c/step-01-load-context.md +101 -0
- package/src/workflows/testarch/test-review/steps-c/step-02-discover-tests.md +69 -0
- package/src/workflows/testarch/test-review/steps-c/step-03-quality-evaluation.md +184 -0
- package/src/workflows/testarch/test-review/steps-c/step-03a-subprocess-determinism.md +214 -0
- package/src/workflows/testarch/test-review/steps-c/step-03b-subprocess-isolation.md +125 -0
- package/src/workflows/testarch/test-review/steps-c/step-03c-subprocess-maintainability.md +102 -0
- package/src/workflows/testarch/test-review/steps-c/step-03d-subprocess-coverage.md +111 -0
- package/src/workflows/testarch/test-review/steps-c/step-03e-subprocess-performance.md +117 -0
- package/src/workflows/testarch/test-review/steps-c/step-03f-aggregate-scores.md +246 -0
- package/src/workflows/testarch/test-review/steps-c/step-04-generate-report.md +72 -0
- package/src/workflows/testarch/test-review/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/test-review/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/test-review/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/test-review/test-review-template.md +390 -0
- package/src/workflows/testarch/test-review/validation-report-20260127-095021.md +72 -0
- package/src/workflows/testarch/test-review/validation-report-20260127-102401.md +114 -0
- package/src/workflows/testarch/test-review/workflow-plan.md +18 -0
- package/src/workflows/testarch/test-review/workflow.md +39 -0
- package/src/workflows/testarch/test-review/workflow.yaml +48 -0
- package/src/workflows/testarch/trace/checklist.md +642 -0
- package/src/workflows/testarch/trace/instructions.md +36 -0
- package/src/workflows/testarch/trace/steps-c/step-01-load-context.md +80 -0
- package/src/workflows/testarch/trace/steps-c/step-02-discover-tests.md +69 -0
- package/src/workflows/testarch/trace/steps-c/step-03-map-criteria.md +65 -0
- package/src/workflows/testarch/trace/steps-c/step-04-analyze-gaps.md +244 -0
- package/src/workflows/testarch/trace/steps-c/step-05-gate-decision.md +232 -0
- package/src/workflows/testarch/trace/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/trace/steps-e/step-02-apply-edit.md +60 -0
- package/src/workflows/testarch/trace/steps-v/step-01-validate.md +67 -0
- package/src/workflows/testarch/trace/trace-template.md +675 -0
- package/src/workflows/testarch/trace/validation-report-20260127-095021.md +73 -0
- package/src/workflows/testarch/trace/validation-report-20260127-102401.md +116 -0
- package/src/workflows/testarch/trace/workflow-plan.md +21 -0
- package/src/workflows/testarch/trace/workflow.md +39 -0
- package/src/workflows/testarch/trace/workflow.yaml +57 -0
- package/test/README.md +23 -0
- package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +30 -0
- package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +22 -0
- package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +20 -0
- package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +31 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +29 -0
- package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +31 -0
- package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
- package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
- package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
- package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
- package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +22 -0
- package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +27 -0
- package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +31 -0
- package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +22 -0
- package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +38 -0
- package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
- package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +34 -0
- package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +22 -0
- package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +28 -0
- package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +30 -0
- package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +24 -0
- package/test/schema/agent.js +491 -0
- package/test/test-agent-schema.js +387 -0
- package/test/test-installation-components.js +183 -0
- package/test/test-knowledge-base.js +199 -0
- package/test/unit-test-schema.js +133 -0
- package/test/validate-agent-schema.js +110 -0
- package/tools/build-docs.js +575 -0
- package/tools/fix-doc-links.js +288 -0
- package/tools/schema/agent.js +491 -0
- package/tools/validate-agent-schema.js +111 -0
- package/tools/validate-doc-links.js +371 -0
- package/tools/verify-paths.js +100 -0
- package/website/README.md +137 -0
- package/website/astro.config.mjs +158 -0
- package/website/package-lock.json +6856 -0
- package/website/package.json +23 -0
- package/website/public/favicon.ico +0 -0
- package/website/public/img/tea-logo.svg +7 -0
- package/website/public/robots.txt +37 -0
- package/website/src/components/Banner.astro +59 -0
- package/website/src/components/Header.astro +121 -0
- package/website/src/components/MobileMenuFooter.astro +53 -0
- package/website/src/content/config.ts +6 -0
- package/website/src/lib/site-url.js +25 -0
- package/website/src/pages/404.astro +11 -0
- package/website/src/rehype-base-paths.js +89 -0
- package/website/src/rehype-markdown-links.js +117 -0
- package/website/src/styles/custom.css +499 -0
- package/website/tsconfig.json +9 -0
package/README.md
ADDED
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
# Test Architect (TEA)
|
|
2
|
+
|
|
3
|
+
TEA (Test Architect) is a standalone BMAD module that delivers risk-based test strategy, test automation guidance, and release gate decisions. It provides a single expert agent (Murat, Master Test Architect and Quality Advisor) and eight workflows spanning framework setup, test design, ATDD, automation, traceability, NFR assessment, CI guidance, and test review.
|
|
4
|
+
|
|
5
|
+
## Why TEA
|
|
6
|
+
|
|
7
|
+
- Risk-based testing with measurable quality gates
|
|
8
|
+
- Consistent, knowledge-base driven outputs
|
|
9
|
+
- Clear prioritization (P0-P3) and traceability
|
|
10
|
+
- Optional Playwright Utils and MCP enhancements
|
|
11
|
+
|
|
12
|
+
## How BMad Works
|
|
13
|
+
|
|
14
|
+
BMad works because it turns big, fuzzy work into **repeatable workflows**. Each workflow is broken into small steps with clear instructions, so the AI follows the same path every time. It also uses a **shared knowledge base** (standards and patterns) so outputs are consistent, not random. In short: **structured steps + shared standards = reliable results**.
|
|
15
|
+
|
|
16
|
+
## How TEA Fits In
|
|
17
|
+
|
|
18
|
+
TEA plugs into BMad the same way a specialist plugs into a team. It uses the same step‑by‑step workflow engine and shared standards, but focuses exclusively on testing and quality gates. That means you get a **risk‑based test plan**, **automation guidance**, and **go/no‑go decisions** that align with the rest of the BMad process.
|
|
19
|
+
|
|
20
|
+
## Architecture & Flow
|
|
21
|
+
|
|
22
|
+
BMad is a small **agent + workflow engine**:
|
|
23
|
+
|
|
24
|
+
- **Agent** = expert persona (e.g., Test Architect).
|
|
25
|
+
- **Workflow** = a guided sequence of step files.
|
|
26
|
+
- **Step file** = one focused instruction set; outputs are written only in the steps that produce them.
|
|
27
|
+
- **Knowledge base** = reusable standards and patterns loaded only when needed.
|
|
28
|
+
- **Modes** = `steps-c/` (Create), `steps-e/` (Edit), `steps-v/` (Validate).
|
|
29
|
+
- This keeps the create flow separate from editing and validation, and matches BMad Builder conventions.
|
|
30
|
+
|
|
31
|
+
```mermaid
|
|
32
|
+
flowchart LR
|
|
33
|
+
U[User] --> A[Agent Persona]
|
|
34
|
+
A --> W[Workflow Entry: workflow.md]
|
|
35
|
+
W --> S[Step Files: steps-c / steps-e / steps-v]
|
|
36
|
+
S --> K[Knowledge Fragments<br/>optional]
|
|
37
|
+
S --> T[Templates & Checklists<br/>optional]
|
|
38
|
+
S --> O[Outputs: docs/tests/reports<br/>when a step writes output]
|
|
39
|
+
O --> V[Validation: checklist + report]
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Install
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npx bmad-method install
|
|
46
|
+
# Select: Test Architect (TEA)
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Quickstart
|
|
50
|
+
|
|
51
|
+
1. Install TEA (above)
|
|
52
|
+
2. Run one of the core workflows:
|
|
53
|
+
- `TD` / `/bmad:tea:test-design` — test design and risk assessment
|
|
54
|
+
- `AT` / `/bmad:tea:atdd` — failing acceptance tests first (TDD red phase)
|
|
55
|
+
- `TA` / `/bmad:tea:automate` — expand automation coverage
|
|
56
|
+
|
|
57
|
+
## Engagement Models
|
|
58
|
+
|
|
59
|
+
- **No TEA**: Use your existing testing approach
|
|
60
|
+
- **TEA Solo**: Standalone use on non-BMad projects
|
|
61
|
+
- **TEA Lite**: Start with `automate` only for fast onboarding
|
|
62
|
+
- **Integrated (BMad Method / Enterprise)**: Use TEA in Phases 3–4 and release gates
|
|
63
|
+
|
|
64
|
+
## Workflows
|
|
65
|
+
|
|
66
|
+
| Trigger | Command | Purpose |
|
|
67
|
+
| ------- | ----------------------- | --------------------------------------------- |
|
|
68
|
+
| TF | `/bmad:tea:framework` | Scaffold Playwright/Cypress test framework |
|
|
69
|
+
| CI | `/bmad:tea:ci` | Set up CI/CD quality pipeline |
|
|
70
|
+
| TD | `/bmad:tea:test-design` | System-level or epic-level test design |
|
|
71
|
+
| AT | `/bmad:tea:atdd` | Generate failing acceptance tests + checklist |
|
|
72
|
+
| TA | `/bmad:tea:automate` | Expand test automation coverage |
|
|
73
|
+
| RV | `/bmad:tea:test-review` | Review test quality and score |
|
|
74
|
+
| TR | `/bmad:tea:trace` | Trace requirements to tests + gate decision |
|
|
75
|
+
| NR | `/bmad:tea:nfr-assess` | Assess non-functional requirements |
|
|
76
|
+
|
|
77
|
+
## Configuration
|
|
78
|
+
|
|
79
|
+
TEA variables are defined in `src/module.yaml` and prompted during install:
|
|
80
|
+
|
|
81
|
+
- `test_artifacts` — base output folder for test artifacts
|
|
82
|
+
- `tea_use_playwright_utils` — enable Playwright Utils integration (boolean)
|
|
83
|
+
- `tea_use_mcp_enhancements` — enable Playwright MCP enhancements (boolean)
|
|
84
|
+
- `test_framework` — default framework preference (future)
|
|
85
|
+
- `risk_threshold` — risk cutoff for mandatory testing (future)
|
|
86
|
+
- `test_design_output`, `test_review_output`, `trace_output` — subfolders under `test_artifacts`
|
|
87
|
+
|
|
88
|
+
## Knowledge Base
|
|
89
|
+
|
|
90
|
+
TEA relies on a curated testing knowledge base:
|
|
91
|
+
|
|
92
|
+
- Index: `src/testarch/tea-index.csv`
|
|
93
|
+
- Fragments: `src/testarch/knowledge/`
|
|
94
|
+
|
|
95
|
+
Workflows load only the fragments required for the current task to stay focused and compliant.
|
|
96
|
+
|
|
97
|
+
## Module Structure
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
src/
|
|
101
|
+
├── module.yaml
|
|
102
|
+
├── agents/
|
|
103
|
+
│ └── tea.agent.yaml
|
|
104
|
+
├── workflows/
|
|
105
|
+
│ └── testarch/
|
|
106
|
+
│ ├── atdd/
|
|
107
|
+
│ ├── automate/
|
|
108
|
+
│ ├── ci/
|
|
109
|
+
│ ├── framework/
|
|
110
|
+
│ ├── nfr-assess/
|
|
111
|
+
│ ├── test-design/
|
|
112
|
+
│ ├── test-review/
|
|
113
|
+
│ └── trace/
|
|
114
|
+
└── testarch/
|
|
115
|
+
├── tea-index.csv
|
|
116
|
+
└── knowledge/
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Contributing
|
|
120
|
+
|
|
121
|
+
See `CONTRIBUTING.md` for guidelines.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
<details>
|
|
126
|
+
<summary><strong>📦 Release Guide (for Maintainers)</strong></summary>
|
|
127
|
+
|
|
128
|
+
## Publishing TEA to NPM
|
|
129
|
+
|
|
130
|
+
TEA uses an automated release workflow that handles versioning, tagging, NPM publishing, and GitHub releases.
|
|
131
|
+
|
|
132
|
+
### Prerequisites (One-Time Setup)
|
|
133
|
+
|
|
134
|
+
1. **NPM Token Configuration:**
|
|
135
|
+
- Generate NPM automation token: [npmjs.com/settings/tokens](https://www.npmjs.com/settings/your-username/tokens)
|
|
136
|
+
- Add to GitHub Secrets: `Settings` → `Secrets and variables` → `Actions` → `New repository secret`
|
|
137
|
+
- Name: `NPM_TOKEN`
|
|
138
|
+
- Value: [your token]
|
|
139
|
+
|
|
140
|
+
2. **Verify Package Configuration:**
|
|
141
|
+
```bash
|
|
142
|
+
# Check package.json settings
|
|
143
|
+
cat package.json | grep -A 3 "publishConfig"
|
|
144
|
+
# Should show: "access": "public"
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Release Process
|
|
148
|
+
|
|
149
|
+
#### Option 1: Using npm Scripts (Recommended)
|
|
150
|
+
|
|
151
|
+
From your local terminal after merging to `main`:
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
# Beta release (first release or testing)
|
|
155
|
+
npm run release:beta
|
|
156
|
+
|
|
157
|
+
# Alpha release (early testing)
|
|
158
|
+
npm run release:alpha
|
|
159
|
+
|
|
160
|
+
# Patch release (bug fixes)
|
|
161
|
+
npm run release:patch
|
|
162
|
+
|
|
163
|
+
# Minor release (new features, backwards compatible)
|
|
164
|
+
npm run release:minor
|
|
165
|
+
|
|
166
|
+
# Major release (breaking changes)
|
|
167
|
+
npm run release:major
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
#### Option 2: Manual Workflow Trigger
|
|
171
|
+
|
|
172
|
+
1. Go to **Actions** tab in GitHub
|
|
173
|
+
2. Click **"Manual Release"** workflow
|
|
174
|
+
3. Click **"Run workflow"**
|
|
175
|
+
4. Select version bump type (alpha, beta, patch, minor, major)
|
|
176
|
+
5. Click **"Run workflow"**
|
|
177
|
+
|
|
178
|
+
### What Happens Automatically
|
|
179
|
+
|
|
180
|
+
The workflow performs these steps:
|
|
181
|
+
|
|
182
|
+
1. ✅ **Validation**: Runs all tests, linting, and format checks
|
|
183
|
+
2. ✅ **Version Bump**: Updates `package.json` version
|
|
184
|
+
- `beta`: 0.1.0 → 0.1.1-beta.0
|
|
185
|
+
- `alpha`: 0.1.0 → 0.1.1-alpha.0
|
|
186
|
+
- `patch`: 0.1.0 → 0.1.1
|
|
187
|
+
- `minor`: 0.1.0 → 0.2.0
|
|
188
|
+
- `major`: 0.1.0 → 1.0.0
|
|
189
|
+
3. ✅ **Commit**: Creates version bump commit
|
|
190
|
+
4. ✅ **Tag**: Creates git tag (e.g., v0.1.1-beta.0)
|
|
191
|
+
5. ✅ **Push**: Pushes tag to GitHub
|
|
192
|
+
6. ✅ **Publish**: Publishes to NPM registry
|
|
193
|
+
- Alpha → `npm install --tag alpha`
|
|
194
|
+
- Beta → `npm install` (tagged as `latest`)
|
|
195
|
+
- Stable → `npm install` (tagged as `latest`)
|
|
196
|
+
7. ✅ **GitHub Release**: Creates release with auto-generated notes
|
|
197
|
+
8. ✅ **Summary**: Displays installation instructions
|
|
198
|
+
|
|
199
|
+
### Version Bump Strategy
|
|
200
|
+
|
|
201
|
+
**For TEA Module:**
|
|
202
|
+
|
|
203
|
+
- **Beta (0.1.x-beta.x)**: Pre-1.0 testing, used for initial releases
|
|
204
|
+
- **Alpha (0.1.x-alpha.x)**: Early development, experimental features
|
|
205
|
+
- **Patch (0.1.x)**: Bug fixes, no new features
|
|
206
|
+
- **Minor (0.x.0)**: New features, backwards compatible
|
|
207
|
+
- **Major (x.0.0)**: Breaking changes (e.g., 1.0.0 release)
|
|
208
|
+
|
|
209
|
+
**Recommended Release Path:**
|
|
210
|
+
|
|
211
|
+
1. `0.1.0` → `0.1.1-beta.0` (first beta)
|
|
212
|
+
2. Test beta with early adopters
|
|
213
|
+
3. `0.1.1-beta.0` → `0.1.1-beta.1` (fixes)
|
|
214
|
+
4. When stable: `0.1.1-beta.1` → `1.0.0` (official release)
|
|
215
|
+
|
|
216
|
+
### Verify Publication
|
|
217
|
+
|
|
218
|
+
**Check NPM:**
|
|
219
|
+
|
|
220
|
+
```bash
|
|
221
|
+
npm view bmad-method-test-architecture-enterprise
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
**Install TEA:**
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
npx bmad-method install
|
|
228
|
+
# Select "Test Architect (TEA)"
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
**Test Workflows:**
|
|
232
|
+
|
|
233
|
+
```bash
|
|
234
|
+
# In your project
|
|
235
|
+
tea # Load agent
|
|
236
|
+
test-design # Test workflow
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### Rollback a Release (if needed)
|
|
240
|
+
|
|
241
|
+
If you need to unpublish a version:
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
# Unpublish specific version (within 72 hours)
|
|
245
|
+
npm unpublish bmad-method-test-architecture-enterprise@0.1.1-beta.0
|
|
246
|
+
|
|
247
|
+
# Deprecate version (preferred for older releases)
|
|
248
|
+
npm deprecate bmad-method-test-architecture-enterprise@0.1.1-beta.0 "Use version X.Y.Z instead"
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
### Troubleshooting
|
|
252
|
+
|
|
253
|
+
**"NPM_TOKEN not found":**
|
|
254
|
+
|
|
255
|
+
- Verify secret is set: GitHub repo → Settings → Secrets and variables → Actions
|
|
256
|
+
- Secret name must be exactly: `NPM_TOKEN`
|
|
257
|
+
|
|
258
|
+
**"Package already exists":**
|
|
259
|
+
|
|
260
|
+
- Check if package name is already taken on NPM
|
|
261
|
+
- Update `name` in `package.json` if needed
|
|
262
|
+
|
|
263
|
+
**"Tests failed":**
|
|
264
|
+
|
|
265
|
+
- Fix failing tests before release
|
|
266
|
+
- Run `npm test` locally to verify
|
|
267
|
+
|
|
268
|
+
**"Git push failed (protected branch)":**
|
|
269
|
+
|
|
270
|
+
- This is expected for protected `main` branch
|
|
271
|
+
- The tag and version bump are still created
|
|
272
|
+
- You may need to manually merge the version bump commit
|
|
273
|
+
|
|
274
|
+
### Release Checklist
|
|
275
|
+
|
|
276
|
+
Before releasing:
|
|
277
|
+
|
|
278
|
+
- [ ] All tests passing: `npm test`
|
|
279
|
+
- [ ] Documentation up to date
|
|
280
|
+
- [ ] CHANGELOG.md updated
|
|
281
|
+
- [ ] No uncommitted changes
|
|
282
|
+
- [ ] On `main` branch
|
|
283
|
+
- [ ] NPM token configured in GitHub Secrets
|
|
284
|
+
- [ ] Package name available on NPM
|
|
285
|
+
|
|
286
|
+
After releasing:
|
|
287
|
+
|
|
288
|
+
- [ ] Verify NPM publication: `npm view bmad-method-test-architecture-enterprise`
|
|
289
|
+
- [ ] Test installation: `npx bmad-method install`
|
|
290
|
+
- [ ] Verify workflows work
|
|
291
|
+
- [ ] Check GitHub Release created
|
|
292
|
+
- [ ] Monitor for issues
|
|
293
|
+
|
|
294
|
+
</details>
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
## License
|
|
299
|
+
|
|
300
|
+
See `LICENSE`.
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## Supported Versions
|
|
4
|
+
|
|
5
|
+
We release security patches for the following versions:
|
|
6
|
+
|
|
7
|
+
| Version | Supported |
|
|
8
|
+
| -------- | ------------------ |
|
|
9
|
+
| Latest | :white_check_mark: |
|
|
10
|
+
| < Latest | :x: |
|
|
11
|
+
|
|
12
|
+
We recommend always using the latest version of BMad Method to ensure you have the most recent security updates.
|
|
13
|
+
|
|
14
|
+
## Reporting a Vulnerability
|
|
15
|
+
|
|
16
|
+
We take security vulnerabilities seriously. If you discover a security issue, please report it responsibly.
|
|
17
|
+
|
|
18
|
+
### How to Report
|
|
19
|
+
|
|
20
|
+
**Do NOT report security vulnerabilities through public GitHub issues.**
|
|
21
|
+
|
|
22
|
+
Instead, please report them via one of these methods:
|
|
23
|
+
|
|
24
|
+
1. **GitHub Security Advisories** (Preferred): Use [GitHub's private vulnerability reporting](https://github.com/bmad-code-org/BMAD-METHOD/security/advisories/new) to submit a confidential report.
|
|
25
|
+
|
|
26
|
+
2. **Discord**: Contact a maintainer directly via DM on our [Discord server](https://discord.gg/gk8jAdXWmj).
|
|
27
|
+
|
|
28
|
+
### What to Include
|
|
29
|
+
|
|
30
|
+
Please include as much of the following information as possible:
|
|
31
|
+
|
|
32
|
+
- Type of vulnerability (e.g., prompt injection, path traversal, etc.)
|
|
33
|
+
- Full paths of source file(s) related to the vulnerability
|
|
34
|
+
- Step-by-step instructions to reproduce the issue
|
|
35
|
+
- Proof-of-concept or exploit code (if available)
|
|
36
|
+
- Impact assessment of the vulnerability
|
|
37
|
+
|
|
38
|
+
### Response Timeline
|
|
39
|
+
|
|
40
|
+
- **Initial Response**: Within 48 hours of receiving your report
|
|
41
|
+
- **Status Update**: Within 7 days with our assessment
|
|
42
|
+
- **Resolution Target**: Critical issues within 30 days; other issues within 90 days
|
|
43
|
+
|
|
44
|
+
### What to Expect
|
|
45
|
+
|
|
46
|
+
1. We will acknowledge receipt of your report
|
|
47
|
+
2. We will investigate and validate the vulnerability
|
|
48
|
+
3. We will work on a fix and coordinate disclosure timing with you
|
|
49
|
+
4. We will credit you in the security advisory (unless you prefer to remain anonymous)
|
|
50
|
+
|
|
51
|
+
## Security Scope
|
|
52
|
+
|
|
53
|
+
### In Scope
|
|
54
|
+
|
|
55
|
+
- Vulnerabilities in BMad Method core framework code
|
|
56
|
+
- Security issues in agent definitions or workflows that could lead to unintended behavior
|
|
57
|
+
- Path traversal or file system access issues
|
|
58
|
+
- Prompt injection vulnerabilities that bypass intended agent behavior
|
|
59
|
+
- Supply chain vulnerabilities in dependencies
|
|
60
|
+
|
|
61
|
+
### Out of Scope
|
|
62
|
+
|
|
63
|
+
- Security issues in user-created custom agents or modules
|
|
64
|
+
- Vulnerabilities in third-party AI providers (Claude, GPT, etc.)
|
|
65
|
+
- Issues that require physical access to a user's machine
|
|
66
|
+
- Social engineering attacks
|
|
67
|
+
- Denial of service attacks that don't exploit a specific vulnerability
|
|
68
|
+
|
|
69
|
+
## Security Best Practices for Users
|
|
70
|
+
|
|
71
|
+
When using BMad Method:
|
|
72
|
+
|
|
73
|
+
1. **Review Agent Outputs**: Always review AI-generated code before executing it
|
|
74
|
+
2. **Limit File Access**: Configure your AI IDE to limit file system access where possible
|
|
75
|
+
3. **Keep Updated**: Regularly update to the latest version
|
|
76
|
+
4. **Validate Dependencies**: Review any dependencies added by generated code
|
|
77
|
+
5. **Environment Isolation**: Consider running AI-assisted development in isolated environments
|
|
78
|
+
|
|
79
|
+
## Acknowledgments
|
|
80
|
+
|
|
81
|
+
We appreciate the security research community's efforts in helping keep BMad Method secure. Contributors who report valid security issues will be acknowledged in our security advisories.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
Thank you for helping keep BMad Method and our community safe.
|