@agentic-qe/v3 3.0.0-alpha.6 → 3.0.0-alpha.8
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/assets/agents/v3/subagents/v3-qe-code-reviewer.md +339 -0
- package/assets/agents/v3/subagents/v3-qe-integration-reviewer.md +344 -0
- package/assets/agents/v3/subagents/v3-qe-performance-reviewer.md +351 -0
- package/assets/agents/v3/subagents/v3-qe-security-reviewer.md +374 -0
- package/assets/agents/v3/subagents/v3-qe-tdd-green.md +334 -0
- package/assets/agents/v3/subagents/v3-qe-tdd-red.md +329 -0
- package/assets/agents/v3/subagents/v3-qe-tdd-refactor.md +361 -0
- package/assets/agents/v3/v3-qe-accessibility-auditor.md +266 -0
- package/assets/agents/v3/v3-qe-bdd-generator.md +279 -0
- package/assets/agents/v3/v3-qe-chaos-engineer.md +265 -0
- package/assets/agents/v3/v3-qe-code-complexity.md +298 -0
- package/assets/agents/v3/v3-qe-code-intelligence.md +262 -0
- package/assets/agents/v3/v3-qe-contract-validator.md +267 -0
- package/assets/agents/v3/v3-qe-coverage-specialist.md +227 -0
- package/assets/agents/v3/v3-qe-defect-predictor.md +251 -0
- package/assets/agents/v3/v3-qe-dependency-mapper.md +277 -0
- package/assets/agents/v3/v3-qe-deployment-advisor.md +275 -0
- package/assets/agents/v3/v3-qe-flaky-hunter.md +248 -0
- package/assets/agents/v3/v3-qe-fleet-commander.md +293 -0
- package/assets/agents/v3/v3-qe-gap-detector.md +260 -0
- package/assets/agents/v3/v3-qe-graphql-tester.md +308 -0
- package/assets/agents/v3/v3-qe-impact-analyzer.md +299 -0
- package/assets/agents/v3/v3-qe-integration-tester.md +238 -0
- package/assets/agents/v3/v3-qe-kg-builder.md +273 -0
- package/assets/agents/v3/v3-qe-learning-coordinator.md +226 -0
- package/assets/agents/v3/v3-qe-load-tester.md +280 -0
- package/assets/agents/v3/v3-qe-metrics-optimizer.md +300 -0
- package/assets/agents/v3/v3-qe-mutation-tester.md +301 -0
- package/assets/agents/v3/v3-qe-parallel-executor.md +240 -0
- package/assets/agents/v3/v3-qe-pattern-learner.md +271 -0
- package/assets/agents/v3/v3-qe-performance-tester.md +262 -0
- package/assets/agents/v3/v3-qe-property-tester.md +247 -0
- package/assets/agents/v3/v3-qe-quality-gate.md +218 -0
- package/assets/agents/v3/v3-qe-queen-coordinator.md +214 -0
- package/assets/agents/v3/v3-qe-qx-partner.md +313 -0
- package/assets/agents/v3/v3-qe-regression-analyzer.md +322 -0
- package/assets/agents/v3/v3-qe-requirements-validator.md +360 -0
- package/assets/agents/v3/v3-qe-responsive-tester.md +311 -0
- package/assets/agents/v3/v3-qe-retry-handler.md +256 -0
- package/assets/agents/v3/v3-qe-risk-assessor.md +273 -0
- package/assets/agents/v3/v3-qe-root-cause-analyzer.md +286 -0
- package/assets/agents/v3/v3-qe-security-auditor.md +299 -0
- package/assets/agents/v3/v3-qe-security-scanner.md +235 -0
- package/assets/agents/v3/v3-qe-tdd-specialist.md +239 -0
- package/assets/agents/v3/v3-qe-test-architect.md +233 -0
- package/assets/agents/v3/v3-qe-transfer-specialist.md +295 -0
- package/assets/agents/v3/v3-qe-visual-tester.md +232 -0
- package/assets/skills/accessibility-testing/SKILL.md +216 -0
- package/assets/skills/agentdb-advanced/SKILL.md +550 -0
- package/assets/skills/agentdb-learning/SKILL.md +545 -0
- package/assets/skills/agentdb-memory-patterns/SKILL.md +339 -0
- package/assets/skills/agentdb-optimization/SKILL.md +509 -0
- package/assets/skills/agentdb-vector-search/SKILL.md +339 -0
- package/assets/skills/agentic-jujutsu/SKILL.md +645 -0
- package/assets/skills/agentic-quality-engineering/SKILL.md +335 -0
- package/assets/skills/api-testing-patterns/SKILL.md +294 -0
- package/assets/skills/aqe-v2-v3-migration/skill.md +322 -0
- package/assets/skills/brutal-honesty-review/README.md +218 -0
- package/assets/skills/brutal-honesty-review/SKILL.md +235 -0
- package/assets/skills/brutal-honesty-review/resources/assessment-rubrics.md +295 -0
- package/assets/skills/brutal-honesty-review/resources/review-template.md +102 -0
- package/assets/skills/brutal-honesty-review/scripts/assess-code.sh +179 -0
- package/assets/skills/brutal-honesty-review/scripts/assess-tests.sh +223 -0
- package/assets/skills/bug-reporting-excellence/SKILL.md +225 -0
- package/assets/skills/chaos-engineering-resilience/SKILL.md +158 -0
- package/assets/skills/cicd-pipeline-qe-orchestrator/README.md +304 -0
- package/assets/skills/cicd-pipeline-qe-orchestrator/SKILL.md +315 -0
- package/assets/skills/cicd-pipeline-qe-orchestrator/resources/workflows/microservice-pipeline.md +239 -0
- package/assets/skills/cicd-pipeline-qe-orchestrator/resources/workflows/mobile-pipeline.md +375 -0
- package/assets/skills/cicd-pipeline-qe-orchestrator/resources/workflows/monolith-pipeline.md +268 -0
- package/assets/skills/code-review-quality/SKILL.md +227 -0
- package/assets/skills/compatibility-testing/SKILL.md +205 -0
- package/assets/skills/compliance-testing/SKILL.md +225 -0
- package/assets/skills/consultancy-practices/SKILL.md +202 -0
- package/assets/skills/context-driven-testing/SKILL.md +196 -0
- package/assets/skills/contract-testing/SKILL.md +222 -0
- package/assets/skills/database-testing/SKILL.md +244 -0
- package/assets/skills/exploratory-testing-advanced/SKILL.md +201 -0
- package/assets/skills/flow-nexus-neural/SKILL.md +738 -0
- package/assets/skills/flow-nexus-platform/SKILL.md +1157 -0
- package/assets/skills/flow-nexus-swarm/SKILL.md +610 -0
- package/assets/skills/github-code-review/SKILL.md +1140 -0
- package/assets/skills/github-multi-repo/SKILL.md +874 -0
- package/assets/skills/github-project-management/SKILL.md +1277 -0
- package/assets/skills/github-release-management/SKILL.md +1081 -0
- package/assets/skills/github-workflow-automation/SKILL.md +1065 -0
- package/assets/skills/hive-mind-advanced/SKILL.md +712 -0
- package/assets/skills/holistic-testing-pact/SKILL.md +171 -0
- package/assets/skills/hooks-automation/SKILL.md +1201 -0
- package/assets/skills/localization-testing/SKILL.md +221 -0
- package/assets/skills/mobile-testing/SKILL.md +219 -0
- package/assets/skills/mutation-testing/SKILL.md +229 -0
- package/assets/skills/n8n-expression-testing/SKILL.md +434 -0
- package/assets/skills/n8n-integration-testing-patterns/SKILL.md +540 -0
- package/assets/skills/n8n-security-testing/SKILL.md +599 -0
- package/assets/skills/n8n-trigger-testing-strategies/SKILL.md +541 -0
- package/assets/skills/n8n-workflow-testing-fundamentals/SKILL.md +447 -0
- package/assets/skills/pair-programming/SKILL.md +1202 -0
- package/assets/skills/performance-analysis/SKILL.md +563 -0
- package/assets/skills/performance-testing/SKILL.md +310 -0
- package/assets/skills/quality-metrics/SKILL.md +225 -0
- package/assets/skills/reasoningbank-agentdb/SKILL.md +446 -0
- package/assets/skills/reasoningbank-intelligence/SKILL.md +201 -0
- package/assets/skills/refactoring-patterns/SKILL.md +205 -0
- package/assets/skills/regression-testing/SKILL.md +227 -0
- package/assets/skills/risk-based-testing/SKILL.md +206 -0
- package/assets/skills/security-testing/SKILL.md +306 -0
- package/assets/skills/sherlock-review/SKILL.md +250 -0
- package/assets/skills/shift-left-testing/SKILL.md +225 -0
- package/assets/skills/shift-right-testing/SKILL.md +227 -0
- package/assets/skills/six-thinking-hats/README.md +190 -0
- package/assets/skills/six-thinking-hats/SKILL.md +280 -0
- package/assets/skills/six-thinking-hats/resources/examples/api-testing-example.md +345 -0
- package/assets/skills/six-thinking-hats/resources/templates/solo-session-template.md +167 -0
- package/assets/skills/six-thinking-hats/resources/templates/team-session-template.md +336 -0
- package/assets/skills/skill-builder/SKILL.md +910 -0
- package/assets/skills/sparc-methodology/SKILL.md +1115 -0
- package/assets/skills/stream-chain/SKILL.md +563 -0
- package/assets/skills/swarm-advanced/SKILL.md +973 -0
- package/assets/skills/swarm-orchestration/SKILL.md +179 -0
- package/assets/skills/tdd-london-chicago/SKILL.md +244 -0
- package/assets/skills/technical-writing/SKILL.md +178 -0
- package/assets/skills/test-automation-strategy/SKILL.md +230 -0
- package/assets/skills/test-data-management/SKILL.md +270 -0
- package/assets/skills/test-design-techniques/SKILL.md +244 -0
- package/assets/skills/test-environment-management/SKILL.md +243 -0
- package/assets/skills/test-reporting-analytics/SKILL.md +214 -0
- package/assets/skills/testability-scoring/README.md +71 -0
- package/assets/skills/testability-scoring/SKILL.md +346 -0
- package/assets/skills/testability-scoring/resources/templates/config.template.js +84 -0
- package/assets/skills/testability-scoring/resources/templates/testability-scoring.spec.template.js +532 -0
- package/assets/skills/testability-scoring/scripts/generate-html-report.js +1007 -0
- package/assets/skills/testability-scoring/scripts/run-assessment.sh +70 -0
- package/assets/skills/v3-qe-chaos-resilience/SKILL.md +238 -0
- package/assets/skills/v3-qe-code-intelligence/SKILL.md +209 -0
- package/assets/skills/v3-qe-contract-testing/SKILL.md +218 -0
- package/assets/skills/v3-qe-coverage-analysis/SKILL.md +187 -0
- package/assets/skills/v3-qe-defect-intelligence/SKILL.md +205 -0
- package/assets/skills/v3-qe-learning-optimization/SKILL.md +238 -0
- package/assets/skills/v3-qe-quality-assessment/SKILL.md +213 -0
- package/assets/skills/v3-qe-requirements-validation/SKILL.md +248 -0
- package/assets/skills/v3-qe-test-execution/SKILL.md +182 -0
- package/assets/skills/v3-qe-test-generation/SKILL.md +141 -0
- package/assets/skills/v3-qe-visual-accessibility/SKILL.md +242 -0
- package/assets/skills/verification-quality/SKILL.md +649 -0
- package/assets/skills/visual-testing-advanced/SKILL.md +219 -0
- package/assets/skills/xp-practices/SKILL.md +229 -0
- package/dist/cli/bundle.js +23 -13
- package/dist/init/agents-installer.js +4 -4
- package/dist/init/agents-installer.js.map +1 -1
- package/dist/init/init-wizard.d.ts.map +1 -1
- package/dist/init/init-wizard.js +15 -5
- package/dist/init/init-wizard.js.map +1 -1
- package/dist/init/skills-installer.js +4 -4
- package/dist/init/skills-installer.js.map +1 -1
- package/package.json +7 -1
- package/docs/analysis/V3-INIT-REQUIREMENTS-ANALYSIS.md +0 -352
- package/implementation/README.md +0 -90
- package/implementation/adrs/ADR-030-coherence-gated-quality-gates.md +0 -312
- package/implementation/adrs/ADR-031-strange-loop-self-awareness.md +0 -484
- package/implementation/adrs/ADR-032-time-crystal-scheduling.md +0 -530
- package/implementation/adrs/ADR-033-early-exit-testing.md +0 -634
- package/implementation/adrs/ADR-034-neural-topology-optimizer.md +0 -589
- package/implementation/adrs/ADR-035-causal-discovery.md +0 -610
- package/implementation/adrs/ADR-036-result-persistence.md +0 -326
- package/implementation/adrs/ADR-037-v3-qe-agent-naming.md +0 -105
- package/implementation/adrs/ADR-038-v3-qe-memory-unification.md +0 -154
- package/implementation/adrs/ADR-039-v3-qe-mcp-optimization.md +0 -179
- package/implementation/adrs/ADR-040-v3-qe-agentic-flow-integration.md +0 -240
- package/implementation/adrs/ADR-041-v3-qe-cli-enhancement.md +0 -296
- package/implementation/adrs/ADR-042-v3-qe-token-tracking-integration.md +0 -517
- package/implementation/adrs/v3-adrs.md +0 -2783
- package/implementation/planning/AQE-V3-MASTER-PLAN.md +0 -815
- package/security-scan-report-2026-01-11.md +0 -410
- package/security-verification-report-2026-01-11.md +0 -278
- package/src/benchmarks/performance-benchmarks.ts +0 -646
- package/src/benchmarks/run-benchmarks.ts +0 -324
- package/src/causal-discovery/causal-graph.ts +0 -450
- package/src/causal-discovery/discovery-engine.ts +0 -438
- package/src/causal-discovery/index.ts +0 -117
- package/src/causal-discovery/types.ts +0 -456
- package/src/causal-discovery/weight-matrix.ts +0 -453
- package/src/cli/commands/qe-tools.ts +0 -634
- package/src/cli/index.ts +0 -1976
- package/src/compatibility/agent-mapper.ts +0 -291
- package/src/compatibility/cli-adapter.ts +0 -277
- package/src/compatibility/config-migrator.ts +0 -334
- package/src/compatibility/index.ts +0 -112
- package/src/compatibility/mcp-adapter.ts +0 -248
- package/src/compatibility/types.ts +0 -156
- package/src/coordination/claims/claim-repository.ts +0 -636
- package/src/coordination/claims/claim-service.ts +0 -675
- package/src/coordination/claims/handoff-manager.ts +0 -535
- package/src/coordination/claims/index.ts +0 -276
- package/src/coordination/claims/interfaces.ts +0 -687
- package/src/coordination/claims/work-stealing.ts +0 -436
- package/src/coordination/cross-domain-router.ts +0 -492
- package/src/coordination/index.ts +0 -127
- package/src/coordination/interfaces.ts +0 -691
- package/src/coordination/protocol-executor.ts +0 -760
- package/src/coordination/protocols/code-intelligence-index.ts +0 -855
- package/src/coordination/protocols/defect-investigation.ts +0 -1184
- package/src/coordination/protocols/index.ts +0 -11
- package/src/coordination/protocols/learning-consolidation.ts +0 -1181
- package/src/coordination/protocols/morning-sync.ts +0 -1055
- package/src/coordination/protocols/quality-gate.ts +0 -1566
- package/src/coordination/protocols/security-audit.ts +0 -1587
- package/src/coordination/queen-coordinator.ts +0 -1176
- package/src/coordination/result-saver.ts +0 -780
- package/src/coordination/task-executor.ts +0 -1146
- package/src/coordination/workflow-orchestrator.ts +0 -1917
- package/src/domains/chaos-resilience/coordinator.ts +0 -1032
- package/src/domains/chaos-resilience/index.ts +0 -143
- package/src/domains/chaos-resilience/interfaces.ts +0 -659
- package/src/domains/chaos-resilience/plugin.ts +0 -691
- package/src/domains/chaos-resilience/services/chaos-engineer.ts +0 -1097
- package/src/domains/chaos-resilience/services/index.ts +0 -19
- package/src/domains/chaos-resilience/services/load-tester.ts +0 -799
- package/src/domains/chaos-resilience/services/performance-profiler.ts +0 -792
- package/src/domains/code-intelligence/coordinator.ts +0 -631
- package/src/domains/code-intelligence/index.ts +0 -86
- package/src/domains/code-intelligence/interfaces.ts +0 -162
- package/src/domains/code-intelligence/plugin.ts +0 -451
- package/src/domains/code-intelligence/services/impact-analyzer.ts +0 -567
- package/src/domains/code-intelligence/services/index.ts +0 -26
- package/src/domains/code-intelligence/services/knowledge-graph.ts +0 -1067
- package/src/domains/code-intelligence/services/semantic-analyzer.ts +0 -901
- package/src/domains/contract-testing/coordinator.ts +0 -1038
- package/src/domains/contract-testing/index.ts +0 -122
- package/src/domains/contract-testing/interfaces.ts +0 -458
- package/src/domains/contract-testing/plugin.ts +0 -746
- package/src/domains/contract-testing/services/api-compatibility.ts +0 -748
- package/src/domains/contract-testing/services/contract-validator.ts +0 -1700
- package/src/domains/contract-testing/services/index.ts +0 -19
- package/src/domains/contract-testing/services/schema-validator.ts +0 -1102
- package/src/domains/coverage-analysis/coordinator.ts +0 -485
- package/src/domains/coverage-analysis/index.ts +0 -114
- package/src/domains/coverage-analysis/interfaces.ts +0 -142
- package/src/domains/coverage-analysis/plugin.ts +0 -172
- package/src/domains/coverage-analysis/services/coverage-analyzer.ts +0 -449
- package/src/domains/coverage-analysis/services/coverage-embedder.ts +0 -733
- package/src/domains/coverage-analysis/services/coverage-parser.ts +0 -753
- package/src/domains/coverage-analysis/services/gap-detector.ts +0 -592
- package/src/domains/coverage-analysis/services/hnsw-index.ts +0 -728
- package/src/domains/coverage-analysis/services/index.ts +0 -61
- package/src/domains/coverage-analysis/services/risk-scorer.ts +0 -540
- package/src/domains/coverage-analysis/services/sublinear-analyzer.ts +0 -747
- package/src/domains/defect-intelligence/coordinator.ts +0 -635
- package/src/domains/defect-intelligence/index.ts +0 -83
- package/src/domains/defect-intelligence/interfaces.ts +0 -152
- package/src/domains/defect-intelligence/plugin.ts +0 -483
- package/src/domains/defect-intelligence/services/causal-root-cause-analyzer.ts +0 -494
- package/src/domains/defect-intelligence/services/defect-predictor.ts +0 -852
- package/src/domains/defect-intelligence/services/index.ts +0 -37
- package/src/domains/defect-intelligence/services/pattern-learner.ts +0 -738
- package/src/domains/defect-intelligence/services/root-cause-analyzer.ts +0 -637
- package/src/domains/domain-interface.ts +0 -77
- package/src/domains/index.ts +0 -23
- package/src/domains/learning-optimization/coordinator.ts +0 -1215
- package/src/domains/learning-optimization/index.ts +0 -127
- package/src/domains/learning-optimization/interfaces.ts +0 -570
- package/src/domains/learning-optimization/plugin.ts +0 -851
- package/src/domains/learning-optimization/services/index.ts +0 -29
- package/src/domains/learning-optimization/services/learning-coordinator.ts +0 -972
- package/src/domains/learning-optimization/services/metrics-optimizer.ts +0 -915
- package/src/domains/learning-optimization/services/production-intel.ts +0 -971
- package/src/domains/learning-optimization/services/transfer-specialist.ts +0 -723
- package/src/domains/quality-assessment/coherence/gate-controller.ts +0 -549
- package/src/domains/quality-assessment/coherence/index.ts +0 -211
- package/src/domains/quality-assessment/coherence/lambda-calculator.ts +0 -384
- package/src/domains/quality-assessment/coherence/partition-detector.ts +0 -469
- package/src/domains/quality-assessment/coherence/types.ts +0 -384
- package/src/domains/quality-assessment/coordinator.ts +0 -605
- package/src/domains/quality-assessment/index.ts +0 -97
- package/src/domains/quality-assessment/interfaces.ts +0 -152
- package/src/domains/quality-assessment/plugin.ts +0 -496
- package/src/domains/quality-assessment/services/coherence-gate.ts +0 -358
- package/src/domains/quality-assessment/services/deployment-advisor.ts +0 -571
- package/src/domains/quality-assessment/services/index.ts +0 -34
- package/src/domains/quality-assessment/services/quality-analyzer.ts +0 -670
- package/src/domains/quality-assessment/services/quality-gate.ts +0 -384
- package/src/domains/requirements-validation/coordinator.ts +0 -812
- package/src/domains/requirements-validation/index.ts +0 -92
- package/src/domains/requirements-validation/interfaces.ts +0 -303
- package/src/domains/requirements-validation/plugin.ts +0 -576
- package/src/domains/requirements-validation/services/bdd-scenario-writer.ts +0 -676
- package/src/domains/requirements-validation/services/index.ts +0 -20
- package/src/domains/requirements-validation/services/requirements-validator.ts +0 -559
- package/src/domains/requirements-validation/services/testability-scorer.ts +0 -639
- package/src/domains/security-compliance/coordinator.ts +0 -757
- package/src/domains/security-compliance/index.ts +0 -120
- package/src/domains/security-compliance/interfaces.ts +0 -434
- package/src/domains/security-compliance/plugin.ts +0 -509
- package/src/domains/security-compliance/services/compliance-validator.ts +0 -1226
- package/src/domains/security-compliance/services/index.ts +0 -31
- package/src/domains/security-compliance/services/security-auditor.ts +0 -2227
- package/src/domains/security-compliance/services/security-scanner.ts +0 -2354
- package/src/domains/security-compliance/services/semgrep-integration.ts +0 -289
- package/src/domains/test-execution/coordinator.ts +0 -426
- package/src/domains/test-execution/index.ts +0 -76
- package/src/domains/test-execution/interfaces.ts +0 -119
- package/src/domains/test-execution/plugin.ts +0 -208
- package/src/domains/test-execution/services/flaky-detector.ts +0 -1240
- package/src/domains/test-execution/services/index.ts +0 -8
- package/src/domains/test-execution/services/retry-handler.ts +0 -820
- package/src/domains/test-execution/services/test-executor.ts +0 -885
- package/src/domains/test-generation/coordinator.ts +0 -656
- package/src/domains/test-generation/index.ts +0 -77
- package/src/domains/test-generation/interfaces.ts +0 -118
- package/src/domains/test-generation/plugin.ts +0 -397
- package/src/domains/test-generation/services/index.ts +0 -23
- package/src/domains/test-generation/services/pattern-matcher.ts +0 -1725
- package/src/domains/test-generation/services/test-generator.ts +0 -2750
- package/src/domains/visual-accessibility/coordinator.ts +0 -860
- package/src/domains/visual-accessibility/index.ts +0 -116
- package/src/domains/visual-accessibility/interfaces.ts +0 -435
- package/src/domains/visual-accessibility/plugin.ts +0 -568
- package/src/domains/visual-accessibility/services/accessibility-tester.ts +0 -982
- package/src/domains/visual-accessibility/services/axe-core-audit.ts +0 -630
- package/src/domains/visual-accessibility/services/index.ts +0 -28
- package/src/domains/visual-accessibility/services/responsive-tester.ts +0 -934
- package/src/domains/visual-accessibility/services/visual-tester.ts +0 -458
- package/src/early-exit/early-exit-controller.ts +0 -490
- package/src/early-exit/early-exit-decision.ts +0 -391
- package/src/early-exit/index.ts +0 -115
- package/src/early-exit/quality-signal.ts +0 -389
- package/src/early-exit/speculative-executor.ts +0 -505
- package/src/early-exit/types.ts +0 -407
- package/src/feedback/coverage-learner.ts +0 -456
- package/src/feedback/feedback-loop.ts +0 -426
- package/src/feedback/index.ts +0 -72
- package/src/feedback/pattern-promotion.ts +0 -373
- package/src/feedback/quality-score-calculator.ts +0 -334
- package/src/feedback/test-outcome-tracker.ts +0 -450
- package/src/feedback/types.ts +0 -497
- package/src/index.ts +0 -224
- package/src/init/agents-installer.ts +0 -536
- package/src/init/index.ts +0 -80
- package/src/init/init-wizard.ts +0 -1061
- package/src/init/project-analyzer.ts +0 -696
- package/src/init/self-configurator.ts +0 -488
- package/src/init/skills-installer.ts +0 -467
- package/src/init/types.ts +0 -432
- package/src/integrations/ruvector/ast-complexity.ts +0 -470
- package/src/integrations/ruvector/coverage-router.ts +0 -594
- package/src/integrations/ruvector/diff-risk-classifier.ts +0 -759
- package/src/integrations/ruvector/fallback.ts +0 -942
- package/src/integrations/ruvector/graph-boundaries.ts +0 -809
- package/src/integrations/ruvector/index.ts +0 -363
- package/src/integrations/ruvector/interfaces.ts +0 -609
- package/src/integrations/ruvector/q-learning-router.ts +0 -550
- package/src/kernel/agent-coordinator.ts +0 -165
- package/src/kernel/agentdb-backend.ts +0 -504
- package/src/kernel/event-bus.ts +0 -129
- package/src/kernel/hybrid-backend.ts +0 -538
- package/src/kernel/index.ts +0 -28
- package/src/kernel/interfaces.ts +0 -257
- package/src/kernel/kernel.ts +0 -285
- package/src/kernel/memory-backend.ts +0 -169
- package/src/kernel/memory-factory.ts +0 -293
- package/src/kernel/plugin-loader.ts +0 -179
- package/src/learning/index.ts +0 -219
- package/src/learning/pattern-store.ts +0 -990
- package/src/learning/qe-guidance.ts +0 -832
- package/src/learning/qe-hooks.ts +0 -644
- package/src/learning/qe-patterns.ts +0 -449
- package/src/learning/qe-reasoning-bank.ts +0 -951
- package/src/learning/real-embeddings.ts +0 -277
- package/src/learning/real-qe-reasoning-bank.ts +0 -833
- package/src/learning/sqlite-persistence.ts +0 -554
- package/src/mcp/entry.ts +0 -59
- package/src/mcp/handlers/agent-handlers.ts +0 -285
- package/src/mcp/handlers/core-handlers.ts +0 -317
- package/src/mcp/handlers/domain-handlers.ts +0 -1444
- package/src/mcp/handlers/index.ts +0 -57
- package/src/mcp/handlers/memory-handlers.ts +0 -338
- package/src/mcp/handlers/task-handlers.ts +0 -363
- package/src/mcp/index.ts +0 -30
- package/src/mcp/metrics/index.ts +0 -14
- package/src/mcp/metrics/metrics-collector.ts +0 -503
- package/src/mcp/protocol-server.ts +0 -752
- package/src/mcp/security/cve-prevention.ts +0 -742
- package/src/mcp/security/index.ts +0 -356
- package/src/mcp/security/oauth21-provider.ts +0 -821
- package/src/mcp/security/rate-limiter.ts +0 -615
- package/src/mcp/security/sampling-server.ts +0 -662
- package/src/mcp/security/schema-validator.ts +0 -855
- package/src/mcp/server.ts +0 -657
- package/src/mcp/tool-registry.ts +0 -391
- package/src/mcp/tools/base.ts +0 -399
- package/src/mcp/tools/chaos-resilience/inject.ts +0 -699
- package/src/mcp/tools/code-intelligence/analyze.ts +0 -745
- package/src/mcp/tools/contract-testing/validate.ts +0 -708
- package/src/mcp/tools/coverage-analysis/index.ts +0 -770
- package/src/mcp/tools/defect-intelligence/predict.ts +0 -466
- package/src/mcp/tools/index.ts +0 -214
- package/src/mcp/tools/learning-optimization/optimize.ts +0 -772
- package/src/mcp/tools/quality-assessment/evaluate.ts +0 -385
- package/src/mcp/tools/registry.ts +0 -248
- package/src/mcp/tools/requirements-validation/validate.ts +0 -394
- package/src/mcp/tools/security-compliance/scan.ts +0 -365
- package/src/mcp/tools/test-execution/execute.ts +0 -291
- package/src/mcp/tools/test-generation/generate.ts +0 -544
- package/src/mcp/tools/visual-accessibility/index.ts +0 -791
- package/src/mcp/transport/index.ts +0 -31
- package/src/mcp/transport/stdio.ts +0 -318
- package/src/mcp/types.ts +0 -543
- package/src/neural-optimizer/index.ts +0 -111
- package/src/neural-optimizer/replay-buffer.ts +0 -455
- package/src/neural-optimizer/swarm-topology.ts +0 -508
- package/src/neural-optimizer/topology-optimizer.ts +0 -828
- package/src/neural-optimizer/types.ts +0 -481
- package/src/neural-optimizer/value-network.ts +0 -351
- package/src/optimization/auto-tuner.ts +0 -817
- package/src/optimization/index.ts +0 -77
- package/src/optimization/metric-collectors.ts +0 -474
- package/src/optimization/qe-workers.ts +0 -704
- package/src/optimization/tuning-algorithm.ts +0 -401
- package/src/optimization/types.ts +0 -314
- package/src/routing/index.ts +0 -51
- package/src/routing/qe-agent-registry.ts +0 -963
- package/src/routing/qe-task-router.ts +0 -564
- package/src/routing/routing-feedback.ts +0 -365
- package/src/routing/types.ts +0 -406
- package/src/shared/embeddings/embedding-cache.ts +0 -157
- package/src/shared/embeddings/index.ts +0 -50
- package/src/shared/embeddings/nomic-embedder.ts +0 -404
- package/src/shared/embeddings/ollama-client.ts +0 -195
- package/src/shared/embeddings/types.ts +0 -147
- package/src/shared/entities/agent.ts +0 -141
- package/src/shared/entities/base-entity.ts +0 -79
- package/src/shared/entities/index.ts +0 -6
- package/src/shared/events/domain-events.ts +0 -259
- package/src/shared/events/index.ts +0 -5
- package/src/shared/git/git-analyzer.ts +0 -656
- package/src/shared/git/index.ts +0 -11
- package/src/shared/http/http-client.ts +0 -420
- package/src/shared/http/index.ts +0 -13
- package/src/shared/index.ts +0 -41
- package/src/shared/io/file-reader.ts +0 -525
- package/src/shared/io/index.ts +0 -25
- package/src/shared/llm/cache.ts +0 -473
- package/src/shared/llm/circuit-breaker.ts +0 -369
- package/src/shared/llm/cost-tracker.ts +0 -460
- package/src/shared/llm/index.ts +0 -140
- package/src/shared/llm/interfaces.ts +0 -629
- package/src/shared/llm/provider-manager.ts +0 -685
- package/src/shared/llm/providers/claude.ts +0 -524
- package/src/shared/llm/providers/index.ts +0 -8
- package/src/shared/llm/providers/ollama.ts +0 -575
- package/src/shared/llm/providers/openai.ts +0 -609
- package/src/shared/metrics/code-metrics.ts +0 -520
- package/src/shared/metrics/index.ts +0 -23
- package/src/shared/metrics/system-metrics.ts +0 -353
- package/src/shared/parsers/index.ts +0 -6
- package/src/shared/parsers/typescript-parser.ts +0 -841
- package/src/shared/security/compliance-patterns.ts +0 -666
- package/src/shared/security/index.ts +0 -30
- package/src/shared/security/osv-client.ts +0 -468
- package/src/shared/types/index.ts +0 -150
- package/src/shared/value-objects/index.ts +0 -273
- package/src/strange-loop/healing-controller.ts +0 -833
- package/src/strange-loop/index.ts +0 -104
- package/src/strange-loop/self-model.ts +0 -494
- package/src/strange-loop/strange-loop.ts +0 -446
- package/src/strange-loop/swarm-observer.ts +0 -448
- package/src/strange-loop/topology-analyzer.ts +0 -565
- package/src/strange-loop/types.ts +0 -640
- package/src/time-crystal/default-phases.ts +0 -520
- package/src/time-crystal/index.ts +0 -164
- package/src/time-crystal/oscillator.ts +0 -425
- package/src/time-crystal/phase-executor.ts +0 -521
- package/src/time-crystal/scheduler.ts +0 -1025
- package/src/time-crystal/test-runner.ts +0 -787
- package/src/time-crystal/types.ts +0 -421
- package/src/workers/base-worker.ts +0 -304
- package/src/workers/daemon.ts +0 -264
- package/src/workers/index.ts +0 -119
- package/src/workers/interfaces.ts +0 -393
- package/src/workers/worker-manager.ts +0 -424
- package/src/workers/workers/compliance-checker.ts +0 -445
- package/src/workers/workers/coverage-tracker.ts +0 -344
- package/src/workers/workers/defect-predictor.ts +0 -375
- package/src/workers/workers/flaky-detector.ts +0 -390
- package/src/workers/workers/index.ts +0 -17
- package/src/workers/workers/learning-consolidation.ts +0 -442
- package/src/workers/workers/performance-baseline.ts +0 -434
- package/src/workers/workers/quality-gate.ts +0 -419
- package/src/workers/workers/regression-monitor.ts +0 -357
- package/src/workers/workers/security-scan.ts +0 -349
- package/src/workers/workers/test-health.ts +0 -359
- package/tests/integration/code-intelligence/knowledge-graph-real.test.ts +0 -540
- package/tests/integration/coordination/cross-domain-router.test.ts +0 -403
- package/tests/integration/coordination/protocol-executor.test.ts +0 -454
- package/tests/integration/coordination/workflow-orchestrator.test.ts +0 -418
- package/tests/integration/feedback/feedback-loop-integration.test.ts +0 -560
- package/tests/integration/migration/v2-to-v3-migration.test.ts +0 -471
- package/tests/integration/parsers/typescript-parser.test.ts +0 -463
- package/tests/integration/security/vulnerability-detection.test.ts +0 -628
- package/tests/integration/test-execution/coordinator.test.ts +0 -410
- package/tests/integration/test-generation/coordinator.test.ts +0 -361
- package/tests/mocks/index.ts +0 -228
- package/tests/time-crystal/default-phases.test.ts +0 -476
- package/tests/time-crystal/oscillator.test.ts +0 -541
- package/tests/time-crystal/phase-executor.test.ts +0 -653
- package/tests/time-crystal/scheduler.test.ts +0 -626
- package/tests/time-crystal/test-runner.test.ts +0 -594
- package/tests/unit/causal-discovery/causal-graph.test.ts +0 -504
- package/tests/unit/causal-discovery/causal-root-cause-analyzer.test.ts +0 -347
- package/tests/unit/causal-discovery/discovery-engine.test.ts +0 -435
- package/tests/unit/causal-discovery/weight-matrix.test.ts +0 -328
- package/tests/unit/cli/cli.test.ts +0 -341
- package/tests/unit/cli/commands.test.ts +0 -414
- package/tests/unit/cli/init-command.test.ts +0 -274
- package/tests/unit/cli/migrate-command.test.ts +0 -396
- package/tests/unit/coordination/claims/claim-service.test.ts +0 -949
- package/tests/unit/coordination/claims/handoff-manager.test.ts +0 -773
- package/tests/unit/coordination/claims/work-stealing.test.ts +0 -492
- package/tests/unit/coordination/queen-coordinator.test.ts +0 -966
- package/tests/unit/coordination/result-saver.test.ts +0 -653
- package/tests/unit/coordination/task-executor.test.ts +0 -810
- package/tests/unit/domains/chaos-resilience/chaos-engineer.test.ts +0 -484
- package/tests/unit/domains/chaos-resilience/load-tester.test.ts +0 -559
- package/tests/unit/domains/chaos-resilience/performance-profiler.test.ts +0 -490
- package/tests/unit/domains/code-intelligence/impact-analyzer.test.ts +0 -560
- package/tests/unit/domains/code-intelligence/knowledge-graph.test.ts +0 -460
- package/tests/unit/domains/code-intelligence/semantic-analyzer.test.ts +0 -584
- package/tests/unit/domains/contract-testing/api-compatibility.test.ts +0 -483
- package/tests/unit/domains/contract-testing/contract-validator.test.ts +0 -370
- package/tests/unit/domains/contract-testing/schema-validator.test.ts +0 -610
- package/tests/unit/domains/coverage-analysis/coverage-embedder.test.ts +0 -298
- package/tests/unit/domains/coverage-analysis/hnsw-index.test.ts +0 -292
- package/tests/unit/domains/coverage-analysis/sublinear-analyzer.test.ts +0 -506
- package/tests/unit/domains/defect-intelligence/defect-predictor.test.ts +0 -370
- package/tests/unit/domains/defect-intelligence/pattern-learner.test.ts +0 -546
- package/tests/unit/domains/defect-intelligence/root-cause-analyzer.test.ts +0 -534
- package/tests/unit/domains/learning-optimization/learning-coordinator.test.ts +0 -541
- package/tests/unit/domains/learning-optimization/metrics-optimizer.test.ts +0 -552
- package/tests/unit/domains/learning-optimization/production-intel.test.ts +0 -589
- package/tests/unit/domains/learning-optimization/transfer-specialist.test.ts +0 -453
- package/tests/unit/domains/quality-assessment/coherence-gate.test.ts +0 -1006
- package/tests/unit/domains/quality-assessment/deployment-advisor.test.ts +0 -515
- package/tests/unit/domains/quality-assessment/quality-analyzer.test.ts +0 -401
- package/tests/unit/domains/quality-assessment/quality-gate.test.ts +0 -324
- package/tests/unit/domains/requirements-validation/bdd-scenario-writer.test.ts +0 -479
- package/tests/unit/domains/requirements-validation/requirements-validator.test.ts +0 -452
- package/tests/unit/domains/requirements-validation/testability-scorer.test.ts +0 -505
- package/tests/unit/domains/security-compliance/compliance-validator.test.ts +0 -500
- package/tests/unit/domains/security-compliance/security-auditor.test.ts +0 -498
- package/tests/unit/domains/security-compliance/security-scanner.test.ts +0 -412
- package/tests/unit/domains/visual-accessibility/accessibility-tester.test.ts +0 -432
- package/tests/unit/domains/visual-accessibility/responsive-tester.test.ts +0 -506
- package/tests/unit/domains/visual-accessibility/visual-tester.test.ts +0 -412
- package/tests/unit/early-exit/early-exit-controller.test.ts +0 -548
- package/tests/unit/early-exit/early-exit-decision.test.ts +0 -617
- package/tests/unit/early-exit/index.test.ts +0 -254
- package/tests/unit/early-exit/quality-signal.test.ts +0 -589
- package/tests/unit/early-exit/speculative-executor.test.ts +0 -453
- package/tests/unit/feedback/coverage-learner.test.ts +0 -288
- package/tests/unit/feedback/feedback-loop.test.ts +0 -458
- package/tests/unit/feedback/pattern-promotion.test.ts +0 -390
- package/tests/unit/feedback/quality-score-calculator.test.ts +0 -364
- package/tests/unit/feedback/test-outcome-tracker.test.ts +0 -243
- package/tests/unit/init/init-wizard.test.ts +0 -881
- package/tests/unit/init/project-analyzer.test.ts +0 -807
- package/tests/unit/init/self-configurator.test.ts +0 -493
- package/tests/unit/integrations/ruvector/ast-complexity.test.ts +0 -240
- package/tests/unit/integrations/ruvector/coverage-router.test.ts +0 -366
- package/tests/unit/integrations/ruvector/diff-risk-classifier.test.ts +0 -340
- package/tests/unit/integrations/ruvector/graph-boundaries.test.ts +0 -355
- package/tests/unit/integrations/ruvector/q-learning-router.test.ts +0 -314
- package/tests/unit/kernel/agent-coordinator.test.ts +0 -220
- package/tests/unit/kernel/event-bus.test.ts +0 -197
- package/tests/unit/learning/qe-reasoning-bank.test.ts +0 -666
- package/tests/unit/learning/real-qe-reasoning-bank.benchmark.test.ts +0 -415
- package/tests/unit/mcp/mcp-server.test.ts +0 -544
- package/tests/unit/mcp/metrics/metrics-collector.test.ts +0 -340
- package/tests/unit/mcp/security/cve-prevention.test.ts +0 -512
- package/tests/unit/mcp/security/oauth21-provider.test.ts +0 -624
- package/tests/unit/mcp/security/rate-limiter.test.ts +0 -410
- package/tests/unit/mcp/security/sampling-server.test.ts +0 -420
- package/tests/unit/mcp/security/schema-validator.test.ts +0 -494
- package/tests/unit/mcp/tools/base.test.ts +0 -336
- package/tests/unit/mcp/tools/domain-tools.test.ts +0 -759
- package/tests/unit/mcp/tools/registry.test.ts +0 -240
- package/tests/unit/neural-optimizer/replay-buffer.test.ts +0 -403
- package/tests/unit/neural-optimizer/swarm-topology.test.ts +0 -473
- package/tests/unit/neural-optimizer/topology-optimizer.test.ts +0 -595
- package/tests/unit/neural-optimizer/value-network.test.ts +0 -343
- package/tests/unit/optimization/auto-tuner.test.ts +0 -506
- package/tests/unit/optimization/metric-collectors.test.ts +0 -352
- package/tests/unit/optimization/qe-workers.test.ts +0 -407
- package/tests/unit/optimization/tuning-algorithm.test.ts +0 -467
- package/tests/unit/routing/qe-agent-registry.test.ts +0 -229
- package/tests/unit/routing/qe-task-router.test.ts +0 -390
- package/tests/unit/routing/routing-feedback.test.ts +0 -339
- package/tests/unit/shared/embeddings/nomic-embedder.test.ts +0 -419
- package/tests/unit/shared/http/http-client.test.ts +0 -719
- package/tests/unit/shared/io/file-reader.test.ts +0 -511
- package/tests/unit/shared/llm/cache.test.ts +0 -391
- package/tests/unit/shared/llm/circuit-breaker.test.ts +0 -293
- package/tests/unit/shared/llm/cost-tracker.test.ts +0 -431
- package/tests/unit/shared/llm/provider-manager.test.ts +0 -550
- package/tests/unit/shared/llm/providers.test.ts +0 -532
- package/tests/unit/shared/parsers/typescript-parser.test.ts +0 -693
- package/tests/unit/shared/value-objects.test.ts +0 -184
- package/tests/unit/strange-loop/strange-loop.test.ts +0 -1170
- package/tests/unit/workers/base-worker.test.ts +0 -341
- package/tests/unit/workers/daemon.test.ts +0 -291
- package/tests/unit/workers/worker-manager.test.ts +0 -284
- package/tsconfig.json +0 -32
- package/vitest.config.ts +0 -27
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Testability Scoring Skill
|
|
2
|
+
|
|
3
|
+
Quick reference for AI-powered testability assessment using 10 principles of intrinsic testability.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Run assessment
|
|
9
|
+
.claude/skills/testability-scoring/scripts/run-assessment.sh https://example.com/
|
|
10
|
+
|
|
11
|
+
# Generate HTML report from JSON
|
|
12
|
+
AUTO_OPEN=false node .claude/skills/testability-scoring/scripts/generate-html-report.js tests/reports/testability-results-*.json
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 10 Principles
|
|
16
|
+
|
|
17
|
+
1. **Observability** (15%) - Can we see what's happening?
|
|
18
|
+
2. **Controllability** (15%) - Can we control the application?
|
|
19
|
+
3. **Algorithmic Simplicity** (10%) - Are behaviors simple?
|
|
20
|
+
4. **Algorithmic Transparency** (10%) - Can we understand it?
|
|
21
|
+
5. **Algorithmic Stability** (10%) - Does it stay consistent?
|
|
22
|
+
6. **Explainability** (10%) - Is the interface clear?
|
|
23
|
+
7. **Unbugginess** (10%) - How error-free is it?
|
|
24
|
+
8. **Smallness** (10%) - Are components appropriate size?
|
|
25
|
+
9. **Decomposability** (5%) - Can we test parts separately?
|
|
26
|
+
10. **Similarity** (5%) - How familiar is the tech?
|
|
27
|
+
|
|
28
|
+
## Scoring
|
|
29
|
+
|
|
30
|
+
- **90-100 (A)**: Excellent
|
|
31
|
+
- **80-89 (B)**: Good
|
|
32
|
+
- **70-79 (C)**: Adequate
|
|
33
|
+
- **60-69 (D)**: Below average
|
|
34
|
+
- **0-59 (F)**: Poor
|
|
35
|
+
|
|
36
|
+
## Files
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
.claude/skills/testability-scoring/
|
|
40
|
+
├── SKILL.md # Complete documentation
|
|
41
|
+
├── scripts/
|
|
42
|
+
│ ├── run-assessment.sh # Main runner
|
|
43
|
+
│ └── generate-html-report.js # Report generator
|
|
44
|
+
└── resources/templates/ # Templates
|
|
45
|
+
|
|
46
|
+
tests/testability-scoring/
|
|
47
|
+
├── testability-scoring.spec.js # Test implementation
|
|
48
|
+
└── config.js # Configuration
|
|
49
|
+
|
|
50
|
+
tests/reports/
|
|
51
|
+
├── testability-results-*.json # Results
|
|
52
|
+
└── testability-report-*.html # Reports
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Common Commands
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Disable auto-open
|
|
59
|
+
AUTO_OPEN=false ./scripts/run-assessment.sh https://example.com/
|
|
60
|
+
|
|
61
|
+
# With timeout
|
|
62
|
+
timeout 180 ./scripts/run-assessment.sh https://example.com/
|
|
63
|
+
|
|
64
|
+
# Specific browser
|
|
65
|
+
./scripts/run-assessment.sh https://example.com/ firefox
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Credits
|
|
69
|
+
|
|
70
|
+
Based on James Bach and Michael Bolton's *Heuristics for Software Testability*
|
|
71
|
+
Implementation: https://github.com/fndlalit/testability-scorer
|
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: testability-scoring
|
|
3
|
+
description: "AI-powered testability assessment using 10 principles of intrinsic testability with Playwright and optional Vibium integration. Evaluates web applications against Observability, Controllability, Algorithmic Simplicity, Transparency, Stability, Explainability, Unbugginess, Smallness, Decomposability, and Similarity. Use when assessing software testability, evaluating test readiness, identifying testability improvements, or generating testability reports."
|
|
4
|
+
category: testing-methodologies
|
|
5
|
+
priority: high
|
|
6
|
+
tokenEstimate: 1100
|
|
7
|
+
agents: [qe-quality-analyzer, qx-partner, qe-visual-tester]
|
|
8
|
+
implementation_status: optimized
|
|
9
|
+
optimization_version: 2.2
|
|
10
|
+
last_optimized: 2025-12-12
|
|
11
|
+
dependencies: []
|
|
12
|
+
quick_reference_card: true
|
|
13
|
+
tags: [testability, scoring, playwright, vibium, assessment, 10-principles, intrinsic-testability, james-bach, michael-bolton]
|
|
14
|
+
contributor: "@fndlalit"
|
|
15
|
+
vibium_integration: optional
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# Testability Scoring
|
|
19
|
+
|
|
20
|
+
<default_to_action>
|
|
21
|
+
When assessing testability:
|
|
22
|
+
1. RUN assessment against target URL
|
|
23
|
+
2. ANALYZE all 10 principles automatically
|
|
24
|
+
3. GENERATE HTML report with radar chart
|
|
25
|
+
4. PRIORITIZE improvements by impact/effort
|
|
26
|
+
5. INTEGRATE with QX Partner for holistic view
|
|
27
|
+
|
|
28
|
+
**Quick Assessment:**
|
|
29
|
+
```bash
|
|
30
|
+
# Run assessment on any URL
|
|
31
|
+
TEST_URL='https://example.com/' npx playwright test tests/testability-scoring/testability-scoring.spec.js --project=chromium --workers=1
|
|
32
|
+
|
|
33
|
+
# Or use shell script wrapper
|
|
34
|
+
.claude/skills/testability-scoring/scripts/run-assessment.sh https://example.com/
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**The 10 Principles at a Glance:**
|
|
38
|
+
| Principle | Weight | Key Question |
|
|
39
|
+
|-----------|--------|--------------|
|
|
40
|
+
| **Observability** | 15% | Can we see what's happening? |
|
|
41
|
+
| **Controllability** | 15% | Can we control the application? |
|
|
42
|
+
| **Algorithmic Simplicity** | 10% | Are behaviors predictable? |
|
|
43
|
+
| **Algorithmic Transparency** | 10% | Can we understand what it does? |
|
|
44
|
+
| **Algorithmic Stability** | 10% | Does behavior remain consistent? |
|
|
45
|
+
| **Explainability** | 10% | Is the interface understandable? |
|
|
46
|
+
| **Unbugginess** | 10% | How error-free is it? |
|
|
47
|
+
| **Smallness** | 10% | Are components appropriately sized? |
|
|
48
|
+
| **Decomposability** | 5% | Can we test parts in isolation? |
|
|
49
|
+
| **Similarity** | 5% | Is the tech stack familiar? |
|
|
50
|
+
|
|
51
|
+
**Grade Scale:**
|
|
52
|
+
- **A (90-100)**: Excellent testability
|
|
53
|
+
- **B (80-89)**: Good testability
|
|
54
|
+
- **C (70-79)**: Adequate testability
|
|
55
|
+
- **D (60-69)**: Below average
|
|
56
|
+
- **F (0-59)**: Poor testability
|
|
57
|
+
</default_to_action>
|
|
58
|
+
|
|
59
|
+
## Quick Reference Card
|
|
60
|
+
|
|
61
|
+
### Running Assessments
|
|
62
|
+
|
|
63
|
+
| Method | Command | When to Use |
|
|
64
|
+
|--------|---------|-------------|
|
|
65
|
+
| Shell Script | `./scripts/run-assessment.sh URL` | One-time assessment |
|
|
66
|
+
| ENV Override | `TEST_URL='URL' npx playwright test...` | CI/CD integration |
|
|
67
|
+
| Config File | Update `tests/testability-scoring/config.js` | Repeated runs |
|
|
68
|
+
|
|
69
|
+
### Principle Details
|
|
70
|
+
|
|
71
|
+
#### High Weight (15% each)
|
|
72
|
+
| Principle | Measures | Indicators |
|
|
73
|
+
|-----------|----------|------------|
|
|
74
|
+
| **Observability** | State visibility, logging, monitoring | Console output, network tracking, error visibility |
|
|
75
|
+
| **Controllability** | Input control, state manipulation | API access, test data injection, determinism |
|
|
76
|
+
|
|
77
|
+
#### Medium Weight (10% each)
|
|
78
|
+
| Principle | Measures | Indicators |
|
|
79
|
+
|-----------|----------|------------|
|
|
80
|
+
| **Simplicity** | Predictable behavior | Clear I/O relationships, low complexity |
|
|
81
|
+
| **Transparency** | Understanding what system does | Visible processes, readable code |
|
|
82
|
+
| **Stability** | Consistent behavior | Change resilience, maintainability |
|
|
83
|
+
| **Explainability** | Interface understanding | Good docs, semantic structure, help text |
|
|
84
|
+
| **Unbugginess** | Error-free operation | Console errors, warnings, runtime issues |
|
|
85
|
+
| **Smallness** | Component size | Element count, script bloat, page complexity |
|
|
86
|
+
|
|
87
|
+
#### Low Weight (5% each)
|
|
88
|
+
| Principle | Measures | Indicators |
|
|
89
|
+
|-----------|----------|------------|
|
|
90
|
+
| **Decomposability** | Isolation testing | Component separation, modular design |
|
|
91
|
+
| **Similarity** | Technology familiarity | Standard frameworks, known patterns |
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Assessment Workflow
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
1. Navigate to URL → 2. Collect Metrics → 3. Score Principles
|
|
99
|
+
↓
|
|
100
|
+
4. Generate JSON ← 5. Calculate Grades ← 6. Apply Weights
|
|
101
|
+
↓
|
|
102
|
+
7. Generate HTML Report with Radar Chart
|
|
103
|
+
↓
|
|
104
|
+
8. Open in Browser (auto-opens)
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Output Files
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
tests/reports/
|
|
111
|
+
├── testability-results-<timestamp>.json # Raw data
|
|
112
|
+
├── testability-report-<timestamp>.html # Visual report
|
|
113
|
+
└── latest.json # Symlink
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Integration Examples
|
|
119
|
+
|
|
120
|
+
### CI/CD Integration
|
|
121
|
+
```yaml
|
|
122
|
+
# GitHub Actions
|
|
123
|
+
- name: Testability Assessment
|
|
124
|
+
run: |
|
|
125
|
+
timeout 180 .claude/skills/testability-scoring/scripts/run-assessment.sh ${{ env.APP_URL }}
|
|
126
|
+
|
|
127
|
+
- name: Upload Reports
|
|
128
|
+
uses: actions/upload-artifact@v3
|
|
129
|
+
with:
|
|
130
|
+
name: testability-reports
|
|
131
|
+
path: tests/reports/testability-*.html
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### QX Partner Integration
|
|
135
|
+
```typescript
|
|
136
|
+
// Combine testability with QX analysis
|
|
137
|
+
const qxAnalysis = await Task("QX Analysis", {
|
|
138
|
+
target: 'https://example.com',
|
|
139
|
+
integrateTestability: true
|
|
140
|
+
}, "qx-partner");
|
|
141
|
+
|
|
142
|
+
// Returns combined insights:
|
|
143
|
+
// - QX Score: 78/100
|
|
144
|
+
// - Testability Integration: Observability 72/100
|
|
145
|
+
// - Combined Insight: Low observability may mask UX issues
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### Programmatic Usage
|
|
149
|
+
```typescript
|
|
150
|
+
import { runTestabilityAssessment } from './testability';
|
|
151
|
+
|
|
152
|
+
const results = await runTestabilityAssessment('https://example.com');
|
|
153
|
+
console.log(`Overall: ${results.overallScore}/100 (${results.grade})`);
|
|
154
|
+
console.log('Recommendations:', results.recommendations);
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Agent Integration
|
|
160
|
+
|
|
161
|
+
```typescript
|
|
162
|
+
// Run testability assessment
|
|
163
|
+
const assessment = await Task("Testability Assessment", {
|
|
164
|
+
url: 'https://example.com',
|
|
165
|
+
generateReport: true,
|
|
166
|
+
openBrowser: true
|
|
167
|
+
}, "qe-quality-analyzer");
|
|
168
|
+
|
|
169
|
+
// Use with QX Partner for holistic analysis
|
|
170
|
+
const qxReport = await Task("Full QX Analysis", {
|
|
171
|
+
target: 'https://example.com',
|
|
172
|
+
integrateTestability: true,
|
|
173
|
+
detectOracleProblems: true
|
|
174
|
+
}, "qx-partner");
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## Vibium Integration (Optional)
|
|
180
|
+
|
|
181
|
+
### Overview
|
|
182
|
+
Vibium browser automation can be used alongside Playwright for enhanced testability assessment. While **Playwright remains the primary engine**, Vibium offers complementary capabilities for certain metrics.
|
|
183
|
+
|
|
184
|
+
**Installation:**
|
|
185
|
+
```bash
|
|
186
|
+
claude mcp add vibium -- npx -y vibium
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Vibium-Enhanced Metrics
|
|
190
|
+
|
|
191
|
+
| Principle | Vibium Enhancement | Benefit |
|
|
192
|
+
|-----------|-------------------|---------|
|
|
193
|
+
| **Observability** | Auto-wait duration tracking | Measures DOM stability (30s timeout, 100ms polling) |
|
|
194
|
+
| **Controllability** | Element interaction success rate | Validates automation readiness via MCP |
|
|
195
|
+
| **Stability** | Screenshot consistency | Visual regression detection for layout stability |
|
|
196
|
+
| **Explainability** | Element attribute extraction | ARIA labels, semantic HTML validation |
|
|
197
|
+
|
|
198
|
+
### When to Use Vibium
|
|
199
|
+
|
|
200
|
+
✅ **USE Vibium for:**
|
|
201
|
+
- Element stability metrics (auto-wait duration analysis)
|
|
202
|
+
- Visual consistency checks (screenshot comparison)
|
|
203
|
+
- MCP-native AI agent integration
|
|
204
|
+
- Lightweight Docker images (400MB vs 1.2GB)
|
|
205
|
+
|
|
206
|
+
❌ **USE Playwright for:**
|
|
207
|
+
- Console error detection (Vibium V1 lacks console API)
|
|
208
|
+
- Network performance metrics (BiDi network APIs coming in V2)
|
|
209
|
+
- Comprehensive browser coverage (Firefox, Safari)
|
|
210
|
+
- Production-proven stability (Vibium V1 released Dec 2024)
|
|
211
|
+
|
|
212
|
+
### Hybrid Assessment Example
|
|
213
|
+
|
|
214
|
+
```typescript
|
|
215
|
+
// Testability assessment using both engines
|
|
216
|
+
const assessment = {
|
|
217
|
+
// Playwright: Comprehensive metrics
|
|
218
|
+
playwright: await runPlaywrightAssessment(url),
|
|
219
|
+
|
|
220
|
+
// Vibium: Stability metrics
|
|
221
|
+
vibium: {
|
|
222
|
+
elementStability: await measureAutoWaitDuration(url),
|
|
223
|
+
visualConsistency: await compareScreenshots(url),
|
|
224
|
+
accessibilityAttributes: await extractARIALabels(url)
|
|
225
|
+
}
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
// Enhanced Observability Score
|
|
229
|
+
const observability =
|
|
230
|
+
(assessment.playwright.consoleErrors * 0.6) +
|
|
231
|
+
(assessment.vibium.elementStability * 0.4);
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### Vibium MCP Tools for Testability
|
|
235
|
+
|
|
236
|
+
```typescript
|
|
237
|
+
// 1. Element Stability Measurement
|
|
238
|
+
const browser = await browser_launch();
|
|
239
|
+
await browser_navigate({ url });
|
|
240
|
+
const startTime = Date.now();
|
|
241
|
+
const element = await browser_find({ selector: ".critical-element" });
|
|
242
|
+
const autoWaitDuration = Date.now() - startTime;
|
|
243
|
+
// Lower duration = better stability
|
|
244
|
+
|
|
245
|
+
// 2. Visual Consistency Check
|
|
246
|
+
const screenshot1 = await browser_screenshot();
|
|
247
|
+
await browser_navigate({ url }); // Reload
|
|
248
|
+
const screenshot2 = await browser_screenshot();
|
|
249
|
+
const visualDiff = compareImages(screenshot1.png, screenshot2.png);
|
|
250
|
+
// Lower diff = better stability
|
|
251
|
+
|
|
252
|
+
// 3. Accessibility Attribute Extraction
|
|
253
|
+
const elements = await browser_find({ selector: "button, a, input" });
|
|
254
|
+
const ariaLabels = elements.map(el => el.attributes["aria-label"]);
|
|
255
|
+
const semanticScore = (ariaLabels.filter(Boolean).length / elements.length) * 100;
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
### Migration Strategy
|
|
259
|
+
|
|
260
|
+
**Current (V2.2):** Hybrid approach
|
|
261
|
+
- Playwright: Primary engine for all 10 principles
|
|
262
|
+
- Vibium: Optional enhancement for stability metrics
|
|
263
|
+
|
|
264
|
+
**Future (V3.0):** When Vibium V2 ships
|
|
265
|
+
- Evaluate Vibium as primary engine if:
|
|
266
|
+
- Console/Network APIs available
|
|
267
|
+
- Production stability proven
|
|
268
|
+
- Community adoption increases
|
|
269
|
+
|
|
270
|
+
## Agent Coordination Hints
|
|
271
|
+
|
|
272
|
+
### Memory Namespace
|
|
273
|
+
```
|
|
274
|
+
aqe/testability/
|
|
275
|
+
├── assessments/* - Assessment results by URL
|
|
276
|
+
├── historical/* - Historical scores for trend analysis
|
|
277
|
+
├── recommendations/* - Improvement recommendations
|
|
278
|
+
├── integration/* - QX integration data
|
|
279
|
+
└── vibium/* - Vibium-specific metrics (optional)
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### Fleet Coordination
|
|
283
|
+
```typescript
|
|
284
|
+
const testabilityFleet = await FleetManager.coordinate({
|
|
285
|
+
strategy: 'testability-assessment',
|
|
286
|
+
agents: [
|
|
287
|
+
'qe-quality-analyzer', // Primary assessment
|
|
288
|
+
'qx-partner', // UX integration
|
|
289
|
+
'qe-visual-tester' // Visual validation
|
|
290
|
+
],
|
|
291
|
+
topology: 'sequential'
|
|
292
|
+
});
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## Common Issues & Solutions
|
|
298
|
+
|
|
299
|
+
| Issue | Solution |
|
|
300
|
+
|-------|----------|
|
|
301
|
+
| Tests timing out | Increase timeout: `timeout 300 ./scripts/run-assessment.sh URL` |
|
|
302
|
+
| Partial results | Check console errors, increase network timeout |
|
|
303
|
+
| Report not opening | Use `AUTO_OPEN=false`, open manually |
|
|
304
|
+
| Config not updating | Use `TEST_URL` env var instead |
|
|
305
|
+
| Vibium not available | Install via `claude mcp add vibium -- npx -y vibium` (optional) |
|
|
306
|
+
| Hybrid mode errors | Vibium is optional; assessments work without it |
|
|
307
|
+
|
|
308
|
+
---
|
|
309
|
+
|
|
310
|
+
## Related Skills
|
|
311
|
+
- [accessibility-testing](../accessibility-testing/) - WCAG compliance (overlaps with Explainability)
|
|
312
|
+
- [visual-testing-advanced](../visual-testing-advanced/) - UI consistency
|
|
313
|
+
- [performance-testing](../performance-testing/) - Load time metrics
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## Credits & References
|
|
318
|
+
|
|
319
|
+
### Framework Origin
|
|
320
|
+
- **Heuristics for Software Testability** by James Bach and Michael Bolton
|
|
321
|
+
- Available at: https://www.satisfice.com/download/heuristics-of-software-testability
|
|
322
|
+
|
|
323
|
+
### Implementation
|
|
324
|
+
- Based on https://github.com/fndlalit/testability-scorer (contributed by [@fndlalit](https://github.com/fndlalit))
|
|
325
|
+
- Playwright v1.49.0+ with AI capabilities (primary engine)
|
|
326
|
+
- Vibium v1.0+ with MCP integration (optional enhancement)
|
|
327
|
+
- Chart.js for radar visualizations
|
|
328
|
+
|
|
329
|
+
### Vibium Resources
|
|
330
|
+
- GitHub: https://github.com/VibiumDev/vibium
|
|
331
|
+
- MCP Integration: `claude mcp add vibium -- npx -y vibium`
|
|
332
|
+
- Created by Jason Huggins (creator of Selenium/Appium)
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## Remember
|
|
337
|
+
|
|
338
|
+
**Testability is an investment, not an afterthought.**
|
|
339
|
+
|
|
340
|
+
Good testability:
|
|
341
|
+
- Reduces debugging time
|
|
342
|
+
- Enables faster feedback loops
|
|
343
|
+
- Makes defects easier to find
|
|
344
|
+
- Supports continuous testing
|
|
345
|
+
|
|
346
|
+
**Low scores = High risk. Prioritize improvements by weight × impact.**
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
// Testability Scorer Configuration Template
|
|
2
|
+
|
|
3
|
+
module.exports = {
|
|
4
|
+
// Application under test
|
|
5
|
+
baseURL: 'https://www.saucedemo.com',
|
|
6
|
+
|
|
7
|
+
// Scoring weights (must sum to 100)
|
|
8
|
+
weights: {
|
|
9
|
+
observability: 15, // Console logs, state visibility, monitoring
|
|
10
|
+
controllability: 15, // API access, state manipulation, test data injection
|
|
11
|
+
algorithmicSimplicity: 10, // Clear input-output relationships, low complexity
|
|
12
|
+
algorithmicTransparency: 10, // Understandable logic, clear data flow
|
|
13
|
+
explainability: 10, // Documentation, comments, error messages
|
|
14
|
+
similarity: 5, // Standard patterns, familiar architecture
|
|
15
|
+
algorithmicStability: 10, // API versioning, backward compatibility
|
|
16
|
+
unbugginess: 10, // Low defect rate, test reliability
|
|
17
|
+
smallness: 10, // Manageable size, modular design
|
|
18
|
+
decomposability: 5 // Component isolation, test unit granularity
|
|
19
|
+
},
|
|
20
|
+
|
|
21
|
+
// Grading scale
|
|
22
|
+
grades: {
|
|
23
|
+
A: 90, // Excellent
|
|
24
|
+
B: 80, // Good
|
|
25
|
+
C: 70, // Acceptable
|
|
26
|
+
D: 60, // Below average
|
|
27
|
+
F: 0 // Poor
|
|
28
|
+
},
|
|
29
|
+
|
|
30
|
+
// Report settings
|
|
31
|
+
reports: {
|
|
32
|
+
format: ['html', 'json', 'text'], // Output formats
|
|
33
|
+
directory: 'tests/reports', // Report location
|
|
34
|
+
autoOpen: true, // Open HTML report automatically
|
|
35
|
+
includeAI: true, // AI-powered recommendations
|
|
36
|
+
includeCharts: true, // Visual charts
|
|
37
|
+
includeHistory: true // Historical comparison
|
|
38
|
+
},
|
|
39
|
+
|
|
40
|
+
// User types for comparative analysis (optional)
|
|
41
|
+
userTypes: [
|
|
42
|
+
{ username: 'standard_user', password: 'secret_sauce', role: 'standard' },
|
|
43
|
+
{ username: 'locked_out_user', password: 'secret_sauce', role: 'locked' },
|
|
44
|
+
{ username: 'problem_user', password: 'secret_sauce', role: 'problem' },
|
|
45
|
+
{ username: 'performance_glitch_user', password: 'secret_sauce', role: 'performance' },
|
|
46
|
+
{ username: 'error_user', password: 'secret_sauce', role: 'error' },
|
|
47
|
+
{ username: 'visual_user', password: 'secret_sauce', role: 'visual' }
|
|
48
|
+
],
|
|
49
|
+
|
|
50
|
+
// Browser configuration
|
|
51
|
+
browsers: ['chromium', 'firefox', 'webkit'],
|
|
52
|
+
|
|
53
|
+
// Timeouts
|
|
54
|
+
timeouts: {
|
|
55
|
+
test: 30000, // Per test timeout
|
|
56
|
+
navigation: 10000, // Page navigation
|
|
57
|
+
action: 5000 // UI action timeout
|
|
58
|
+
},
|
|
59
|
+
|
|
60
|
+
// Thresholds for pass/fail
|
|
61
|
+
thresholds: {
|
|
62
|
+
overall: 70, // Minimum overall score
|
|
63
|
+
critical: { // Critical principles must meet these minimums
|
|
64
|
+
observability: 60,
|
|
65
|
+
controllability: 60,
|
|
66
|
+
unbugginess: 70
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
|
|
70
|
+
// AI recommendations settings
|
|
71
|
+
ai: {
|
|
72
|
+
enabled: true,
|
|
73
|
+
provider: 'local', // 'local' or 'api'
|
|
74
|
+
prioritize: 'impact', // 'impact', 'effort', or 'score'
|
|
75
|
+
maxRecommendations: 10
|
|
76
|
+
},
|
|
77
|
+
|
|
78
|
+
// Historical tracking
|
|
79
|
+
history: {
|
|
80
|
+
enabled: true,
|
|
81
|
+
directory: '.testability-history',
|
|
82
|
+
retention: 90 // days
|
|
83
|
+
}
|
|
84
|
+
};
|