agentic-qe 3.8.2 → 3.8.3
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/skills/README.md +29 -7
- package/.claude/skills/TRUST-TIERS.md +26 -10
- package/.claude/skills/a11y-ally/SKILL.md +10 -1
- package/.claude/skills/accessibility-testing/SKILL.md +2 -0
- package/.claude/skills/agentic-quality-engineering/SKILL.md +1 -1
- package/.claude/skills/api-testing-patterns/SKILL.md +8 -0
- package/.claude/skills/api-testing-patterns/config.json +14 -0
- package/.claude/skills/api-testing-patterns/templates/api-test-scaffold.md +87 -0
- package/.claude/skills/bug-reporting-excellence/SKILL.md +14 -0
- package/.claude/skills/code-review-quality/SKILL.md +14 -0
- package/.claude/skills/compatibility-testing/SKILL.md +1 -54
- package/.claude/skills/compliance-testing/SKILL.md +8 -0
- package/.claude/skills/compliance-testing/config.json +13 -0
- package/.claude/skills/consultancy-practices/SKILL.md +1 -32
- package/.claude/skills/context-driven-testing/SKILL.md +0 -41
- package/.claude/skills/contract-testing/SKILL.md +12 -0
- package/.claude/skills/contract-testing/config.json +13 -0
- package/.claude/skills/contract-testing/references/agent-commands.md +103 -0
- package/.claude/skills/contract-testing/references/provider-states.md +45 -0
- package/.claude/skills/coverage-drop-investigator/SKILL.md +90 -0
- package/.claude/skills/coverage-guard/SKILL.md +82 -0
- package/.claude/skills/coverage-guard/scripts/check-coverage.sh +42 -0
- package/.claude/skills/database-testing/SKILL.md +0 -10
- package/.claude/skills/debug-loop/SKILL.md +1 -1
- package/.claude/skills/e2e-flow-verifier/SKILL.md +78 -0
- package/.claude/skills/enterprise-integration-testing/SKILL.md +1 -1
- package/.claude/skills/exploratory-testing-advanced/SKILL.md +8 -0
- package/.claude/skills/exploratory-testing-advanced/references/heuristic-cheatsheet.md +48 -0
- package/.claude/skills/freeze-tests/SKILL.md +67 -0
- package/.claude/skills/freeze-tests/scripts/block-test-edits.sh +27 -0
- package/.claude/skills/localization-testing/SKILL.md +0 -17
- package/.claude/skills/mobile-testing/SKILL.md +2 -49
- package/.claude/skills/mutation-testing/SKILL.md +26 -0
- package/.claude/skills/mutation-testing/config.json +14 -0
- package/.claude/skills/mutation-testing/references/mutation-operators.md +38 -0
- package/.claude/skills/mutation-testing/run-history.json +6 -0
- package/.claude/skills/no-skip/SKILL.md +74 -0
- package/.claude/skills/no-skip/scripts/check-skips.sh +28 -0
- package/.claude/skills/pair-programming/SKILL.md +1 -1
- package/.claude/skills/pentest-validation/SKILL.md +2 -3
- package/.claude/skills/performance-testing/SKILL.md +21 -0
- package/.claude/skills/performance-testing/config.json +18 -0
- package/.claude/skills/performance-testing/references/k6-patterns.md +72 -0
- package/.claude/skills/performance-testing/run-history.json +6 -0
- package/.claude/skills/pr-review/SKILL.md +3 -3
- package/.claude/skills/qcsd-cicd-swarm/SKILL.md +1 -1
- package/.claude/skills/qcsd-development-swarm/SKILL.md +1 -1
- package/.claude/skills/qcsd-ideation-swarm/SKILL.md +1 -1
- package/.claude/skills/qcsd-production-swarm/SKILL.md +1 -1
- package/.claude/skills/qcsd-refinement-swarm/SKILL.md +1 -1
- package/.claude/skills/qe-chaos-resilience/SKILL.md +2 -2
- package/.claude/skills/qe-code-intelligence/SKILL.md +9 -1
- package/.claude/skills/qe-coverage-analysis/SKILL.md +28 -1
- package/.claude/skills/qe-coverage-analysis/run-history.json +6 -0
- package/.claude/skills/qe-defect-intelligence/SKILL.md +1 -1
- package/.claude/skills/qe-learning-optimization/SKILL.md +1 -1
- package/.claude/skills/qe-quality-assessment/SKILL.md +29 -2
- package/.claude/skills/qe-quality-assessment/run-history.json +6 -0
- package/.claude/skills/qe-requirements-validation/SKILL.md +1 -1
- package/.claude/skills/qe-test-execution/SKILL.md +9 -1
- package/.claude/skills/qe-test-generation/SKILL.md +15 -1
- package/.claude/skills/qe-test-generation/config.json +14 -0
- package/.claude/skills/qe-test-generation/templates/test-scaffold-jest.md +72 -0
- package/.claude/skills/qe-visual-accessibility/SKILL.md +1 -1
- package/.claude/skills/quality-metrics/SKILL.md +3 -77
- package/.claude/skills/regression-testing/SKILL.md +13 -48
- package/.claude/skills/risk-based-testing/SKILL.md +6 -51
- package/.claude/skills/security-testing/SKILL.md +30 -0
- package/.claude/skills/security-testing/config.json +13 -0
- package/.claude/skills/security-testing/references/compliance-agent-commands.md +131 -0
- package/.claude/skills/security-testing/references/owasp-top-10.md +66 -0
- package/.claude/skills/security-testing/run-history.json +6 -0
- package/.claude/skills/security-testing/templates/security-report.md +44 -0
- package/.claude/skills/security-watch/SKILL.md +93 -0
- package/.claude/skills/security-watch/scripts/scan-security.sh +46 -0
- package/.claude/skills/shift-left-testing/SKILL.md +16 -87
- package/.claude/skills/skill-stats/SKILL.md +79 -0
- package/.claude/skills/skills-manifest.json +1 -1
- package/.claude/skills/strict-tdd/SKILL.md +72 -0
- package/.claude/skills/strict-tdd/scripts/enforce-red-phase.sh +36 -0
- package/.claude/skills/tdd-london-chicago/SKILL.md +8 -0
- package/.claude/skills/test-automation-strategy/SKILL.md +13 -64
- package/.claude/skills/test-data-management/SKILL.md +1 -104
- package/.claude/skills/test-design-techniques/SKILL.md +2 -151
- package/.claude/skills/test-environment-management/SKILL.md +0 -47
- package/.claude/skills/test-failure-investigator/SKILL.md +99 -0
- package/.claude/skills/test-metrics-dashboard/SKILL.md +97 -0
- package/.claude/skills/trust-tier-manifest.json +135 -61
- package/.claude/skills/validation-pipeline/SKILL.md +1 -1
- package/.claude/skills/verification-quality/SKILL.md +15 -1
- package/.claude/skills/xp-practices/SKILL.md +2 -109
- package/CHANGELOG.md +29 -0
- package/README.md +5 -1
- package/assets/skills/README.md +173 -0
- package/assets/skills/TRUST-TIERS.md +174 -0
- package/assets/skills/a11y-ally/SKILL.md +10 -1
- package/assets/skills/accessibility-testing/SKILL.md +2 -0
- package/assets/skills/agentic-quality-engineering/SKILL.md +1 -1
- package/assets/skills/api-testing-patterns/SKILL.md +8 -0
- package/assets/skills/api-testing-patterns/config.json +14 -0
- package/assets/skills/api-testing-patterns/templates/api-test-scaffold.md +87 -0
- package/assets/skills/bug-reporting-excellence/SKILL.md +14 -0
- package/assets/skills/code-review-quality/SKILL.md +14 -0
- package/assets/skills/compatibility-testing/SKILL.md +1 -54
- package/assets/skills/compliance-testing/SKILL.md +8 -0
- package/assets/skills/compliance-testing/config.json +13 -0
- package/assets/skills/consultancy-practices/SKILL.md +1 -32
- package/assets/skills/context-driven-testing/SKILL.md +0 -41
- package/assets/skills/contract-testing/SKILL.md +12 -0
- package/assets/skills/contract-testing/config.json +13 -0
- package/assets/skills/contract-testing/references/agent-commands.md +103 -0
- package/assets/skills/contract-testing/references/provider-states.md +45 -0
- package/assets/skills/coverage-drop-investigator/SKILL.md +90 -0
- package/assets/skills/coverage-guard/SKILL.md +82 -0
- package/assets/skills/coverage-guard/scripts/check-coverage.sh +42 -0
- package/assets/skills/database-testing/SKILL.md +0 -10
- package/assets/skills/debug-loop/SKILL.md +1 -1
- package/assets/skills/e2e-flow-verifier/SKILL.md +78 -0
- package/assets/skills/enterprise-integration-testing/SKILL.md +1 -1
- package/assets/skills/exploratory-testing-advanced/SKILL.md +8 -0
- package/assets/skills/exploratory-testing-advanced/references/heuristic-cheatsheet.md +48 -0
- package/assets/skills/freeze-tests/SKILL.md +67 -0
- package/assets/skills/freeze-tests/scripts/block-test-edits.sh +27 -0
- package/assets/skills/localization-testing/SKILL.md +0 -17
- package/assets/skills/mobile-testing/SKILL.md +2 -49
- package/assets/skills/mutation-testing/SKILL.md +26 -0
- package/assets/skills/mutation-testing/config.json +14 -0
- package/assets/skills/mutation-testing/references/mutation-operators.md +38 -0
- package/assets/skills/mutation-testing/run-history.json +6 -0
- package/assets/skills/no-skip/SKILL.md +74 -0
- package/assets/skills/no-skip/scripts/check-skips.sh +28 -0
- package/assets/skills/pair-programming/SKILL.md +1 -1
- package/assets/skills/pentest-validation/SKILL.md +2 -3
- package/assets/skills/performance-testing/SKILL.md +21 -0
- package/assets/skills/performance-testing/config.json +18 -0
- package/assets/skills/performance-testing/references/k6-patterns.md +72 -0
- package/assets/skills/performance-testing/run-history.json +6 -0
- package/assets/skills/pr-review/SKILL.md +3 -3
- package/assets/skills/qcsd-cicd-swarm/SKILL.md +1 -1
- package/assets/skills/qcsd-development-swarm/SKILL.md +1 -1
- package/assets/skills/qcsd-ideation-swarm/SKILL.md +1 -1
- package/assets/skills/qcsd-production-swarm/SKILL.md +1 -1
- package/assets/skills/qcsd-refinement-swarm/SKILL.md +1 -1
- package/assets/skills/qe-chaos-resilience/SKILL.md +2 -2
- package/assets/skills/qe-code-intelligence/SKILL.md +9 -1
- package/assets/skills/qe-coverage-analysis/SKILL.md +28 -1
- package/assets/skills/qe-coverage-analysis/run-history.json +6 -0
- package/assets/skills/qe-defect-intelligence/SKILL.md +1 -1
- package/assets/skills/qe-learning-optimization/SKILL.md +1 -1
- package/assets/skills/qe-quality-assessment/SKILL.md +29 -2
- package/assets/skills/qe-quality-assessment/run-history.json +6 -0
- package/assets/skills/qe-requirements-validation/SKILL.md +1 -1
- package/assets/skills/qe-test-execution/SKILL.md +9 -1
- package/assets/skills/qe-test-generation/SKILL.md +15 -1
- package/assets/skills/qe-test-generation/config.json +14 -0
- package/assets/skills/qe-test-generation/templates/test-scaffold-jest.md +72 -0
- package/assets/skills/qe-visual-accessibility/SKILL.md +1 -1
- package/assets/skills/quality-metrics/SKILL.md +3 -77
- package/assets/skills/regression-testing/SKILL.md +13 -48
- package/assets/skills/risk-based-testing/SKILL.md +6 -51
- package/assets/skills/security-testing/SKILL.md +30 -0
- package/assets/skills/security-testing/config.json +13 -0
- package/assets/skills/security-testing/references/compliance-agent-commands.md +131 -0
- package/assets/skills/security-testing/references/owasp-top-10.md +66 -0
- package/assets/skills/security-testing/run-history.json +6 -0
- package/assets/skills/security-testing/templates/security-report.md +44 -0
- package/assets/skills/security-watch/SKILL.md +93 -0
- package/assets/skills/security-watch/scripts/scan-security.sh +46 -0
- package/assets/skills/shift-left-testing/SKILL.md +16 -87
- package/assets/skills/skill-stats/SKILL.md +79 -0
- package/assets/skills/strict-tdd/SKILL.md +72 -0
- package/assets/skills/strict-tdd/scripts/enforce-red-phase.sh +36 -0
- package/assets/skills/tdd-london-chicago/SKILL.md +8 -0
- package/assets/skills/test-automation-strategy/SKILL.md +13 -64
- package/assets/skills/test-data-management/SKILL.md +1 -104
- package/assets/skills/test-design-techniques/SKILL.md +2 -151
- package/assets/skills/test-environment-management/SKILL.md +0 -47
- package/assets/skills/test-failure-investigator/SKILL.md +99 -0
- package/assets/skills/test-metrics-dashboard/SKILL.md +97 -0
- package/assets/skills/trust-tier-manifest.json +135 -61
- package/assets/skills/validation-pipeline/SKILL.md +1 -1
- package/assets/skills/verification-quality/SKILL.md +15 -1
- package/assets/skills/xp-practices/SKILL.md +2 -109
- package/dist/cli/bundle.js +110 -24
- package/dist/init/opencode-installer.js +2 -3
- package/dist/init/phases/07-hooks.js +3 -3
- package/dist/init/settings-merge.js +1 -2
- package/dist/init/skills-installer.d.ts +10 -0
- package/dist/init/skills-installer.js +68 -6
- package/dist/integrations/ruvector/sona-persistence.d.ts +6 -0
- package/dist/integrations/ruvector/sona-persistence.js +26 -1
- package/dist/mcp/bundle.js +29 -8
- package/dist/mcp/entry.js +6 -6
- package/dist/migration/agent-compat.js +2 -2
- package/package.json +2 -2
- package/.claude/skills/aqe-v2-v3-migration/schemas/output.json +0 -513
- package/.claude/skills/aqe-v2-v3-migration/skill.md +0 -325
- package/.claude/skills/qe-contract-testing/SKILL.md +0 -223
- package/.claude/skills/qe-contract-testing/evals/qe-contract-testing.yaml +0 -513
- package/.claude/skills/qe-contract-testing/schemas/output.json +0 -295
- package/.claude/skills/qe-contract-testing/scripts/validate-config.json +0 -42
- package/.claude/skills/qe-security-compliance/SKILL.md +0 -260
- package/.claude/skills/qe-security-compliance/evals/qe-security-compliance.yaml +0 -595
- package/.claude/skills/qe-security-compliance/schemas/output.json +0 -498
- package/.claude/skills/qe-security-compliance/scripts/validate-config.json +0 -41
- package/.opencode/skills/qe-contract-testing.yaml +0 -45
- package/.opencode/skills/qe-security-compliance.yaml +0 -45
- package/assets/skills/aqe-v2-v3-migration/schemas/output.json +0 -513
- package/assets/skills/aqe-v2-v3-migration/skill.md +0 -325
- package/assets/skills/qe-contract-testing/SKILL.md +0 -223
- package/assets/skills/qe-contract-testing/evals/qe-contract-testing.yaml +0 -513
- package/assets/skills/qe-contract-testing/schemas/output.json +0 -295
- package/assets/skills/qe-contract-testing/scripts/validate-config.json +0 -42
- package/assets/skills/qe-security-compliance/SKILL.md +0 -260
- package/assets/skills/qe-security-compliance/evals/qe-security-compliance.yaml +0 -595
- package/assets/skills/qe-security-compliance/schemas/output.json +0 -498
- package/assets/skills/qe-security-compliance/scripts/validate-config.json +0 -41
package/.claude/skills/README.md
CHANGED
|
@@ -4,9 +4,9 @@ This directory contains Quality Engineering skills managed by Agentic QE.
|
|
|
4
4
|
|
|
5
5
|
## Summary
|
|
6
6
|
|
|
7
|
-
- **Total QE Skills**:
|
|
7
|
+
- **Total QE Skills**: 84
|
|
8
8
|
- **V2 Methodology Skills**: 62
|
|
9
|
-
- **V3 Domain Skills**:
|
|
9
|
+
- **V3 Domain Skills**: 23
|
|
10
10
|
- **Platform Skills**: 30 (Claude Flow managed)
|
|
11
11
|
- **Validation Infrastructure**: ✅ Installed
|
|
12
12
|
|
|
@@ -80,26 +80,48 @@ Version-agnostic quality engineering best practices from the QE community.
|
|
|
80
80
|
- **wms-testing-patterns**: Warehouse Management System testing patterns for inventory operations, pick/pack/ship workflows, wave management, EDI X12/EDIFACT compliance, RF/barcode scanning, and WMS-ERP integration. Use when testing WMS platforms (Blue Yonder, Manhattan, SAP EWM).
|
|
81
81
|
- **xp-practices**: Apply XP practices including pair programming, ensemble programming, continuous integration, and sustainable pace. Use when implementing agile development practices, improving team collaboration, or adopting technical excellence practices.
|
|
82
82
|
|
|
83
|
-
## V3 Domain Skills (
|
|
83
|
+
## V3 Domain Skills (23)
|
|
84
84
|
|
|
85
|
-
V3-specific implementation guides for the 12 DDD bounded contexts.
|
|
85
|
+
V3-specific implementation guides for the 12 DDD bounded contexts plus on-demand hooks, investigation runbooks, and measurement tools.
|
|
86
86
|
|
|
87
|
-
- **aqe-v2-v3-migration**: Migrate Agentic QE projects from v2 to v3 with zero data loss
|
|
88
87
|
- **pentest-validation**: Orchestrate security finding validation through graduated exploitation. 4-phase pipeline: recon (SAST/DAST), analysis (code review), validation (exploit proof), report (No Exploit, No Report gate). Eliminates false positives by proving exploitability.
|
|
89
88
|
- **qe-chaos-resilience**: Chaos engineering and resilience testing including fault injection, load testing, and system recovery validation.
|
|
90
89
|
- **qe-code-intelligence**: Knowledge graph-based code understanding with semantic search and 80% token reduction through intelligent context retrieval.
|
|
91
|
-
- **qe-contract-testing**: Consumer-driven contract testing for APIs including REST, GraphQL, and event-driven systems with schema validation.
|
|
92
90
|
- **qe-coverage-analysis**: O(log n) sublinear coverage gap detection with risk-weighted analysis and intelligent test prioritization.
|
|
93
91
|
- **qe-defect-intelligence**: AI-powered defect prediction, pattern learning, and root cause analysis for proactive quality management.
|
|
94
92
|
- **qe-iterative-loop**: Quality Engineering iteration loops for autonomous test improvement, coverage achievement, and quality gate compliance. Use when tests need to pass, coverage targets must be met, quality gates require compliance, or flaky tests need stabilization. Integrates with AQE v3 fleet agents for coordinated quality iteration.
|
|
95
93
|
- **qe-learning-optimization**: Transfer learning, metrics optimization, and continuous improvement for AI-powered QE agents.
|
|
96
94
|
- **qe-quality-assessment**: Comprehensive quality gates, metrics analysis, and deployment readiness assessment for continuous quality assurance.
|
|
97
95
|
- **qe-requirements-validation**: Requirements traceability, acceptance criteria validation, and BDD scenario management for complete requirements coverage.
|
|
98
|
-
- **qe-security-compliance**: Security auditing, vulnerability scanning, and compliance validation for OWASP, SOC2, GDPR, and other standards.
|
|
99
96
|
- **qe-test-execution**: Parallel test execution orchestration with intelligent scheduling, retry logic, and comprehensive result aggregation.
|
|
100
97
|
- **qe-test-generation**: AI-powered test generation using pattern recognition, code analysis, and intelligent test synthesis for comprehensive test coverage.
|
|
101
98
|
- **qe-visual-accessibility**: Visual regression testing, responsive design validation, and WCAG accessibility compliance testing.
|
|
102
99
|
|
|
100
|
+
### On-Demand Hooks
|
|
101
|
+
|
|
102
|
+
- **strict-tdd**: Enforces strict TDD red-green-refactor discipline. Blocks code changes that lack a failing test first.
|
|
103
|
+
- **no-skip**: Prevents use of .skip, .only, or xdescribe in test files. Ensures all tests are active.
|
|
104
|
+
- **coverage-guard**: Blocks merges when coverage drops below configured thresholds. Enforces coverage-only-goes-up policy.
|
|
105
|
+
- **freeze-tests**: Locks the test suite during stabilization periods. Prevents new test additions or modifications.
|
|
106
|
+
- **security-watch**: Scans code changes for security anti-patterns (hardcoded secrets, SQL injection, etc.) on every commit.
|
|
107
|
+
|
|
108
|
+
### Runbook Skills
|
|
109
|
+
|
|
110
|
+
- **test-failure-investigator**: Automated runbook for investigating test failures. Gathers logs, diffs, recent changes, and flaky-test history to diagnose root cause.
|
|
111
|
+
- **coverage-drop-investigator**: Automated runbook for diagnosing coverage drops. Identifies uncovered lines, maps to recent commits, and suggests targeted tests.
|
|
112
|
+
|
|
113
|
+
### Product Verification
|
|
114
|
+
|
|
115
|
+
- **e2e-flow-verifier**: End-to-end user flow verification against acceptance criteria. Validates critical paths through the application match expected behavior.
|
|
116
|
+
|
|
117
|
+
### Data & Analysis
|
|
118
|
+
|
|
119
|
+
- **test-metrics-dashboard**: Aggregates test results, coverage trends, flaky-test rates, and execution times into a unified dashboard view.
|
|
120
|
+
|
|
121
|
+
### Measurement
|
|
122
|
+
|
|
123
|
+
- **skill-stats**: Measures skill usage frequency, success rates, and token costs. Provides data for skill portfolio optimization.
|
|
124
|
+
|
|
103
125
|
## Platform Skills (30)
|
|
104
126
|
|
|
105
127
|
Claude Flow platform skills (managed separately).
|
|
@@ -5,30 +5,30 @@
|
|
|
5
5
|
|
|
6
6
|
## Overview
|
|
7
7
|
|
|
8
|
-
-
|
|
8
|
+
-44-brightgreen)
|
|
9
9
|
-7-green)
|
|
10
10
|
-5-yellow)
|
|
11
|
-
-
|
|
11
|
+
-49-lightgrey)
|
|
12
12
|
|
|
13
|
-
**Total Skills**:
|
|
13
|
+
**Total Skills**: 105
|
|
14
14
|
|
|
15
15
|
## Trust Tier Distribution
|
|
16
16
|
|
|
17
17
|
| Tier | Count | Description |
|
|
18
18
|
|------|-------|-------------|
|
|
19
|
-
| 3 - Verified |
|
|
19
|
+
| 3 - Verified | 44 | Full evaluation test suite |
|
|
20
20
|
| 2 - Validated | 7 | Has executable validator |
|
|
21
21
|
| 1 - Structured | 5 | Has JSON output schema |
|
|
22
|
-
| 0 - Advisory |
|
|
22
|
+
| 0 - Advisory | 49 | SKILL.md only |
|
|
23
23
|
|
|
24
24
|
## Validation Status
|
|
25
25
|
|
|
26
26
|
| Status | Count |
|
|
27
27
|
|--------|-------|
|
|
28
|
-
| Passing |
|
|
28
|
+
| Passing | 44 |
|
|
29
29
|
| Failing | 0 |
|
|
30
30
|
| Unknown | 12 |
|
|
31
|
-
| Skipped |
|
|
31
|
+
| Skipped | 49 |
|
|
32
32
|
|
|
33
33
|
---
|
|
34
34
|
|
|
@@ -60,13 +60,11 @@ These skills have complete validation infrastructure: JSON schema, validator scr
|
|
|
60
60
|
| qcsd-ideation-swarm | qcsd-phases | `schemas/output.json` | `scripts/validate-config.json` | `evals/qcsd-ideation-swarm.yaml` | Passing |
|
|
61
61
|
| qe-chaos-resilience | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-chaos-resilience.yaml` | Passing |
|
|
62
62
|
| qe-code-intelligence | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-code-intelligence.yaml` | Passing |
|
|
63
|
-
| qe-contract-testing | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-contract-testing.yaml` | Passing |
|
|
64
63
|
| qe-coverage-analysis | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-coverage-analysis.yaml` | Passing |
|
|
65
64
|
| qe-defect-intelligence | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-defect-intelligence.yaml` | Passing |
|
|
66
65
|
| qe-learning-optimization | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-learning-optimization.yaml` | Passing |
|
|
67
66
|
| qe-quality-assessment | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-quality-assessment.yaml` | Passing |
|
|
68
67
|
| qe-requirements-validation | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-requirements-validation.yaml` | Passing |
|
|
69
|
-
| qe-security-compliance | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-security-compliance.yaml` | Passing |
|
|
70
68
|
| qe-test-execution | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-test-execution.yaml` | Passing |
|
|
71
69
|
| qe-test-generation | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-test-generation.yaml` | Passing |
|
|
72
70
|
| qe-visual-accessibility | - | `schemas/output.json` | `scripts/validate-config.json` | `evals/qe-visual-accessibility.yaml` | Passing |
|
|
@@ -110,13 +108,31 @@ These skills have a JSON output schema but no validator yet.
|
|
|
110
108
|
| Skill | Category | Schema |
|
|
111
109
|
|-------|----------|--------|
|
|
112
110
|
| agentic-quality-engineering | qe-core | `schemas/output.json` |
|
|
113
|
-
| aqe-v2-v3-migration | - | `schemas/output.json` |
|
|
114
111
|
| consultancy-practices | professional-practice | `schemas/output.json` |
|
|
115
112
|
| technical-writing | communication | `schemas/output.json` |
|
|
116
113
|
| test-environment-management | specialized-testing | `schemas/output.json` |
|
|
117
114
|
|
|
118
115
|
---
|
|
119
116
|
|
|
117
|
+
## Tier 0 Skills (Advisory)
|
|
118
|
+
|
|
119
|
+
These skills have SKILL.md only, with no evaluation infrastructure yet.
|
|
120
|
+
|
|
121
|
+
| Skill | Category |
|
|
122
|
+
|-------|----------|
|
|
123
|
+
| coverage-drop-investigator | investigation |
|
|
124
|
+
| coverage-guard | on-demand-hooks |
|
|
125
|
+
| e2e-flow-verifier | product-verification |
|
|
126
|
+
| freeze-tests | on-demand-hooks |
|
|
127
|
+
| no-skip | on-demand-hooks |
|
|
128
|
+
| security-watch | on-demand-hooks |
|
|
129
|
+
| skill-stats | measurement |
|
|
130
|
+
| strict-tdd | on-demand-hooks |
|
|
131
|
+
| test-failure-investigator | investigation |
|
|
132
|
+
| test-metrics-dashboard | analytics |
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
120
136
|
## Upgrading Skills
|
|
121
137
|
|
|
122
138
|
To upgrade a skill to a higher trust tier:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: a11y-ally
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use when running comprehensive WCAG accessibility audits with axe-core + pa11y + Lighthouse, generating context-aware remediation, or testing video accessibility. Supports 3-tier browser cascade with graceful degradation."
|
|
4
4
|
category: specialized-testing
|
|
5
5
|
priority: critical
|
|
6
6
|
tokenEstimate: 10000
|
|
@@ -1661,3 +1661,12 @@ ROI = (Impact × Users%) / Effort_Hours
|
|
|
1661
1661
|
11. **NEVER** skip video pipeline if videos detected
|
|
1662
1662
|
12. **NEVER** complete without remediation.md
|
|
1663
1663
|
13. **NEVER** fail audit just because 1-2 tools failed (use graceful degradation)
|
|
1664
|
+
|
|
1665
|
+
## Gotchas
|
|
1666
|
+
|
|
1667
|
+
- axe-core catches ~30% of WCAG issues — automated tools miss keyboard navigation, reading order, and cognitive issues
|
|
1668
|
+
- Agent runs Lighthouse only and reports "accessible" — Lighthouse alone is insufficient, always run axe-core + pa11y too
|
|
1669
|
+
- Screen reader testing requires actual screen reader interaction, not just ARIA attribute checks
|
|
1670
|
+
- Video accessibility (captions, audio descriptions) is frequently skipped — check every `<video>` element
|
|
1671
|
+
- Color contrast tools disagree on gradients and transparency — test with actual low-vision simulation
|
|
1672
|
+
- Playwright+Stealth may be blocked by some sites — fall back gracefully, don't skip the audit
|
|
@@ -21,6 +21,8 @@ validation:
|
|
|
21
21
|
|
|
22
22
|
# Accessibility Testing
|
|
23
23
|
|
|
24
|
+
> **Consolidated**: For comprehensive WCAG auditing with multi-tool testing (axe-core + pa11y + Lighthouse), video accessibility, and remediation, prefer [`/a11y-ally`](../a11y-ally/). This skill provides a quick reference card for basic accessibility testing patterns.
|
|
25
|
+
|
|
24
26
|
<default_to_action>
|
|
25
27
|
When testing accessibility or ensuring compliance:
|
|
26
28
|
1. APPLY POUR principles: Perceivable, Operable, Understandable, Robust
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: agentic-quality-engineering
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use when orchestrating QE agents, understanding PACT principles, configuring the AQE v3 fleet, or leveraging AI agents as force multipliers for quality work."
|
|
4
4
|
category: qe-core
|
|
5
5
|
priority: critical
|
|
6
6
|
tokenEstimate: 1400
|
|
@@ -297,3 +297,11 @@ await apiFleet.execute({
|
|
|
297
297
|
API testing = verifying contracts and behavior, not implementation. Focus on what matters to consumers: correct responses, proper error handling, acceptable performance.
|
|
298
298
|
|
|
299
299
|
**With Agents:** Agents automate contract validation, generate comprehensive test suites from specs, and monitor production APIs for drift. Use agents to maintain API quality at scale.
|
|
300
|
+
|
|
301
|
+
## Gotchas
|
|
302
|
+
|
|
303
|
+
- Agent generates tests against documented API, not actual API — always validate against running service first
|
|
304
|
+
- Auth tokens expire between test runs — use fixtures with long-lived tokens or refresh before each suite
|
|
305
|
+
- Rate limiting in CI causes intermittent failures — add retry with exponential backoff for 429 responses
|
|
306
|
+
- GraphQL introspection may be disabled in production — test against staging schema, not production endpoint
|
|
307
|
+
- Idempotency tests need unique request IDs per run — hardcoded IDs cause false passes on retry
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./config-schema.json",
|
|
3
|
+
"_description": "API Testing configuration. Auto-created on first run. Edit to customize.",
|
|
4
|
+
"api_type": null,
|
|
5
|
+
"auth_type": null,
|
|
6
|
+
"base_url": null,
|
|
7
|
+
"options": {
|
|
8
|
+
"validateSchemaOnEveryRequest": true,
|
|
9
|
+
"retryOn429": true,
|
|
10
|
+
"retryDelay": 1000,
|
|
11
|
+
"timeout": 30000
|
|
12
|
+
},
|
|
13
|
+
"_setupPrompt": "If api_type is null, ask: 'What type of API are you testing? (rest/graphql/grpc)'. If auth_type is null, ask: 'What authentication does the API use? (bearer/oauth2/api-key/basic/none)'. If base_url is null, ask: 'What is the base URL for the API under test?'"
|
|
14
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# API Test Scaffold Template
|
|
2
|
+
|
|
3
|
+
## REST API Test Structure (Jest/Supertest)
|
|
4
|
+
```typescript
|
|
5
|
+
import request from 'supertest';
|
|
6
|
+
import { app } from '../src/app';
|
|
7
|
+
|
|
8
|
+
describe('{{Resource}} API', () => {
|
|
9
|
+
// Setup
|
|
10
|
+
let authToken: string;
|
|
11
|
+
|
|
12
|
+
beforeAll(async () => {
|
|
13
|
+
authToken = await getTestToken();
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
describe('GET /api/{{resource}}', () => {
|
|
17
|
+
it('returns paginated list with valid auth', async () => {
|
|
18
|
+
const res = await request(app)
|
|
19
|
+
.get('/api/{{resource}}')
|
|
20
|
+
.set('Authorization', `Bearer ${authToken}`)
|
|
21
|
+
.query({ page: 1, limit: 10 });
|
|
22
|
+
|
|
23
|
+
expect(res.status).toBe(200);
|
|
24
|
+
expect(res.body.data).toBeInstanceOf(Array);
|
|
25
|
+
expect(res.body.pagination).toMatchObject({
|
|
26
|
+
page: 1,
|
|
27
|
+
limit: 10,
|
|
28
|
+
total: expect.any(Number)
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
it('returns 401 without auth', async () => {
|
|
33
|
+
const res = await request(app).get('/api/{{resource}}');
|
|
34
|
+
expect(res.status).toBe(401);
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
it('returns 400 for invalid query params', async () => {
|
|
38
|
+
const res = await request(app)
|
|
39
|
+
.get('/api/{{resource}}')
|
|
40
|
+
.set('Authorization', `Bearer ${authToken}`)
|
|
41
|
+
.query({ page: -1 });
|
|
42
|
+
expect(res.status).toBe(400);
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
describe('POST /api/{{resource}}', () => {
|
|
47
|
+
it('creates resource with valid payload', async () => {
|
|
48
|
+
const payload = { /* valid fields */ };
|
|
49
|
+
const res = await request(app)
|
|
50
|
+
.post('/api/{{resource}}')
|
|
51
|
+
.set('Authorization', `Bearer ${authToken}`)
|
|
52
|
+
.send(payload);
|
|
53
|
+
|
|
54
|
+
expect(res.status).toBe(201);
|
|
55
|
+
expect(res.body.id).toBeDefined();
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
it('returns 422 for invalid payload', async () => {
|
|
59
|
+
const res = await request(app)
|
|
60
|
+
.post('/api/{{resource}}')
|
|
61
|
+
.set('Authorization', `Bearer ${authToken}`)
|
|
62
|
+
.send({});
|
|
63
|
+
expect(res.status).toBe(422);
|
|
64
|
+
expect(res.body.errors).toBeDefined();
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
it('is idempotent with same request ID', async () => {
|
|
68
|
+
const requestId = crypto.randomUUID();
|
|
69
|
+
const payload = { /* valid fields */ };
|
|
70
|
+
|
|
71
|
+
const res1 = await request(app)
|
|
72
|
+
.post('/api/{{resource}}')
|
|
73
|
+
.set('Authorization', `Bearer ${authToken}`)
|
|
74
|
+
.set('X-Request-ID', requestId)
|
|
75
|
+
.send(payload);
|
|
76
|
+
|
|
77
|
+
const res2 = await request(app)
|
|
78
|
+
.post('/api/{{resource}}')
|
|
79
|
+
.set('Authorization', `Bearer ${authToken}`)
|
|
80
|
+
.set('X-Request-ID', requestId)
|
|
81
|
+
.send(payload);
|
|
82
|
+
|
|
83
|
+
expect(res1.body.id).toBe(res2.body.id);
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
```
|
|
@@ -227,3 +227,17 @@ const bugFleet = await FleetManager.coordinate({
|
|
|
227
227
|
Your bug report is the starting point for someone else's work. Make it **complete** (all info needed), **clear** (anyone can follow), **concise** (no noise), and **actionable** (developer knows next step).
|
|
228
228
|
|
|
229
229
|
**Good bug reports = Faster fixes = Better product = Happier users**
|
|
230
|
+
|
|
231
|
+
## Skill Composition
|
|
232
|
+
|
|
233
|
+
- **After finding bug** → Start with `/test-failure-investigator` for root cause
|
|
234
|
+
- **Prevent regression** → Use `/regression-testing` to add test preventing recurrence
|
|
235
|
+
- **Track quality** → Feed into `/test-metrics-dashboard` for trend analysis
|
|
236
|
+
|
|
237
|
+
## Gotchas
|
|
238
|
+
|
|
239
|
+
- Agent omits environment details (OS, browser version, node version) — these are critical for reproduction
|
|
240
|
+
- "Steps to reproduce" that start with "1. Open the app" are useless — specify exact URL, user role, and state
|
|
241
|
+
- Agent combines multiple bugs into one report — enforce ONE BUG = ONE REPORT strictly
|
|
242
|
+
- Screenshots without annotations don't help — always highlight the actual error area
|
|
243
|
+
- Severity assessment is often wrong — agent marks everything as "critical" or everything as "low"
|
|
@@ -232,3 +232,17 @@ const reviewFleet = await FleetManager.coordinate({
|
|
|
232
232
|
**Prioritize feedback:** 🔴 Blocker → 🟡 Major → 🟢 Minor → 💡 Suggestion. Focus on bugs and security, not style. Ask questions, don't command. Review < 400 lines at a time. Fast feedback (< 24h) beats thorough feedback.
|
|
233
233
|
|
|
234
234
|
**With Agents:** Agents automate security, performance, and coverage checks, freeing human reviewers to focus on logic and design. Use agents for consistent, fast initial review.
|
|
235
|
+
|
|
236
|
+
## Skill Composition
|
|
237
|
+
|
|
238
|
+
- **Security concerns** → Compose with `/security-testing` for security-focused review
|
|
239
|
+
- **Coverage check** → Run `/qe-coverage-analysis` on changed files
|
|
240
|
+
- **Ship decision** → Feed review results into `/qe-quality-assessment`
|
|
241
|
+
|
|
242
|
+
## Gotchas
|
|
243
|
+
|
|
244
|
+
- Agent reviews >400 lines at once and misses issues — chunk reviews to 200-400 lines maximum
|
|
245
|
+
- Nitpicking style while missing logic bugs is the #1 agent review failure — prioritize correctness over formatting
|
|
246
|
+
- Agent approves code that compiles but has subtle race conditions — always check shared state and async patterns
|
|
247
|
+
- Review comments without suggested fixes are unhelpful — always include a proposed alternative
|
|
248
|
+
- Agent doesn't check if the PR actually solves the linked issue — verify the stated problem is actually fixed
|
|
@@ -47,57 +47,6 @@ When validating cross-browser/platform compatibility:
|
|
|
47
47
|
- Launching in new markets
|
|
48
48
|
- Responsive design validation
|
|
49
49
|
|
|
50
|
-
### Browser Matrix
|
|
51
|
-
| Browser | Versions | Priority |
|
|
52
|
-
|---------|----------|----------|
|
|
53
|
-
| **Chrome** | Latest, N-1 | High |
|
|
54
|
-
| **Firefox** | Latest, N-1 | High |
|
|
55
|
-
| **Safari** | Latest, N-1 | High |
|
|
56
|
-
| **Edge** | Latest | Medium |
|
|
57
|
-
| **Mobile Safari** | iOS latest | High |
|
|
58
|
-
| **Mobile Chrome** | Android latest | High |
|
|
59
|
-
|
|
60
|
-
### Screen Breakpoints
|
|
61
|
-
| Category | Width Range |
|
|
62
|
-
|----------|-------------|
|
|
63
|
-
| **Mobile** | 320px - 480px |
|
|
64
|
-
| **Tablet** | 481px - 768px |
|
|
65
|
-
| **Desktop** | 769px - 1920px+ |
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
## Responsive Design Testing
|
|
70
|
-
|
|
71
|
-
```javascript
|
|
72
|
-
import { test, expect } from '@playwright/test';
|
|
73
|
-
|
|
74
|
-
const devices = [
|
|
75
|
-
{ name: 'iPhone 12', width: 390, height: 844 },
|
|
76
|
-
{ name: 'iPad', width: 768, height: 1024 },
|
|
77
|
-
{ name: 'Desktop', width: 1920, height: 1080 }
|
|
78
|
-
];
|
|
79
|
-
|
|
80
|
-
for (const device of devices) {
|
|
81
|
-
test(`layout on ${device.name}`, async ({ page }) => {
|
|
82
|
-
await page.setViewportSize({
|
|
83
|
-
width: device.width,
|
|
84
|
-
height: device.height
|
|
85
|
-
});
|
|
86
|
-
|
|
87
|
-
await page.goto('https://example.com');
|
|
88
|
-
|
|
89
|
-
const nav = await page.locator('nav');
|
|
90
|
-
if (device.width < 768) {
|
|
91
|
-
// Mobile: hamburger menu
|
|
92
|
-
expect(await nav.locator('.hamburger')).toBeVisible();
|
|
93
|
-
} else {
|
|
94
|
-
// Desktop: full menu
|
|
95
|
-
expect(await nav.locator('.menu-items')).toBeVisible();
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
```
|
|
100
|
-
|
|
101
50
|
---
|
|
102
51
|
|
|
103
52
|
## Cross-Browser with Playwright
|
|
@@ -202,8 +151,6 @@ const compatFleet = await FleetManager.coordinate({
|
|
|
202
151
|
|
|
203
152
|
## Remember
|
|
204
153
|
|
|
205
|
-
**Test where users are, not where you develop.** Developers use latest Chrome on high-end machines. Users access from older browsers, low-end devices, and slow networks.
|
|
206
|
-
|
|
207
154
|
**Cover 95%+ of your user base.** Use analytics to identify actual browser/device usage. Don't waste time on browsers nobody uses.
|
|
208
155
|
|
|
209
|
-
**With Agents:** Agents orchestrate parallel cross-browser testing across cloud platforms
|
|
156
|
+
**With Agents:** Agents orchestrate parallel cross-browser testing across cloud platforms. `qe-visual-tester` catches visual inconsistencies across platforms automatically.
|
|
@@ -229,3 +229,11 @@ const complianceFleet = await FleetManager.coordinate({
|
|
|
229
229
|
**Audit trail everything.** Every access to sensitive data, every consent, every deletion must be logged with timestamps and user IDs.
|
|
230
230
|
|
|
231
231
|
**With Agents:** Agents validate compliance requirements continuously, detect violations early, and generate audit-ready reports. Catch compliance issues in development, not in audits.
|
|
232
|
+
|
|
233
|
+
## Gotchas
|
|
234
|
+
|
|
235
|
+
- Agent checks GDPR consent flow but misses data retention — always verify deletion/anonymization actually works
|
|
236
|
+
- Compliance reports with "100% compliant" are suspicious — no real system is fully compliant, verify each claim
|
|
237
|
+
- Agent may test US regulations only — explicitly specify jurisdiction (EU, CA, etc.) for correct requirements
|
|
238
|
+
- PII in test data is itself a compliance violation — never use production PII, use synthetic generators
|
|
239
|
+
- Audit trail gaps are invisible until audit time — verify logging exists for EVERY data access, not just writes
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./config-schema.json",
|
|
3
|
+
"_description": "Compliance Testing configuration. Auto-created on first run. Edit to customize.",
|
|
4
|
+
"regulations": [],
|
|
5
|
+
"scope": null,
|
|
6
|
+
"options": {
|
|
7
|
+
"dataClassification": null,
|
|
8
|
+
"retentionPolicyDays": null,
|
|
9
|
+
"auditLogRequired": true,
|
|
10
|
+
"piiScanEnabled": true
|
|
11
|
+
},
|
|
12
|
+
"_setupPrompt": "If regulations is empty, ask: 'Which regulations apply to this project? (gdpr/ccpa/hipaa/soc2/pci-dss — comma-separated)'. If scope is null, ask: 'What is the compliance scope? (full-app/api-only/data-layer/specific-module)'."
|
|
13
|
+
}
|
|
@@ -40,28 +40,9 @@ When consulting on quality:
|
|
|
40
40
|
|
|
41
41
|
## Quick Reference Card
|
|
42
42
|
|
|
43
|
-
### The Consulting Process
|
|
44
|
-
|
|
45
|
-
| Phase | Duration | Goal | Deliverable |
|
|
46
|
-
|-------|----------|------|-------------|
|
|
47
|
-
| **Discovery** | Week 1-2 | Understand context | Interview notes, observations |
|
|
48
|
-
| **Analysis** | Week 2-3 | Identify root causes | Impact/effort matrix |
|
|
49
|
-
| **Recommendations** | Week 3-4 | Present findings | Report with roadmap |
|
|
50
|
-
| **Implementation** | Month 2-6+ | Execute changes | Working system, trained team |
|
|
51
|
-
| **Transition** | Final month | Ensure self-sufficiency | Handover docs |
|
|
52
|
-
|
|
53
|
-
### Impact/Effort Matrix
|
|
54
|
-
|
|
55
|
-
| Priority | What | Action |
|
|
56
|
-
|----------|------|--------|
|
|
57
|
-
| High Impact, Low Effort | Quick wins | Do first |
|
|
58
|
-
| High Impact, High Effort | Major initiatives | Plan carefully |
|
|
59
|
-
| Low Impact, Low Effort | Nice-to-haves | If time permits |
|
|
60
|
-
| Low Impact, High Effort | Distractions | Skip |
|
|
61
|
-
|
|
62
43
|
---
|
|
63
44
|
|
|
64
|
-
## Common Patterns
|
|
45
|
+
## Common Patterns (What Clients Say vs. What They Mean)
|
|
65
46
|
|
|
66
47
|
### "We Need Test Automation"
|
|
67
48
|
|
|
@@ -110,18 +91,6 @@ When consulting on quality:
|
|
|
110
91
|
|
|
111
92
|
---
|
|
112
93
|
|
|
113
|
-
## Anti-Patterns
|
|
114
|
-
|
|
115
|
-
| Anti-Pattern | Problem | Better |
|
|
116
|
-
|--------------|---------|--------|
|
|
117
|
-
| **Cookie-Cutter** | Same solution everywhere | Context-specific recommendations |
|
|
118
|
-
| **Tool Pusher** | Recommend expensive tools | Tools that solve actual problems |
|
|
119
|
-
| **Process Nazi** | Impose rigid process | Lightweight, fits their culture |
|
|
120
|
-
| **Permanent Fixture** | Never leave, create dependency | Work toward them not needing you |
|
|
121
|
-
| **Blame Game** | Point fingers at people | Fix systems, not blame people |
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
94
|
## Difficult Situations
|
|
126
95
|
|
|
127
96
|
**"We already tried that"**
|
|
@@ -45,23 +45,6 @@ When making testing decisions or adapting approaches:
|
|
|
45
45
|
- Adapting approach to specific constraints
|
|
46
46
|
- Exploratory testing sessions
|
|
47
47
|
|
|
48
|
-
### Seven Context-Driven Principles
|
|
49
|
-
1. Value of any practice depends on its context
|
|
50
|
-
2. Good practices in context, no universal best practices
|
|
51
|
-
3. People working together are most important
|
|
52
|
-
4. Projects unfold in unpredictable ways
|
|
53
|
-
5. Product is a solution - if problem not solved, product fails
|
|
54
|
-
6. Good testing is challenging intellectual work
|
|
55
|
-
7. Judgment and skill determine right things at right times
|
|
56
|
-
|
|
57
|
-
### Context Factors
|
|
58
|
-
| Factor | Questions |
|
|
59
|
-
|--------|-----------|
|
|
60
|
-
| **Project** | Business goal? User needs? Failure impact? |
|
|
61
|
-
| **Constraints** | Timeline? Budget? Team skills? Legacy? |
|
|
62
|
-
| **Risk** | Safety-critical? Regulated? High volume? |
|
|
63
|
-
| **Technical** | Stack quirks? Integrations? Observability? |
|
|
64
|
-
|
|
65
48
|
### RST Heuristics
|
|
66
49
|
| Heuristic | Application |
|
|
67
50
|
|-----------|-------------|
|
|
@@ -97,26 +80,6 @@ When making testing decisions or adapting approaches:
|
|
|
97
80
|
|
|
98
81
|
---
|
|
99
82
|
|
|
100
|
-
## Investigation vs. Checking
|
|
101
|
-
|
|
102
|
-
| Checking | Testing (Investigation) |
|
|
103
|
-
|----------|------------------------|
|
|
104
|
-
| Did API return 200? | Does API meet user needs? |
|
|
105
|
-
| Does button work? | What happens under load? |
|
|
106
|
-
| Match the spec? | Does it solve the problem? |
|
|
107
|
-
|
|
108
|
-
---
|
|
109
|
-
|
|
110
|
-
## Red Flags: Not Context-Driven
|
|
111
|
-
|
|
112
|
-
- Follow process "because that's how it's done"
|
|
113
|
-
- Can't explain *why* you're doing something
|
|
114
|
-
- Measure test cases executed, not problems found
|
|
115
|
-
- Test plan could apply to any project
|
|
116
|
-
- Stop thinking once you have a script
|
|
117
|
-
|
|
118
|
-
---
|
|
119
|
-
|
|
120
83
|
## Agent-Assisted Context-Driven Testing
|
|
121
84
|
|
|
122
85
|
```typescript
|
|
@@ -191,8 +154,4 @@ const contextFleet = await FleetManager.coordinate({
|
|
|
191
154
|
|
|
192
155
|
## Remember
|
|
193
156
|
|
|
194
|
-
**Context drives decisions.** No universal best practices. Skilled testers make informed decisions based on specific goals, constraints, and risks.
|
|
195
|
-
|
|
196
|
-
You're not a test script executor. You're a skilled investigator helping teams build better products.
|
|
197
|
-
|
|
198
157
|
**With Agents:** Agents analyze context, adapt strategies, and learn what works in your situation. Use agents to scale context-driven thinking while maintaining human judgment for critical decisions.
|
|
@@ -213,6 +213,10 @@ const contractFleet = await FleetManager.coordinate({
|
|
|
213
213
|
|
|
214
214
|
---
|
|
215
215
|
|
|
216
|
+
## Agent CLI & Advanced Patterns
|
|
217
|
+
|
|
218
|
+
For v3 agent-specific commands (`aqe contract ...`), GraphQL contracts, event contracts, and Pact Broker integration, see [references/agent-commands.md](references/agent-commands.md).
|
|
219
|
+
|
|
216
220
|
## Related Skills
|
|
217
221
|
- [api-testing-patterns](../api-testing-patterns/) - API testing strategies
|
|
218
222
|
- [shift-left-testing](../shift-left-testing/) - Early contract validation
|
|
@@ -225,3 +229,11 @@ const contractFleet = await FleetManager.coordinate({
|
|
|
225
229
|
**Consumers own the contract.** They define what they need; providers must fulfill it. Breaking changes require major version bumps and coordination. CI/CD blocks deploys that break contracts. Use Pact for consumer-driven, OpenAPI for API-first.
|
|
226
230
|
|
|
227
231
|
**With Agents:** Agents validate contracts, detect breaking changes with semver recommendations, and generate migration guides. Use agents to maintain contract compliance at scale.
|
|
232
|
+
|
|
233
|
+
## Gotchas
|
|
234
|
+
|
|
235
|
+
- Pact broker URL must be configured before running — agent will generate tests that silently skip verification without it
|
|
236
|
+
- Consumer tests pass locally but fail in CI when provider states aren't set up — always verify both sides
|
|
237
|
+
- Adding a required field to a response is a BREAKING change even though provider tests pass — consumer didn't expect it
|
|
238
|
+
- Agent may generate contracts from API docs instead of actual consumer usage — contracts must reflect real consumer needs
|
|
239
|
+
- GraphQL contract testing requires schema stitching awareness — fragments may reference types from other services
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./config-schema.json",
|
|
3
|
+
"_description": "Contract Testing configuration. Auto-created on first run. Edit to customize.",
|
|
4
|
+
"broker_url": null,
|
|
5
|
+
"consumer_name": null,
|
|
6
|
+
"provider_name": null,
|
|
7
|
+
"options": {
|
|
8
|
+
"publishVerificationResults": true,
|
|
9
|
+
"enablePending": true,
|
|
10
|
+
"includeWipPactsSince": null
|
|
11
|
+
},
|
|
12
|
+
"_setupPrompt": "If broker_url is null, ask: 'What is your Pact Broker URL? (or \"local\" for file-based)'. If consumer_name is null, ask: 'What is the consumer service name?'. If provider_name is null, ask: 'What is the provider service name?'"
|
|
13
|
+
}
|