ma-agents 3.12.2 → 3.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +11 -6
- package/docs/architecture.md +18 -0
- package/lib/bmad-cache/bmb/.claude-plugin/marketplace.json +1 -1
- package/lib/bmad-cache/bmb/_git_preserved/hooks/commit-msg.sample +52 -2
- package/lib/bmad-cache/bmb/_git_preserved/hooks/fsmonitor-watchman.sample +2 -8
- package/lib/bmad-cache/bmb/_git_preserved/index +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-8f8b045fef5af6911495cf3b2a89f1ed75e120f7.idx +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-8f8b045fef5af6911495cf3b2a89f1ed75e120f7.pack +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-8f8b045fef5af6911495cf3b2a89f1ed75e120f7.rev +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/bmb/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/bmb/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/bmb/package-lock.json +2 -2
- package/lib/bmad-cache/bmb/package.json +1 -1
- package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/assets/module-help.csv +1 -1
- package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/merge-config.py +33 -0
- package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/merge-help-csv.py +28 -0
- package/lib/bmad-cache/bmb/samples/sample-module-setup/assets/module-help.csv +1 -1
- package/lib/bmad-cache/bmb/samples/sample-module-setup/scripts/cleanup-legacy.py +28 -0
- package/lib/bmad-cache/bmb/samples/sample-module-setup/scripts/merge-config.py +33 -0
- package/lib/bmad-cache/bmb/samples/sample-module-setup/scripts/merge-help-csv.py +28 -0
- package/lib/bmad-cache/bmb/skills/bmad-bmb-setup/assets/module-help.csv +1 -1
- package/lib/bmad-cache/bmb/skills/bmad-bmb-setup/scripts/cleanup-legacy.py +28 -0
- package/lib/bmad-cache/bmb/skills/bmad-bmb-setup/scripts/merge-config.py +33 -0
- package/lib/bmad-cache/bmb/skills/bmad-bmb-setup/scripts/merge-help-csv.py +28 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/assets/Dockerfile +29 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/scripts/docker_setup.py +115 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/scripts/generate_report.py +184 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/scripts/pty_runner.py +171 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/scripts/run_evals.py +492 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/scripts/run_triggers.py +366 -0
- package/lib/bmad-cache/bmb/skills/bmad-eval-runner/scripts/utils.py +260 -0
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/assets/setup-skill-template/assets/module-help.csv +1 -1
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/assets/setup-skill-template/scripts/cleanup-legacy.py +28 -0
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/assets/setup-skill-template/scripts/merge-config.py +33 -0
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/assets/setup-skill-template/scripts/merge-help-csv.py +28 -0
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/assets/standalone-module-template/merge-config.py +33 -0
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/assets/standalone-module-template/merge-help-csv.py +28 -0
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/scripts/tests/test-validate-module.py +74 -1
- package/lib/bmad-cache/bmb/skills/bmad-module-builder/scripts/validate-module.py +24 -13
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/sample-customize-product-brief.toml +48 -33
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/scripts/extract-report-json.py +287 -0
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/scripts/generate-html-report.py +57 -8
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/scripts/prepass-prompt-metrics.py +7 -7
- package/lib/bmad-cache/bmb/skills/module-help.csv +1 -1
- package/lib/bmad-cache/bmb/website/public/img/eval-test-types.png +0 -0
- package/lib/bmad-cache/cache-manifest.json +17 -18
- package/lib/bmad-cache/cis/_git_preserved/hooks/commit-msg.sample +52 -2
- package/lib/bmad-cache/cis/_git_preserved/hooks/fsmonitor-watchman.sample +2 -8
- package/lib/bmad-cache/cis/_git_preserved/index +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-18c8290560a98bcb7bf0676e6cc9b2ac5ca2823e.idx +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/{pack-42ffc048f54e58ce94c6331bc6be97ebbb7936f2.pack → pack-18c8290560a98bcb7bf0676e6cc9b2ac5ca2823e.pack} +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-18c8290560a98bcb7bf0676e6cc9b2ac5ca2823e.rev +0 -0
- package/lib/bmad-cache/cis/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/cis/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/cis/_git_preserved/refs/tags/v0.2.1 +1 -0
- package/lib/bmad-cache/cis/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/cis/package-lock.json +2 -2
- package/lib/bmad-cache/cis/package.json +1 -1
- package/lib/bmad-cache/cis/src/module-help.csv +1 -1
- package/lib/bmad-cache/gds/.claude-plugin/marketplace.json +4 -7
- package/lib/bmad-cache/gds/README.md +3 -1
- package/lib/bmad-cache/gds/_git_preserved/hooks/commit-msg.sample +52 -2
- package/lib/bmad-cache/gds/_git_preserved/hooks/fsmonitor-watchman.sample +2 -8
- package/lib/bmad-cache/gds/_git_preserved/index +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-dcb7c556d9bb6b6b70d2301e094eaac6d7300552.idx +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/{pack-9427a146a90c00bb542cba038874bf9671ba4dc0.pack → pack-dcb7c556d9bb6b6b70d2301e094eaac6d7300552.pack} +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-dcb7c556d9bb6b6b70d2301e094eaac6d7300552.rev +0 -0
- package/lib/bmad-cache/gds/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/gds/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/gds/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/gds/package.json +1 -1
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/customize.toml +5 -5
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/customize.toml +5 -5
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/customize.toml +0 -5
- package/lib/bmad-cache/gds/src/module-help.csv +6 -12
- package/lib/bmad-cache/gds/src/module.yaml +1 -1
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/customize.toml +97 -22
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/assets/validation-report-template.html +190 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/customize.toml +99 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/scripts/render-validation-html.py +290 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-prd/assets/validation-report-template.html +190 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-prd/customize.toml +84 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-ux/assets/validation-report-template.html +319 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-ux/customize.toml +101 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/architecture-patterns.yaml +1 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/decision-catalog.yaml +88 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/engine-mcps.yaml +124 -2
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-investigate/customize.toml +62 -0
- package/lib/bmad-cache/tea/.claude-plugin/marketplace.json +1 -1
- package/lib/bmad-cache/tea/.github/workflows/docs.yaml +3 -3
- package/lib/bmad-cache/tea/.github/workflows/quality.yaml +10 -10
- package/lib/bmad-cache/tea/AGENTS.md +31 -0
- package/lib/bmad-cache/tea/CHANGELOG.md +42 -1
- package/lib/bmad-cache/tea/README.md +8 -5
- package/lib/bmad-cache/tea/_git_preserved/hooks/commit-msg.sample +52 -2
- package/lib/bmad-cache/tea/_git_preserved/hooks/fsmonitor-watchman.sample +2 -8
- package/lib/bmad-cache/tea/_git_preserved/index +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9e4197e37df7763dd7a05c2965ee921dfd2eb617.idx +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/{pack-f0df537f2649464ff6c5aee241165eb9c8664227.pack → pack-9e4197e37df7763dd7a05c2965ee921dfd2eb617.pack} +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9e4197e37df7763dd7a05c2965ee921dfd2eb617.rev +0 -0
- package/lib/bmad-cache/tea/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/tea/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/tea/_git_preserved/refs/tags/v1.19.0 +1 -0
- package/lib/bmad-cache/tea/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/tea/docs/explanation/engagement-models.md +15 -16
- package/lib/bmad-cache/tea/docs/explanation/knowledge-base-system.md +2 -0
- package/lib/bmad-cache/tea/docs/explanation/risk-based-testing.md +1 -1
- package/lib/bmad-cache/tea/docs/explanation/tea-overview.md +88 -52
- package/lib/bmad-cache/tea/docs/explanation/testing-as-engineering.md +13 -12
- package/lib/bmad-cache/tea/docs/glossary/index.md +2 -2
- package/lib/bmad-cache/tea/docs/how-to/brownfield/use-tea-for-enterprise.md +19 -18
- package/lib/bmad-cache/tea/docs/how-to/brownfield/use-tea-with-existing-tests.md +1 -1
- package/lib/bmad-cache/tea/docs/how-to/workflows/run-nfr-assess.md +32 -26
- package/lib/bmad-cache/tea/docs/how-to/workflows/run-test-design.md +20 -14
- package/lib/bmad-cache/tea/docs/how-to/workflows/run-trace.md +3 -3
- package/lib/bmad-cache/tea/docs/index.md +13 -11
- package/lib/bmad-cache/tea/docs/reference/commands.md +37 -13
- package/lib/bmad-cache/tea/docs/reference/knowledge-base.md +2 -2
- package/lib/bmad-cache/tea/package-lock.json +2 -2
- package/lib/bmad-cache/tea/package.json +1 -1
- package/lib/bmad-cache/tea/src/agents/bmad-tea/customize.toml +20 -15
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/confidence-gate.md +73 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/test-quality.md +1 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/tea-index.csv +2 -1
- package/lib/bmad-cache/tea/src/module-help.csv +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/README.md +5 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/role-paths.yaml +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/tea-resources-index.yaml +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-01.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-07.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/templates/certificate-template.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/SKILL.md +3 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/checklist.md +11 -11
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/instructions.md +4 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/nfr-report-template.md +5 -5
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01b-resume.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-02-define-thresholds.md +14 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04-evaluate-and-score.md +7 -7
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04a-subagent-security.md +4 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04b-subagent-performance.md +4 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04c-subagent-reliability.md +4 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04d-subagent-scalability.md +4 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +4 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-05-generate-report.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow-plan.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow.yaml +3 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/checklist.md +23 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-02-load-context.md +7 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-03-risk-and-testability.md +16 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-04-coverage-plan.md +20 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-05-generate-output.md +2 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-architecture-template.md +17 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-qa-template.md +15 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-template.md +16 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/checklist.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/tea-index.csv +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/trace-template.md +1 -1
- package/lib/bmad-cache/tea/test/test-installation-components.js +49 -0
- package/lib/bmad-cache/tea/website/astro.config.mjs +2 -2
- package/lib/bmad-cache/wds/README.md +1 -1
- package/lib/bmad-cache/wds/_git_preserved/hooks/commit-msg.sample +52 -2
- package/lib/bmad-cache/wds/_git_preserved/hooks/fsmonitor-watchman.sample +2 -8
- package/lib/bmad-cache/wds/_git_preserved/index +0 -0
- package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-656c3d8d5426e73043b6a7f45eedaab74e3c419e.idx +0 -0
- package/lib/bmad-cache/wds/_git_preserved/objects/pack/{pack-96877c1c09123cccb1f91c1412184b11d2b492ad.pack → pack-656c3d8d5426e73043b6a7f45eedaab74e3c419e.pack} +0 -0
- package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-656c3d8d5426e73043b6a7f45eedaab74e3c419e.rev +0 -0
- package/lib/bmad-cache/wds/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/wds/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/wds/_git_preserved/refs/tags/v0.4.3 +1 -0
- package/lib/bmad-cache/wds/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/wds/eslint.config.mjs +1 -1
- package/lib/bmad-cache/wds/package.json +1 -1
- package/lib/bmad-cache/wds/src/agents/wds-agent-freya-ux/customize.toml +80 -0
- package/lib/bmad-cache/wds/src/agents/wds-agent-mimir-builder/customize.toml +52 -0
- package/lib/bmad-cache/wds/src/agents/wds-agent-saga-analyst/customize.toml +70 -0
- package/lib/bmad-cache/wds/src/module-help.csv +19 -19
- package/lib/bmad-cache/wds/src/module.yaml +28 -0
- package/lib/bmad-cache/wds/src/scripts/README.md +155 -0
- package/lib/bmad-cache/wds/src/scripts/wds-add-object.js +202 -0
- package/lib/bmad-cache/wds/src/scripts/wds-add-spacing.js +158 -0
- package/lib/bmad-cache/wds/src/scripts/wds-init-page.js +229 -0
- package/lib/bmad-cache/wds/src/scripts/wds-init-scenario.js +120 -0
- package/lib/bmad-cache/wds/src/scripts/wds-nav.js +201 -0
- package/lib/bmad-cache/wds/src/scripts/wds-validate.js +301 -0
- package/lib/bmad-cache/wds/src/workflows/wds-3-scenarios/workflow.xml +450 -0
- package/lib/bmad-cache/wds/src/workflows/wds-4-ux-design/workflow-specify.xml +387 -0
- package/lib/bmad-extension/.claude-plugin/marketplace.json.template +1 -1
- package/lib/bmad-extension-plugin/.claude-plugin/marketplace.json +2 -2
- package/lib/bmad.js +91 -7
- package/lib/installer.js +28 -6
- package/lib/mil498-templates/OCD.md +169 -169
- package/lib/mil498-templates/README.md +4 -4
- package/lib/mil498-templates/SDD.md +163 -163
- package/lib/mil498-templates/SDP.md +307 -307
- package/lib/mil498-templates/SRS.md +219 -219
- package/lib/mil498-templates/SSDD.md +154 -154
- package/lib/mil498-templates/SSS.md +225 -225
- package/lib/mil498-templates/STD.md +188 -188
- package/lib/templates/instruction-block-git.template.md +25 -0
- package/package.json +5 -4
- package/scripts/build-bmad-cache.js +143 -42
- package/skills/git-workflow-skill/skill.json +21 -21
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.idx +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.pack +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.rev +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/refs/remotes/origin/HEAD +0 -1
- package/lib/bmad-cache/bmb/_git_preserved/refs/tags/v1.7.0 +0 -1
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/scripts/generate-convert-report.py +0 -406
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/scripts/tests/test_generate_convert_report.py +0 -243
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-42ffc048f54e58ce94c6331bc6be97ebbb7936f2.idx +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-42ffc048f54e58ce94c6331bc6be97ebbb7936f2.rev +0 -0
- package/lib/bmad-cache/cis/_git_preserved/refs/remotes/origin/HEAD +0 -1
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-9427a146a90c00bb542cba038874bf9671ba4dc0.idx +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-9427a146a90c00bb542cba038874bf9671ba4dc0.rev +0 -0
- package/lib/bmad-cache/gds/_git_preserved/refs/remotes/origin/HEAD +0 -1
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-prd/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-prd/data/domain-complexity.csv +0 -15
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-prd/data/project-types.csv +0 -11
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-gdd/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-prd/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/customize.toml +0 -41
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/domain-complexity.csv +0 -15
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/project-types.csv +0 -11
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-f0df537f2649464ff6c5aee241165eb9c8664227.idx +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-f0df537f2649464ff6c5aee241165eb9c8664227.rev +0 -0
- package/lib/bmad-cache/tea/_git_preserved/refs/remotes/origin/HEAD +0 -1
- package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-96877c1c09123cccb1f91c1412184b11d2b492ad.idx +0 -0
- package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-96877c1c09123cccb1f91c1412184b11d2b492ad.rev +0 -0
- package/lib/bmad-cache/wds/_git_preserved/refs/remotes/origin/HEAD +0 -1
- package/lib/bmad-cache/wds/src/agents/wds-agent-freya-ux/bmad-skill-manifest.yaml +0 -12
- package/lib/bmad-cache/wds/src/agents/wds-agent-saga-analyst/bmad-skill-manifest.yaml +0 -12
- package/lib/bmad-cache/wds/src/workflows/wds-0-alignment-signoff/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-0-project-setup/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-1-project-brief/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-2-trigger-mapping/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-3-scenarios/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-4-ux-design/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-6-asset-generation/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-7-design-system/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/wds/src/workflows/wds-8-product-evolution/bmad-skill-manifest.yaml +0 -1
- /package/lib/bmad-cache/gds/src/workflows/2-design/{gds-create-gdd → gds-gdd/assets}/game-types.csv +0 -0
- /package/lib/bmad-cache/gds/src/workflows/2-design/{gds-validate-gdd/data → gds-gdd/assets}/genre-complexity.csv +0 -0
package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/tea-index.csv
CHANGED
|
@@ -39,7 +39,7 @@ pactjs-utils-request-filter,Pact.js Utils Request Filter,"createRequestFilter, n
|
|
|
39
39
|
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
|
|
40
40
|
pact-consumer-framework-setup,Pact Consumer CDC Framework Setup,"Directory structure, vitest config with fileParallelism:false + pool:forks + singleFork:true (FFI safety), determinism gate (check-pact-determinism.sh), jq-normalized publishing, 1:1 local/CI parity, PactV4 patterns","pactjs-utils,consumer,contract-testing,pact,ci,framework,setup,vitest,shell-scripts,determinism,jq,pactv4,ffi",specialized,knowledge/pact-consumer-framework-setup.md
|
|
41
41
|
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
|
|
42
|
-
adr-quality-readiness-checklist,ADR Quality Readiness Checklist,"8-category 29-criteria framework for ADR testability and NFR
|
|
42
|
+
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
|
|
43
43
|
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
|
|
44
44
|
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
|
|
45
45
|
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
|
|
@@ -39,7 +39,7 @@ pactjs-utils-request-filter,Pact.js Utils Request Filter,"createRequestFilter, n
|
|
|
39
39
|
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
|
|
40
40
|
pact-consumer-framework-setup,Pact Consumer CDC Framework Setup,"Directory structure, vitest config with fileParallelism:false + pool:forks + singleFork:true (FFI safety), determinism gate (check-pact-determinism.sh), jq-normalized publishing, 1:1 local/CI parity, PactV4 patterns","pactjs-utils,consumer,contract-testing,pact,ci,framework,setup,vitest,shell-scripts,determinism,jq,pactv4,ffi",specialized,knowledge/pact-consumer-framework-setup.md
|
|
41
41
|
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
|
|
42
|
-
adr-quality-readiness-checklist,ADR Quality Readiness Checklist,"8-category 29-criteria framework for ADR testability and NFR
|
|
42
|
+
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
|
|
43
43
|
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
|
|
44
44
|
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
|
|
45
45
|
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
|
package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/tea-index.csv
CHANGED
|
@@ -39,7 +39,7 @@ pactjs-utils-request-filter,Pact.js Utils Request Filter,"createRequestFilter, n
|
|
|
39
39
|
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
|
|
40
40
|
pact-consumer-framework-setup,Pact Consumer CDC Framework Setup,"Directory structure, vitest config with fileParallelism:false + pool:forks + singleFork:true (FFI safety), determinism gate (check-pact-determinism.sh), jq-normalized publishing, 1:1 local/CI parity, PactV4 patterns","pactjs-utils,consumer,contract-testing,pact,ci,framework,setup,vitest,shell-scripts,determinism,jq,pactv4,ffi",specialized,knowledge/pact-consumer-framework-setup.md
|
|
41
41
|
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
|
|
42
|
-
adr-quality-readiness-checklist,ADR Quality Readiness Checklist,"8-category 29-criteria framework for ADR testability and NFR
|
|
42
|
+
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
|
|
43
43
|
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
|
|
44
44
|
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
|
|
45
45
|
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
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: bmad-testarch-nfr
|
|
3
|
-
description: '
|
|
3
|
+
description: 'Audit NFR evidence for performance, security, reliability, and scalability. Use when implementation evidence exists and the user says "audit NFR evidence", "audit NFRs", or "evaluate non-functional requirements"'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
#
|
|
6
|
+
# NFR Evidence Audit
|
|
7
7
|
|
|
8
|
-
**Goal:**
|
|
8
|
+
**Goal:** Audit implemented non-functional requirement evidence (performance, security, reliability, maintainability) before release with evidence-based validation.
|
|
9
9
|
|
|
10
10
|
**Role:** You are the Master Test Architect.
|
|
11
11
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
#
|
|
1
|
+
# NFR Evidence Audit - Validation Checklist
|
|
2
2
|
|
|
3
3
|
**Workflow:** `testarch-nfr`
|
|
4
|
-
**Purpose:** Ensure comprehensive
|
|
4
|
+
**Purpose:** Ensure comprehensive evidence-based NFR audit with actionable recommendations
|
|
5
5
|
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI workflows.
|
|
8
|
+
Note: `nfr-assess` is the NFR Evidence Audit. It evaluates existing implementation evidence; it does not run tests or CI workflows. Use `test-design` to plan NFR thresholds and evidence before implementation.
|
|
9
9
|
|
|
10
10
|
## Prerequisites Validation
|
|
11
11
|
|
|
@@ -110,7 +110,7 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
110
110
|
|
|
111
111
|
---
|
|
112
112
|
|
|
113
|
-
## NFR
|
|
113
|
+
## NFR Evidence Audit with Deterministic Rules
|
|
114
114
|
|
|
115
115
|
### Performance Assessment
|
|
116
116
|
|
|
@@ -152,7 +152,7 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
152
152
|
- [ ] Status classified (PASS/CONCERNS/FAIL) with justification
|
|
153
153
|
- [ ] Evidence source documented (file path, coverage report)
|
|
154
154
|
|
|
155
|
-
### Custom NFR
|
|
155
|
+
### Custom NFR Evidence Audit (if applicable)
|
|
156
156
|
|
|
157
157
|
- [ ] Custom NFR 1 assessed against threshold with justification
|
|
158
158
|
- [ ] Custom NFR 2 assessed against threshold with justification
|
|
@@ -225,7 +225,7 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
225
225
|
|
|
226
226
|
## Deliverables Generated
|
|
227
227
|
|
|
228
|
-
### NFR
|
|
228
|
+
### NFR Evidence Audit Report
|
|
229
229
|
|
|
230
230
|
- [ ] File created at `{test_artifacts}/nfr-assessment.md`
|
|
231
231
|
- [ ] Template from `nfr-report-template.md` used
|
|
@@ -257,8 +257,8 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
257
257
|
|
|
258
258
|
### Updated Story File (if enabled and requested)
|
|
259
259
|
|
|
260
|
-
- [ ] "NFR
|
|
261
|
-
- [ ] Link to NFR
|
|
260
|
+
- [ ] "NFR Evidence Audit" section added to story markdown
|
|
261
|
+
- [ ] Link to NFR evidence audit report included
|
|
262
262
|
- [ ] Overall status and critical issues included
|
|
263
263
|
- [ ] Gate status included
|
|
264
264
|
|
|
@@ -358,7 +358,7 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
358
358
|
|
|
359
359
|
## Documentation and Communication
|
|
360
360
|
|
|
361
|
-
- [ ] NFR
|
|
361
|
+
- [ ] NFR evidence audit report is readable and well-formatted
|
|
362
362
|
- [ ] Tables render correctly in markdown
|
|
363
363
|
- [ ] Code blocks have proper syntax highlighting
|
|
364
364
|
- [ ] Links are valid and accessible
|
|
@@ -377,7 +377,7 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
377
377
|
- [ ] Quick wins identified for all CONCERNS/FAIL
|
|
378
378
|
- [ ] Recommended actions are specific and actionable
|
|
379
379
|
- [ ] Evidence gaps documented with owners and deadlines
|
|
380
|
-
- [ ] NFR
|
|
380
|
+
- [ ] NFR evidence audit report generated and saved
|
|
381
381
|
- [ ] Gate YAML snippet generated (if enabled)
|
|
382
382
|
- [ ] Evidence checklist generated (if enabled)
|
|
383
383
|
- [ ] Workflow completed successfully
|
|
@@ -386,7 +386,7 @@ Note: `nfr-assess` evaluates existing evidence; it does not run tests or CI work
|
|
|
386
386
|
|
|
387
387
|
## Sign-Off
|
|
388
388
|
|
|
389
|
-
**NFR
|
|
389
|
+
**NFR Evidence Audit Status:**
|
|
390
390
|
|
|
391
391
|
- [ ] ✅ PASS - All NFRs meet requirements, ready for release
|
|
392
392
|
- [ ] ⚠️ CONCERNS - Some NFRs have concerns, address before next release
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# NFR Evidence Audit
|
|
2
2
|
|
|
3
3
|
**Workflow:** `bmad-testarch-nfr`
|
|
4
4
|
**Version:** 5.0 (Step-File Architecture)
|
|
@@ -7,7 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
## Overview
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Audit non-functional requirement evidence (performance, security, reliability, maintainability) with deterministic PASS/CONCERNS/FAIL outcomes.
|
|
11
|
+
|
|
12
|
+
Use this workflow after implementation evidence exists: tests, scans, metrics, logs, monitoring data, CI results, or other release evidence. Use `test-design` earlier to define NFR thresholds, planned evidence, and NFR-derived risks.
|
|
11
13
|
|
|
12
14
|
---
|
|
13
15
|
|
|
@@ -6,7 +6,7 @@ workflowType: 'testarch-nfr-assess'
|
|
|
6
6
|
inputDocuments: []
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
# NFR
|
|
9
|
+
# NFR Evidence Audit - {FEATURE_NAME}
|
|
10
10
|
|
|
11
11
|
**Date:** {DATE}
|
|
12
12
|
**Story:** {STORY_ID} (if applicable)
|
|
@@ -14,7 +14,7 @@ inputDocuments: []
|
|
|
14
14
|
|
|
15
15
|
---
|
|
16
16
|
|
|
17
|
-
Note: This
|
|
17
|
+
Note: This audit summarizes existing implementation evidence; it does not run tests or CI workflows. NFR thresholds and planned evidence should come from PRD, architecture, and `test-design` outputs where available.
|
|
18
18
|
|
|
19
19
|
## Executive Summary
|
|
20
20
|
|
|
@@ -217,7 +217,7 @@ Note: This assessment summarizes existing evidence; it does not run tests or CI
|
|
|
217
217
|
|
|
218
218
|
---
|
|
219
219
|
|
|
220
|
-
## Custom NFR
|
|
220
|
+
## Custom NFR Evidence Audits (if applicable)
|
|
221
221
|
|
|
222
222
|
### {CUSTOM_NFR_NAME_1}
|
|
223
223
|
|
|
@@ -446,7 +446,7 @@ nfr_assessment:
|
|
|
446
446
|
|
|
447
447
|
## Sign-Off
|
|
448
448
|
|
|
449
|
-
**NFR
|
|
449
|
+
**NFR Evidence Audit:**
|
|
450
450
|
|
|
451
451
|
- Overall Status: {OVERALL_STATUS} {OVERALL_ICON}
|
|
452
452
|
- Critical Issues: {CRITICAL_COUNT}
|
|
@@ -463,7 +463,7 @@ nfr_assessment:
|
|
|
463
463
|
- If FAIL ❌: Resolve FAIL status NFRs, re-run `*nfr-assess`
|
|
464
464
|
|
|
465
465
|
**Generated:** {DATE}
|
|
466
|
-
**Workflow:** testarch-nfr
|
|
466
|
+
**Workflow:** testarch-nfr v5.0
|
|
467
467
|
|
|
468
468
|
---
|
|
469
469
|
|
|
@@ -39,7 +39,7 @@ pactjs-utils-request-filter,Pact.js Utils Request Filter,"createRequestFilter, n
|
|
|
39
39
|
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
|
|
40
40
|
pact-consumer-framework-setup,Pact Consumer CDC Framework Setup,"Directory structure, vitest config with fileParallelism:false + pool:forks + singleFork:true (FFI safety), determinism gate (check-pact-determinism.sh), jq-normalized publishing, 1:1 local/CI parity, PactV4 patterns","pactjs-utils,consumer,contract-testing,pact,ci,framework,setup,vitest,shell-scripts,determinism,jq,pactv4,ffi",specialized,knowledge/pact-consumer-framework-setup.md
|
|
41
41
|
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
|
|
42
|
-
adr-quality-readiness-checklist,ADR Quality Readiness Checklist,"8-category 29-criteria framework for ADR testability and NFR
|
|
42
|
+
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
|
|
43
43
|
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
|
|
44
44
|
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
|
|
45
45
|
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
|
package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md
CHANGED
|
@@ -10,7 +10,7 @@ outputFile: '{test_artifacts}/nfr-assessment.md'
|
|
|
10
10
|
|
|
11
11
|
## STEP GOAL
|
|
12
12
|
|
|
13
|
-
Gather NFR requirements, evidence sources, and knowledge fragments needed for
|
|
13
|
+
Gather NFR requirements, evidence sources, and knowledge fragments needed for the evidence audit.
|
|
14
14
|
|
|
15
15
|
## MANDATORY EXECUTION RULES
|
|
16
16
|
|
package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01b-resume.md
CHANGED
|
@@ -54,7 +54,7 @@ Read `{outputFile}` and parse YAML frontmatter for:
|
|
|
54
54
|
Display progress with checkmark/empty indicators:
|
|
55
55
|
|
|
56
56
|
```
|
|
57
|
-
NFR
|
|
57
|
+
NFR Evidence Audit - Resume Progress:
|
|
58
58
|
|
|
59
59
|
1. Load Context (step-01-load-context) [completed/pending]
|
|
60
60
|
2. Define Thresholds (step-02-define-thresholds) [completed/pending]
|
|
@@ -36,6 +36,17 @@ Establish the NFR categories to assess and the thresholds used for validation.
|
|
|
36
36
|
|
|
37
37
|
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
|
|
38
38
|
|
|
39
|
+
## 0. Check for Existing Test-Design NFR Plan
|
|
40
|
+
|
|
41
|
+
Before deriving thresholds from raw documents, check if a `test-design` output exists with NFR planning:
|
|
42
|
+
|
|
43
|
+
- Look for `test-design-architecture.md`, `test-design-qa.md`, or any test-design output in `{test_artifacts}/` that contains an NFR section.
|
|
44
|
+
- If found, **load it as the primary source of NFR categories and thresholds**. Use those values directly; do not re-derive them from scratch.
|
|
45
|
+
- Only fall back to raw documents (tech-spec, PRD, story) for categories or thresholds that are still missing or marked **UNKNOWN** in the test-design output.
|
|
46
|
+
- If no test-design NFR plan exists, proceed with step 1 using raw documents.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
39
50
|
## 1. Select Categories
|
|
40
51
|
|
|
41
52
|
Use the ADR Quality Readiness Checklist (8 categories):
|
|
@@ -55,13 +66,13 @@ Add any `custom_nfr_categories` if provided.
|
|
|
55
66
|
|
|
56
67
|
## 2. Define Thresholds
|
|
57
68
|
|
|
58
|
-
For each category,
|
|
69
|
+
For each category, use thresholds from the test-design NFR plan (step 0) where available. For any remaining UNKNOWN or missing thresholds, extract from:
|
|
59
70
|
|
|
60
71
|
- tech-spec (primary)
|
|
61
72
|
- PRD (secondary)
|
|
62
|
-
- story
|
|
73
|
+
- story (feature-specific)
|
|
63
74
|
|
|
64
|
-
If a threshold is unknown, mark it **UNKNOWN** and plan to report **CONCERNS**.
|
|
75
|
+
If a threshold is still unknown after checking all sources, mark it **UNKNOWN** and plan to report **CONCERNS**.
|
|
65
76
|
|
|
66
77
|
---
|
|
67
78
|
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: 'step-04-evaluate-and-score'
|
|
3
|
-
description: 'Orchestrate adaptive NFR domain
|
|
3
|
+
description: 'Orchestrate adaptive NFR evidence domain audits (agent-team, subagent, or sequential)'
|
|
4
4
|
nextStepFile: '{skill-root}/steps-c/step-04e-aggregate-nfr.md'
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
# Step 4: Orchestrate Adaptive NFR
|
|
7
|
+
# Step 4: Orchestrate Adaptive NFR Evidence Audit
|
|
8
8
|
|
|
9
9
|
## STEP GOAL
|
|
10
10
|
|
|
11
|
-
Select execution mode deterministically, then
|
|
11
|
+
Select execution mode deterministically, then audit NFR evidence domains using agent-team, subagent, or sequential execution while preserving output contracts.
|
|
12
12
|
|
|
13
13
|
## MANDATORY EXECUTION RULES
|
|
14
14
|
|
|
@@ -141,7 +141,7 @@ If probing is disabled, honor the requested mode strictly. If that mode cannot b
|
|
|
141
141
|
|
|
142
142
|
### 3. Dispatch 4 NFR Workers
|
|
143
143
|
|
|
144
|
-
**Subagent A: Security
|
|
144
|
+
**Subagent A: Security Evidence Audit**
|
|
145
145
|
|
|
146
146
|
- File: `./step-04a-subagent-security.md`
|
|
147
147
|
- Output: `/tmp/tea-nfr-security-${timestamp}.json`
|
|
@@ -150,19 +150,19 @@ If probing is disabled, honor the requested mode strictly. If that mode cannot b
|
|
|
150
150
|
- `sequential`: run blocking and wait
|
|
151
151
|
- Status: Running... ⟳
|
|
152
152
|
|
|
153
|
-
**Subagent B: Performance
|
|
153
|
+
**Subagent B: Performance Evidence Audit**
|
|
154
154
|
|
|
155
155
|
- File: `./step-04b-subagent-performance.md`
|
|
156
156
|
- Output: `/tmp/tea-nfr-performance-${timestamp}.json`
|
|
157
157
|
- Status: Running... ⟳
|
|
158
158
|
|
|
159
|
-
**Subagent C: Reliability
|
|
159
|
+
**Subagent C: Reliability Evidence Audit**
|
|
160
160
|
|
|
161
161
|
- File: `./step-04c-subagent-reliability.md`
|
|
162
162
|
- Output: `/tmp/tea-nfr-reliability-${timestamp}.json`
|
|
163
163
|
- Status: Running... ⟳
|
|
164
164
|
|
|
165
|
-
**Subagent D: Scalability
|
|
165
|
+
**Subagent D: Scalability Evidence Audit**
|
|
166
166
|
|
|
167
167
|
- File: `./step-04d-subagent-scalability.md`
|
|
168
168
|
- Output: `/tmp/tea-nfr-scalability-${timestamp}.json`
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: 'step-04a-subagent-security'
|
|
3
|
-
description: 'Subagent: Security NFR
|
|
3
|
+
description: 'Subagent: Security NFR evidence audit'
|
|
4
4
|
subagent: true
|
|
5
5
|
outputFile: '/tmp/tea-nfr-security-{{timestamp}}.json'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
# Subagent 4A: Security NFR
|
|
8
|
+
# Subagent 4A: Security NFR Evidence Audit
|
|
9
9
|
|
|
10
10
|
## SUBAGENT CONTEXT
|
|
11
11
|
|
|
12
|
-
This is an **isolated subagent** running in parallel with other NFR domain
|
|
12
|
+
This is an **isolated subagent** running in parallel with other NFR domain evidence audits.
|
|
13
13
|
|
|
14
14
|
**Your task:** Assess SECURITY NFR domain only.
|
|
15
15
|
|
|
@@ -25,7 +25,7 @@ This is an **isolated subagent** running in parallel with other NFR domain asses
|
|
|
25
25
|
|
|
26
26
|
## SUBAGENT TASK
|
|
27
27
|
|
|
28
|
-
### 1. Security
|
|
28
|
+
### 1. Security Evidence Audit Categories
|
|
29
29
|
|
|
30
30
|
**Assess the following security dimensions:**
|
|
31
31
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: 'step-04b-subagent-performance'
|
|
3
|
-
description: 'Subagent: Performance NFR
|
|
3
|
+
description: 'Subagent: Performance NFR evidence audit'
|
|
4
4
|
subagent: true
|
|
5
5
|
outputFile: '/tmp/tea-nfr-performance-{{timestamp}}.json'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
# Subagent 4B: Performance NFR
|
|
8
|
+
# Subagent 4B: Performance NFR Evidence Audit
|
|
9
9
|
|
|
10
10
|
## SUBAGENT CONTEXT
|
|
11
11
|
|
|
12
|
-
This is an **isolated subagent** running in parallel with other NFR domain
|
|
12
|
+
This is an **isolated subagent** running in parallel with other NFR domain evidence audits.
|
|
13
13
|
|
|
14
14
|
**Your task:** Assess PERFORMANCE NFR domain only.
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ This is an **isolated subagent** running in parallel with other NFR domain asses
|
|
|
17
17
|
|
|
18
18
|
## SUBAGENT TASK
|
|
19
19
|
|
|
20
|
-
### 1. Performance
|
|
20
|
+
### 1. Performance Evidence Audit Categories
|
|
21
21
|
|
|
22
22
|
**A) Response Times:**
|
|
23
23
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: 'step-04c-subagent-reliability'
|
|
3
|
-
description: 'Subagent: Reliability NFR
|
|
3
|
+
description: 'Subagent: Reliability NFR evidence audit'
|
|
4
4
|
subagent: true
|
|
5
5
|
outputFile: '/tmp/tea-nfr-reliability-{{timestamp}}.json'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
# Subagent 4C: Reliability NFR
|
|
8
|
+
# Subagent 4C: Reliability NFR Evidence Audit
|
|
9
9
|
|
|
10
10
|
## SUBAGENT CONTEXT
|
|
11
11
|
|
|
12
|
-
This is an **isolated subagent** running in parallel with other NFR domain
|
|
12
|
+
This is an **isolated subagent** running in parallel with other NFR domain evidence audits.
|
|
13
13
|
|
|
14
14
|
**Your task:** Assess RELIABILITY NFR domain only.
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ This is an **isolated subagent** running in parallel with other NFR domain asses
|
|
|
17
17
|
|
|
18
18
|
## SUBAGENT TASK
|
|
19
19
|
|
|
20
|
-
### 1. Reliability
|
|
20
|
+
### 1. Reliability Evidence Audit Categories
|
|
21
21
|
|
|
22
22
|
**A) Error Handling:**
|
|
23
23
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: 'step-04d-subagent-scalability'
|
|
3
|
-
description: 'Subagent: Scalability NFR
|
|
3
|
+
description: 'Subagent: Scalability NFR evidence audit'
|
|
4
4
|
subagent: true
|
|
5
5
|
outputFile: '/tmp/tea-nfr-scalability-{{timestamp}}.json'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
# Subagent 4D: Scalability NFR
|
|
8
|
+
# Subagent 4D: Scalability NFR Evidence Audit
|
|
9
9
|
|
|
10
10
|
## SUBAGENT CONTEXT
|
|
11
11
|
|
|
12
|
-
This is an **isolated subagent** running in parallel with other NFR domain
|
|
12
|
+
This is an **isolated subagent** running in parallel with other NFR domain evidence audits.
|
|
13
13
|
|
|
14
14
|
**Your task:** Assess SCALABILITY NFR domain only.
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ This is an **isolated subagent** running in parallel with other NFR domain asses
|
|
|
17
17
|
|
|
18
18
|
## SUBAGENT TASK
|
|
19
19
|
|
|
20
|
-
### 1. Scalability
|
|
20
|
+
### 1. Scalability Evidence Audit Categories
|
|
21
21
|
|
|
22
22
|
**A) Horizontal Scaling:**
|
|
23
23
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: 'step-04e-aggregate-nfr'
|
|
3
|
-
description: 'Aggregate NFR domain
|
|
3
|
+
description: 'Aggregate NFR domain evidence audits into executive summary'
|
|
4
4
|
nextStepFile: '{skill-root}/steps-c/step-05-generate-report.md'
|
|
5
5
|
outputFile: '{test_artifacts}/nfr-assessment.md'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
# Step 4E: Aggregate NFR
|
|
8
|
+
# Step 4E: Aggregate NFR Evidence Audit Results
|
|
9
9
|
|
|
10
10
|
## STEP GOAL
|
|
11
11
|
|
|
12
|
-
Read outputs from 4 parallel NFR subagents, calculate overall risk level, aggregate compliance status, and identify cross-domain risks.
|
|
12
|
+
Read outputs from 4 parallel NFR evidence audit subagents, calculate overall risk level, aggregate compliance status, and identify cross-domain risks.
|
|
13
13
|
|
|
14
14
|
---
|
|
15
15
|
|
|
@@ -186,7 +186,7 @@ fs.writeFileSync('/tmp/tea-nfr-summary-{{timestamp}}.json', JSON.stringify(execu
|
|
|
186
186
|
### 7. Display Summary to User
|
|
187
187
|
|
|
188
188
|
```
|
|
189
|
-
✅ NFR
|
|
189
|
+
✅ NFR Evidence Audit Complete ({subagentExecutionLabel})
|
|
190
190
|
|
|
191
191
|
🎯 Overall Risk Level: {overallRisk}
|
|
192
192
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Test Architect workflow: bmad-testarch-nfr
|
|
2
2
|
name: bmad-testarch-nfr
|
|
3
3
|
# prettier-ignore
|
|
4
|
-
description: '
|
|
4
|
+
description: 'Audit NFR evidence for performance, security, reliability, and scalability. Use when implementation evidence exists and the user says "lets assess NFRs", "audit NFR evidence", or "evaluate non-functional requirements"'
|
|
5
5
|
|
|
6
6
|
# Critical variables from config
|
|
7
7
|
config_source: "{project-root}/_bmad/tea/config.yaml"
|
|
@@ -21,7 +21,7 @@ template: "./nfr-report-template.md"
|
|
|
21
21
|
# Variables and inputs
|
|
22
22
|
variables:
|
|
23
23
|
# NFR category assessment (defaults to all categories)
|
|
24
|
-
custom_nfr_categories: "" # Optional additional categories beyond standard (security, performance, reliability,
|
|
24
|
+
custom_nfr_categories: "" # Optional additional categories beyond standard (security, performance, reliability, scalability)
|
|
25
25
|
|
|
26
26
|
# Output configuration
|
|
27
27
|
default_output_file: "{test_artifacts}/nfr-assessment.md"
|
|
@@ -29,7 +29,7 @@ default_output_file: "{test_artifacts}/nfr-assessment.md"
|
|
|
29
29
|
# Required tools
|
|
30
30
|
required_tools:
|
|
31
31
|
- read_file # Read story, test results, metrics, logs, BMad artifacts
|
|
32
|
-
- write_file # Create NFR
|
|
32
|
+
- write_file # Create NFR evidence audit, gate YAML, evidence checklist
|
|
33
33
|
- list_files # Discover test results, metrics, logs
|
|
34
34
|
- search_repo # Find NFR-related tests and evidence
|
|
35
35
|
- glob # Find result files matching patterns
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
- [ ] Architecture documents reviewed (if available)
|
|
27
27
|
- [ ] Existing test coverage analyzed
|
|
28
28
|
- [ ] Knowledge base fragments loaded (risk-governance, probability-impact, test-levels, test-priorities)
|
|
29
|
+
- [ ] `nfr-criteria.md` loaded for system-level mode, and for epic-level mode when NFRs are in scope
|
|
29
30
|
|
|
30
31
|
### Step 2: Risk Assessment
|
|
31
32
|
|
|
@@ -40,6 +41,15 @@
|
|
|
40
41
|
- [ ] Timelines set for mitigations
|
|
41
42
|
- [ ] Residual risk documented
|
|
42
43
|
|
|
44
|
+
### Step 2A: NFR Planning
|
|
45
|
+
|
|
46
|
+
- [ ] NFR categories in scope identified (security, performance, reliability, scalability, maintainability, compliance, custom)
|
|
47
|
+
- [ ] NFR thresholds extracted from PRD, architecture, ADRs, epics, or stories
|
|
48
|
+
- [ ] Unknown thresholds marked as UNKNOWN; no values guessed
|
|
49
|
+
- [ ] Missing thresholds converted into risks, assumptions, blockers, or clarification items
|
|
50
|
+
- [ ] Planned evidence sources identified for later `nfr-assess`
|
|
51
|
+
- [ ] NFR-derived risks mapped into the normal risk register using SEC/PERF/OPS/TECH/DATA categories
|
|
52
|
+
|
|
43
53
|
### Step 3: Coverage Design
|
|
44
54
|
|
|
45
55
|
- [ ] Acceptance criteria broken into atomic scenarios
|
|
@@ -47,6 +57,8 @@
|
|
|
47
57
|
- [ ] No duplicate coverage across levels
|
|
48
58
|
- [ ] Priority levels assigned (P0/P1/P2/P3)
|
|
49
59
|
- [ ] P0 scenarios meet strict criteria (blocks core + high risk + no workaround)
|
|
60
|
+
- [ ] NFR-derived risks mapped to planned validation scenarios
|
|
61
|
+
- [ ] Planned NFR evidence artifacts documented without final PASS/CONCERNS/FAIL decisions
|
|
50
62
|
- [ ] Data prerequisites identified
|
|
51
63
|
- [ ] Tooling/access requirements documented when applicable
|
|
52
64
|
- [ ] Execution order defined (smoke → P0 → P1 → P2/P3)
|
|
@@ -58,6 +70,7 @@
|
|
|
58
70
|
- [ ] Execution order documented
|
|
59
71
|
- [ ] Resource estimates calculated
|
|
60
72
|
- [ ] Quality gate criteria defined
|
|
73
|
+
- [ ] NFR planning summary included when NFRs are in scope
|
|
61
74
|
- [ ] Output file written to correct location
|
|
62
75
|
- [ ] Output file uses template structure
|
|
63
76
|
|
|
@@ -112,6 +125,8 @@
|
|
|
112
125
|
- [ ] P1 pass rate threshold defined (typically ≥95%)
|
|
113
126
|
- [ ] High-risk mitigation completion required
|
|
114
127
|
- [ ] Coverage targets specified (≥80% recommended)
|
|
128
|
+
- [ ] NFR evidence expectation defined for each in-scope NFR category
|
|
129
|
+
- [ ] Full NFR evidence decision deferred to `nfr-assess`
|
|
115
130
|
|
|
116
131
|
## Quality Checks
|
|
117
132
|
|
|
@@ -161,6 +176,7 @@
|
|
|
161
176
|
- [ ] probability-impact.md applied
|
|
162
177
|
- [ ] test-levels-framework.md referenced
|
|
163
178
|
- [ ] test-priorities-matrix.md used
|
|
179
|
+
- [ ] nfr-criteria.md consulted for NFR planning when applicable
|
|
164
180
|
- [ ] Additional fragments loaded as needed
|
|
165
181
|
|
|
166
182
|
### Status File Integration
|
|
@@ -254,13 +270,13 @@
|
|
|
254
270
|
- [ ] QA execution assumptions belong in QA doc instead
|
|
255
271
|
- [ ] **NO test implementation code** (long examples belong in QA doc)
|
|
256
272
|
- [ ] **NO test scripts** (no Playwright test(...) blocks, no assertions, no test setup code)
|
|
257
|
-
- [ ] **
|
|
273
|
+
- [ ] **NFR Testability Requirements are concise** (WHAT architecture must provide, thresholds, planned evidence; no full audit tables)
|
|
258
274
|
- [ ] **NO test scenario checklists** (belong in QA doc)
|
|
259
275
|
- [ ] **NO bloat or repetition** (consolidate repeated notes, avoid over-explanation)
|
|
260
276
|
- [ ] **Cross-references to QA doc** where appropriate (instead of duplication)
|
|
261
277
|
- [ ] **RECIPE SECTIONS NOT IN ARCHITECTURE DOC:**
|
|
262
278
|
- [ ] NO "Test Levels Strategy" section (unit/integration/E2E split belongs in QA doc only)
|
|
263
|
-
- [ ] NO "NFR Testing Approach" section with detailed test procedures (
|
|
279
|
+
- [ ] NO "NFR Testing Approach" section with detailed test procedures (use concise NFR Testability Requirements only)
|
|
264
280
|
- [ ] NO "Test Environment Requirements" section (belongs in QA doc only)
|
|
265
281
|
- [ ] NO "Recommendations for pre-implementation" section with test framework setup (belongs in QA doc only)
|
|
266
282
|
- [ ] NO "Quality Gate Criteria" section (pass rates, coverage targets belong in QA doc only)
|
|
@@ -287,6 +303,10 @@
|
|
|
287
303
|
- [ ] Priority sections have ONLY "Criteria" (no execution context)
|
|
288
304
|
- [ ] Note at top: "P0/P1/P2/P3 = priority, NOT execution timing"
|
|
289
305
|
- [ ] Test tables with columns: Test ID | Requirement | Test Level | Risk Link | Notes
|
|
306
|
+
- [ ] **NFR Test Coverage Plan** section
|
|
307
|
+
- [ ] Maps NFR category to requirement/threshold, planned validation, tool/level, evidence artifact, and priority
|
|
308
|
+
- [ ] Lists missing thresholds or missing evidence sources
|
|
309
|
+
- [ ] Does not assign final PASS/CONCERNS/FAIL status
|
|
290
310
|
- [ ] **Execution Strategy** section (organized by TOOL TYPE)
|
|
291
311
|
- [ ] Every PR: Playwright tests (~10-15 min)
|
|
292
312
|
- [ ] Nightly: k6 performance tests (~30-60 min)
|
|
@@ -310,7 +330,7 @@
|
|
|
310
330
|
- [ ] ❌ NO Test Environment Requirements as separate section (integrate into Dependencies)
|
|
311
331
|
- [ ] ❌ NO Testability Assessment section (covered in Dependencies)
|
|
312
332
|
- [ ] ❌ NO Test Levels Strategy section (obvious from test scenarios)
|
|
313
|
-
- [ ] ❌ NO NFR
|
|
333
|
+
- [ ] ❌ NO full NFR Evidence Audit or final PASS/CONCERNS/FAIL decisions
|
|
314
334
|
- [ ] ❌ NO Quality Gate Criteria section (teams decide for themselves)
|
|
315
335
|
- [ ] ❌ NO Follow-on Workflows section (BMAD commands self-explanatory)
|
|
316
336
|
- [ ] ❌ NO Approval section
|
package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/tea-index.csv
CHANGED
|
@@ -39,7 +39,7 @@ pactjs-utils-request-filter,Pact.js Utils Request Filter,"createRequestFilter, n
|
|
|
39
39
|
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
|
|
40
40
|
pact-consumer-framework-setup,Pact Consumer CDC Framework Setup,"Directory structure, vitest config with fileParallelism:false + pool:forks + singleFork:true (FFI safety), determinism gate (check-pact-determinism.sh), jq-normalized publishing, 1:1 local/CI parity, PactV4 patterns","pactjs-utils,consumer,contract-testing,pact,ci,framework,setup,vitest,shell-scripts,determinism,jq,pactv4,ffi",specialized,knowledge/pact-consumer-framework-setup.md
|
|
41
41
|
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
|
|
42
|
-
adr-quality-readiness-checklist,ADR Quality Readiness Checklist,"8-category 29-criteria framework for ADR testability and NFR
|
|
42
|
+
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
|
|
43
43
|
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
|
|
44
44
|
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
|
|
45
45
|
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
|
|
@@ -75,6 +75,7 @@ Extract:
|
|
|
75
75
|
- Tech stack & dependencies
|
|
76
76
|
- Integration points
|
|
77
77
|
- NFRs (performance, security, reliability, compliance)
|
|
78
|
+
- NFR thresholds and missing threshold questions
|
|
78
79
|
|
|
79
80
|
### Epic-Level Mode (Phase 4)
|
|
80
81
|
|
|
@@ -165,6 +166,7 @@ Use `{knowledgeIndex}` to select and load only relevant fragments.
|
|
|
165
166
|
### System-Level Mode (Required)
|
|
166
167
|
|
|
167
168
|
- `adr-quality-readiness-checklist.md`
|
|
169
|
+
- `nfr-criteria.md`
|
|
168
170
|
- `test-levels-framework.md`
|
|
169
171
|
- `risk-governance.md`
|
|
170
172
|
- `test-quality.md`
|
|
@@ -176,6 +178,11 @@ Use `{knowledgeIndex}` to select and load only relevant fragments.
|
|
|
176
178
|
- `test-levels-framework.md`
|
|
177
179
|
- `test-priorities-matrix.md`
|
|
178
180
|
|
|
181
|
+
**Epic-Level NFR Loading:**
|
|
182
|
+
|
|
183
|
+
- Load `nfr-criteria.md` when the epic/story includes security, performance, reliability, scalability, compliance, maintainability, or operational requirements.
|
|
184
|
+
- Use prior system-level NFR planning from `test-design-architecture.md` or `test-design-qa.md` if present.
|
|
185
|
+
|
|
179
186
|
**Playwright CLI (if `tea_browser_automation` is "cli" or "auto"):**
|
|
180
187
|
|
|
181
188
|
- `playwright-cli.md`
|