froid-plane-test-architecture-enterprise 1.23.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +52 -0
- package/.coderabbit.yaml +40 -0
- package/.github/CODE_OF_CONDUCT.md +128 -0
- package/.github/FUNDING.yaml +15 -0
- package/.github/ISSUE_TEMPLATE/config.yaml +8 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +70 -0
- package/.github/ISSUE_TEMPLATE/issue.md +61 -0
- package/.github/ISSUE_TEMPLATE/rule_quality_report.md +46 -0
- package/.github/workflows/docs.yaml +66 -0
- package/.github/workflows/publish.yaml +193 -0
- package/.github/workflows/quality.yaml +171 -0
- package/.github/workflows/tea-test-review.yaml +240 -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/AGENTS.md +32 -0
- package/CHANGELOG.md +582 -0
- package/CONTRIBUTING.md +268 -0
- package/DESIGN-CRITERIA-REGISTRY.md +336 -0
- package/LICENSE +26 -0
- package/README.md +782 -0
- package/SECURITY.md +85 -0
- package/cli/examples/README.md +53 -0
- package/cli/examples/pr-test-review.yml +315 -0
- package/cli/lib/agent-adapters.js +256 -0
- package/cli/lib/build-prompt.js +327 -0
- package/cli/lib/changed-tests.js +479 -0
- package/cli/lib/convention-baseline.js +237 -0
- package/cli/lib/isolate.js +353 -0
- package/cli/lib/parse-report.js +1081 -0
- package/cli/lib/registry-rows.js +60 -0
- package/cli/lib/resolve-skill.js +44 -0
- package/cli/lib/resolve-tea-config.js +229 -0
- package/cli/lib/run-agent.js +146 -0
- package/cli/test-review.js +874 -0
- package/docs/404.md +20 -0
- package/docs/explanation/engagement-models.md +191 -0
- package/docs/explanation/eval-quality-roadmap.md +164 -0
- package/docs/explanation/fixture-architecture.md +350 -0
- package/docs/explanation/knowledge-base-system.md +158 -0
- package/docs/explanation/network-first-patterns.md +342 -0
- package/docs/explanation/risk-based-testing.md +189 -0
- package/docs/explanation/step-file-architecture.md +227 -0
- package/docs/explanation/tea-overview.md +244 -0
- package/docs/explanation/test-quality-standards.md +475 -0
- package/docs/explanation/test-review-cli-architecture.md +159 -0
- package/docs/explanation/testing-as-engineering.md +124 -0
- package/docs/explanation/verification-architecture.md +129 -0
- package/docs/glossary/index.md +160 -0
- package/docs/how-to/brownfield/use-tea-for-enterprise.md +394 -0
- package/docs/how-to/brownfield/use-tea-with-existing-tests.md +499 -0
- package/docs/how-to/customization/configure-browser-automation.md +213 -0
- package/docs/how-to/customization/extend-tea-with-custom-workflows.md +102 -0
- package/docs/how-to/customization/integrate-pactjs-utils.md +184 -0
- package/docs/how-to/customization/integrate-playwright-utils.md +886 -0
- package/docs/how-to/install-behind-firewall.md +43 -0
- package/docs/how-to/workflows/run-atdd.md +453 -0
- package/docs/how-to/workflows/run-automate.md +673 -0
- package/docs/how-to/workflows/run-nfr-assess.md +723 -0
- package/docs/how-to/workflows/run-test-design.md +155 -0
- package/docs/how-to/workflows/run-test-review.md +622 -0
- package/docs/how-to/workflows/run-trace.md +973 -0
- package/docs/how-to/workflows/setup-ci.md +741 -0
- package/docs/how-to/workflows/setup-test-framework.md +130 -0
- package/docs/how-to/workflows/teach-me-testing.md +287 -0
- package/docs/index.md +67 -0
- package/docs/reference/commands.md +394 -0
- package/docs/reference/configuration.md +561 -0
- package/docs/reference/execution-targets.md +106 -0
- package/docs/reference/knowledge-base.md +271 -0
- package/docs/reference/live-verification-results.md +193 -0
- package/docs/reference/tea-test-review-cli.md +282 -0
- package/docs/reference/troubleshooting.md +362 -0
- package/docs/tutorials/learn-testing-tea-academy.md +67 -0
- package/docs/tutorials/tea-lite-quickstart.md +459 -0
- package/eslint.config.mjs +146 -0
- package/package.json +139 -0
- package/prettier.config.mjs +32 -0
- package/src/agents/froid-tea/SKILL.md +86 -0
- package/src/agents/froid-tea/customize.toml +108 -0
- package/src/agents/froid-tea/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/agents/froid-tea/resources/knowledge/api-request.md +572 -0
- package/src/agents/froid-tea/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/agents/froid-tea/resources/knowledge/auth-session.md +553 -0
- package/src/agents/froid-tea/resources/knowledge/burn-in.md +273 -0
- package/src/agents/froid-tea/resources/knowledge/ci-burn-in.md +717 -0
- package/src/agents/froid-tea/resources/knowledge/component-tdd.md +522 -0
- package/src/agents/froid-tea/resources/knowledge/confidence-gate.md +73 -0
- package/src/agents/froid-tea/resources/knowledge/contract-testing.md +1066 -0
- package/src/agents/froid-tea/resources/knowledge/data-factories.md +539 -0
- package/src/agents/froid-tea/resources/knowledge/email-auth.md +721 -0
- package/src/agents/froid-tea/resources/knowledge/error-handling.md +725 -0
- package/src/agents/froid-tea/resources/knowledge/evidence-integrity.md +265 -0
- package/src/agents/froid-tea/resources/knowledge/feature-flags.md +750 -0
- package/src/agents/froid-tea/resources/knowledge/file-utils.md +456 -0
- package/src/agents/froid-tea/resources/knowledge/fixture-architecture.md +401 -0
- package/src/agents/froid-tea/resources/knowledge/fixtures-composition.md +385 -0
- package/src/agents/froid-tea/resources/knowledge/intercept-network-call.md +426 -0
- package/src/agents/froid-tea/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/agents/froid-tea/resources/knowledge/log.md +432 -0
- package/src/agents/froid-tea/resources/knowledge/maestro-flows.md +540 -0
- package/src/agents/froid-tea/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/agents/froid-tea/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/agents/froid-tea/resources/knowledge/network-error-monitor.md +402 -0
- package/src/agents/froid-tea/resources/knowledge/network-first.md +486 -0
- package/src/agents/froid-tea/resources/knowledge/network-recorder.md +527 -0
- package/src/agents/froid-tea/resources/knowledge/nfr-criteria.md +670 -0
- package/src/agents/froid-tea/resources/knowledge/overview.md +290 -0
- package/src/agents/froid-tea/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/agents/froid-tea/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/agents/froid-tea/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/agents/froid-tea/resources/knowledge/pact-mcp.md +242 -0
- package/src/agents/froid-tea/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/agents/froid-tea/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/agents/froid-tea/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/agents/froid-tea/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/agents/froid-tea/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/agents/froid-tea/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/agents/froid-tea/resources/knowledge/playwright-cli.md +280 -0
- package/src/agents/froid-tea/resources/knowledge/playwright-config.md +734 -0
- package/src/agents/froid-tea/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/agents/froid-tea/resources/knowledge/probability-impact.md +593 -0
- package/src/agents/froid-tea/resources/knowledge/recurse.md +433 -0
- package/src/agents/froid-tea/resources/knowledge/risk-governance.md +625 -0
- package/src/agents/froid-tea/resources/knowledge/selective-testing.md +732 -0
- package/src/agents/froid-tea/resources/knowledge/selector-resilience.md +527 -0
- package/src/agents/froid-tea/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/agents/froid-tea/resources/knowledge/test-levels-framework.md +473 -0
- package/src/agents/froid-tea/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/agents/froid-tea/resources/knowledge/test-quality.md +848 -0
- package/src/agents/froid-tea/resources/knowledge/timing-debugging.md +464 -0
- package/src/agents/froid-tea/resources/knowledge/visual-debugging.md +527 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-providers.md +155 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/agents/froid-tea/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/agents/froid-tea/resources/tea-index.csv +60 -0
- package/src/module-help.csv +11 -0
- package/src/module.yaml +332 -0
- package/src/workflows/testarch/froid-teach-me-testing/SKILL.md +129 -0
- package/src/workflows/testarch/froid-teach-me-testing/checklist.md +198 -0
- package/src/workflows/testarch/froid-teach-me-testing/customize.toml +38 -0
- package/src/workflows/testarch/froid-teach-me-testing/data/curriculum.yaml +129 -0
- package/src/workflows/testarch/froid-teach-me-testing/data/quiz-questions.yaml +206 -0
- package/src/workflows/testarch/froid-teach-me-testing/data/role-paths.yaml +136 -0
- package/src/workflows/testarch/froid-teach-me-testing/data/session-content-map.yaml +222 -0
- package/src/workflows/testarch/froid-teach-me-testing/data/tea-resources-index.yaml +483 -0
- package/src/workflows/testarch/froid-teach-me-testing/instructions.md +129 -0
- package/src/workflows/testarch/froid-teach-me-testing/resources/tea-completion-summary.example.md +102 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-01-init.md +235 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-01b-continue.md +147 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-02-assess.md +258 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-03-session-menu.md +219 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-01.md +460 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-02.md +465 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-03.md +301 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-04.md +234 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-05.md +234 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-06.md +209 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-04-session-07.md +243 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-c/step-05-completion.md +343 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-e/step-e-01-assess-workflow.md +141 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-e/step-e-02-apply-edits.md +130 -0
- package/src/workflows/testarch/froid-teach-me-testing/steps-v/step-v-01-validate.md +278 -0
- package/src/workflows/testarch/froid-teach-me-testing/templates/completion-summary-template.md +82 -0
- package/src/workflows/testarch/froid-teach-me-testing/templates/progress-template.yaml +95 -0
- package/src/workflows/testarch/froid-teach-me-testing/templates/session-notes-template.md +83 -0
- package/src/workflows/testarch/froid-testarch-atdd/SKILL.md +85 -0
- package/src/workflows/testarch/froid-testarch-atdd/atdd-checklist-template.md +394 -0
- package/src/workflows/testarch/froid-testarch-atdd/checklist.md +408 -0
- package/src/workflows/testarch/froid-testarch-atdd/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-atdd/instructions.md +44 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/atdd-checklist-2-4-guest-checkout.example.md +594 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-atdd/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-01-preflight-and-context.md +256 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-01b-resume.md +96 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-02-generation-mode.md +125 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-03-test-strategy.md +110 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-04-generate-tests.md +362 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-04a-subagent-api-failing.md +323 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-04b-subagent-e2e-failing.md +305 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-04c-aggregate.md +430 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-c/step-05-validate-and-complete.md +123 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-atdd/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-atdd/workflow.yaml +46 -0
- package/src/workflows/testarch/froid-testarch-automate/SKILL.md +85 -0
- package/src/workflows/testarch/froid-testarch-automate/checklist.md +645 -0
- package/src/workflows/testarch/froid-testarch-automate/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-automate/instructions.md +49 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/automation-summary.example.md +76 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-automate/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-01-preflight-and-context.md +261 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-01b-resume.md +94 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-02-identify-targets.md +182 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-03-generate-tests.md +458 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-03a-subagent-api.md +333 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-03b-subagent-backend.md +248 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-03b-subagent-e2e.md +282 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-03b-subagent-mobile.md +162 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-03c-aggregate.md +494 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-c/step-04-validate-and-summarize.md +120 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-automate/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-automate/workflow.yaml +53 -0
- package/src/workflows/testarch/froid-testarch-ci/SKILL.md +85 -0
- package/src/workflows/testarch/froid-testarch-ci/azure-pipelines-template.yaml +155 -0
- package/src/workflows/testarch/froid-testarch-ci/checklist.md +289 -0
- package/src/workflows/testarch/froid-testarch-ci/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-ci/github-actions-template.yaml +328 -0
- package/src/workflows/testarch/froid-testarch-ci/gitlab-ci-template.yaml +158 -0
- package/src/workflows/testarch/froid-testarch-ci/harness-pipeline-template.yaml +160 -0
- package/src/workflows/testarch/froid-testarch-ci/instructions.md +44 -0
- package/src/workflows/testarch/froid-testarch-ci/jenkins-pipeline-template.groovy +129 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/ci-pipeline-progress.example.md +121 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-ci/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-c/step-01-preflight.md +173 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-c/step-01b-resume.md +110 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-c/step-02-generate-pipeline.md +305 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-c/step-03-configure-quality-gates.md +164 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-c/step-04-validate-and-summary.md +100 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-ci/steps-v/step-01-validate.md +99 -0
- package/src/workflows/testarch/froid-testarch-ci/workflow.yaml +48 -0
- package/src/workflows/testarch/froid-testarch-framework/SKILL.md +85 -0
- package/src/workflows/testarch/froid-testarch-framework/checklist.md +370 -0
- package/src/workflows/testarch/froid-testarch-framework/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-framework/instructions.md +44 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/framework-setup-progress.example.md +195 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/hooks/tea-enforce.cjs +1098 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-framework/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-c/step-01-preflight.md +145 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-c/step-01b-resume.md +116 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-c/step-02-select-framework.md +131 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-c/step-03-scaffold-framework.md +444 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-c/step-04-docs-and-scripts.md +210 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-c/step-05-validate-and-summary.md +101 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-framework/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-framework/workflow.yaml +48 -0
- package/src/workflows/testarch/froid-testarch-nfr/SKILL.md +85 -0
- package/src/workflows/testarch/froid-testarch-nfr/checklist.md +405 -0
- package/src/workflows/testarch/froid-testarch-nfr/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-nfr/instructions.md +45 -0
- package/src/workflows/testarch/froid-testarch-nfr/nfr-report-template.md +454 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/nfr-assessment.example.md +497 -0
- package/src/workflows/testarch/froid-testarch-nfr/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/nfr-status-definitions.md +37 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-01-load-context.md +138 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-01b-resume.md +106 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-02-define-thresholds.md +120 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-03-gather-evidence.md +108 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-04-evaluate-and-score.md +254 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-04a-subagent-security.md +135 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-04b-subagent-performance.md +97 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-04c-subagent-reliability.md +93 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-04d-subagent-maintainability.md +104 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +294 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-c/step-05-generate-report.md +116 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-nfr/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-nfr/workflow.yaml +48 -0
- package/src/workflows/testarch/froid-testarch-test-design/SKILL.md +89 -0
- package/src/workflows/testarch/froid-testarch-test-design/checklist.md +486 -0
- package/src/workflows/testarch/froid-testarch-test-design/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-test-design/instructions.md +104 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-test-design/resources/test-design-epic-3.example.md +300 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-c/step-01-detect-mode.md +187 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-c/step-01b-resume.md +141 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-c/step-02-load-context.md +268 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-c/step-03-risk-and-testability.md +133 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-c/step-04-coverage-plan.md +148 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-c/step-05-generate-output.md +241 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-test-design/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-test-design/test-design-architecture-template.md +250 -0
- package/src/workflows/testarch/froid-testarch-test-design/test-design-handoff-template.md +70 -0
- package/src/workflows/testarch/froid-testarch-test-design/test-design-qa-template.md +414 -0
- package/src/workflows/testarch/froid-testarch-test-design/test-design-template.md +367 -0
- package/src/workflows/testarch/froid-testarch-test-design/workflow.yaml +77 -0
- package/src/workflows/testarch/froid-testarch-test-review/SKILL.md +97 -0
- package/src/workflows/testarch/froid-testarch-test-review/checklist.md +506 -0
- package/src/workflows/testarch/froid-testarch-test-review/customize.toml +66 -0
- package/src/workflows/testarch/froid-testarch-test-review/instructions.md +50 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-test-review/resources/test-review.example.md +297 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/criteria-registry.md +230 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-01-load-context.md +236 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-01b-resume.md +104 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-02-discover-tests.md +271 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-03-quality-evaluation.md +296 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-03a-subagent-determinism.md +336 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-03b-subagent-isolation.md +142 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-03c-subagent-maintainability.md +173 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-03e-subagent-performance.md +145 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-03f-aggregate-scores.md +409 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-c/step-04-generate-report.md +122 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-test-review/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-test-review/test-review-template.md +469 -0
- package/src/workflows/testarch/froid-testarch-test-review/workflow.yaml +55 -0
- package/src/workflows/testarch/froid-testarch-trace/SKILL.md +87 -0
- package/src/workflows/testarch/froid-testarch-trace/checklist.md +677 -0
- package/src/workflows/testarch/froid-testarch-trace/customize.toml +38 -0
- package/src/workflows/testarch/froid-testarch-trace/instructions.md +45 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/api-request.md +572 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/api-testing-patterns.md +931 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/auth-session.md +553 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/burn-in.md +273 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/ci-burn-in.md +717 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/component-tdd.md +522 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/confidence-gate.md +73 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/contract-testing.md +1066 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/data-factories.md +539 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/email-auth.md +721 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/error-handling.md +725 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/evidence-integrity.md +265 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/feature-flags.md +750 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/file-utils.md +456 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/fixture-architecture.md +401 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/fixtures-composition.md +385 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/intercept-network-call.md +426 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/library-integration-mandate.md +93 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/log.md +432 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/maestro-flows.md +540 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/mobile-ci-device-lab.md +208 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/mobile-test-strategy.md +127 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/network-error-monitor.md +402 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/network-first.md +486 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/network-recorder.md +527 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/nfr-criteria.md +670 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/overview.md +290 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pact-consumer-di.md +310 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pact-consumer-framework-setup.md +704 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pact-mcp.md +242 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pactjs-utils-consumer-helpers.md +379 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pactjs-utils-mandate.md +204 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pactjs-utils-overview.md +219 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pactjs-utils-provider-verifier.md +397 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pactjs-utils-request-filter.md +224 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/playwright-cli.md +280 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/playwright-config.md +734 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/playwright-utils-mandate.md +183 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/probability-impact.md +593 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/recurse.md +433 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/risk-governance.md +625 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/selective-testing.md +732 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/selector-resilience.md +527 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/test-healing-patterns.md +644 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/test-levels-framework.md +473 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/test-priorities-matrix.md +382 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/test-quality.md +848 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/timing-debugging.md +464 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/visual-debugging.md +527 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-module-setup.md +122 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-providers.md +155 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-template-matchers.md +160 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-timeout-error.md +130 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/live-verification-results.example.json +37 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/tea-index.csv +60 -0
- package/src/workflows/testarch/froid-testarch-trace/resources/traceability-matrix.example.md +346 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-c/step-01-load-context.md +166 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-c/step-01b-resume.md +102 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-c/step-02-discover-tests.md +292 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-c/step-03-map-criteria.md +149 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-c/step-04-analyze-gaps.md +795 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-c/step-05-gate-decision.md +795 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-e/step-01-assess.md +65 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-e/step-02-apply-edit.md +68 -0
- package/src/workflows/testarch/froid-testarch-trace/steps-v/step-01-validate.md +85 -0
- package/src/workflows/testarch/froid-testarch-trace/trace-template.md +716 -0
- package/src/workflows/testarch/froid-testarch-trace/workflow.yaml +98 -0
- package/test/README.md +57 -0
- package/test/eval-all.js +213 -0
- package/test/eval-fragment-selection.js +521 -0
- package/test/eval-test-review.js +525 -0
- package/test/evals/froid-testarch-atdd/evals.json +98 -0
- package/test/evals/froid-testarch-automate/evals.json +198 -0
- package/test/evals/froid-testarch-ci/evals.json +78 -0
- package/test/evals/froid-testarch-framework/evals.json +111 -0
- package/test/evals/froid-testarch-nfr/evals.json +78 -0
- package/test/evals/froid-testarch-test-design/evals.json +136 -0
- package/test/evals/froid-testarch-test-review/evals.json +76 -0
- package/test/evals/froid-testarch-trace/evals.json +62 -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/fixtures/test-review-cli/project/_froid/tea/workflows/testarch/froid-testarch-test-review/SKILL.md +1 -0
- package/test/fixtures/test-review-cli/project-claude/.claude/skills/froid-testarch-test-review/SKILL.md +1 -0
- package/test/fixtures/test-review-cli/project-empty/.gitkeep +0 -0
- package/test/fixtures/test-review-cli/reports/approve-low-score.md +54 -0
- package/test/fixtures/test-review-cli/reports/approve-with-high.md +61 -0
- package/test/fixtures/test-review-cli/reports/approve.md +54 -0
- package/test/fixtures/test-review-cli/reports/bad-value.md +38 -0
- package/test/fixtures/test-review-cli/reports/block.md +102 -0
- package/test/fixtures/test-review-cli/reports/bonus-not-multiple.md +71 -0
- package/test/fixtures/test-review-cli/reports/colon-in-bold.md +51 -0
- package/test/fixtures/test-review-cli/reports/conflicting.md +38 -0
- package/test/fixtures/test-review-cli/reports/context-basis-without-manifest.md +61 -0
- package/test/fixtures/test-review-cli/reports/context-none-with-manifest.md +66 -0
- package/test/fixtures/test-review-cli/reports/context-overlaps-reviewed.md +67 -0
- package/test/fixtures/test-review-cli/reports/context-pr-diff.md +86 -0
- package/test/fixtures/test-review-cli/reports/convention-baseline-unavailable.md +61 -0
- package/test/fixtures/test-review-cli/reports/convention-fabricated.md +62 -0
- package/test/fixtures/test-review-cli/reports/convention-honest-absent.md +61 -0
- package/test/fixtures/test-review-cli/reports/critical-approve.md +38 -0
- package/test/fixtures/test-review-cli/reports/duplicate-breakdown-heading.md +87 -0
- package/test/fixtures/test-review-cli/reports/empty-steps-flow.md +56 -0
- package/test/fixtures/test-review-cli/reports/fenced-recommendation.md +59 -0
- package/test/fixtures/test-review-cli/reports/key-strengths-weaknesses.md +72 -0
- package/test/fixtures/test-review-cli/reports/lowercase.md +53 -0
- package/test/fixtures/test-review-cli/reports/malformed.md +12 -0
- package/test/fixtures/test-review-cli/reports/missing-breakdown.md +46 -0
- package/test/fixtures/test-review-cli/reports/missing-context-basis.md +59 -0
- package/test/fixtures/test-review-cli/reports/missing-decision.md +53 -0
- package/test/fixtures/test-review-cli/reports/missing-frontmatter.md +45 -0
- package/test/fixtures/test-review-cli/reports/missing-reviewed-files.md +49 -0
- package/test/fixtures/test-review-cli/reports/missing-score.md +52 -0
- package/test/fixtures/test-review-cli/reports/missing-violations.md +36 -0
- package/test/fixtures/test-review-cli/reports/plain-bullets-key-strengths.md +62 -0
- package/test/fixtures/test-review-cli/reports/request-changes-critical.md +98 -0
- package/test/fixtures/test-review-cli/reports/request-changes.md +91 -0
- package/test/fixtures/test-review-cli/reports/score-140.md +38 -0
- package/test/fixtures/test-review-cli/reports/score-mismatch.md +57 -0
- package/test/fixtures/test-review-cli/reports/table-breakdown.md +65 -0
- package/test/fixtures/test-review-cli/reports/wrapped-steps-flow.md +58 -0
- package/test/fixtures/test-review-cli/stub-agent.js +398 -0
- package/test/fixtures/test-review-eval/clean/profile.spec.ts +36 -0
- package/test/fixtures/test-review-eval/ground-truth.json +60 -0
- package/test/fixtures/test-review-eval/seeded/checkout.spec.ts +42 -0
- package/test/fixtures/test-review-eval/seeded/orders.service.spec.ts +40 -0
- package/test/schema/agent.js +491 -0
- package/test/test-agent-schema.js +387 -0
- package/test/test-enforce-hook.js +413 -0
- package/test/test-installation-components.js +510 -0
- package/test/test-knowledge-base.js +445 -0
- package/test/test-release-metadata.js +71 -0
- package/test/test-stamp-changelog.js +102 -0
- package/test/test-test-review-cli.js +4830 -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/stamp-changelog.js +123 -0
- package/tools/validate-agent-schema.js +284 -0
- package/tools/validate-criteria-fragments.js +446 -0
- package/tools/validate-doc-links.js +440 -0
- package/tools/validate-tea-workflow-descriptions.js +123 -0
- package/website/README.md +137 -0
- package/website/astro.config.mjs +189 -0
- package/website/package-lock.json +6856 -0
- package/website/package.json +24 -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 +74 -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 +518 -0
- package/website/tsconfig.json +9 -0
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
# Webhook Waiting and Querying Patterns
|
|
2
|
+
|
|
3
|
+
## Principle
|
|
4
|
+
|
|
5
|
+
`waitFor` and `waitForCount` poll until matching webhooks arrive; `getReceived` queries without waiting. Always drain preceding events before asserting on subsequent ones. Scope templates by entity ID to prevent parallel worker cross-contamination.
|
|
6
|
+
|
|
7
|
+
## Pattern Examples
|
|
8
|
+
|
|
9
|
+
### Example 1: waitFor — single webhook
|
|
10
|
+
|
|
11
|
+
Poll until the first webhook matching the template arrives. Returns the typed `ReceivedWebhook<T>`.
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
const webhook = await webhookRegistry.waitFor(movieCreated(movieId));
|
|
15
|
+
|
|
16
|
+
expect(webhook.body).toMatchObject({
|
|
17
|
+
event: 'movie.created',
|
|
18
|
+
timestamp: expect.any(String),
|
|
19
|
+
data: {
|
|
20
|
+
id: movieId,
|
|
21
|
+
name: movie.name,
|
|
22
|
+
year: movie.year,
|
|
23
|
+
rating: movie.rating,
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### Example 2: The drain pattern — sequential events
|
|
29
|
+
|
|
30
|
+
When testing a downstream event (e.g. deletion), always `waitFor` the preceding event first. Without the drain, the create webhook may remain in the journal and interfere with cleanup or subsequent polling.
|
|
31
|
+
|
|
32
|
+
```typescript
|
|
33
|
+
test('movie deletion triggers a webhook with correct payload', async ({ authToken, addMovie, deleteMovie, webhookRegistry }) => {
|
|
34
|
+
const movie = generateMovieWithoutId();
|
|
35
|
+
const { body: createResponse } = await addMovie(authToken, movie);
|
|
36
|
+
const movieId = createResponse.data.id;
|
|
37
|
+
|
|
38
|
+
await log.step('Drain the create webhook before testing the delete path');
|
|
39
|
+
await webhookRegistry.waitFor(movieCreated(movieId)); // drain — consume the create event
|
|
40
|
+
|
|
41
|
+
await deleteMovie(authToken, movieId);
|
|
42
|
+
|
|
43
|
+
await log.step('Wait for the delete webhook');
|
|
44
|
+
const webhook = await webhookRegistry.waitFor(movieDeleted(movieId));
|
|
45
|
+
|
|
46
|
+
expect(webhook.body).toMatchObject({
|
|
47
|
+
event: 'movie.deleted',
|
|
48
|
+
data: { id: movieId, name: movie.name },
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Why drain?** If you skip the drain and go directly to `waitFor(movieDeleted)`, the create webhook is already in the journal. The delete webhook may arrive and be cleaned up by another test before your poll reaches it. Draining makes the event order explicit and removes the ambiguity.
|
|
54
|
+
|
|
55
|
+
### Example 3: waitForCount — collect N webhooks concurrently
|
|
56
|
+
|
|
57
|
+
Collect exactly N matching webhooks. Use `matchPredicate` with all IDs to prevent cross-worker contamination when running `fullyParallel: true`:
|
|
58
|
+
|
|
59
|
+
```typescript
|
|
60
|
+
await log.step('Create two movies concurrently');
|
|
61
|
+
const [{ body: res1 }, { body: res2 }] = await Promise.all([
|
|
62
|
+
addMovie(authToken, generateMovieWithoutId()),
|
|
63
|
+
addMovie(authToken, generateMovieWithoutId()),
|
|
64
|
+
]);
|
|
65
|
+
|
|
66
|
+
const [id1, id2] = [res1.data.id, res2.data.id];
|
|
67
|
+
|
|
68
|
+
const batchTemplate = webhookTemplate<{
|
|
69
|
+
event: string;
|
|
70
|
+
data: { id: number };
|
|
71
|
+
}>('movie.created.batch')
|
|
72
|
+
.matchField('event', 'movie.created')
|
|
73
|
+
.matchPredicate(`data.id is ${id1} or ${id2}`, (p) => p.data.id === id1 || p.data.id === id2)
|
|
74
|
+
.withTimeout(15_000)
|
|
75
|
+
.withInterval(500)
|
|
76
|
+
.build();
|
|
77
|
+
|
|
78
|
+
const webhooks = await webhookRegistry.waitForCount(batchTemplate, 2);
|
|
79
|
+
|
|
80
|
+
expect(webhooks).toHaveLength(2);
|
|
81
|
+
const receivedIds = webhooks.map((w) => w.body.data.id);
|
|
82
|
+
expect(receivedIds).toContain(id1);
|
|
83
|
+
expect(receivedIds).toContain(id2);
|
|
84
|
+
expect(new Set(receivedIds).size).toBe(2); // guard against the same ID delivered twice
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Example 4: getReceived — query without waiting
|
|
88
|
+
|
|
89
|
+
Query the journal without polling. Useful for asserting presence of webhooks after a `waitFor`, or for method/URL filtering.
|
|
90
|
+
|
|
91
|
+
```typescript
|
|
92
|
+
await webhookRegistry.waitFor(movieCreated(movieId)); // wait first
|
|
93
|
+
|
|
94
|
+
const all = await webhookRegistry.getReceived();
|
|
95
|
+
expect(all.length).toBeGreaterThanOrEqual(1);
|
|
96
|
+
|
|
97
|
+
// Method filter — all sample-app webhooks are delivered via POST
|
|
98
|
+
const postOnly = await webhookRegistry.getReceived({ method: 'POST' });
|
|
99
|
+
expect(postOnly.every((w) => w.method === 'POST')).toBe(true);
|
|
100
|
+
|
|
101
|
+
// URL pattern filter — match the webhooks endpoint path
|
|
102
|
+
const byUrl = await webhookRegistry.getReceived({ urlPattern: '/webhooks' });
|
|
103
|
+
expect(byUrl.every((w) => w.url.includes('/webhooks'))).toBe(true);
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
`getReceived` accepts `WebhookQueryFilter`:
|
|
107
|
+
|
|
108
|
+
```typescript
|
|
109
|
+
type WebhookQueryFilter = {
|
|
110
|
+
urlPattern?: string; // glob or regex string
|
|
111
|
+
method?: string; // HTTP method filter
|
|
112
|
+
since?: Date; // only return webhooks after this timestamp
|
|
113
|
+
};
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Note: `getReceived` is a direct passthrough to the provider — it does **not** automatically apply the `startedAt` filter. Only `waitFor` and `waitForCount` apply the since-filter internally during polling. If you need to scope a manual `getReceived` call to this test's time window, record your own timestamp before the action under test and pass `{ since: myTimestamp }` explicitly.
|
|
117
|
+
|
|
118
|
+
## Parallel Worker Safety
|
|
119
|
+
|
|
120
|
+
Always scope template factories to the entity's ID:
|
|
121
|
+
|
|
122
|
+
```typescript
|
|
123
|
+
// ✅ Scoped — only matches webhooks for this specific movie
|
|
124
|
+
const movieCreated = (movieId: number) =>
|
|
125
|
+
webhookTemplate('movie.created')
|
|
126
|
+
.matchField('event', 'movie.created')
|
|
127
|
+
.matchField('data.id', movieId) // scoped by ID
|
|
128
|
+
.build();
|
|
129
|
+
|
|
130
|
+
// ❌ Unscoped — will match any movie.created from any parallel worker
|
|
131
|
+
const movieCreatedUnscoped = webhookTemplate('movie.created').matchField('event', 'movie.created').build();
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Method Summary
|
|
135
|
+
|
|
136
|
+
| Method | Returns | Description |
|
|
137
|
+
| --------------------------- | ------------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
138
|
+
| `waitFor(template)` | `Promise<ReceivedWebhook<T>>` | Poll until first match; throws `WebhookTimeoutError` on timeout |
|
|
139
|
+
| `waitForCount(template, n)` | `Promise<ReceivedWebhook<T>[]>` | Poll until N matches; throws `WebhookTimeoutError` on timeout |
|
|
140
|
+
| `getReceived(filter?)` | `Promise<ReceivedWebhook[]>` | Direct passthrough to provider — no automatic since-filter; pass `{ since }` explicitly if needed |
|
|
141
|
+
| `resetJournal()` | `Promise<void>` | Wipe the entire journal and clear matchedIds |
|
|
142
|
+
| `cleanup()` | `Promise<void>` | Delete matched webhooks (`matched-only`) or reset journal (`full-reset`) |
|
|
143
|
+
|
|
144
|
+
## Anti-Patterns
|
|
145
|
+
|
|
146
|
+
**DON'T skip the drain for sequential events:**
|
|
147
|
+
|
|
148
|
+
```typescript
|
|
149
|
+
// Bad: direct jump to delete webhook — create webhook pollutes the journal
|
|
150
|
+
await addMovie(authToken, movie);
|
|
151
|
+
const webhook = await webhookRegistry.waitFor(movieDeleted(movieId));
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
**DO drain preceding events:**
|
|
155
|
+
|
|
156
|
+
```typescript
|
|
157
|
+
// Good: drain create first, then wait for delete
|
|
158
|
+
await webhookRegistry.waitFor(movieCreated(movieId)); // drain
|
|
159
|
+
await deleteMovie(authToken, movieId);
|
|
160
|
+
const webhook = await webhookRegistry.waitFor(movieDeleted(movieId));
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## Related Fragments
|
|
164
|
+
|
|
165
|
+
- `webhook-template-matchers.md` — How to build templates
|
|
166
|
+
- `webhook-timeout-error.md` — What to do when waitFor times out
|
|
167
|
+
- `recurse.md` — The polling primitive used internally by the registry
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
id,name,description,tags,tier,fragment_file
|
|
2
|
+
library-integration-mandate,Library Integration Mandate,"General contract for every TEA integration library flag: the two gates (flag true plus package installed), REQUIRED vs RECOMMENDED levels, deviation protocol, scope discipline, the flag-to-mandate registry, and the ten places a new library must be wired","standards,governance,generation,review,integration,mandate",core,knowledge/library-integration-mandate.md
|
|
3
|
+
fixture-architecture,Fixture Architecture,"Composable fixture patterns (pure function → fixture → merge) and reuse rules","fixtures,architecture,playwright,cypress",core,knowledge/fixture-architecture.md
|
|
4
|
+
network-first,Network-First Safeguards,"Intercept-before-navigate workflow, HAR capture, deterministic waits, edge mocking","network,stability,playwright,cypress,ui",core,knowledge/network-first.md
|
|
5
|
+
data-factories,Data Factories and API Setup,"Factories with overrides, API seeding, cleanup discipline, and naming the domain literals a test hardcodes on purpose","data,factories,setup,api,backend,seeding,magic-value,literals,naming,constants",core,knowledge/data-factories.md
|
|
6
|
+
component-tdd,Component TDD Loop,"Red→green→refactor workflow, provider isolation, accessibility assertions, and user-level interaction over raw event dispatch","component-testing,tdd,ui,user-event,fire-event,interaction",extended,knowledge/component-tdd.md
|
|
7
|
+
playwright-config,Playwright Config Guardrails,"Environment switching, timeout standards, artifact outputs","playwright,config,env",extended,knowledge/playwright-config.md
|
|
8
|
+
ci-burn-in,CI and Burn-In Strategy,"Staged jobs, shard orchestration, burn-in loops, artifact policy","ci,automation,flakiness",extended,knowledge/ci-burn-in.md
|
|
9
|
+
selective-testing,Selective Test Execution,"Tag/grep usage, spec filters, diff-based runs, promotion rules","risk-based,selection,strategy",extended,knowledge/selective-testing.md
|
|
10
|
+
feature-flags,Feature Flag Governance,"Enum management, targeting helpers, cleanup, release checklists","feature-flags,governance,launchdarkly",specialized,knowledge/feature-flags.md
|
|
11
|
+
contract-testing,Contract Testing Essentials,"Pact publishing, provider verification, resilience coverage, PactV4 four-rule determinism & FFI safety block (fileParallelism + pool:forks + singleFork + determinism gate)","contract-testing,pact,api,backend,microservices,service-contract,vitest,ffi,determinism,pactv4",specialized,knowledge/contract-testing.md
|
|
12
|
+
email-auth,Email Authentication Testing,"Magic link extraction, state preservation, caching, negative flows","email-authentication,security,workflow",specialized,knowledge/email-auth.md
|
|
13
|
+
error-handling,Error Handling Checks,"Scoped exception handling, retry validation, telemetry logging","resilience,error-handling,stability,api,backend",extended,knowledge/error-handling.md
|
|
14
|
+
visual-debugging,Visual Debugging Toolkit,"Trace viewer usage, artifact expectations, accessibility integration","debugging,dx,tooling,ui",specialized,knowledge/visual-debugging.md
|
|
15
|
+
risk-governance,Risk Governance,"Scoring matrix, category ownership, gate decision rules","risk,governance,gates",core,knowledge/risk-governance.md
|
|
16
|
+
probability-impact,Probability and Impact Scale,"Shared definitions for scoring matrix and gate thresholds","risk,scoring,scale",core,knowledge/probability-impact.md
|
|
17
|
+
test-quality,Test Quality Definition of Done,"Execution limits, isolation rules, green criteria, committed skips and focus, assertions that cannot fail, and suite structure and naming","quality,definition-of-done,tests,skip,only,focused,disabled,tautological,assertions,mocks,unreachable,concerns,grouping,nesting,naming,assertion-style",core,knowledge/test-quality.md
|
|
18
|
+
nfr-criteria,NFR Review Criteria,"Security, performance, reliability, maintainability status definitions","nfr,assessment,quality",extended,knowledge/nfr-criteria.md
|
|
19
|
+
test-levels,Test Levels Framework,"Guidelines for choosing unit, integration, or end-to-end coverage","testing,levels,selection,api,backend,ui",core,knowledge/test-levels-framework.md
|
|
20
|
+
test-priorities,Test Priorities Matrix,"P0–P3 criteria, coverage targets, execution ordering","testing,prioritization,risk",core,knowledge/test-priorities-matrix.md
|
|
21
|
+
test-healing-patterns,Test Healing Patterns,"Common failure patterns and automated fixes","healing,debugging,patterns",core,knowledge/test-healing-patterns.md
|
|
22
|
+
selector-resilience,Selector Resilience,"Robust selector strategies and debugging techniques","selectors,locators,debugging,ui",core,knowledge/selector-resilience.md
|
|
23
|
+
timing-debugging,Timing Debugging,"Race condition identification, deterministic wait fixes, wall-clock fixtures and fake timers, and unawaited promises in test bodies","timing,async,debugging,clock,fake-timers,expiry,ttl,unawaited,await,floating-promise",extended,knowledge/timing-debugging.md
|
|
24
|
+
overview,Playwright Utils Overview,"Installation, design principles, fixture patterns for API and UI testing","playwright-utils,fixtures,api,backend,ui",core,knowledge/overview.md
|
|
25
|
+
playwright-utils-mandate,Playwright Utils Mandate,"Binding rule when tea_use_playwright_utils is true: substitution table (page.route to interceptNetworkCall, raw request to apiRequest, waitForTimeout to recurse), REQUIRED vs RECOMMENDED levels, banned patterns, pre-emit self-check, deviation protocol","playwright-utils,standards,generation,review,governance,mandate",core,knowledge/playwright-utils-mandate.md
|
|
26
|
+
api-request,API Request,"Typed HTTP client, schema validation, retry logic, operation-based overload for API and service testing","api,backend,service-testing,api-testing,playwright-utils,openapi,codegen,operation",core,knowledge/api-request.md
|
|
27
|
+
network-recorder,Network Recorder,"HAR record/playback, CRUD detection for offline UI testing","network,playwright-utils,ui,har",extended,knowledge/network-recorder.md
|
|
28
|
+
auth-session,Auth Session,"Token persistence, multi-user, API and browser authentication","auth,playwright-utils,api,backend,jwt,token",core,knowledge/auth-session.md
|
|
29
|
+
intercept-network-call,Intercept Network Call,"Network spy/stub, JSON parsing for UI tests","network,playwright-utils,ui",extended,knowledge/intercept-network-call.md
|
|
30
|
+
recurse,Recurse Polling,"Async polling for API responses, background jobs, eventual consistency","polling,playwright-utils,api,backend,async,eventual-consistency",extended,knowledge/recurse.md
|
|
31
|
+
log,Log Utility,"Report logging, structured output for API and UI tests","logging,playwright-utils,api,ui",extended,knowledge/log.md
|
|
32
|
+
file-utils,File Utilities,"CSV/XLSX/PDF/ZIP validation for API exports and UI downloads","files,playwright-utils,api,backend,ui",extended,knowledge/file-utils.md
|
|
33
|
+
burn-in,Burn-in Runner,"Smart test selection, git diff for CI optimization","ci,playwright-utils",extended,knowledge/burn-in.md
|
|
34
|
+
network-error-monitor,Network Error Monitor,"HTTP 4xx/5xx detection for UI tests","monitoring,playwright-utils,ui",extended,knowledge/network-error-monitor.md
|
|
35
|
+
fixtures-composition,Fixtures Composition,"mergeTests composition patterns for combining utilities","fixtures,playwright-utils",extended,knowledge/fixtures-composition.md
|
|
36
|
+
api-testing-patterns,API Testing Patterns,"Pure API test patterns without browser: service testing, microservices, GraphQL","api,backend,service-testing,api-testing,microservices,graphql,no-browser",specialized,knowledge/api-testing-patterns.md
|
|
37
|
+
pactjs-utils-overview,Pact.js Utils Overview,"Installation, contract testing flows, utility table (createProviderState, toJsonMap, setJsonContent, setJsonBody)","pactjs-utils,contract-testing,pact,api,backend,microservices",specialized,knowledge/pactjs-utils-overview.md
|
|
38
|
+
pactjs-utils-mandate,Pact.js Utils Mandate,"Binding rule when tea_use_pactjs_utils is true: substitution table (hand-cast given to createProviderState, literal VerifierOptions to buildVerifierOptions, bespoke auth middleware to createRequestFilter), relevance gate before scaffolding, banned patterns, pre-emit self-check, broker degradation","pactjs-utils,contract-testing,pact,standards,generation,review,governance,mandate",core,knowledge/pactjs-utils-mandate.md
|
|
39
|
+
pactjs-utils-zod-to-pact,Pact.js Utils Zod to Pact,"zodToPactMatchers for consumer-curated schemas, example precedence, Pact V3 matcher mapping, and anti-patterns","pactjs-utils,zod,contract-testing,pact,consumer,schema,matchers,api",specialized,knowledge/pactjs-utils-zod-to-pact.md
|
|
40
|
+
pactjs-utils-consumer-helpers,Pact.js Utils Consumer Helpers,"createProviderState, toJsonMap, setJsonContent, setJsonBody; PactV4 one-interaction-per-it() determinism rule","pactjs-utils,consumer,contract-testing,pact,api,determinism,pactv4",specialized,knowledge/pactjs-utils-consumer-helpers.md
|
|
41
|
+
pactjs-utils-provider-verifier,Pact.js Utils Provider Verifier,"buildVerifierOptions, buildMessageVerifierOptions; vitest pool:forks + singleFork for FFI safety (same rule applies to consumer and provider)","pactjs-utils,provider,consumer,contract-testing,pact,api,backend,ci,vitest,ffi",specialized,knowledge/pactjs-utils-provider-verifier.md
|
|
42
|
+
pactjs-utils-request-filter,Pact.js Utils Request Filter,"createRequestFilter, noOpRequestFilter for auth injection","pactjs-utils,auth,contract-testing,pact",specialized,knowledge/pactjs-utils-request-filter.md
|
|
43
|
+
pact-mcp,Pact MCP Server,"SmartBear MCP for PactFlow: generate tests, review, can-i-deploy, provider states","pact,mcp,pactflow,contract-testing,broker",specialized,knowledge/pact-mcp.md
|
|
44
|
+
pact-consumer-framework-setup,Pact Consumer CDC Framework Setup,"Directory structure, vitest config with fileParallelism:false + pool:forks + singleFork:true (FFI safety), one-file-per-consumer+provider-pair rule (FFI handle collision prevention), jq-normalized publishing, 1:1 local/CI parity, PactV4 patterns","pactjs-utils,consumer,contract-testing,pact,ci,framework,setup,vitest,shell-scripts,jq,pactv4,ffi,file-organization,one-file-per-pair",specialized,knowledge/pact-consumer-framework-setup.md
|
|
45
|
+
pact-broker-webhooks,Pact Broker Webhooks,"PactFlow → GitHub repository_dispatch auth via dedicated machine user + classic PAT (repo scope, no expiration) + PactFlow secret; staleness monitoring and PAT rotation runbook","pact,pactflow,broker,webhooks,github,auth,pat,ci,operations,security",specialized,knowledge/pact-broker-webhooks.md
|
|
46
|
+
adr-quality-readiness-checklist,ADR Quality Readiness Checklist,"8-category 29-criteria framework for ADR testability and NFR evidence audit","nfr,testability,adr,quality,assessment,checklist",extended,knowledge/adr-quality-readiness-checklist.md
|
|
47
|
+
playwright-cli,Playwright CLI,"Token-efficient CLI for AI coding agents: element refs, sessions, snapshots, trace analysis, debug=cli autonomous investigation","cli,browser,agent,automation,snapshot,trace,debug",core,knowledge/playwright-cli.md
|
|
48
|
+
pact-consumer-di,Pact Consumer DI Pattern,"Dependency injection pattern for Pact consumer tests — call actual source code instead of raw fetch by injecting mock server URL via optional baseUrl in context type","contract-testing,pact,consumer,dependency-injection,api,backend,architecture",extended,knowledge/pact-consumer-di.md
|
|
49
|
+
webhook-fundamentals,Webhook Testing Fundamentals,"Why webhook delivery is hard: async, parallel pollution, opaque timeouts, cleanup drift. playwright-utils approach with polling, typed matchers, rich errors, startedAt isolation","webhook,async,playwright-utils,event-driven,eventually-consistent",core,knowledge/webhook-testing-fundamentals.md
|
|
50
|
+
webhook-setup,Webhook Module Setup,"Fixture wiring for WireMock/MockServer/Mockoon providers, matched-only vs full-reset cleanup strategy, fullyParallel race condition fix","webhook,fixtures,playwright-utils,wiremock,mockserver,mockoon,setup",core,knowledge/webhook-module-setup.md
|
|
51
|
+
webhook-matchers,Webhook Template Matchers,"matchField (dot-path exact), matchPartial (deep subset), matchPredicate (arbitrary fn), AND semantics, template factories, clone, withTimeout, withInterval","webhook,matchers,playwright-utils,templates,patterns",core,knowledge/webhook-template-matchers.md
|
|
52
|
+
webhook-waiting,Webhook Waiting and Querying,"waitFor, waitForCount, getReceived, drain pattern for sequential events, parallel worker safety via ID-scoped templates","webhook,async,playwright-utils,polling,patterns,eventually-consistent",core,knowledge/webhook-waiting-querying.md
|
|
53
|
+
webhook-timeout-error,WebhookTimeoutError Debugging,"templateName, timeoutMs, totalReceived, receivedWebhooks, matcherDetails, toJSON — inspect what arrived vs what was expected","webhook,debugging,errors,playwright-utils",extended,knowledge/webhook-timeout-error.md
|
|
54
|
+
webhook-providers,Webhook Provider Patterns,"WireMock (deleteById supported), MockServer (deleteById no-op), Mockoon (deleteById no-op, 100-entry limit), custom WebhookProvider interface","webhook,providers,playwright-utils,wiremock,mockserver,mockoon",extended,knowledge/webhook-providers.md
|
|
55
|
+
webhook-risk,Webhook Testing Risk Guidance,"When webhook tests are required, P2×I3 default risk score, complete test checklist, failure patterns and mitigations, TA assessment checklist","webhook,risk,assessment,event-driven,async,playwright-utils,governance",core,knowledge/webhook-risk-guidance.md
|
|
56
|
+
confidence-gate,Confidence Gate,"1-10 confidence scoring with stop-and-ask rule below threshold for selectors, endpoints, risk classification, fixtures, schemas, and data factories — prevents agent fabrication","reliability,agent-safety,generation,quality,governance",core,knowledge/confidence-gate.md
|
|
57
|
+
maestro-flows,Maestro Flow Patterns,"Declarative mobile flow structure, selector hierarchy (id > text > scoped text), clearState isolation, synchronization without sleeps, subflow composition, text selectors as whole-element regex, taps that report COMPLETED without being handled, visible meaning inside the viewport, asserting the transition rather than a state that may already hold, anti-patterns","mobile,maestro,ios,android,flows,selectors,ui",specialized,knowledge/maestro-flows.md
|
|
58
|
+
mobile-test-strategy,Mobile Test Strategy,"Mobile test level framework (unit/component/contract/device flow), what belongs in a device flow, mobile risk categories (permissions, lifecycle, connectivity, fragmentation, upgrade), device matrix with a gate profile matching local, CI shape, no live third-party flag evaluation in the run path","mobile,maestro,strategy,risk,levels,ci,ios,android",specialized,knowledge/mobile-test-strategy.md
|
|
59
|
+
evidence-integrity,Evidence Integrity,"Falsifiability of checks (hollow green, optional assertions, continue-on-error, partial manifests, assertions already true before the action), three-state diagnostics (pass/fail/could-not-measure), probes that issue the client's own request, verifying the outcome rather than the act, verifying framework properties before use, proving claims from the side that can observe them, environment asymmetry including screen geometry and accumulated credentials, ranking hypotheses by the cost of the measurement that kills them, recording what a change did rather than what it was for","quality,evidence,diagnostics,review,ci,gates,falsifiability",core,knowledge/evidence-integrity.md
|
|
60
|
+
mobile-ci-device-lab,Mobile CI Device Lab,"Build artifact selection (release build vs development shell vs debug-variant development build), native modules that degrade silently in a shell, deep links reachable through the shell routed URL form, development-server manifest signing in non-interactive CI, one device profile across local and CI, Android emulator snapshot caching and config.ini pitfalls, repairing locally created AVDs, per-device identity for sharded runs, runner version pinning, artifact layout and failure diagnosis, sharding measured on wall clock","mobile,maestro,ci,android,ios,expo,emulator,artifacts",specialized,knowledge/mobile-ci-device-lab.md
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module,skill,display-name,menu-code,description,action,args,phase,preceded-by,followed-by,required,output-location,outputs
|
|
2
|
+
Test Architecture Enterprise,_meta,,,,,,,,,false,https://cordya-ai.github.io/froid-plane-test-architecture-enterprise/llms.txt,
|
|
3
|
+
Test Architecture Enterprise,froid-teach-me-testing,Teach Me Testing,TMT,Teach testing fundamentals through 7 sessions (TEA Academy).,,,0-learning,,,false,test_artifacts,progress file|session notes|completion summary
|
|
4
|
+
Test Architecture Enterprise,froid-testarch-test-design,Test Design,TD,Risk-based test planning.,,,3-solutioning,,froid-testarch-framework,false,test_artifacts,test design document
|
|
5
|
+
Test Architecture Enterprise,froid-testarch-framework,Test Framework,TF,Initialize production-ready test framework.,,,3-solutioning,froid-testarch-test-design,froid-testarch-ci,false,test_artifacts,framework scaffold
|
|
6
|
+
Test Architecture Enterprise,froid-testarch-ci,CI Setup,CI,Configure CI/CD quality pipeline.,,,3-solutioning,froid-testarch-framework,,false,test_artifacts,ci config
|
|
7
|
+
Test Architecture Enterprise,froid-testarch-atdd,ATDD,AT,Generate red-phase acceptance test scaffolds before implementation.,,,4-implementation,froid-create-story:create,froid-dev-story,false,test_artifacts,atdd-checklist|red-phase acceptance tests
|
|
8
|
+
Test Architecture Enterprise,froid-testarch-automate,Test Automation,TA,Expand test coverage.,,,4-implementation,froid-testarch-atdd,,false,test_artifacts,test suite
|
|
9
|
+
Test Architecture Enterprise,froid-testarch-test-review,Test Review,RV,Quality audit (0-100 scoring).,,,4-implementation,froid-testarch-automate,,false,test_artifacts,review report
|
|
10
|
+
Test Architecture Enterprise,froid-testarch-nfr,NFR Evidence Audit,NR,Audit non-functional requirement evidence.,,,4-implementation,froid-testarch-automate,,false,test_artifacts,nfr report
|
|
11
|
+
Test Architecture Enterprise,froid-testarch-trace,Traceability,TR,Coverage traceability and gate.,,,4-implementation,froid-testarch-test-review,,false,test_artifacts,traceability matrix|gate decision
|
package/src/module.yaml
ADDED
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
code: tea
|
|
2
|
+
name: "Test Architect"
|
|
3
|
+
header: "Test Architect: quality strategy, automation, and release gates"
|
|
4
|
+
subheader: "Stack-neutral risk, traceability, and release-gate workflows for Froid Plane/Enterprise, with stack-specific execution for web, API, contract, mobile native (Maestro), and backend test suites"
|
|
5
|
+
description: "Master Test Architect for quality strategy, test automation, and release gates"
|
|
6
|
+
default_selected: false
|
|
7
|
+
|
|
8
|
+
agents:
|
|
9
|
+
- code: froid-tea
|
|
10
|
+
name: Murat
|
|
11
|
+
title: Master Test Architect and Quality Advisor
|
|
12
|
+
icon: "🧪"
|
|
13
|
+
description: "Risk-based testing strategy, fixture architecture, ATDD, API and UI automation (Playwright, Cypress, pytest, JUnit, Go test, xUnit, RSpec), mobile native automation (Maestro), consumer-driven contract testing (Pact), and performance/load/chaos testing (k6). Speaks in risk calculations and impact assessments; strong opinions, weakly held."
|
|
14
|
+
team: software-development
|
|
15
|
+
|
|
16
|
+
# Variables from Core Config inserted automatically by installer:
|
|
17
|
+
## user_name
|
|
18
|
+
## communication_language
|
|
19
|
+
## document_output_language
|
|
20
|
+
## output_folder
|
|
21
|
+
## project_root
|
|
22
|
+
|
|
23
|
+
# TEA-specific configuration variables
|
|
24
|
+
# IMPORTANT: tea_use_playwright_utils, tea_use_pactjs_utils, tea_pact_mcp, tea_browser_automation,
|
|
25
|
+
# tea_execution_mode, tea_capability_probe, test_stack_type, ci_platform,
|
|
26
|
+
# and test_framework are ACTIVELY USED in workflows
|
|
27
|
+
# Other variables are FUTURE placeholders for Phase 10 enhancements
|
|
28
|
+
|
|
29
|
+
test_artifacts:
|
|
30
|
+
prompt: "Where should test artifacts be stored? (test plans, coverage reports, quality audits)"
|
|
31
|
+
default: "{output_folder}/test-artifacts"
|
|
32
|
+
result: "{project-root}/{value}"
|
|
33
|
+
|
|
34
|
+
# ✅ ACTIVELY USED - Playwright Utils integration (referenced in 6 workflows: automate, atdd, framework, test-design, test-review, ci)
|
|
35
|
+
# CRITICAL: Must be boolean (true/false) not string - workflows check "if config.tea_use_playwright_utils: true"
|
|
36
|
+
# When true, playwright-utils-mandate.md binds generation and review: the package is the default
|
|
37
|
+
# implementation for what it covers, not an option the user has to ask for by name.
|
|
38
|
+
tea_use_playwright_utils:
|
|
39
|
+
prompt: "Enable Playwright Utils integration?"
|
|
40
|
+
default: true
|
|
41
|
+
result: "{value}"
|
|
42
|
+
single-select:
|
|
43
|
+
- value: true
|
|
44
|
+
label: "Yes - Use production utilities (Recommended)"
|
|
45
|
+
- value: false
|
|
46
|
+
label: "No - Generate from scratch"
|
|
47
|
+
|
|
48
|
+
# ✅ ACTIVELY USED - Pact.js Utils integration for contract testing (referenced in workflows: automate, atdd, framework, test-design, test-review, ci)
|
|
49
|
+
# CRITICAL: Must be boolean (true/false) not string - workflows check "if config.tea_use_pactjs_utils: true"
|
|
50
|
+
# When true, pactjs-utils-mandate.md binds any Pact suite TEA writes. It does NOT mean every project
|
|
51
|
+
# gets contract tests: the mandate's relevance gate still requires a real consumer-provider boundary.
|
|
52
|
+
tea_use_pactjs_utils:
|
|
53
|
+
prompt: "Enable Pact.js Utils for consumer-driven contract testing?"
|
|
54
|
+
default: true
|
|
55
|
+
result: "{value}"
|
|
56
|
+
single-select:
|
|
57
|
+
- value: true
|
|
58
|
+
label: "Yes - Use production utilities when contract tests are written (Recommended)"
|
|
59
|
+
- value: false
|
|
60
|
+
label: "No - Generate raw Pact from scratch"
|
|
61
|
+
|
|
62
|
+
# ✅ ACTIVELY USED - Pact MCP integration for broker interaction during contract testing
|
|
63
|
+
# Controls how TEA interacts with PactFlow/Pact Broker during test generation and review
|
|
64
|
+
# CRITICAL: Must be a string value: "mcp" | "none"
|
|
65
|
+
# Default "mcp" is safe without a broker: every broker-dependent step degrades per pact-mcp.md when the
|
|
66
|
+
# MCP tools are unreachable (falls back to provider source or OpenAPI, reports it, and continues).
|
|
67
|
+
tea_pact_mcp:
|
|
68
|
+
prompt: "Enable SmartBear MCP for PactFlow/Pact Broker? Used when a broker is reachable; skipped automatically when it is not."
|
|
69
|
+
default: "mcp"
|
|
70
|
+
result: "{value}"
|
|
71
|
+
single-select:
|
|
72
|
+
- value: "mcp"
|
|
73
|
+
label: "Yes - Use the broker when it is reachable (Recommended)"
|
|
74
|
+
- value: "none"
|
|
75
|
+
label: "No - Never attempt broker/MCP integration"
|
|
76
|
+
|
|
77
|
+
# ✅ ACTIVELY USED - Browser automation strategy for TEA workflows
|
|
78
|
+
# Controls how TEA interacts with live browsers during test generation
|
|
79
|
+
# CRITICAL: Must be a string value: "auto" | "cli" | "mcp" | "none"
|
|
80
|
+
tea_browser_automation:
|
|
81
|
+
prompt: "How should TEA interact with browsers during test generation?"
|
|
82
|
+
default: "auto"
|
|
83
|
+
result: "{value}"
|
|
84
|
+
single-select:
|
|
85
|
+
- value: "auto"
|
|
86
|
+
label: "Auto - Smart selection (Recommended)"
|
|
87
|
+
- value: "cli"
|
|
88
|
+
label: "CLI only - Playwright CLI (@playwright/cli)"
|
|
89
|
+
- value: "mcp"
|
|
90
|
+
label: "MCP only - Playwright MCP servers"
|
|
91
|
+
- value: "none"
|
|
92
|
+
label: "None - No live browser interaction"
|
|
93
|
+
|
|
94
|
+
# ✅ ACTIVELY USED - Orchestration strategy for workflow execution
|
|
95
|
+
# Controls whether TEA runs orchestration steps sequentially, with subagents, or with agent teams
|
|
96
|
+
# CRITICAL: Must be a string value: "auto" | "subagent" | "agent-team" | "sequential"
|
|
97
|
+
tea_execution_mode:
|
|
98
|
+
prompt: "How should TEA orchestrate multi-step generation and evaluation?"
|
|
99
|
+
default: "auto"
|
|
100
|
+
result: "{value}"
|
|
101
|
+
single-select:
|
|
102
|
+
- value: "auto"
|
|
103
|
+
label: "Auto - Probe capabilities and pick best mode (Recommended)"
|
|
104
|
+
- value: "subagent"
|
|
105
|
+
label: "Subagent workers - Isolated parallel workers only"
|
|
106
|
+
- value: "agent-team"
|
|
107
|
+
label: "Agent Team - Team/delegate mode when available"
|
|
108
|
+
- value: "sequential"
|
|
109
|
+
label: "Sequential - Deterministic single-threaded execution"
|
|
110
|
+
|
|
111
|
+
# ✅ ACTIVELY USED - Probe runtime capabilities before selecting execution mode
|
|
112
|
+
# When true, TEA checks whether subagent/agent-team execution is actually supported and falls back safely.
|
|
113
|
+
tea_capability_probe:
|
|
114
|
+
prompt: "Probe runtime capabilities before selecting execution mode?"
|
|
115
|
+
default: true
|
|
116
|
+
result: "{value}"
|
|
117
|
+
single-select:
|
|
118
|
+
- value: true
|
|
119
|
+
label: "Yes - Probe and fallback automatically (Recommended)"
|
|
120
|
+
- value: false
|
|
121
|
+
label: "No - Honor configured mode strictly"
|
|
122
|
+
|
|
123
|
+
# ✅ ACTIVELY USED - Stack type detection for multi-framework support
|
|
124
|
+
test_stack_type:
|
|
125
|
+
prompt: "What type of project is this?"
|
|
126
|
+
default: "auto"
|
|
127
|
+
result: "{value}"
|
|
128
|
+
single-select:
|
|
129
|
+
- value: "auto"
|
|
130
|
+
label: "Auto-detect from project files (Recommended)"
|
|
131
|
+
- value: "frontend"
|
|
132
|
+
label: "Frontend (Node.js, React, Vue, Angular)"
|
|
133
|
+
- value: "backend"
|
|
134
|
+
label: "Backend (Python, Java, Go, .NET, Rust)"
|
|
135
|
+
- value: "fullstack"
|
|
136
|
+
label: "Full-stack (both frontend and backend)"
|
|
137
|
+
- value: "mobile"
|
|
138
|
+
label: "Mobile native (iOS, Android, React Native, Flutter)"
|
|
139
|
+
|
|
140
|
+
# ✅ ACTIVELY USED - CI/CD platform detection
|
|
141
|
+
ci_platform:
|
|
142
|
+
prompt: "Which CI/CD platform do you use?"
|
|
143
|
+
default: "auto"
|
|
144
|
+
result: "{value}"
|
|
145
|
+
single-select:
|
|
146
|
+
- value: "auto"
|
|
147
|
+
label: "Auto-detect from repository (Recommended)"
|
|
148
|
+
- value: "github-actions"
|
|
149
|
+
label: "GitHub Actions"
|
|
150
|
+
- value: "gitlab-ci"
|
|
151
|
+
label: "GitLab CI"
|
|
152
|
+
- value: "jenkins"
|
|
153
|
+
label: "Jenkins"
|
|
154
|
+
- value: "azure-devops"
|
|
155
|
+
label: "Azure DevOps Pipelines"
|
|
156
|
+
- value: "harness"
|
|
157
|
+
label: "Harness CI"
|
|
158
|
+
- value: "circle-ci"
|
|
159
|
+
label: "CircleCI"
|
|
160
|
+
- value: "other"
|
|
161
|
+
label: "Other/Custom"
|
|
162
|
+
|
|
163
|
+
# ✅ ACTIVELY USED - Test framework selection for multi-stack support
|
|
164
|
+
test_framework:
|
|
165
|
+
prompt: "Which test framework are you using?"
|
|
166
|
+
default: "auto"
|
|
167
|
+
result: "{value}"
|
|
168
|
+
single-select:
|
|
169
|
+
- value: "auto"
|
|
170
|
+
label: "Auto-detect from project files (Recommended)"
|
|
171
|
+
- value: "playwright"
|
|
172
|
+
label: "Playwright (JavaScript/TypeScript)"
|
|
173
|
+
- value: "cypress"
|
|
174
|
+
label: "Cypress (JavaScript/TypeScript)"
|
|
175
|
+
- value: "jest"
|
|
176
|
+
label: "Jest (JavaScript/TypeScript)"
|
|
177
|
+
- value: "vitest"
|
|
178
|
+
label: "Vitest (JavaScript/TypeScript)"
|
|
179
|
+
- value: "pytest"
|
|
180
|
+
label: "pytest (Python)"
|
|
181
|
+
- value: "junit"
|
|
182
|
+
label: "JUnit (Java/Kotlin)"
|
|
183
|
+
- value: "go-test"
|
|
184
|
+
label: "Go test (Go)"
|
|
185
|
+
- value: "dotnet-test"
|
|
186
|
+
label: "dotnet test (C#/.NET)"
|
|
187
|
+
- value: "rspec"
|
|
188
|
+
label: "RSpec (Ruby)"
|
|
189
|
+
- value: "maestro"
|
|
190
|
+
label: "Maestro (mobile native: iOS/Android)"
|
|
191
|
+
- value: "other"
|
|
192
|
+
label: "Other/Custom"
|
|
193
|
+
|
|
194
|
+
# ⏭️ FUTURE - Risk threshold (not currently used in test-design workflow, marked for Phase 10)
|
|
195
|
+
risk_threshold:
|
|
196
|
+
prompt: "What risk level requires mandatory testing?"
|
|
197
|
+
default: "p1"
|
|
198
|
+
result: "{value}"
|
|
199
|
+
single-select:
|
|
200
|
+
- value: "p0"
|
|
201
|
+
label: "P0 only (Critical systems)"
|
|
202
|
+
- value: "p1"
|
|
203
|
+
label: "P1+ (High & Critical)"
|
|
204
|
+
- value: "p2"
|
|
205
|
+
label: "P2+ (Medium, High & Critical)"
|
|
206
|
+
- value: "p3"
|
|
207
|
+
label: "All (P0-P3)"
|
|
208
|
+
|
|
209
|
+
# ⏭️ FUTURE - Test output folders (not currently wired into workflows, marked for Phase 10)
|
|
210
|
+
# IMPORTANT: test_artifacts already resolves to {project-root}/..., so don't re-prepend {project-root}
|
|
211
|
+
test_design_output:
|
|
212
|
+
prompt: "Where should test design documents be stored?"
|
|
213
|
+
default: "test-design"
|
|
214
|
+
result: "{test_artifacts}/{value}"
|
|
215
|
+
|
|
216
|
+
test_review_output:
|
|
217
|
+
prompt: "Where should test review reports be stored?"
|
|
218
|
+
default: "test-reviews"
|
|
219
|
+
result: "{test_artifacts}/{value}"
|
|
220
|
+
|
|
221
|
+
trace_output:
|
|
222
|
+
prompt: "Where should traceability reports be stored?"
|
|
223
|
+
default: "traceability"
|
|
224
|
+
result: "{test_artifacts}/{value}"
|
|
225
|
+
|
|
226
|
+
post-install-notes:
|
|
227
|
+
test_stack_type:
|
|
228
|
+
auto: |
|
|
229
|
+
Stack Auto-Detection:
|
|
230
|
+
TEA will detect your project type from manifest files:
|
|
231
|
+
- Frontend: package.json with react/vue/angular, playwright.config.*, vite.config.*
|
|
232
|
+
- Backend: pyproject.toml, pom.xml, go.mod, *.csproj, Gemfile, Cargo.toml
|
|
233
|
+
- Mobile: .maestro/ or maestro/ flows, app.json with expo/react-native, Podfile,
|
|
234
|
+
android/app/build.gradle, *.xcodeproj, pubspec.yaml
|
|
235
|
+
- Full-stack: both frontend and backend indicators present
|
|
236
|
+
Mobile is checked before frontend, because a React Native project carries
|
|
237
|
+
package.json with react and would otherwise misdetect as a web frontend.
|
|
238
|
+
Projects with mobile indicators are classified as Mobile even when test_stack_type is auto, while preserving the existing frontend behavior for projects without those indicators.
|
|
239
|
+
ci_platform:
|
|
240
|
+
auto: |
|
|
241
|
+
CI Platform Auto-Detection:
|
|
242
|
+
TEA will detect your CI platform from repository files:
|
|
243
|
+
- GitHub Actions: .github/workflows/
|
|
244
|
+
- GitLab CI: .gitlab-ci.yml
|
|
245
|
+
- Jenkins: Jenkinsfile
|
|
246
|
+
- Azure DevOps: azure-pipelines.yml
|
|
247
|
+
- Harness: .harness/
|
|
248
|
+
- CircleCI: .circleci/config.yml
|
|
249
|
+
Existing installations without ci_platform default to "auto".
|
|
250
|
+
tea_browser_automation:
|
|
251
|
+
cli: |
|
|
252
|
+
Playwright CLI Setup:
|
|
253
|
+
npm install -g @playwright/cli@latest
|
|
254
|
+
playwright-cli install --skills # Run from project root
|
|
255
|
+
Node.js 18+ required.
|
|
256
|
+
mcp: |
|
|
257
|
+
Playwright MCP Setup (two servers):
|
|
258
|
+
1. playwright — npx @playwright/mcp@latest
|
|
259
|
+
2. playwright-test — npx playwright run-test-mcp-server
|
|
260
|
+
Configure both MCP servers in your IDE settings.
|
|
261
|
+
See: https://github.com/microsoft/playwright-mcp
|
|
262
|
+
auto: |
|
|
263
|
+
Playwright CLI Setup:
|
|
264
|
+
npm install -g @playwright/cli@latest
|
|
265
|
+
playwright-cli install --skills # Run from project root
|
|
266
|
+
Node.js 18+ required.
|
|
267
|
+
|
|
268
|
+
Playwright MCP Setup (two servers):
|
|
269
|
+
1. playwright — npx @playwright/mcp@latest
|
|
270
|
+
2. playwright-test — npx playwright run-test-mcp-server
|
|
271
|
+
Configure both MCP servers in your IDE settings.
|
|
272
|
+
See: https://github.com/microsoft/playwright-mcp
|
|
273
|
+
|
|
274
|
+
tea_execution_mode:
|
|
275
|
+
auto: |
|
|
276
|
+
Execution Mode (Auto):
|
|
277
|
+
TEA probes runtime capabilities at orchestration steps.
|
|
278
|
+
Selection order:
|
|
279
|
+
1. agent-team (if supported)
|
|
280
|
+
2. subagent (if supported)
|
|
281
|
+
3. sequential (fallback)
|
|
282
|
+
This keeps behavior portable across Codex, Claude Code, and other runtimes.
|
|
283
|
+
subagent: |
|
|
284
|
+
Execution Mode (Subagent):
|
|
285
|
+
TEA will prefer isolated subagent workers for parallel orchestration.
|
|
286
|
+
If capability probing is enabled and subagent support is unavailable, TEA falls back safely.
|
|
287
|
+
agent-team: |
|
|
288
|
+
Execution Mode (Agent Team):
|
|
289
|
+
TEA will prefer team/delegation orchestration when runtime supports it.
|
|
290
|
+
If capability probing is enabled and agent-team support is unavailable, TEA falls back safely.
|
|
291
|
+
sequential: |
|
|
292
|
+
Execution Mode (Sequential):
|
|
293
|
+
TEA disables parallel orchestration and runs worker steps one by one.
|
|
294
|
+
Useful for deterministic debugging and constrained environments.
|
|
295
|
+
|
|
296
|
+
tea_use_playwright_utils:
|
|
297
|
+
true: |
|
|
298
|
+
Playwright Utils Setup:
|
|
299
|
+
npm install -D @seontechnologies/playwright-utils
|
|
300
|
+
Peer dependency: @playwright/test >= 1.54.1
|
|
301
|
+
Optional, for schema validation: ajv >= 8.0.0, zod >= 3.0.0
|
|
302
|
+
The flag is binding once set: TEA generates against these utilities by default
|
|
303
|
+
and flags a hand-rolled equivalent that carries no stated reason. The mandate
|
|
304
|
+
only applies once the package is installed, so run the framework workflow (TF)
|
|
305
|
+
or the install above before expecting it to take effect.
|
|
306
|
+
Docs: https://seontechnologies.github.io/playwright-utils/
|
|
307
|
+
tea_use_pactjs_utils:
|
|
308
|
+
true: |
|
|
309
|
+
Pact.js Utils Setup:
|
|
310
|
+
npm install -D @seontechnologies/pactjs-utils
|
|
311
|
+
Peer dependency: @pact-foundation/pact >= 16.2.0
|
|
312
|
+
npm install -D @pact-foundation/pact
|
|
313
|
+
For remote flow (with Pact Broker):
|
|
314
|
+
Set PACT_BROKER_BASE_URL and PACT_BROKER_TOKEN as env vars or CI secrets.
|
|
315
|
+
Also set GITHUB_SHA (auto-set by GitHub Actions) and GITHUB_BRANCH (must be defined explicitly: ${{ github.head_ref || github.ref_name }}).
|
|
316
|
+
For local flow (monorepo):
|
|
317
|
+
No broker needed - consumer generates pacts, provider verifies locally.
|
|
318
|
+
Docs: https://seontechnologies.github.io/pactjs-utils/
|
|
319
|
+
tea_pact_mcp:
|
|
320
|
+
mcp: |
|
|
321
|
+
SmartBear MCP Setup (PactFlow integration):
|
|
322
|
+
Install: npm install -g @smartbear/mcp
|
|
323
|
+
Claude Code (global): claude mcp add-json -s user smartbear '{"type":"stdio","command":"npx","args":["-y","@smartbear/mcp@latest"],"env":{"PACT_BROKER_BASE_URL":"https://{tenant}.pactflow.io","PACT_BROKER_TOKEN":"<your-api-token>"}}'
|
|
324
|
+
Required env vars:
|
|
325
|
+
PACT_BROKER_BASE_URL=https://{tenant}.pactflow.io
|
|
326
|
+
PACT_BROKER_TOKEN=<your-api-token>
|
|
327
|
+
Requires: Node.js 20+
|
|
328
|
+
Docs: https://developer.smartbear.com/smartbear-mcp/docs/getting-started
|
|
329
|
+
|
|
330
|
+
# Directories to create during installation (declarative, no code execution)
|
|
331
|
+
directories:
|
|
332
|
+
- "{test_artifacts}"
|