agentic-qe 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/analysis/code-analyzer.md +209 -0
- package/.claude/agents/analysis/code-review/analyze-code-quality.md +180 -0
- package/.claude/agents/architecture/system-design/arch-system-design.md +156 -0
- package/.claude/agents/base-template-generator.md +42 -0
- package/.claude/agents/consensus/byzantine-coordinator.md +63 -0
- package/.claude/agents/consensus/crdt-synchronizer.md +997 -0
- package/.claude/agents/consensus/gossip-coordinator.md +63 -0
- package/.claude/agents/consensus/performance-benchmarker.md +851 -0
- package/.claude/agents/consensus/quorum-manager.md +823 -0
- package/.claude/agents/consensus/raft-manager.md +63 -0
- package/.claude/agents/consensus/security-manager.md +622 -0
- package/.claude/agents/core/coder.md +266 -0
- package/.claude/agents/core/planner.md +168 -0
- package/.claude/agents/core/researcher.md +190 -0
- package/.claude/agents/core/reviewer.md +326 -0
- package/.claude/agents/core/tester.md +319 -0
- package/.claude/agents/data/ml/data-ml-model.md +193 -0
- package/.claude/agents/development/backend/dev-backend-api.md +142 -0
- package/.claude/agents/devops/ci-cd/ops-cicd-github.md +164 -0
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +174 -0
- package/.claude/agents/flow-nexus/app-store.md +88 -0
- package/.claude/agents/flow-nexus/authentication.md +69 -0
- package/.claude/agents/flow-nexus/challenges.md +81 -0
- package/.claude/agents/flow-nexus/neural-network.md +88 -0
- package/.claude/agents/flow-nexus/payments.md +83 -0
- package/.claude/agents/flow-nexus/sandbox.md +76 -0
- package/.claude/agents/flow-nexus/swarm.md +76 -0
- package/.claude/agents/flow-nexus/user-tools.md +96 -0
- package/.claude/agents/flow-nexus/workflow.md +84 -0
- package/.claude/agents/github/code-review-swarm.md +538 -0
- package/.claude/agents/github/github-modes.md +173 -0
- package/.claude/agents/github/issue-tracker.md +319 -0
- package/.claude/agents/github/multi-repo-swarm.md +553 -0
- package/.claude/agents/github/pr-manager.md +191 -0
- package/.claude/agents/github/project-board-sync.md +509 -0
- package/.claude/agents/github/release-manager.md +367 -0
- package/.claude/agents/github/release-swarm.md +583 -0
- package/.claude/agents/github/repo-architect.md +398 -0
- package/.claude/agents/github/swarm-issue.md +573 -0
- package/.claude/agents/github/swarm-pr.md +428 -0
- package/.claude/agents/github/sync-coordinator.md +452 -0
- package/.claude/agents/github/workflow-automation.md +635 -0
- package/.claude/agents/goal/code-goal-planner.md +446 -0
- package/.claude/agents/goal/goal-planner.md +168 -0
- package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +130 -0
- package/.claude/agents/hive-mind/queen-coordinator.md +203 -0
- package/.claude/agents/hive-mind/scout-explorer.md +242 -0
- package/.claude/agents/hive-mind/swarm-memory-manager.md +193 -0
- package/.claude/agents/hive-mind/worker-specialist.md +217 -0
- package/.claude/agents/neural/safla-neural.md +74 -0
- package/.claude/agents/optimization/benchmark-suite.md +665 -0
- package/.claude/agents/optimization/load-balancer.md +431 -0
- package/.claude/agents/optimization/performance-monitor.md +672 -0
- package/.claude/agents/optimization/resource-allocator.md +674 -0
- package/.claude/agents/optimization/topology-optimizer.md +808 -0
- package/.claude/agents/qe-api-contract-validator.md +1088 -0
- package/.claude/agents/qe-chaos-engineer.md +736 -0
- package/.claude/agents/qe-coverage-analyzer.md +282 -0
- package/.claude/agents/qe-deployment-readiness.md +1109 -0
- package/.claude/agents/qe-flaky-test-hunter.md +1121 -0
- package/.claude/agents/qe-fleet-commander.md +641 -0
- package/.claude/agents/qe-performance-tester.md +354 -0
- package/.claude/agents/qe-production-intelligence.md +1162 -0
- package/.claude/agents/qe-quality-gate.md +294 -0
- package/.claude/agents/qe-regression-risk-analyzer.md +947 -0
- package/.claude/agents/qe-requirements-validator.md +691 -0
- package/.claude/agents/qe-security-scanner.md +430 -0
- package/.claude/agents/qe-test-data-architect.md +1007 -0
- package/.claude/agents/qe-test-executor.md +365 -0
- package/.claude/agents/qe-test-generator.md +332 -0
- package/.claude/agents/qe-visual-tester.md +754 -0
- package/.claude/agents/sparc/architecture.md +472 -0
- package/.claude/agents/sparc/pseudocode.md +318 -0
- package/.claude/agents/sparc/refinement.md +525 -0
- package/.claude/agents/sparc/specification.md +276 -0
- package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +226 -0
- package/.claude/agents/swarm/adaptive-coordinator.md +396 -0
- package/.claude/agents/swarm/hierarchical-coordinator.md +327 -0
- package/.claude/agents/swarm/mesh-coordinator.md +392 -0
- package/.claude/agents/templates/automation-smart-agent.md +205 -0
- package/.claude/agents/templates/coordinator-swarm-init.md +105 -0
- package/.claude/agents/templates/github-pr-manager.md +177 -0
- package/.claude/agents/templates/implementer-sparc-coder.md +259 -0
- package/.claude/agents/templates/memory-coordinator.md +187 -0
- package/.claude/agents/templates/migration-plan.md +746 -0
- package/.claude/agents/templates/orchestrator-task.md +139 -0
- package/.claude/agents/templates/performance-analyzer.md +199 -0
- package/.claude/agents/templates/sparc-coordinator.md +183 -0
- package/.claude/agents/testing/unit/tdd-london-swarm.md +244 -0
- package/.claude/agents/testing/validation/production-validator.md +395 -0
- package/.claude/aqe-fleet.json +47 -0
- package/.claude/commands/README.md +106 -0
- package/.claude/commands/agents/README.md +10 -0
- package/.claude/commands/agents/agent-capabilities.md +21 -0
- package/.claude/commands/agents/agent-coordination.md +28 -0
- package/.claude/commands/agents/agent-spawning.md +28 -0
- package/.claude/commands/agents/agent-types.md +26 -0
- package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +54 -0
- package/.claude/commands/analysis/README.md +9 -0
- package/.claude/commands/analysis/bottleneck-detect.md +162 -0
- package/.claude/commands/analysis/performance-bottlenecks.md +59 -0
- package/.claude/commands/analysis/performance-report.md +25 -0
- package/.claude/commands/analysis/token-efficiency.md +45 -0
- package/.claude/commands/analysis/token-usage.md +25 -0
- package/.claude/commands/aqe-analyze.md +344 -0
- package/.claude/commands/aqe-benchmark.md +466 -0
- package/.claude/commands/aqe-chaos.md +443 -0
- package/.claude/commands/aqe-execute.md +322 -0
- package/.claude/commands/aqe-fleet-status.md +431 -0
- package/.claude/commands/aqe-generate.md +301 -0
- package/.claude/commands/aqe-optimize.md +361 -0
- package/.claude/commands/aqe-report.md +411 -0
- package/.claude/commands/automation/README.md +9 -0
- package/.claude/commands/automation/auto-agent.md +122 -0
- package/.claude/commands/automation/self-healing.md +106 -0
- package/.claude/commands/automation/session-memory.md +90 -0
- package/.claude/commands/automation/smart-agents.md +73 -0
- package/.claude/commands/automation/smart-spawn.md +25 -0
- package/.claude/commands/automation/workflow-select.md +25 -0
- package/.claude/commands/coordination/README.md +9 -0
- package/.claude/commands/coordination/agent-spawn.md +25 -0
- package/.claude/commands/coordination/init.md +44 -0
- package/.claude/commands/coordination/orchestrate.md +43 -0
- package/.claude/commands/coordination/spawn.md +45 -0
- package/.claude/commands/coordination/swarm-init.md +85 -0
- package/.claude/commands/coordination/task-orchestrate.md +25 -0
- package/.claude/commands/flow-nexus/app-store.md +124 -0
- package/.claude/commands/flow-nexus/challenges.md +120 -0
- package/.claude/commands/flow-nexus/login-registration.md +65 -0
- package/.claude/commands/flow-nexus/neural-network.md +134 -0
- package/.claude/commands/flow-nexus/payments.md +116 -0
- package/.claude/commands/flow-nexus/sandbox.md +83 -0
- package/.claude/commands/flow-nexus/swarm.md +87 -0
- package/.claude/commands/flow-nexus/user-tools.md +152 -0
- package/.claude/commands/flow-nexus/workflow.md +115 -0
- package/.claude/commands/github/README.md +11 -0
- package/.claude/commands/github/code-review-swarm.md +514 -0
- package/.claude/commands/github/code-review.md +25 -0
- package/.claude/commands/github/github-modes.md +147 -0
- package/.claude/commands/github/github-swarm.md +121 -0
- package/.claude/commands/github/issue-tracker.md +292 -0
- package/.claude/commands/github/issue-triage.md +25 -0
- package/.claude/commands/github/multi-repo-swarm.md +519 -0
- package/.claude/commands/github/pr-enhance.md +26 -0
- package/.claude/commands/github/pr-manager.md +170 -0
- package/.claude/commands/github/project-board-sync.md +471 -0
- package/.claude/commands/github/release-manager.md +338 -0
- package/.claude/commands/github/release-swarm.md +544 -0
- package/.claude/commands/github/repo-analyze.md +25 -0
- package/.claude/commands/github/repo-architect.md +367 -0
- package/.claude/commands/github/swarm-issue.md +482 -0
- package/.claude/commands/github/swarm-pr.md +285 -0
- package/.claude/commands/github/sync-coordinator.md +301 -0
- package/.claude/commands/github/workflow-automation.md +442 -0
- package/.claude/commands/hive-mind/README.md +17 -0
- package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-init.md +18 -0
- package/.claude/commands/hive-mind/hive-mind-memory.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-resume.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -0
- package/.claude/commands/hive-mind/hive-mind-status.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-stop.md +8 -0
- package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -0
- package/.claude/commands/hive-mind/hive-mind.md +27 -0
- package/.claude/commands/hooks/README.md +11 -0
- package/.claude/commands/hooks/overview.md +132 -0
- package/.claude/commands/hooks/post-edit.md +117 -0
- package/.claude/commands/hooks/post-task.md +112 -0
- package/.claude/commands/hooks/pre-edit.md +113 -0
- package/.claude/commands/hooks/pre-task.md +111 -0
- package/.claude/commands/hooks/session-end.md +118 -0
- package/.claude/commands/hooks/setup.md +103 -0
- package/.claude/commands/memory/README.md +9 -0
- package/.claude/commands/memory/memory-persist.md +25 -0
- package/.claude/commands/memory/memory-search.md +25 -0
- package/.claude/commands/memory/memory-usage.md +25 -0
- package/.claude/commands/memory/neural.md +47 -0
- package/.claude/commands/memory/usage.md +46 -0
- package/.claude/commands/monitoring/README.md +9 -0
- package/.claude/commands/monitoring/agent-metrics.md +25 -0
- package/.claude/commands/monitoring/agents.md +44 -0
- package/.claude/commands/monitoring/real-time-view.md +25 -0
- package/.claude/commands/monitoring/status.md +46 -0
- package/.claude/commands/monitoring/swarm-monitor.md +25 -0
- package/.claude/commands/optimization/README.md +9 -0
- package/.claude/commands/optimization/auto-topology.md +62 -0
- package/.claude/commands/optimization/cache-manage.md +25 -0
- package/.claude/commands/optimization/parallel-execute.md +25 -0
- package/.claude/commands/optimization/parallel-execution.md +50 -0
- package/.claude/commands/optimization/topology-optimize.md +25 -0
- package/.claude/commands/pair/commands.md +546 -0
- package/.claude/commands/pair/config.md +510 -0
- package/.claude/commands/pair/examples.md +512 -0
- package/.claude/commands/pair/modes.md +348 -0
- package/.claude/commands/pair/session.md +407 -0
- package/.claude/commands/pair/start.md +209 -0
- package/.claude/commands/sparc/analyzer.md +52 -0
- package/.claude/commands/sparc/architect.md +53 -0
- package/.claude/commands/sparc/batch-executor.md +54 -0
- package/.claude/commands/sparc/coder.md +54 -0
- package/.claude/commands/sparc/debugger.md +54 -0
- package/.claude/commands/sparc/designer.md +53 -0
- package/.claude/commands/sparc/documenter.md +54 -0
- package/.claude/commands/sparc/innovator.md +54 -0
- package/.claude/commands/sparc/memory-manager.md +54 -0
- package/.claude/commands/sparc/optimizer.md +54 -0
- package/.claude/commands/sparc/orchestrator.md +132 -0
- package/.claude/commands/sparc/researcher.md +54 -0
- package/.claude/commands/sparc/reviewer.md +54 -0
- package/.claude/commands/sparc/sparc-modes.md +174 -0
- package/.claude/commands/sparc/swarm-coordinator.md +54 -0
- package/.claude/commands/sparc/tdd.md +54 -0
- package/.claude/commands/sparc/tester.md +54 -0
- package/.claude/commands/sparc/workflow-manager.md +54 -0
- package/.claude/commands/stream-chain/pipeline.md +121 -0
- package/.claude/commands/stream-chain/run.md +70 -0
- package/.claude/commands/swarm/README.md +15 -0
- package/.claude/commands/swarm/analysis.md +95 -0
- package/.claude/commands/swarm/development.md +96 -0
- package/.claude/commands/swarm/examples.md +168 -0
- package/.claude/commands/swarm/maintenance.md +102 -0
- package/.claude/commands/swarm/optimization.md +117 -0
- package/.claude/commands/swarm/research.md +136 -0
- package/.claude/commands/swarm/swarm-analysis.md +8 -0
- package/.claude/commands/swarm/swarm-background.md +8 -0
- package/.claude/commands/swarm/swarm-init.md +19 -0
- package/.claude/commands/swarm/swarm-modes.md +8 -0
- package/.claude/commands/swarm/swarm-monitor.md +8 -0
- package/.claude/commands/swarm/swarm-spawn.md +19 -0
- package/.claude/commands/swarm/swarm-status.md +8 -0
- package/.claude/commands/swarm/swarm-strategies.md +8 -0
- package/.claude/commands/swarm/swarm.md +27 -0
- package/.claude/commands/swarm/testing.md +131 -0
- package/.claude/commands/training/README.md +9 -0
- package/.claude/commands/training/model-update.md +25 -0
- package/.claude/commands/training/neural-patterns.md +74 -0
- package/.claude/commands/training/neural-train.md +25 -0
- package/.claude/commands/training/pattern-learn.md +25 -0
- package/.claude/commands/training/specialization.md +63 -0
- package/.claude/commands/truth/start.md +143 -0
- package/.claude/commands/verify/check.md +50 -0
- package/.claude/commands/verify/start.md +128 -0
- package/.claude/commands/workflows/README.md +9 -0
- package/.claude/commands/workflows/development.md +78 -0
- package/.claude/commands/workflows/research.md +63 -0
- package/.claude/commands/workflows/workflow-create.md +25 -0
- package/.claude/commands/workflows/workflow-execute.md +25 -0
- package/.claude/commands/workflows/workflow-export.md +25 -0
- package/.claude/helpers/checkpoint-manager.sh +251 -0
- package/.claude/helpers/github-safe.js +106 -0
- package/.claude/helpers/github-setup.sh +28 -0
- package/.claude/helpers/quick-start.sh +19 -0
- package/.claude/helpers/setup-mcp.sh +18 -0
- package/.claude/helpers/standard-checkpoint-hooks.sh +179 -0
- package/.claude/settings.json +114 -0
- package/.claude/settings.local.json +10 -0
- package/CONTRIBUTING.md +897 -0
- package/LICENSE +21 -0
- package/README.md +632 -0
- package/bin/aqe +959 -0
- package/config/fleet.yaml +50 -0
- package/dist/agents/ApiContractValidatorAgent.d.ts +222 -0
- package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -0
- package/dist/agents/ApiContractValidatorAgent.js +787 -0
- package/dist/agents/ApiContractValidatorAgent.js.map +1 -0
- package/dist/agents/BaseAgent.d.ts +147 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -0
- package/dist/agents/BaseAgent.js +374 -0
- package/dist/agents/BaseAgent.js.map +1 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts +103 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -0
- package/dist/agents/CoverageAnalyzerAgent.js +466 -0
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -0
- package/dist/agents/DeploymentReadinessAgent.d.ts +244 -0
- package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -0
- package/dist/agents/DeploymentReadinessAgent.js +974 -0
- package/dist/agents/DeploymentReadinessAgent.js.map +1 -0
- package/dist/agents/FlakyTestHunterAgent.d.ts +172 -0
- package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -0
- package/dist/agents/FlakyTestHunterAgent.js +867 -0
- package/dist/agents/FlakyTestHunterAgent.js.map +1 -0
- package/dist/agents/FleetCommanderAgent.d.ts +154 -0
- package/dist/agents/FleetCommanderAgent.d.ts.map +1 -0
- package/dist/agents/FleetCommanderAgent.js +924 -0
- package/dist/agents/FleetCommanderAgent.js.map +1 -0
- package/dist/agents/PerformanceTesterAgent.d.ts +194 -0
- package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -0
- package/dist/agents/PerformanceTesterAgent.js +972 -0
- package/dist/agents/PerformanceTesterAgent.js.map +1 -0
- package/dist/agents/ProductionIntelligenceAgent.d.ts +224 -0
- package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -0
- package/dist/agents/ProductionIntelligenceAgent.js +856 -0
- package/dist/agents/ProductionIntelligenceAgent.js.map +1 -0
- package/dist/agents/QualityAnalyzerAgent.d.ts +67 -0
- package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -0
- package/dist/agents/QualityAnalyzerAgent.js +453 -0
- package/dist/agents/QualityAnalyzerAgent.js.map +1 -0
- package/dist/agents/QualityGateAgent.d.ts +104 -0
- package/dist/agents/QualityGateAgent.d.ts.map +1 -0
- package/dist/agents/QualityGateAgent.js +522 -0
- package/dist/agents/QualityGateAgent.js.map +1 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +274 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.js +1076 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -0
- package/dist/agents/RequirementsValidatorAgent.d.ts +195 -0
- package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -0
- package/dist/agents/RequirementsValidatorAgent.js +992 -0
- package/dist/agents/RequirementsValidatorAgent.js.map +1 -0
- package/dist/agents/SecurityScannerAgent.d.ts +126 -0
- package/dist/agents/SecurityScannerAgent.d.ts.map +1 -0
- package/dist/agents/SecurityScannerAgent.js +695 -0
- package/dist/agents/SecurityScannerAgent.js.map +1 -0
- package/dist/agents/TestDataArchitectAgent.d.ts +452 -0
- package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -0
- package/dist/agents/TestDataArchitectAgent.js +1346 -0
- package/dist/agents/TestDataArchitectAgent.js.map +1 -0
- package/dist/agents/TestExecutorAgent.d.ts +101 -0
- package/dist/agents/TestExecutorAgent.d.ts.map +1 -0
- package/dist/agents/TestExecutorAgent.js +730 -0
- package/dist/agents/TestExecutorAgent.js.map +1 -0
- package/dist/agents/TestGeneratorAgent.d.ts +109 -0
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -0
- package/dist/agents/TestGeneratorAgent.js +450 -0
- package/dist/agents/TestGeneratorAgent.js.map +1 -0
- package/dist/agents/index.d.ts +51 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +738 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/cli/commands/analyze.d.ts +32 -0
- package/dist/cli/commands/analyze.d.ts.map +1 -0
- package/dist/cli/commands/analyze.js +764 -0
- package/dist/cli/commands/analyze.js.map +1 -0
- package/dist/cli/commands/fleet.d.ts +36 -0
- package/dist/cli/commands/fleet.d.ts.map +1 -0
- package/dist/cli/commands/fleet.js +745 -0
- package/dist/cli/commands/fleet.js.map +1 -0
- package/dist/cli/commands/generate.d.ts +24 -0
- package/dist/cli/commands/generate.d.ts.map +1 -0
- package/dist/cli/commands/generate.js +424 -0
- package/dist/cli/commands/generate.js.map +1 -0
- package/dist/cli/commands/init.d.ts +17 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +570 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/run.d.ts +25 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +558 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/index-spec.d.ts +3 -0
- package/dist/cli/index-spec.d.ts.map +1 -0
- package/dist/cli/index-spec.js +154 -0
- package/dist/cli/index-spec.js.map +1 -0
- package/dist/cli/index-working.d.ts +7 -0
- package/dist/cli/index-working.d.ts.map +1 -0
- package/dist/cli/index-working.js +470 -0
- package/dist/cli/index-working.js.map +1 -0
- package/dist/cli/index.d.ts +9 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +174 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/Agent.d.ts +189 -0
- package/dist/core/Agent.d.ts.map +1 -0
- package/dist/core/Agent.js +288 -0
- package/dist/core/Agent.js.map +1 -0
- package/dist/core/EventBus.d.ts +40 -0
- package/dist/core/EventBus.d.ts.map +1 -0
- package/dist/core/EventBus.js +114 -0
- package/dist/core/EventBus.js.map +1 -0
- package/dist/core/FleetManager.d.ts +219 -0
- package/dist/core/FleetManager.d.ts.map +1 -0
- package/dist/core/FleetManager.js +354 -0
- package/dist/core/FleetManager.js.map +1 -0
- package/dist/core/MemoryManager.d.ts +119 -0
- package/dist/core/MemoryManager.d.ts.map +1 -0
- package/dist/core/MemoryManager.js +460 -0
- package/dist/core/MemoryManager.js.map +1 -0
- package/dist/core/Task.d.ts +264 -0
- package/dist/core/Task.d.ts.map +1 -0
- package/dist/core/Task.js +397 -0
- package/dist/core/Task.js.map +1 -0
- package/dist/core/coverage-analyzer.d.ts +50 -0
- package/dist/core/coverage-analyzer.d.ts.map +1 -0
- package/dist/core/coverage-analyzer.js +146 -0
- package/dist/core/coverage-analyzer.js.map +1 -0
- package/dist/core/index.d.ts +14 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +20 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/quality-gate.d.ts +81 -0
- package/dist/core/quality-gate.d.ts.map +1 -0
- package/dist/core/quality-gate.js +254 -0
- package/dist/core/quality-gate.js.map +1 -0
- package/dist/coverage/coverage-collector.d.ts +62 -0
- package/dist/coverage/coverage-collector.d.ts.map +1 -0
- package/dist/coverage/coverage-collector.js +61 -0
- package/dist/coverage/coverage-collector.js.map +1 -0
- package/dist/coverage/coverage-reporter.d.ts +42 -0
- package/dist/coverage/coverage-reporter.d.ts.map +1 -0
- package/dist/coverage/coverage-reporter.js +53 -0
- package/dist/coverage/coverage-reporter.js.map +1 -0
- package/dist/index.d.ts +89 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +142 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/handlers/agent-spawn.d.ts +72 -0
- package/dist/mcp/handlers/agent-spawn.d.ts.map +1 -0
- package/dist/mcp/handlers/agent-spawn.js +255 -0
- package/dist/mcp/handlers/agent-spawn.js.map +1 -0
- package/dist/mcp/handlers/base-handler.d.ts +53 -0
- package/dist/mcp/handlers/base-handler.d.ts.map +1 -0
- package/dist/mcp/handlers/base-handler.js +77 -0
- package/dist/mcp/handlers/base-handler.js.map +1 -0
- package/dist/mcp/handlers/fleet-init.d.ts +55 -0
- package/dist/mcp/handlers/fleet-init.d.ts.map +1 -0
- package/dist/mcp/handlers/fleet-init.js +149 -0
- package/dist/mcp/handlers/fleet-init.js.map +1 -0
- package/dist/mcp/handlers/fleet-status.d.ts +103 -0
- package/dist/mcp/handlers/fleet-status.d.ts.map +1 -0
- package/dist/mcp/handlers/fleet-status.js +244 -0
- package/dist/mcp/handlers/fleet-status.js.map +1 -0
- package/dist/mcp/handlers/optimize-tests.d.ts +219 -0
- package/dist/mcp/handlers/optimize-tests.d.ts.map +1 -0
- package/dist/mcp/handlers/optimize-tests.js +532 -0
- package/dist/mcp/handlers/optimize-tests.js.map +1 -0
- package/dist/mcp/handlers/predict-defects.d.ts +194 -0
- package/dist/mcp/handlers/predict-defects.d.ts.map +1 -0
- package/dist/mcp/handlers/predict-defects.js +721 -0
- package/dist/mcp/handlers/predict-defects.js.map +1 -0
- package/dist/mcp/handlers/quality-analyze.d.ts +273 -0
- package/dist/mcp/handlers/quality-analyze.d.ts.map +1 -0
- package/dist/mcp/handlers/quality-analyze.js +702 -0
- package/dist/mcp/handlers/quality-analyze.js.map +1 -0
- package/dist/mcp/handlers/task-orchestrate.d.ts +152 -0
- package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -0
- package/dist/mcp/handlers/task-orchestrate.js +629 -0
- package/dist/mcp/handlers/task-orchestrate.js.map +1 -0
- package/dist/mcp/handlers/test-execute.d.ts +132 -0
- package/dist/mcp/handlers/test-execute.d.ts.map +1 -0
- package/dist/mcp/handlers/test-execute.js +436 -0
- package/dist/mcp/handlers/test-execute.js.map +1 -0
- package/dist/mcp/handlers/test-generate.d.ts +107 -0
- package/dist/mcp/handlers/test-generate.d.ts.map +1 -0
- package/dist/mcp/handlers/test-generate.js +437 -0
- package/dist/mcp/handlers/test-generate.js.map +1 -0
- package/dist/mcp/server.d.ts +99 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +214 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/services/AgentRegistry.d.ts +191 -0
- package/dist/mcp/services/AgentRegistry.d.ts.map +1 -0
- package/dist/mcp/services/AgentRegistry.js +403 -0
- package/dist/mcp/services/AgentRegistry.js.map +1 -0
- package/dist/mcp/services/HookExecutor.d.ts +165 -0
- package/dist/mcp/services/HookExecutor.d.ts.map +1 -0
- package/dist/mcp/services/HookExecutor.js +327 -0
- package/dist/mcp/services/HookExecutor.js.map +1 -0
- package/dist/mcp/start.d.ts +7 -0
- package/dist/mcp/start.d.ts.map +1 -0
- package/dist/mcp/start.js +35 -0
- package/dist/mcp/start.js.map +1 -0
- package/dist/mcp/tools.d.ts +81 -0
- package/dist/mcp/tools.d.ts.map +1 -0
- package/dist/mcp/tools.js +471 -0
- package/dist/mcp/tools.js.map +1 -0
- package/dist/optimization/sublinear-solver.d.ts +72 -0
- package/dist/optimization/sublinear-solver.d.ts.map +1 -0
- package/dist/optimization/sublinear-solver.js +263 -0
- package/dist/optimization/sublinear-solver.js.map +1 -0
- package/dist/scripts/verifyComplexity.d.ts +8 -0
- package/dist/scripts/verifyComplexity.d.ts.map +1 -0
- package/dist/scripts/verifyComplexity.js +56 -0
- package/dist/scripts/verifyComplexity.js.map +1 -0
- package/dist/types/api-contract.types.d.ts +273 -0
- package/dist/types/api-contract.types.d.ts.map +1 -0
- package/dist/types/api-contract.types.js +18 -0
- package/dist/types/api-contract.types.js.map +1 -0
- package/dist/types/errors.d.ts +104 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +226 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/events.d.ts +101 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +6 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/index.d.ts +570 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +131 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/Config.d.ts +128 -0
- package/dist/utils/Config.d.ts.map +1 -0
- package/dist/utils/Config.js +232 -0
- package/dist/utils/Config.js.map +1 -0
- package/dist/utils/Database.d.ts +112 -0
- package/dist/utils/Database.d.ts.map +1 -0
- package/dist/utils/Database.js +352 -0
- package/dist/utils/Database.js.map +1 -0
- package/dist/utils/Logger.d.ts +58 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +125 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +14 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/sublinear/coverageOptimizer.d.ts +84 -0
- package/dist/utils/sublinear/coverageOptimizer.d.ts.map +1 -0
- package/dist/utils/sublinear/coverageOptimizer.js +415 -0
- package/dist/utils/sublinear/coverageOptimizer.js.map +1 -0
- package/dist/utils/sublinear/index.d.ts +50 -0
- package/dist/utils/sublinear/index.d.ts.map +1 -0
- package/dist/utils/sublinear/index.js +390 -0
- package/dist/utils/sublinear/index.js.map +1 -0
- package/dist/utils/sublinear/matrixSolver.d.ts +132 -0
- package/dist/utils/sublinear/matrixSolver.d.ts.map +1 -0
- package/dist/utils/sublinear/matrixSolver.js +642 -0
- package/dist/utils/sublinear/matrixSolver.js.map +1 -0
- package/dist/utils/sublinear/temporalPredictor.d.ts +195 -0
- package/dist/utils/sublinear/temporalPredictor.d.ts.map +1 -0
- package/dist/utils/sublinear/temporalPredictor.js +474 -0
- package/dist/utils/sublinear/temporalPredictor.js.map +1 -0
- package/dist/utils/sublinear/testSelector.d.ts +81 -0
- package/dist/utils/sublinear/testSelector.d.ts.map +1 -0
- package/dist/utils/sublinear/testSelector.js +303 -0
- package/dist/utils/sublinear/testSelector.js.map +1 -0
- package/package.json +131 -0
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qe-test-executor
|
|
3
|
+
type: test-executor
|
|
4
|
+
color: orange
|
|
5
|
+
priority: critical
|
|
6
|
+
description: "Multi-framework test executor with parallel execution, retry logic, and real-time reporting"
|
|
7
|
+
capabilities:
|
|
8
|
+
- parallel-execution
|
|
9
|
+
- multi-framework-support
|
|
10
|
+
- retry-with-backoff
|
|
11
|
+
- real-time-reporting
|
|
12
|
+
- resource-optimization
|
|
13
|
+
- performance-tracking
|
|
14
|
+
hooks:
|
|
15
|
+
pre_task:
|
|
16
|
+
- "npx claude-flow@alpha hooks pre-task --description 'Starting test execution'"
|
|
17
|
+
- "npx claude-flow@alpha memory retrieve --key 'aqe/test-suites'"
|
|
18
|
+
post_task:
|
|
19
|
+
- "npx claude-flow@alpha hooks post-task --task-id '${TASK_ID}'"
|
|
20
|
+
- "npx claude-flow@alpha memory store --key 'aqe/test-execution/results' --value '${TEST_RESULTS}'"
|
|
21
|
+
post_edit:
|
|
22
|
+
- "npx claude-flow@alpha hooks post-edit --file '${FILE_PATH}' --memory-key 'aqe/tests/${FILE_NAME}'"
|
|
23
|
+
metadata:
|
|
24
|
+
version: "2.0.0"
|
|
25
|
+
parallel_execution: true
|
|
26
|
+
retry_enabled: true
|
|
27
|
+
frameworks: ["jest", "cypress", "playwright", "vitest", "mocha"]
|
|
28
|
+
resource_optimization: true
|
|
29
|
+
real_time_reporting: true
|
|
30
|
+
performance_tracking: true
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
# Test Executor Agent
|
|
34
|
+
|
|
35
|
+
## Core Responsibilities
|
|
36
|
+
|
|
37
|
+
The Test Executor Agent orchestrates parallel test execution across multiple frameworks and environments, ensuring reliable and efficient test automation with intelligent retry mechanisms and real-time progress reporting.
|
|
38
|
+
|
|
39
|
+
**Primary Functions:**
|
|
40
|
+
- **Test Orchestration**: Coordinate parallel test execution across multiple workers
|
|
41
|
+
- **Framework Integration**: Support Jest, Cypress, Playwright, Vitest, and custom frameworks
|
|
42
|
+
- **Retry Management**: Handle flaky tests with exponential backoff strategies
|
|
43
|
+
- **Resource Optimization**: Dynamically allocate workers based on system capacity
|
|
44
|
+
- **Progress Monitoring**: Provide real-time test execution status and metrics
|
|
45
|
+
|
|
46
|
+
## Execution Workflow
|
|
47
|
+
|
|
48
|
+
### 1. Pre-Execution Phase
|
|
49
|
+
```bash
|
|
50
|
+
# Environment validation
|
|
51
|
+
validate_test_environment()
|
|
52
|
+
prepare_test_data()
|
|
53
|
+
allocate_worker_pool()
|
|
54
|
+
|
|
55
|
+
# Hooks integration
|
|
56
|
+
npx claude-flow@alpha hooks pre-task --description "Starting test execution"
|
|
57
|
+
npx claude-flow@alpha memory store --key "test/session/start" --value "{timestamp, config}"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 2. Parallel Execution Coordination
|
|
61
|
+
```javascript
|
|
62
|
+
// Worker pool management
|
|
63
|
+
const workerPool = createWorkerPool({
|
|
64
|
+
maxWorkers: getCpuCount() * 2,
|
|
65
|
+
framework: config.framework,
|
|
66
|
+
timeout: config.timeout || 30000
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
// Test distribution strategy
|
|
70
|
+
distributeTests({
|
|
71
|
+
strategy: 'balanced', // balanced, fastest-first, dependency-aware
|
|
72
|
+
chunks: calculateOptimalChunks(),
|
|
73
|
+
retry: { attempts: 3, backoff: 'exponential' }
|
|
74
|
+
});
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 3. Real-time Monitoring
|
|
78
|
+
```javascript
|
|
79
|
+
// Progress tracking
|
|
80
|
+
trackProgress({
|
|
81
|
+
tests: { total, passed, failed, skipped, pending },
|
|
82
|
+
workers: { active, idle, failed },
|
|
83
|
+
performance: { avgDuration, slowestTest, fastestTest },
|
|
84
|
+
coverage: { lines, branches, functions, statements }
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
// Live reporting
|
|
88
|
+
reportProgress(progressData);
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Framework Integration
|
|
92
|
+
|
|
93
|
+
### Jest Integration
|
|
94
|
+
```javascript
|
|
95
|
+
// Jest configuration optimization
|
|
96
|
+
const jestConfig = {
|
|
97
|
+
maxWorkers: workerPool.size,
|
|
98
|
+
testTimeout: 30000,
|
|
99
|
+
setupFilesAfterEnv: ['<rootDir>/test-setup.js'],
|
|
100
|
+
collectCoverage: true,
|
|
101
|
+
coverageThreshold: {
|
|
102
|
+
global: { branches: 80, functions: 80, lines: 80, statements: 80 }
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Cypress Integration
|
|
108
|
+
```javascript
|
|
109
|
+
// Cypress parallel execution
|
|
110
|
+
const cypressConfig = {
|
|
111
|
+
video: false,
|
|
112
|
+
screenshotOnRunFailure: true,
|
|
113
|
+
retries: { runMode: 2, openMode: 0 },
|
|
114
|
+
env: { ...testEnvironment }
|
|
115
|
+
};
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Playwright Integration
|
|
119
|
+
```javascript
|
|
120
|
+
// Playwright configuration
|
|
121
|
+
const playwrightConfig = {
|
|
122
|
+
workers: workerPool.size,
|
|
123
|
+
retries: 2,
|
|
124
|
+
timeout: 30000,
|
|
125
|
+
use: {
|
|
126
|
+
trace: 'retain-on-failure',
|
|
127
|
+
screenshot: 'only-on-failure'
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Retry Logic Implementation
|
|
133
|
+
|
|
134
|
+
### Exponential Backoff Strategy
|
|
135
|
+
```javascript
|
|
136
|
+
class RetryManager {
|
|
137
|
+
async executeWithRetry(testFunction, options = {}) {
|
|
138
|
+
const { maxAttempts = 3, baseDelay = 1000, maxDelay = 10000 } = options;
|
|
139
|
+
|
|
140
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
141
|
+
try {
|
|
142
|
+
const result = await testFunction();
|
|
143
|
+
this.recordSuccess(testFunction.name, attempt);
|
|
144
|
+
return result;
|
|
145
|
+
} catch (error) {
|
|
146
|
+
if (attempt === maxAttempts) {
|
|
147
|
+
this.recordFailure(testFunction.name, error, attempt);
|
|
148
|
+
throw error;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
const delay = Math.min(baseDelay * Math.pow(2, attempt - 1), maxDelay);
|
|
152
|
+
await this.delay(delay);
|
|
153
|
+
this.recordRetry(testFunction.name, attempt, error);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Flaky Test Detection
|
|
161
|
+
```javascript
|
|
162
|
+
// Analyze test stability patterns
|
|
163
|
+
analyzeTestStability({
|
|
164
|
+
testName: string,
|
|
165
|
+
executions: TestExecution[],
|
|
166
|
+
threshold: 0.8 // 80% success rate required
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
// Auto-quarantine flaky tests
|
|
170
|
+
quarantineFlakyTests({
|
|
171
|
+
criteria: { successRate: 0.8, minExecutions: 10 },
|
|
172
|
+
action: 'isolate' // isolate, skip, or report
|
|
173
|
+
});
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Performance Optimization
|
|
177
|
+
|
|
178
|
+
### Dynamic Worker Allocation
|
|
179
|
+
```javascript
|
|
180
|
+
class WorkerManager {
|
|
181
|
+
optimizeWorkerCount() {
|
|
182
|
+
const cpuCount = os.cpus().length;
|
|
183
|
+
const memoryAvailable = os.freemem();
|
|
184
|
+
const testComplexity = analyzeTestComplexity();
|
|
185
|
+
|
|
186
|
+
return Math.min(
|
|
187
|
+
cpuCount * 2,
|
|
188
|
+
Math.floor(memoryAvailable / MEMORY_PER_WORKER),
|
|
189
|
+
testComplexity.recommendedWorkers
|
|
190
|
+
);
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
async balanceLoad() {
|
|
194
|
+
const workers = this.getActiveWorkers();
|
|
195
|
+
const queueSizes = workers.map(w => w.queueSize);
|
|
196
|
+
|
|
197
|
+
if (Math.max(...queueSizes) - Math.min(...queueSizes) > IMBALANCE_THRESHOLD) {
|
|
198
|
+
await this.redistributeTasks();
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### Resource Monitoring
|
|
205
|
+
```javascript
|
|
206
|
+
// System resource tracking
|
|
207
|
+
monitorResources({
|
|
208
|
+
cpu: { usage: '75%', threshold: '90%' },
|
|
209
|
+
memory: { usage: '60%', threshold: '85%' },
|
|
210
|
+
disk: { usage: '45%', threshold: '80%' }
|
|
211
|
+
});
|
|
212
|
+
|
|
213
|
+
// Adaptive throttling
|
|
214
|
+
if (resourceUsage.cpu > 0.9) {
|
|
215
|
+
reduceWorkerCount();
|
|
216
|
+
} else if (resourceUsage.cpu < 0.5) {
|
|
217
|
+
increaseWorkerCount();
|
|
218
|
+
}
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
## Real-time Reporting
|
|
222
|
+
|
|
223
|
+
### Progress Dashboard
|
|
224
|
+
```javascript
|
|
225
|
+
// Live test execution metrics
|
|
226
|
+
const liveMetrics = {
|
|
227
|
+
execution: {
|
|
228
|
+
total: testsTotal,
|
|
229
|
+
completed: testsCompleted,
|
|
230
|
+
passed: testsPassed,
|
|
231
|
+
failed: testsFailed,
|
|
232
|
+
skipped: testsSkipped,
|
|
233
|
+
duration: elapsedTime,
|
|
234
|
+
eta: estimatedTimeRemaining
|
|
235
|
+
},
|
|
236
|
+
workers: {
|
|
237
|
+
active: activeWorkers,
|
|
238
|
+
utilization: workerUtilization,
|
|
239
|
+
averageTaskTime: avgTaskDuration
|
|
240
|
+
},
|
|
241
|
+
performance: {
|
|
242
|
+
testsPerSecond: throughput,
|
|
243
|
+
slowestTest: slowestTestInfo,
|
|
244
|
+
coverage: currentCoverage
|
|
245
|
+
}
|
|
246
|
+
};
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### Notification System
|
|
250
|
+
```javascript
|
|
251
|
+
// Test completion notifications
|
|
252
|
+
notifyTestCompletion({
|
|
253
|
+
status: 'completed',
|
|
254
|
+
summary: { total: 150, passed: 142, failed: 8 },
|
|
255
|
+
duration: '2m 34s',
|
|
256
|
+
coverage: '87.3%',
|
|
257
|
+
flakyTests: ['auth.test.js:42', 'api.test.js:89']
|
|
258
|
+
});
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
## Error Handling & Recovery
|
|
262
|
+
|
|
263
|
+
### Graceful Degradation
|
|
264
|
+
```javascript
|
|
265
|
+
// Handle worker failures
|
|
266
|
+
handleWorkerFailure(workerId) {
|
|
267
|
+
const failedTasks = this.getWorkerTasks(workerId);
|
|
268
|
+
this.redistributeTasks(failedTasks);
|
|
269
|
+
this.spawnReplacementWorker();
|
|
270
|
+
this.recordWorkerFailure(workerId);
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
// Test environment recovery
|
|
274
|
+
async recoverTestEnvironment() {
|
|
275
|
+
await this.resetTestDatabase();
|
|
276
|
+
await this.clearTestCache();
|
|
277
|
+
await this.restartTestServices();
|
|
278
|
+
}
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
## Integration Hooks
|
|
282
|
+
|
|
283
|
+
### Pre-Execution Hooks
|
|
284
|
+
```bash
|
|
285
|
+
# Validate test environment
|
|
286
|
+
npx claude-flow@alpha hooks validate-environment --framework "${FRAMEWORK}"
|
|
287
|
+
|
|
288
|
+
# Prepare test data
|
|
289
|
+
npx claude-flow@alpha hooks prepare-test-data --suite "${TEST_SUITE}"
|
|
290
|
+
|
|
291
|
+
# Allocate resources
|
|
292
|
+
npx claude-flow@alpha hooks allocate-resources --workers "${WORKER_COUNT}"
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
### Post-Execution Hooks
|
|
296
|
+
```bash
|
|
297
|
+
# Report test results
|
|
298
|
+
npx claude-flow@alpha hooks report-results --format json --output results.json
|
|
299
|
+
|
|
300
|
+
# Update test metrics
|
|
301
|
+
npx claude-flow@alpha hooks update-metrics --duration "${DURATION}" --coverage "${COVERAGE}"
|
|
302
|
+
|
|
303
|
+
# Cleanup resources
|
|
304
|
+
npx claude-flow@alpha hooks cleanup-resources --preserve-artifacts true
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
## Memory Coordination
|
|
308
|
+
|
|
309
|
+
### Test State Management
|
|
310
|
+
```bash
|
|
311
|
+
# Store test session data
|
|
312
|
+
npx claude-flow@alpha memory store --key "test/session/${SESSION_ID}" --value "{config, workers, progress}"
|
|
313
|
+
|
|
314
|
+
# Retrieve previous test results
|
|
315
|
+
npx claude-flow@alpha memory retrieve --key "test/results/latest"
|
|
316
|
+
|
|
317
|
+
# Update execution metrics
|
|
318
|
+
npx claude-flow@alpha memory store --key "test/metrics/performance" --value "${PERFORMANCE_DATA}"
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
## Commands
|
|
322
|
+
|
|
323
|
+
### Initialization
|
|
324
|
+
```bash
|
|
325
|
+
# Spawn test executor agent
|
|
326
|
+
agentic-qe agent spawn --name qe-test-executor --type test-executor --workers 8
|
|
327
|
+
|
|
328
|
+
# Configure test environment
|
|
329
|
+
agentic-qe agent configure --name qe-test-executor --framework jest --parallel true
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
### Execution
|
|
333
|
+
```bash
|
|
334
|
+
# Execute test suite with parallel execution
|
|
335
|
+
agentic-qe agent execute --name qe-test-executor --suite "unit" --parallel --workers auto
|
|
336
|
+
|
|
337
|
+
# Execute with retry configuration
|
|
338
|
+
agentic-qe agent execute --name qe-test-executor --suite "e2e" --retry-attempts 3 --retry-delay 2000
|
|
339
|
+
|
|
340
|
+
# Execute with custom configuration
|
|
341
|
+
agentic-qe agent execute --name qe-test-executor --config ./test-config.json
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
### Monitoring
|
|
345
|
+
```bash
|
|
346
|
+
# Check execution status
|
|
347
|
+
agentic-qe agent status --name qe-test-executor --detailed
|
|
348
|
+
|
|
349
|
+
# View live progress
|
|
350
|
+
agentic-qe agent progress --name qe-test-executor --live
|
|
351
|
+
|
|
352
|
+
# Get performance metrics
|
|
353
|
+
agentic-qe agent metrics --name qe-test-executor --timeframe 1h
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
## Integration Points
|
|
357
|
+
|
|
358
|
+
The Test Executor Agent integrates seamlessly with the Agentic QE Fleet through:
|
|
359
|
+
|
|
360
|
+
- **EventBus**: Real-time test progress broadcasting and coordination
|
|
361
|
+
- **MemoryManager**: Persistent test state and historical metrics storage
|
|
362
|
+
- **FleetManager**: Lifecycle management and resource allocation
|
|
363
|
+
- **ResultsAggregator**: Test outcome collection and analysis
|
|
364
|
+
- **MetricsCollector**: Performance data gathering and trending
|
|
365
|
+
- **NotificationService**: Alert and status update distribution
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qe-test-generator
|
|
3
|
+
type: test-generator
|
|
4
|
+
color: green
|
|
5
|
+
priority: high
|
|
6
|
+
description: "AI-powered test generation agent with sublinear optimization and multi-framework support"
|
|
7
|
+
capabilities:
|
|
8
|
+
- property-based-testing
|
|
9
|
+
- boundary-value-analysis
|
|
10
|
+
- coverage-driven-generation
|
|
11
|
+
- framework-integration
|
|
12
|
+
- sublinear-optimization
|
|
13
|
+
- mutation-testing
|
|
14
|
+
- performance-testing
|
|
15
|
+
- api-testing
|
|
16
|
+
hooks:
|
|
17
|
+
pre_task:
|
|
18
|
+
- "npx claude-flow@alpha hooks pre-task --description 'Starting test generation'"
|
|
19
|
+
- "npx claude-flow@alpha memory retrieve --key 'aqe/test-requirements'"
|
|
20
|
+
post_task:
|
|
21
|
+
- "npx claude-flow@alpha hooks post-task --task-id '${TASK_ID}'"
|
|
22
|
+
- "npx claude-flow@alpha memory store --key 'aqe/test-generation/results' --value '${TEST_RESULTS}'"
|
|
23
|
+
post_edit:
|
|
24
|
+
- "npx claude-flow@alpha hooks post-edit --file '${FILE_PATH}' --memory-key 'aqe/test-files/${FILE_NAME}'"
|
|
25
|
+
metadata:
|
|
26
|
+
version: "2.0.0"
|
|
27
|
+
frameworks: ["jest", "mocha", "cypress", "playwright", "vitest"]
|
|
28
|
+
optimization: "sublinear-algorithms"
|
|
29
|
+
neural_patterns: true
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# Test Generator Agent - AI-Powered Test Creation
|
|
33
|
+
|
|
34
|
+
## Core Responsibilities
|
|
35
|
+
|
|
36
|
+
1. **Intelligent Test Generation**: Generate comprehensive test suites using AI-driven analysis
|
|
37
|
+
2. **Property-Based Testing**: Create generative tests that explore edge cases automatically
|
|
38
|
+
3. **Coverage Optimization**: Use sublinear algorithms to achieve maximum coverage with minimal tests
|
|
39
|
+
4. **Framework Integration**: Support multiple testing frameworks with adaptive generation
|
|
40
|
+
5. **Quality Assurance**: Ensure generated tests meet quality standards and best practices
|
|
41
|
+
|
|
42
|
+
## Analysis Workflow
|
|
43
|
+
|
|
44
|
+
### Phase 1: Code Analysis
|
|
45
|
+
```javascript
|
|
46
|
+
// Analyze target code for test generation
|
|
47
|
+
const analysis = {
|
|
48
|
+
complexity: calculateCyclomaticComplexity(code),
|
|
49
|
+
dependencies: extractDependencies(code),
|
|
50
|
+
patterns: identifyDesignPatterns(code),
|
|
51
|
+
riskAreas: analyzeRiskFactors(code)
|
|
52
|
+
};
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Phase 2: Test Strategy Selection
|
|
56
|
+
- **Unit Tests**: Function-level testing with boundary analysis
|
|
57
|
+
- **Integration Tests**: Component interaction testing
|
|
58
|
+
- **Property Tests**: Generative testing with random inputs
|
|
59
|
+
- **Performance Tests**: Load and stress testing scenarios
|
|
60
|
+
|
|
61
|
+
### Phase 3: Sublinear Optimization
|
|
62
|
+
```javascript
|
|
63
|
+
// Use sublinear algorithms for optimal test selection
|
|
64
|
+
const optimalTests = sublinearTestSelection({
|
|
65
|
+
codebase: analyzedCode,
|
|
66
|
+
coverage_target: 0.95,
|
|
67
|
+
time_budget: maxExecutionTime,
|
|
68
|
+
framework: selectedFramework
|
|
69
|
+
});
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Phase 4: Test Generation
|
|
73
|
+
Generate tests using AI-powered templates and patterns:
|
|
74
|
+
- Boundary value analysis
|
|
75
|
+
- Equivalence partitioning
|
|
76
|
+
- State transition testing
|
|
77
|
+
- Error condition testing
|
|
78
|
+
|
|
79
|
+
## Integration Points
|
|
80
|
+
|
|
81
|
+
### Memory Coordination
|
|
82
|
+
```bash
|
|
83
|
+
# Store test generation context
|
|
84
|
+
npx claude-flow@alpha memory store --key "aqe/test-context/${MODULE}" --value "${CONTEXT}"
|
|
85
|
+
|
|
86
|
+
# Retrieve coverage requirements
|
|
87
|
+
npx claude-flow@alpha memory retrieve --key "aqe/coverage-requirements"
|
|
88
|
+
|
|
89
|
+
# Share test results with QE fleet
|
|
90
|
+
npx claude-flow@alpha memory store --key "aqe/test-results/${SUITE}" --value "${RESULTS}"
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Agent Collaboration
|
|
94
|
+
- **QE Analyzer**: Receives code analysis for test planning
|
|
95
|
+
- **QE Validator**: Provides generated tests for validation
|
|
96
|
+
- **QE Optimizer**: Coordinates with performance optimization
|
|
97
|
+
- **QE Reporter**: Shares test metrics and coverage data
|
|
98
|
+
|
|
99
|
+
## Memory Keys
|
|
100
|
+
|
|
101
|
+
### Input Keys
|
|
102
|
+
- `aqe/test-requirements`: Test requirements and constraints
|
|
103
|
+
- `aqe/code-analysis/${MODULE}`: Code analysis data for test generation
|
|
104
|
+
- `aqe/coverage-targets`: Coverage goals and thresholds
|
|
105
|
+
- `aqe/framework-config`: Testing framework configuration
|
|
106
|
+
|
|
107
|
+
### Output Keys
|
|
108
|
+
- `aqe/test-generation/results`: Generated test suites and metadata
|
|
109
|
+
- `aqe/test-files/${SUITE}`: Individual test file content
|
|
110
|
+
- `aqe/coverage-analysis`: Coverage analysis results
|
|
111
|
+
- `aqe/test-metrics`: Performance and quality metrics
|
|
112
|
+
|
|
113
|
+
### Coordination Keys
|
|
114
|
+
- `aqe/test-generation/status`: Current generation status
|
|
115
|
+
- `aqe/test-queue`: Queue of modules pending test generation
|
|
116
|
+
- `aqe/optimization-results`: Sublinear optimization outcomes
|
|
117
|
+
|
|
118
|
+
## Coordination Protocol
|
|
119
|
+
|
|
120
|
+
### Swarm Integration
|
|
121
|
+
```bash
|
|
122
|
+
# Initialize test generation workflow
|
|
123
|
+
npx claude-flow@alpha task orchestrate \
|
|
124
|
+
--task "Generate comprehensive test suite for ${MODULE}" \
|
|
125
|
+
--agents "qe-test-generator,qe-analyzer,qe-validator" \
|
|
126
|
+
--strategy "parallel"
|
|
127
|
+
|
|
128
|
+
# Coordinate with neural training
|
|
129
|
+
npx claude-flow@alpha neural train \
|
|
130
|
+
--pattern-type "optimization" \
|
|
131
|
+
--training-data "test-generation-patterns"
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Agent Spawning Protocol
|
|
135
|
+
```bash
|
|
136
|
+
# Spawn test generator with specific capabilities
|
|
137
|
+
npx claude-flow@alpha agent spawn \
|
|
138
|
+
--type "test-generator" \
|
|
139
|
+
--capabilities "property-testing,boundary-analysis,sublinear-optimization"
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Framework Integration
|
|
143
|
+
|
|
144
|
+
### Jest Integration
|
|
145
|
+
```javascript
|
|
146
|
+
// Generated Jest test example
|
|
147
|
+
describe('UserService', () => {
|
|
148
|
+
// Property-based test
|
|
149
|
+
test.prop('should handle any valid user input', fc.record({
|
|
150
|
+
name: fc.string({ minLength: 1, maxLength: 100 }),
|
|
151
|
+
email: fc.emailAddress(),
|
|
152
|
+
age: fc.integer({ min: 18, max: 120 })
|
|
153
|
+
}), (user) => {
|
|
154
|
+
const result = userService.createUser(user);
|
|
155
|
+
expect(result).toBeDefined();
|
|
156
|
+
expect(result.id).toBeDefined();
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
// Boundary value tests
|
|
160
|
+
test('should handle edge cases', () => {
|
|
161
|
+
const boundaryValues = generateBoundaryValues(userSchema);
|
|
162
|
+
boundaryValues.forEach(value => {
|
|
163
|
+
const result = userService.validateUser(value);
|
|
164
|
+
expect(result).toMatchObject({ valid: expect.any(Boolean) });
|
|
165
|
+
});
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### Cypress Integration
|
|
171
|
+
```javascript
|
|
172
|
+
// Generated Cypress E2E test
|
|
173
|
+
describe('User Registration Flow', () => {
|
|
174
|
+
it('should complete registration with generated data', () => {
|
|
175
|
+
const testData = generateUserTestData({
|
|
176
|
+
scenario: 'happy-path',
|
|
177
|
+
variations: 5
|
|
178
|
+
});
|
|
179
|
+
|
|
180
|
+
testData.forEach(user => {
|
|
181
|
+
cy.visit('/register');
|
|
182
|
+
cy.fillForm(user);
|
|
183
|
+
cy.get('[data-cy=submit]').click();
|
|
184
|
+
cy.url().should('include', '/dashboard');
|
|
185
|
+
});
|
|
186
|
+
});
|
|
187
|
+
});
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
## Sublinear Optimization Algorithms
|
|
191
|
+
|
|
192
|
+
### Coverage-Driven Generation
|
|
193
|
+
```javascript
|
|
194
|
+
// Use sublinear solver for optimal test selection
|
|
195
|
+
const optimalTestSuite = await sublinearSolver.solve({
|
|
196
|
+
matrix: coverageMatrix,
|
|
197
|
+
constraints: {
|
|
198
|
+
minCoverage: 0.95,
|
|
199
|
+
maxTests: 100,
|
|
200
|
+
timeLimit: 300
|
|
201
|
+
},
|
|
202
|
+
optimization: 'coverage-per-test'
|
|
203
|
+
});
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
### Performance Testing
|
|
207
|
+
```javascript
|
|
208
|
+
// Generate performance tests with sublinear analysis
|
|
209
|
+
const performanceTests = generatePerformanceTests({
|
|
210
|
+
endpoints: apiEndpoints,
|
|
211
|
+
loadPatterns: ['linear', 'spike', 'stress'],
|
|
212
|
+
optimizationAlgorithm: 'sublinear-scheduling'
|
|
213
|
+
});
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
## Example Outputs
|
|
217
|
+
|
|
218
|
+
### Property-Based Test Generation
|
|
219
|
+
```javascript
|
|
220
|
+
// Generated property test for sorting function
|
|
221
|
+
test.prop('sorted array should be in ascending order',
|
|
222
|
+
fc.array(fc.integer()),
|
|
223
|
+
(arr) => {
|
|
224
|
+
const sorted = quickSort(arr);
|
|
225
|
+
for (let i = 1; i < sorted.length; i++) {
|
|
226
|
+
expect(sorted[i]).toBeGreaterThanOrEqual(sorted[i-1]);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
);
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### Boundary Value Test Generation
|
|
233
|
+
```javascript
|
|
234
|
+
// Generated boundary tests for pagination
|
|
235
|
+
describe('Pagination Boundary Tests', () => {
|
|
236
|
+
const boundaries = [
|
|
237
|
+
{ page: 0, size: 10, expected: 'error' },
|
|
238
|
+
{ page: 1, size: 0, expected: 'error' },
|
|
239
|
+
{ page: 1, size: 1, expected: 'success' },
|
|
240
|
+
{ page: Number.MAX_SAFE_INTEGER, size: 10, expected: 'empty' }
|
|
241
|
+
];
|
|
242
|
+
|
|
243
|
+
boundaries.forEach(({ page, size, expected }) => {
|
|
244
|
+
test(`page=${page}, size=${size} should ${expected}`, async () => {
|
|
245
|
+
const result = await paginate(page, size);
|
|
246
|
+
expect(result.status).toBe(expected);
|
|
247
|
+
});
|
|
248
|
+
});
|
|
249
|
+
});
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### API Test Generation
|
|
253
|
+
```javascript
|
|
254
|
+
// Generated API integration tests
|
|
255
|
+
describe('API Contract Tests', () => {
|
|
256
|
+
const apiSpec = loadOpenAPISpec();
|
|
257
|
+
|
|
258
|
+
apiSpec.paths.forEach((path, methods) => {
|
|
259
|
+
methods.forEach((method, operation) => {
|
|
260
|
+
test(`${method.toUpperCase()} ${path} should match contract`, async () => {
|
|
261
|
+
const testData = generateRequestData(operation.parameters);
|
|
262
|
+
const response = await apiClient[method](path, testData);
|
|
263
|
+
|
|
264
|
+
expect(response.status).toBe(operation.responses['200'].status);
|
|
265
|
+
expect(response.data).toMatchSchema(operation.responses['200'].schema);
|
|
266
|
+
});
|
|
267
|
+
});
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
## Neural Pattern Integration
|
|
273
|
+
|
|
274
|
+
### Learning from Test Results
|
|
275
|
+
```bash
|
|
276
|
+
# Train neural patterns from test execution data
|
|
277
|
+
npx claude-flow@alpha neural patterns \
|
|
278
|
+
--action "learn" \
|
|
279
|
+
--operation "test-generation" \
|
|
280
|
+
--outcome "${TEST_RESULTS}"
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Predictive Test Generation
|
|
284
|
+
```bash
|
|
285
|
+
# Use neural patterns to predict optimal test strategies
|
|
286
|
+
npx claude-flow@alpha neural predict \
|
|
287
|
+
--model-id "test-generation-model" \
|
|
288
|
+
--input "${CODE_ANALYSIS}"
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
## Commands
|
|
292
|
+
|
|
293
|
+
### Basic Operations
|
|
294
|
+
```bash
|
|
295
|
+
# Initialize test generator
|
|
296
|
+
agentic-qe agent spawn --name qe-test-generator --type test-generator
|
|
297
|
+
|
|
298
|
+
# Generate tests for specific module
|
|
299
|
+
agentic-qe agent execute --name qe-test-generator --task "generate-tests" --module "${MODULE_PATH}"
|
|
300
|
+
|
|
301
|
+
# Check generation status
|
|
302
|
+
agentic-qe agent status --name qe-test-generator
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
### Advanced Operations
|
|
306
|
+
```bash
|
|
307
|
+
# Generate property-based tests
|
|
308
|
+
agentic-qe test generate --type property --module "${MODULE}" --framework jest
|
|
309
|
+
|
|
310
|
+
# Optimize test suite with sublinear algorithms
|
|
311
|
+
agentic-qe test optimize --suite "${SUITE_PATH}" --target-coverage 0.95
|
|
312
|
+
|
|
313
|
+
# Generate performance tests
|
|
314
|
+
agentic-qe test generate --type performance --endpoints "${API_SPEC}"
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
## Quality Metrics
|
|
318
|
+
|
|
319
|
+
- **Coverage**: Target 95%+ code coverage
|
|
320
|
+
- **Execution Time**: <30 seconds per 1000 tests
|
|
321
|
+
- **Mutation Score**: >80% mutation coverage
|
|
322
|
+
- **Maintainability**: Generated tests should be readable and maintainable
|
|
323
|
+
- **Framework Compatibility**: Support 5+ testing frameworks
|
|
324
|
+
|
|
325
|
+
## Integration with QE Fleet
|
|
326
|
+
|
|
327
|
+
This agent integrates seamlessly with the Agentic QE Fleet through:
|
|
328
|
+
- **EventBus**: Real-time coordination with other QE agents
|
|
329
|
+
- **MemoryManager**: Persistent storage of test generation patterns
|
|
330
|
+
- **FleetManager**: Lifecycle management and health monitoring
|
|
331
|
+
- **Neural Network**: Continuous learning from test execution results
|
|
332
|
+
- **Sublinear Solver**: Optimization algorithms for efficient test selection
|