agentic-qe 3.2.2 → 3.3.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/v3/qe-accessibility-auditor.md +90 -0
- package/.claude/helpers/github-safe.js +10 -10
- package/README.md +43 -5
- package/package.json +4 -2
- package/scripts/cloud-db-config.json +37 -0
- package/scripts/cloud-db-connect.sh +37 -0
- package/scripts/cloud-db-tunnel.sh +23 -0
- package/v3/CHANGELOG.md +165 -0
- package/v3/README.md +59 -1
- package/v3/assets/agents/v3/qe-accessibility-auditor.md +90 -0
- package/v3/dist/adapters/claude-flow/index.d.ts +54 -0
- package/v3/dist/adapters/claude-flow/index.d.ts.map +1 -0
- package/v3/dist/adapters/claude-flow/index.js +79 -0
- package/v3/dist/adapters/claude-flow/index.js.map +1 -0
- package/v3/dist/adapters/claude-flow/model-router-bridge.d.ts +70 -0
- package/v3/dist/adapters/claude-flow/model-router-bridge.d.ts.map +1 -0
- package/v3/dist/adapters/claude-flow/model-router-bridge.js +203 -0
- package/v3/dist/adapters/claude-flow/model-router-bridge.js.map +1 -0
- package/v3/dist/adapters/claude-flow/pretrain-bridge.d.ts +73 -0
- package/v3/dist/adapters/claude-flow/pretrain-bridge.d.ts.map +1 -0
- package/v3/dist/adapters/claude-flow/pretrain-bridge.js +276 -0
- package/v3/dist/adapters/claude-flow/pretrain-bridge.js.map +1 -0
- package/v3/dist/adapters/claude-flow/trajectory-bridge.d.ts +70 -0
- package/v3/dist/adapters/claude-flow/trajectory-bridge.d.ts.map +1 -0
- package/v3/dist/adapters/claude-flow/trajectory-bridge.js +205 -0
- package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -0
- package/v3/dist/adapters/claude-flow/types.d.ts +99 -0
- package/v3/dist/adapters/claude-flow/types.d.ts.map +1 -0
- package/v3/dist/adapters/claude-flow/types.js +6 -0
- package/v3/dist/adapters/claude-flow/types.js.map +1 -0
- package/v3/dist/causal-discovery/causal-graph.d.ts +80 -1
- package/v3/dist/causal-discovery/causal-graph.d.ts.map +1 -1
- package/v3/dist/causal-discovery/causal-graph.js +111 -1
- package/v3/dist/causal-discovery/causal-graph.js.map +1 -1
- package/v3/dist/cli/bundle.js +12486 -5503
- package/v3/dist/cli/commands/claude-flow-setup.d.ts +82 -0
- package/v3/dist/cli/commands/claude-flow-setup.d.ts.map +1 -0
- package/v3/dist/cli/commands/claude-flow-setup.js +334 -0
- package/v3/dist/cli/commands/claude-flow-setup.js.map +1 -0
- package/v3/dist/cli/commands/hooks.d.ts +2 -0
- package/v3/dist/cli/commands/hooks.d.ts.map +1 -1
- package/v3/dist/cli/commands/hooks.js +13 -2
- package/v3/dist/cli/commands/hooks.js.map +1 -1
- package/v3/dist/cli/commands/init.d.ts +19 -0
- package/v3/dist/cli/commands/init.d.ts.map +1 -0
- package/v3/dist/cli/commands/init.js +345 -0
- package/v3/dist/cli/commands/init.js.map +1 -0
- package/v3/dist/cli/index.js +110 -2
- package/v3/dist/cli/index.js.map +1 -1
- package/v3/dist/coordination/cross-domain-router.d.ts.map +1 -1
- package/v3/dist/coordination/cross-domain-router.js +2 -0
- package/v3/dist/coordination/cross-domain-router.js.map +1 -1
- package/v3/dist/coordination/mincut/interfaces.d.ts +8 -2
- package/v3/dist/coordination/mincut/interfaces.d.ts.map +1 -1
- package/v3/dist/coordination/mincut/interfaces.js.map +1 -1
- package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts +5 -0
- package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts.map +1 -1
- package/v3/dist/coordination/mincut/mincut-health-monitor.js +22 -4
- package/v3/dist/coordination/mincut/mincut-health-monitor.js.map +1 -1
- package/v3/dist/coordination/mincut/queen-integration.d.ts +4 -0
- package/v3/dist/coordination/mincut/queen-integration.d.ts.map +1 -1
- package/v3/dist/coordination/mincut/queen-integration.js +14 -1
- package/v3/dist/coordination/mincut/queen-integration.js.map +1 -1
- package/v3/dist/coordination/queen-coordinator.d.ts +5 -0
- package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
- package/v3/dist/coordination/queen-coordinator.js +45 -7
- package/v3/dist/coordination/queen-coordinator.js.map +1 -1
- package/v3/dist/domains/learning-optimization/coordinator.d.ts +5 -0
- package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/coordinator.js +79 -0
- package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
- package/v3/dist/domains/security-compliance/services/semgrep-integration.d.ts.map +1 -1
- package/v3/dist/domains/security-compliance/services/semgrep-integration.js +16 -12
- package/v3/dist/domains/security-compliance/services/semgrep-integration.js.map +1 -1
- package/v3/dist/domains/test-execution/services/e2e-runner.d.ts +1 -0
- package/v3/dist/domains/test-execution/services/e2e-runner.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/services/e2e-runner.js +9 -12
- package/v3/dist/domains/test-execution/services/e2e-runner.js.map +1 -1
- package/v3/dist/domains/test-generation/coherence-gate.d.ts +245 -0
- package/v3/dist/domains/test-generation/coherence-gate.d.ts.map +1 -0
- package/v3/dist/domains/test-generation/coherence-gate.js +454 -0
- package/v3/dist/domains/test-generation/coherence-gate.js.map +1 -0
- package/v3/dist/domains/test-generation/coordinator.d.ts +32 -1
- package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/coordinator.js +70 -1
- package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
- package/v3/dist/domains/test-generation/index.d.ts +1 -0
- package/v3/dist/domains/test-generation/index.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/index.js +4 -0
- package/v3/dist/domains/test-generation/index.js.map +1 -1
- package/v3/dist/domains/test-generation/services/index.d.ts +1 -0
- package/v3/dist/domains/test-generation/services/index.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/services/index.js +2 -0
- package/v3/dist/domains/test-generation/services/index.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/index.d.ts +2 -1
- package/v3/dist/domains/visual-accessibility/index.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/index.js +1 -0
- package/v3/dist/domains/visual-accessibility/index.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/interfaces.d.ts +131 -0
- package/v3/dist/domains/visual-accessibility/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/plugin.d.ts +26 -0
- package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/plugin.js +151 -0
- package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts +42 -1
- package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js +69 -0
- package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/services/eu-compliance.d.ts +138 -0
- package/v3/dist/domains/visual-accessibility/services/eu-compliance.d.ts.map +1 -0
- package/v3/dist/domains/visual-accessibility/services/eu-compliance.js +830 -0
- package/v3/dist/domains/visual-accessibility/services/eu-compliance.js.map +1 -0
- package/v3/dist/domains/visual-accessibility/services/index.d.ts +1 -0
- package/v3/dist/domains/visual-accessibility/services/index.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/services/index.js +1 -0
- package/v3/dist/domains/visual-accessibility/services/index.js.map +1 -1
- package/v3/dist/init/enhancements/claude-flow-adapter.d.ts +84 -0
- package/v3/dist/init/enhancements/claude-flow-adapter.d.ts.map +1 -0
- package/v3/dist/init/enhancements/claude-flow-adapter.js +250 -0
- package/v3/dist/init/enhancements/claude-flow-adapter.js.map +1 -0
- package/v3/dist/init/enhancements/detector.d.ts +10 -0
- package/v3/dist/init/enhancements/detector.d.ts.map +1 -0
- package/v3/dist/init/enhancements/detector.js +87 -0
- package/v3/dist/init/enhancements/detector.js.map +1 -0
- package/v3/dist/init/enhancements/index.d.ts +13 -0
- package/v3/dist/init/enhancements/index.d.ts.map +1 -0
- package/v3/dist/init/enhancements/index.js +25 -0
- package/v3/dist/init/enhancements/index.js.map +1 -0
- package/v3/dist/init/enhancements/types.d.ts +93 -0
- package/v3/dist/init/enhancements/types.d.ts.map +1 -0
- package/v3/dist/init/enhancements/types.js +6 -0
- package/v3/dist/init/enhancements/types.js.map +1 -0
- package/v3/dist/init/index.d.ts +8 -0
- package/v3/dist/init/index.d.ts.map +1 -1
- package/v3/dist/init/index.js +4 -0
- package/v3/dist/init/index.js.map +1 -1
- package/v3/dist/init/migration/config-migrator.d.ts +31 -0
- package/v3/dist/init/migration/config-migrator.d.ts.map +1 -0
- package/v3/dist/init/migration/config-migrator.js +133 -0
- package/v3/dist/init/migration/config-migrator.js.map +1 -0
- package/v3/dist/init/migration/data-migrator.d.ts +72 -0
- package/v3/dist/init/migration/data-migrator.d.ts.map +1 -0
- package/v3/dist/init/migration/data-migrator.js +233 -0
- package/v3/dist/init/migration/data-migrator.js.map +1 -0
- package/v3/dist/init/migration/detector.d.ts +44 -0
- package/v3/dist/init/migration/detector.d.ts.map +1 -0
- package/v3/dist/init/migration/detector.js +106 -0
- package/v3/dist/init/migration/detector.js.map +1 -0
- package/v3/dist/init/migration/index.d.ts +8 -0
- package/v3/dist/init/migration/index.d.ts.map +1 -0
- package/v3/dist/init/migration/index.js +8 -0
- package/v3/dist/init/migration/index.js.map +1 -0
- package/v3/dist/init/orchestrator.d.ts +68 -0
- package/v3/dist/init/orchestrator.d.ts.map +1 -0
- package/v3/dist/init/orchestrator.js +239 -0
- package/v3/dist/init/orchestrator.js.map +1 -0
- package/v3/dist/init/phases/01-detection.d.ts +30 -0
- package/v3/dist/init/phases/01-detection.d.ts.map +1 -0
- package/v3/dist/init/phases/01-detection.js +143 -0
- package/v3/dist/init/phases/01-detection.js.map +1 -0
- package/v3/dist/init/phases/02-analysis.d.ts +18 -0
- package/v3/dist/init/phases/02-analysis.d.ts.map +1 -0
- package/v3/dist/init/phases/02-analysis.js +28 -0
- package/v3/dist/init/phases/02-analysis.js.map +1 -0
- package/v3/dist/init/phases/03-configuration.d.ts +26 -0
- package/v3/dist/init/phases/03-configuration.d.ts.map +1 -0
- package/v3/dist/init/phases/03-configuration.js +98 -0
- package/v3/dist/init/phases/03-configuration.js.map +1 -0
- package/v3/dist/init/phases/04-database.d.ts +22 -0
- package/v3/dist/init/phases/04-database.d.ts.map +1 -0
- package/v3/dist/init/phases/04-database.js +88 -0
- package/v3/dist/init/phases/04-database.js.map +1 -0
- package/v3/dist/init/phases/05-learning.d.ts +28 -0
- package/v3/dist/init/phases/05-learning.d.ts.map +1 -0
- package/v3/dist/init/phases/05-learning.js +98 -0
- package/v3/dist/init/phases/05-learning.js.map +1 -0
- package/v3/dist/init/phases/06-code-intelligence.d.ts +33 -0
- package/v3/dist/init/phases/06-code-intelligence.d.ts.map +1 -0
- package/v3/dist/init/phases/06-code-intelligence.js +115 -0
- package/v3/dist/init/phases/06-code-intelligence.js.map +1 -0
- package/v3/dist/init/phases/07-hooks.d.ts +27 -0
- package/v3/dist/init/phases/07-hooks.d.ts.map +1 -0
- package/v3/dist/init/phases/07-hooks.js +209 -0
- package/v3/dist/init/phases/07-hooks.js.map +1 -0
- package/v3/dist/init/phases/08-mcp.d.ts +22 -0
- package/v3/dist/init/phases/08-mcp.d.ts.map +1 -0
- package/v3/dist/init/phases/08-mcp.js +62 -0
- package/v3/dist/init/phases/08-mcp.js.map +1 -0
- package/v3/dist/init/phases/09-assets.d.ts +23 -0
- package/v3/dist/init/phases/09-assets.d.ts.map +1 -0
- package/v3/dist/init/phases/09-assets.js +82 -0
- package/v3/dist/init/phases/09-assets.js.map +1 -0
- package/v3/dist/init/phases/10-workers.d.ts +23 -0
- package/v3/dist/init/phases/10-workers.d.ts.map +1 -0
- package/v3/dist/init/phases/10-workers.js +111 -0
- package/v3/dist/init/phases/10-workers.js.map +1 -0
- package/v3/dist/init/phases/11-claude-md.d.ts +26 -0
- package/v3/dist/init/phases/11-claude-md.d.ts.map +1 -0
- package/v3/dist/init/phases/11-claude-md.js +121 -0
- package/v3/dist/init/phases/11-claude-md.js.map +1 -0
- package/v3/dist/init/phases/12-verification.d.ts +38 -0
- package/v3/dist/init/phases/12-verification.d.ts.map +1 -0
- package/v3/dist/init/phases/12-verification.js +187 -0
- package/v3/dist/init/phases/12-verification.js.map +1 -0
- package/v3/dist/init/phases/index.d.ts +46 -0
- package/v3/dist/init/phases/index.d.ts.map +1 -0
- package/v3/dist/init/phases/index.js +64 -0
- package/v3/dist/init/phases/index.js.map +1 -0
- package/v3/dist/init/phases/phase-interface.d.ts +193 -0
- package/v3/dist/init/phases/phase-interface.d.ts.map +1 -0
- package/v3/dist/init/phases/phase-interface.js +119 -0
- package/v3/dist/init/phases/phase-interface.js.map +1 -0
- package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts +9 -3
- package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts.map +1 -1
- package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js +103 -26
- package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js.map +1 -1
- package/v3/dist/integrations/coherence/coherence-service.d.ts +323 -0
- package/v3/dist/integrations/coherence/coherence-service.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/coherence-service.js +799 -0
- package/v3/dist/integrations/coherence/coherence-service.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/category-adapter.d.ts +170 -0
- package/v3/dist/integrations/coherence/engines/category-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/category-adapter.js +403 -0
- package/v3/dist/integrations/coherence/engines/category-adapter.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/causal-adapter.d.ts +159 -0
- package/v3/dist/integrations/coherence/engines/causal-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/causal-adapter.js +348 -0
- package/v3/dist/integrations/coherence/engines/causal-adapter.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/cohomology-adapter.d.ts +174 -0
- package/v3/dist/integrations/coherence/engines/cohomology-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/cohomology-adapter.js +401 -0
- package/v3/dist/integrations/coherence/engines/cohomology-adapter.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/homotopy-adapter.d.ts +201 -0
- package/v3/dist/integrations/coherence/engines/homotopy-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/homotopy-adapter.js +324 -0
- package/v3/dist/integrations/coherence/engines/homotopy-adapter.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/index.d.ts +20 -0
- package/v3/dist/integrations/coherence/engines/index.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/index.js +26 -0
- package/v3/dist/integrations/coherence/engines/index.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/spectral-adapter.d.ts +193 -0
- package/v3/dist/integrations/coherence/engines/spectral-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/spectral-adapter.js +476 -0
- package/v3/dist/integrations/coherence/engines/spectral-adapter.js.map +1 -0
- package/v3/dist/integrations/coherence/engines/witness-adapter.d.ts +175 -0
- package/v3/dist/integrations/coherence/engines/witness-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/engines/witness-adapter.js +377 -0
- package/v3/dist/integrations/coherence/engines/witness-adapter.js.map +1 -0
- package/v3/dist/integrations/coherence/index.d.ts +84 -0
- package/v3/dist/integrations/coherence/index.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/index.js +114 -0
- package/v3/dist/integrations/coherence/index.js.map +1 -0
- package/v3/dist/integrations/coherence/threshold-tuner.d.ts +396 -0
- package/v3/dist/integrations/coherence/threshold-tuner.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/threshold-tuner.js +538 -0
- package/v3/dist/integrations/coherence/threshold-tuner.js.map +1 -0
- package/v3/dist/integrations/coherence/types.d.ts +879 -0
- package/v3/dist/integrations/coherence/types.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/types.js +134 -0
- package/v3/dist/integrations/coherence/types.js.map +1 -0
- package/v3/dist/integrations/coherence/wasm-loader.d.ts +351 -0
- package/v3/dist/integrations/coherence/wasm-loader.d.ts.map +1 -0
- package/v3/dist/integrations/coherence/wasm-loader.js +842 -0
- package/v3/dist/integrations/coherence/wasm-loader.js.map +1 -0
- package/v3/dist/integrations/embeddings/base/EmbeddingGenerator.d.ts.map +1 -1
- package/v3/dist/integrations/embeddings/base/EmbeddingGenerator.js +1 -0
- package/v3/dist/integrations/embeddings/base/EmbeddingGenerator.js.map +1 -1
- package/v3/dist/integrations/embeddings/base/types.d.ts +1 -1
- package/v3/dist/integrations/embeddings/base/types.d.ts.map +1 -1
- package/v3/dist/integrations/embeddings/cache/EmbeddingCache.d.ts.map +1 -1
- package/v3/dist/integrations/embeddings/cache/EmbeddingCache.js +1 -0
- package/v3/dist/integrations/embeddings/cache/EmbeddingCache.js.map +1 -1
- package/v3/dist/integrations/embeddings/index/HNSWIndex.d.ts.map +1 -1
- package/v3/dist/integrations/embeddings/index/HNSWIndex.js +4 -1
- package/v3/dist/integrations/embeddings/index/HNSWIndex.js.map +1 -1
- package/v3/dist/kernel/interfaces.d.ts +8 -1
- package/v3/dist/kernel/interfaces.d.ts.map +1 -1
- package/v3/dist/learning/aqe-learning-engine.d.ts +272 -0
- package/v3/dist/learning/aqe-learning-engine.d.ts.map +1 -0
- package/v3/dist/learning/aqe-learning-engine.js +708 -0
- package/v3/dist/learning/aqe-learning-engine.js.map +1 -0
- package/v3/dist/learning/causal-verifier.d.ts +244 -0
- package/v3/dist/learning/causal-verifier.d.ts.map +1 -0
- package/v3/dist/learning/causal-verifier.js +300 -0
- package/v3/dist/learning/causal-verifier.js.map +1 -0
- package/v3/dist/learning/experience-capture.d.ts +266 -0
- package/v3/dist/learning/experience-capture.d.ts.map +1 -0
- package/v3/dist/learning/experience-capture.js +647 -0
- package/v3/dist/learning/experience-capture.js.map +1 -0
- package/v3/dist/learning/index.d.ts +8 -0
- package/v3/dist/learning/index.d.ts.map +1 -1
- package/v3/dist/learning/index.js +16 -0
- package/v3/dist/learning/index.js.map +1 -1
- package/v3/dist/learning/memory-auditor.d.ts +235 -0
- package/v3/dist/learning/memory-auditor.d.ts.map +1 -0
- package/v3/dist/learning/memory-auditor.js +478 -0
- package/v3/dist/learning/memory-auditor.js.map +1 -0
- package/v3/dist/learning/pattern-store.d.ts.map +1 -1
- package/v3/dist/learning/pattern-store.js +27 -6
- package/v3/dist/learning/pattern-store.js.map +1 -1
- package/v3/dist/learning/qe-patterns.d.ts +15 -1
- package/v3/dist/learning/qe-patterns.d.ts.map +1 -1
- package/v3/dist/learning/qe-patterns.js +26 -5
- package/v3/dist/learning/qe-patterns.js.map +1 -1
- package/v3/dist/learning/qe-reasoning-bank.d.ts +38 -2
- package/v3/dist/learning/qe-reasoning-bank.d.ts.map +1 -1
- package/v3/dist/learning/qe-reasoning-bank.js +86 -4
- package/v3/dist/learning/qe-reasoning-bank.js.map +1 -1
- package/v3/dist/learning/real-qe-reasoning-bank.d.ts +32 -2
- package/v3/dist/learning/real-qe-reasoning-bank.d.ts.map +1 -1
- package/v3/dist/learning/real-qe-reasoning-bank.js +61 -6
- package/v3/dist/learning/real-qe-reasoning-bank.js.map +1 -1
- package/v3/dist/learning/token-tracker.d.ts.map +1 -1
- package/v3/dist/learning/token-tracker.js +5 -2
- package/v3/dist/learning/token-tracker.js.map +1 -1
- package/v3/dist/mcp/bundle.js +6698 -303
- package/v3/dist/mcp/tools/coherence/audit.d.ts +107 -0
- package/v3/dist/mcp/tools/coherence/audit.d.ts.map +1 -0
- package/v3/dist/mcp/tools/coherence/audit.js +236 -0
- package/v3/dist/mcp/tools/coherence/audit.js.map +1 -0
- package/v3/dist/mcp/tools/coherence/check.d.ts +106 -0
- package/v3/dist/mcp/tools/coherence/check.d.ts.map +1 -0
- package/v3/dist/mcp/tools/coherence/check.js +205 -0
- package/v3/dist/mcp/tools/coherence/check.js.map +1 -0
- package/v3/dist/mcp/tools/coherence/collapse.d.ts +123 -0
- package/v3/dist/mcp/tools/coherence/collapse.d.ts.map +1 -0
- package/v3/dist/mcp/tools/coherence/collapse.js +279 -0
- package/v3/dist/mcp/tools/coherence/collapse.js.map +1 -0
- package/v3/dist/mcp/tools/coherence/consensus.d.ts +100 -0
- package/v3/dist/mcp/tools/coherence/consensus.d.ts.map +1 -0
- package/v3/dist/mcp/tools/coherence/consensus.js +201 -0
- package/v3/dist/mcp/tools/coherence/consensus.js.map +1 -0
- package/v3/dist/mcp/tools/coherence/index.d.ts +31 -0
- package/v3/dist/mcp/tools/coherence/index.d.ts.map +1 -0
- package/v3/dist/mcp/tools/coherence/index.js +42 -0
- package/v3/dist/mcp/tools/coherence/index.js.map +1 -0
- package/v3/dist/mcp/tools/contract-testing/validate.d.ts +1 -1
- package/v3/dist/mcp/tools/contract-testing/validate.d.ts.map +1 -1
- package/v3/dist/mcp/tools/contract-testing/validate.js +66 -0
- package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
- package/v3/dist/mcp/tools/index.d.ts +6 -1
- package/v3/dist/mcp/tools/index.d.ts.map +1 -1
- package/v3/dist/mcp/tools/index.js +9 -1
- package/v3/dist/mcp/tools/index.js.map +1 -1
- package/v3/dist/mcp/tools/mincut/index.d.ts +1 -1
- package/v3/dist/mcp/tools/mincut/index.d.ts.map +1 -1
- package/v3/dist/mcp/tools/mincut/index.js.map +1 -1
- package/v3/dist/mcp/tools/registry.d.ts +4 -0
- package/v3/dist/mcp/tools/registry.d.ts.map +1 -1
- package/v3/dist/mcp/tools/registry.js +5 -0
- package/v3/dist/mcp/tools/registry.js.map +1 -1
- package/v3/dist/mcp/types.d.ts +1 -1
- package/v3/dist/mcp/types.d.ts.map +1 -1
- package/v3/dist/shared/utils/safe-expression-evaluator.d.ts +61 -0
- package/v3/dist/shared/utils/safe-expression-evaluator.d.ts.map +1 -0
- package/v3/dist/shared/utils/safe-expression-evaluator.js +365 -0
- package/v3/dist/shared/utils/safe-expression-evaluator.js.map +1 -0
- package/v3/dist/strange-loop/belief-reconciler.d.ts +357 -0
- package/v3/dist/strange-loop/belief-reconciler.d.ts.map +1 -0
- package/v3/dist/strange-loop/belief-reconciler.js +696 -0
- package/v3/dist/strange-loop/belief-reconciler.js.map +1 -0
- package/v3/dist/strange-loop/index.d.ts +1 -0
- package/v3/dist/strange-loop/index.d.ts.map +1 -1
- package/v3/dist/strange-loop/index.js +2 -0
- package/v3/dist/strange-loop/index.js.map +1 -1
- package/v3/dist/strange-loop/strange-loop.d.ts +177 -5
- package/v3/dist/strange-loop/strange-loop.d.ts.map +1 -1
- package/v3/dist/strange-loop/strange-loop.js +452 -9
- package/v3/dist/strange-loop/strange-loop.js.map +1 -1
- package/v3/dist/strange-loop/types.d.ts +205 -1
- package/v3/dist/strange-loop/types.d.ts.map +1 -1
- package/v3/dist/strange-loop/types.js +5 -0
- package/v3/dist/strange-loop/types.js.map +1 -1
- package/v3/dist/test-scheduling/executors/vitest-executor.d.ts.map +1 -1
- package/v3/dist/test-scheduling/executors/vitest-executor.js +7 -2
- package/v3/dist/test-scheduling/executors/vitest-executor.js.map +1 -1
- package/v3/dist/workflows/browser/workflow-loader.d.ts +1 -0
- package/v3/dist/workflows/browser/workflow-loader.d.ts.map +1 -1
- package/v3/dist/workflows/browser/workflow-loader.js +11 -16
- package/v3/dist/workflows/browser/workflow-loader.js.map +1 -1
- package/v3/package.json +5 -1
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pretrain Bridge
|
|
3
|
+
* Connects AQE to Claude Flow's codebase analysis pipeline
|
|
4
|
+
*
|
|
5
|
+
* When Claude Flow is available:
|
|
6
|
+
* - Uses 4-step pretrain pipeline for codebase understanding
|
|
7
|
+
* - Generates optimized agent configurations
|
|
8
|
+
* - Transfers learned patterns
|
|
9
|
+
*
|
|
10
|
+
* When not available:
|
|
11
|
+
* - Uses AQE's built-in project analyzer
|
|
12
|
+
* - Generates basic agent configurations
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Pretrain Bridge for codebase analysis
|
|
16
|
+
*/
|
|
17
|
+
export class PretrainBridge {
|
|
18
|
+
options;
|
|
19
|
+
claudeFlowAvailable = false;
|
|
20
|
+
analysisCache = new Map();
|
|
21
|
+
constructor(options) {
|
|
22
|
+
this.options = options;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Initialize the bridge
|
|
26
|
+
*/
|
|
27
|
+
async initialize() {
|
|
28
|
+
this.claudeFlowAvailable = await this.checkClaudeFlow();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Check if Claude Flow is available
|
|
32
|
+
*/
|
|
33
|
+
async checkClaudeFlow() {
|
|
34
|
+
try {
|
|
35
|
+
const { execSync } = await import('child_process');
|
|
36
|
+
execSync('npx @claude-flow/cli@latest hooks pretrain --help 2>/dev/null', {
|
|
37
|
+
encoding: 'utf-8',
|
|
38
|
+
timeout: 5000,
|
|
39
|
+
cwd: this.options.projectRoot,
|
|
40
|
+
});
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Run pretrain analysis
|
|
49
|
+
*/
|
|
50
|
+
async analyze(path, depth = 'medium') {
|
|
51
|
+
const targetPath = path || this.options.projectRoot;
|
|
52
|
+
const cacheKey = `${targetPath}:${depth}`;
|
|
53
|
+
// Check cache
|
|
54
|
+
const cached = this.analysisCache.get(cacheKey);
|
|
55
|
+
if (cached) {
|
|
56
|
+
return cached;
|
|
57
|
+
}
|
|
58
|
+
if (this.claudeFlowAvailable) {
|
|
59
|
+
try {
|
|
60
|
+
const { execSync } = await import('child_process');
|
|
61
|
+
const result = execSync(`npx @claude-flow/cli@latest hooks pretrain --path ${this.escapeArg(targetPath)} --depth ${depth} 2>/dev/null`, { encoding: 'utf-8', timeout: 120000, cwd: this.options.projectRoot });
|
|
62
|
+
// Try to parse JSON result
|
|
63
|
+
try {
|
|
64
|
+
const parsed = JSON.parse(result);
|
|
65
|
+
const pretrainResult = {
|
|
66
|
+
success: true,
|
|
67
|
+
repositoryPath: targetPath,
|
|
68
|
+
depth,
|
|
69
|
+
analysis: parsed.analysis || parsed,
|
|
70
|
+
agentConfigs: parsed.agentConfigs,
|
|
71
|
+
};
|
|
72
|
+
this.analysisCache.set(cacheKey, pretrainResult);
|
|
73
|
+
return pretrainResult;
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
// Raw output - still successful
|
|
77
|
+
return {
|
|
78
|
+
success: true,
|
|
79
|
+
repositoryPath: targetPath,
|
|
80
|
+
depth,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
// Fall through to local analysis
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// Local analysis using AQE project analyzer
|
|
89
|
+
return this.localAnalyze(targetPath, depth);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Generate agent configurations from analysis
|
|
93
|
+
*/
|
|
94
|
+
async generateAgentConfigs(format = 'yaml') {
|
|
95
|
+
if (this.claudeFlowAvailable) {
|
|
96
|
+
try {
|
|
97
|
+
const { execSync } = await import('child_process');
|
|
98
|
+
const result = execSync(`npx @claude-flow/cli@latest hooks build-agents --format ${format} 2>/dev/null`, { encoding: 'utf-8', timeout: 60000, cwd: this.options.projectRoot });
|
|
99
|
+
try {
|
|
100
|
+
return JSON.parse(result);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
return [];
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
// Fall through to local generation
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
// Generate basic QE agent configs
|
|
111
|
+
return this.generateLocalAgentConfigs();
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Transfer patterns from another project
|
|
115
|
+
*/
|
|
116
|
+
async transferPatterns(sourcePath, minConfidence = 0.7) {
|
|
117
|
+
if (this.claudeFlowAvailable) {
|
|
118
|
+
try {
|
|
119
|
+
const { execSync } = await import('child_process');
|
|
120
|
+
const result = execSync(`npx @claude-flow/cli@latest hooks transfer --source-path ${this.escapeArg(sourcePath)} --min-confidence ${minConfidence} 2>/dev/null`, { encoding: 'utf-8', timeout: 60000, cwd: this.options.projectRoot });
|
|
121
|
+
const transferredMatch = result.match(/transferred[:\s]+(\d+)/i);
|
|
122
|
+
const skippedMatch = result.match(/skipped[:\s]+(\d+)/i);
|
|
123
|
+
return {
|
|
124
|
+
transferred: transferredMatch ? parseInt(transferredMatch[1]) : 0,
|
|
125
|
+
skipped: skippedMatch ? parseInt(skippedMatch[1]) : 0,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
// Fall through
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return { transferred: 0, skipped: 0 };
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Check if Claude Flow is available
|
|
136
|
+
*/
|
|
137
|
+
isClaudeFlowAvailable() {
|
|
138
|
+
return this.claudeFlowAvailable;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Escape shell argument using $'...' syntax for complete safety
|
|
142
|
+
* This ANSI-C quoting handles ALL special characters including backslashes
|
|
143
|
+
* CodeQL: js/incomplete-sanitization - Fixed by escaping backslashes AND quotes
|
|
144
|
+
*/
|
|
145
|
+
escapeArg(arg) {
|
|
146
|
+
// Escape backslashes first, then single quotes, using ANSI-C quoting
|
|
147
|
+
// $'...' syntax interprets escape sequences like \\ and \'
|
|
148
|
+
const escaped = arg
|
|
149
|
+
.replace(/\\/g, '\\\\') // Escape backslashes first
|
|
150
|
+
.replace(/'/g, "\\'"); // Then escape single quotes
|
|
151
|
+
return "$'" + escaped + "'";
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Local analysis using file system scanning
|
|
155
|
+
*/
|
|
156
|
+
async localAnalyze(targetPath, depth) {
|
|
157
|
+
try {
|
|
158
|
+
const glob = await import('fast-glob');
|
|
159
|
+
const { existsSync, readFileSync } = await import('fs');
|
|
160
|
+
const { join } = await import('path');
|
|
161
|
+
// Scan patterns based on depth
|
|
162
|
+
const patterns = depth === 'shallow'
|
|
163
|
+
? ['*.ts', '*.js', '*.json']
|
|
164
|
+
: depth === 'medium'
|
|
165
|
+
? ['**/*.ts', '**/*.js', '**/*.json', '**/*.py']
|
|
166
|
+
: ['**/*'];
|
|
167
|
+
const ignore = ['node_modules/**', 'dist/**', 'coverage/**', '.git/**'];
|
|
168
|
+
const files = await glob.default(patterns, {
|
|
169
|
+
cwd: targetPath,
|
|
170
|
+
ignore,
|
|
171
|
+
onlyFiles: true,
|
|
172
|
+
});
|
|
173
|
+
// Detect languages
|
|
174
|
+
const languages = new Set();
|
|
175
|
+
const frameworks = new Set();
|
|
176
|
+
for (const file of files.slice(0, 100)) {
|
|
177
|
+
if (file.endsWith('.ts') || file.endsWith('.tsx'))
|
|
178
|
+
languages.add('typescript');
|
|
179
|
+
if (file.endsWith('.js') || file.endsWith('.jsx'))
|
|
180
|
+
languages.add('javascript');
|
|
181
|
+
if (file.endsWith('.py'))
|
|
182
|
+
languages.add('python');
|
|
183
|
+
if (file.endsWith('.go'))
|
|
184
|
+
languages.add('go');
|
|
185
|
+
if (file.endsWith('.rs'))
|
|
186
|
+
languages.add('rust');
|
|
187
|
+
}
|
|
188
|
+
// Check package.json for frameworks
|
|
189
|
+
const packageJsonPath = join(targetPath, 'package.json');
|
|
190
|
+
if (existsSync(packageJsonPath)) {
|
|
191
|
+
try {
|
|
192
|
+
const pkg = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
|
|
193
|
+
const deps = { ...pkg.dependencies, ...pkg.devDependencies };
|
|
194
|
+
if (deps.react)
|
|
195
|
+
frameworks.add('react');
|
|
196
|
+
if (deps.vue)
|
|
197
|
+
frameworks.add('vue');
|
|
198
|
+
if (deps.angular)
|
|
199
|
+
frameworks.add('angular');
|
|
200
|
+
if (deps.vitest)
|
|
201
|
+
frameworks.add('vitest');
|
|
202
|
+
if (deps.jest)
|
|
203
|
+
frameworks.add('jest');
|
|
204
|
+
if (deps.playwright)
|
|
205
|
+
frameworks.add('playwright');
|
|
206
|
+
if (deps.express)
|
|
207
|
+
frameworks.add('express');
|
|
208
|
+
if (deps.fastify)
|
|
209
|
+
frameworks.add('fastify');
|
|
210
|
+
}
|
|
211
|
+
catch {
|
|
212
|
+
// Ignore parse errors
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
const result = {
|
|
216
|
+
success: true,
|
|
217
|
+
repositoryPath: targetPath,
|
|
218
|
+
depth,
|
|
219
|
+
analysis: {
|
|
220
|
+
languages: Array.from(languages),
|
|
221
|
+
frameworks: Array.from(frameworks),
|
|
222
|
+
patterns: [],
|
|
223
|
+
complexity: files.length > 500 ? 3 : files.length > 100 ? 2 : 1,
|
|
224
|
+
},
|
|
225
|
+
};
|
|
226
|
+
this.analysisCache.set(`${targetPath}:${depth}`, result);
|
|
227
|
+
return result;
|
|
228
|
+
}
|
|
229
|
+
catch (error) {
|
|
230
|
+
return {
|
|
231
|
+
success: false,
|
|
232
|
+
repositoryPath: targetPath,
|
|
233
|
+
depth,
|
|
234
|
+
error: error instanceof Error ? error.message : String(error),
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Generate basic QE agent configurations
|
|
240
|
+
*/
|
|
241
|
+
generateLocalAgentConfigs() {
|
|
242
|
+
return [
|
|
243
|
+
{
|
|
244
|
+
name: 'qe-test-architect',
|
|
245
|
+
type: 'worker',
|
|
246
|
+
capabilities: ['test-generation', 'test-design'],
|
|
247
|
+
model: 'sonnet',
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
name: 'qe-coverage-specialist',
|
|
251
|
+
type: 'worker',
|
|
252
|
+
capabilities: ['coverage-analysis', 'gap-detection'],
|
|
253
|
+
model: 'haiku',
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
name: 'qe-quality-gate',
|
|
257
|
+
type: 'worker',
|
|
258
|
+
capabilities: ['quality-assessment', 'risk-scoring'],
|
|
259
|
+
model: 'sonnet',
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
name: 'qe-security-scanner',
|
|
263
|
+
type: 'worker',
|
|
264
|
+
capabilities: ['security-scanning', 'vulnerability-detection'],
|
|
265
|
+
model: 'opus',
|
|
266
|
+
},
|
|
267
|
+
];
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Create pretrain bridge
|
|
272
|
+
*/
|
|
273
|
+
export function createPretrainBridge(options) {
|
|
274
|
+
return new PretrainBridge(options);
|
|
275
|
+
}
|
|
276
|
+
//# sourceMappingURL=pretrain-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretrain-bridge.js","sourceRoot":"","sources":["../../../src/adapters/claude-flow/pretrain-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trajectory Bridge
|
|
3
|
+
* Connects AQE task execution to Claude Flow SONA trajectories
|
|
4
|
+
*
|
|
5
|
+
* When Claude Flow is available:
|
|
6
|
+
* - Records task execution steps as SONA trajectories
|
|
7
|
+
* - Enables reinforcement learning from task outcomes
|
|
8
|
+
* - Syncs with Claude Flow's intelligence layer
|
|
9
|
+
*
|
|
10
|
+
* When not available:
|
|
11
|
+
* - Stores trajectories locally in SQLite
|
|
12
|
+
* - Uses local pattern promotion (3+ successful uses)
|
|
13
|
+
*/
|
|
14
|
+
import type { Trajectory } from './types.js';
|
|
15
|
+
/**
|
|
16
|
+
* Trajectory Bridge for SONA integration
|
|
17
|
+
*/
|
|
18
|
+
export declare class TrajectoryBridge {
|
|
19
|
+
private options;
|
|
20
|
+
private claudeFlowAvailable;
|
|
21
|
+
private localTrajectories;
|
|
22
|
+
constructor(options: {
|
|
23
|
+
projectRoot: string;
|
|
24
|
+
});
|
|
25
|
+
/**
|
|
26
|
+
* Initialize the bridge
|
|
27
|
+
*/
|
|
28
|
+
initialize(): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Check if Claude Flow is available
|
|
31
|
+
*/
|
|
32
|
+
private checkClaudeFlow;
|
|
33
|
+
/**
|
|
34
|
+
* Start a new trajectory
|
|
35
|
+
*/
|
|
36
|
+
startTrajectory(task: string, agent?: string): Promise<string>;
|
|
37
|
+
/**
|
|
38
|
+
* Record a trajectory step
|
|
39
|
+
*/
|
|
40
|
+
recordStep(trajectoryId: string, action: string, result?: string, quality?: number): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* End a trajectory
|
|
43
|
+
*/
|
|
44
|
+
endTrajectory(trajectoryId: string, success: boolean, feedback?: string): Promise<Trajectory | undefined>;
|
|
45
|
+
/**
|
|
46
|
+
* Get trajectory by ID
|
|
47
|
+
*/
|
|
48
|
+
getTrajectory(trajectoryId: string): Trajectory | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* Check if Claude Flow is available
|
|
51
|
+
*/
|
|
52
|
+
isClaudeFlowAvailable(): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Persist trajectory to local SQLite
|
|
55
|
+
*/
|
|
56
|
+
private persistTrajectory;
|
|
57
|
+
/**
|
|
58
|
+
* Escape shell argument using $'...' syntax for complete safety
|
|
59
|
+
* This ANSI-C quoting handles ALL special characters including backslashes
|
|
60
|
+
* CodeQL: js/incomplete-sanitization - Fixed by escaping backslashes AND quotes
|
|
61
|
+
*/
|
|
62
|
+
private escapeArg;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Create trajectory bridge
|
|
66
|
+
*/
|
|
67
|
+
export declare function createTrajectoryBridge(options: {
|
|
68
|
+
projectRoot: string;
|
|
69
|
+
}): TrajectoryBridge;
|
|
70
|
+
//# sourceMappingURL=trajectory-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trajectory-bridge.d.ts","sourceRoot":"","sources":["../../../src/adapters/claude-flow/trajectory-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,YAAY,CAAC;AAE7D;;GAEG;AACH,qBAAa,gBAAgB;IAIf,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,iBAAiB,CAAsC;gBAE3C,OAAO,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE;IAEpD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;YACW,eAAe;IAc7B;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkCpE;;OAEG;IACG,UAAU,CACd,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IA8BhB;;OAEG;IACG,aAAa,CACjB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IA+BlC;;OAEG;IACH,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAI3D;;OAEG;IACH,qBAAqB,IAAI,OAAO;IAIhC;;OAEG;YACW,iBAAiB;IAuD/B;;;;OAIG;IACH,OAAO,CAAC,SAAS;CAQlB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,CAEzF"}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trajectory Bridge
|
|
3
|
+
* Connects AQE task execution to Claude Flow SONA trajectories
|
|
4
|
+
*
|
|
5
|
+
* When Claude Flow is available:
|
|
6
|
+
* - Records task execution steps as SONA trajectories
|
|
7
|
+
* - Enables reinforcement learning from task outcomes
|
|
8
|
+
* - Syncs with Claude Flow's intelligence layer
|
|
9
|
+
*
|
|
10
|
+
* When not available:
|
|
11
|
+
* - Stores trajectories locally in SQLite
|
|
12
|
+
* - Uses local pattern promotion (3+ successful uses)
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Trajectory Bridge for SONA integration
|
|
16
|
+
*/
|
|
17
|
+
export class TrajectoryBridge {
|
|
18
|
+
options;
|
|
19
|
+
claudeFlowAvailable = false;
|
|
20
|
+
localTrajectories = new Map();
|
|
21
|
+
constructor(options) {
|
|
22
|
+
this.options = options;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Initialize the bridge
|
|
26
|
+
*/
|
|
27
|
+
async initialize() {
|
|
28
|
+
this.claudeFlowAvailable = await this.checkClaudeFlow();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Check if Claude Flow is available
|
|
32
|
+
*/
|
|
33
|
+
async checkClaudeFlow() {
|
|
34
|
+
try {
|
|
35
|
+
const { execSync } = await import('child_process');
|
|
36
|
+
execSync('npx @claude-flow/cli@latest hooks metrics --period 1h 2>/dev/null', {
|
|
37
|
+
encoding: 'utf-8',
|
|
38
|
+
timeout: 5000,
|
|
39
|
+
cwd: this.options.projectRoot,
|
|
40
|
+
});
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Start a new trajectory
|
|
49
|
+
*/
|
|
50
|
+
async startTrajectory(task, agent) {
|
|
51
|
+
const id = `trajectory-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
52
|
+
if (this.claudeFlowAvailable) {
|
|
53
|
+
try {
|
|
54
|
+
const { execSync } = await import('child_process');
|
|
55
|
+
const agentArg = agent ? `--agent ${this.escapeArg(agent)}` : '';
|
|
56
|
+
const result = execSync(`npx @claude-flow/cli@latest hooks intelligence trajectory-start --task ${this.escapeArg(task)} ${agentArg} 2>/dev/null`, { encoding: 'utf-8', timeout: 10000, cwd: this.options.projectRoot });
|
|
57
|
+
// Parse trajectory ID from result
|
|
58
|
+
const match = result.match(/trajectoryId[:\s]+["']?([^"'\s,}]+)/i);
|
|
59
|
+
if (match?.[1]) {
|
|
60
|
+
return match[1];
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
// Fall through to local storage
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
// Store locally
|
|
68
|
+
this.localTrajectories.set(id, {
|
|
69
|
+
id,
|
|
70
|
+
task,
|
|
71
|
+
agent,
|
|
72
|
+
steps: [],
|
|
73
|
+
startedAt: Date.now(),
|
|
74
|
+
});
|
|
75
|
+
return id;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Record a trajectory step
|
|
79
|
+
*/
|
|
80
|
+
async recordStep(trajectoryId, action, result, quality) {
|
|
81
|
+
if (this.claudeFlowAvailable) {
|
|
82
|
+
try {
|
|
83
|
+
const { execSync } = await import('child_process');
|
|
84
|
+
const resultArg = result ? `--result ${this.escapeArg(result)}` : '';
|
|
85
|
+
const qualityArg = quality !== undefined ? `--quality ${quality}` : '';
|
|
86
|
+
execSync(`npx @claude-flow/cli@latest hooks intelligence trajectory-step --trajectory-id ${this.escapeArg(trajectoryId)} --action ${this.escapeArg(action)} ${resultArg} ${qualityArg} 2>/dev/null`, { encoding: 'utf-8', timeout: 10000, cwd: this.options.projectRoot });
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
// Fall through to local storage
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// Store locally
|
|
94
|
+
const trajectory = this.localTrajectories.get(trajectoryId);
|
|
95
|
+
if (trajectory) {
|
|
96
|
+
trajectory.steps.push({
|
|
97
|
+
id: `step-${trajectory.steps.length + 1}`,
|
|
98
|
+
action,
|
|
99
|
+
result,
|
|
100
|
+
quality,
|
|
101
|
+
timestamp: Date.now(),
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* End a trajectory
|
|
107
|
+
*/
|
|
108
|
+
async endTrajectory(trajectoryId, success, feedback) {
|
|
109
|
+
if (this.claudeFlowAvailable) {
|
|
110
|
+
try {
|
|
111
|
+
const { execSync } = await import('child_process');
|
|
112
|
+
const feedbackArg = feedback ? `--feedback ${this.escapeArg(feedback)}` : '';
|
|
113
|
+
execSync(`npx @claude-flow/cli@latest hooks intelligence trajectory-end --trajectory-id ${this.escapeArg(trajectoryId)} --success ${success} ${feedbackArg} 2>/dev/null`, { encoding: 'utf-8', timeout: 10000, cwd: this.options.projectRoot });
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
// Continue to return local trajectory
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
// Complete local trajectory
|
|
120
|
+
const trajectory = this.localTrajectories.get(trajectoryId);
|
|
121
|
+
if (trajectory) {
|
|
122
|
+
trajectory.success = success;
|
|
123
|
+
trajectory.feedback = feedback;
|
|
124
|
+
trajectory.completedAt = Date.now();
|
|
125
|
+
// Persist to SQLite for local learning
|
|
126
|
+
await this.persistTrajectory(trajectory);
|
|
127
|
+
return trajectory;
|
|
128
|
+
}
|
|
129
|
+
return undefined;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Get trajectory by ID
|
|
133
|
+
*/
|
|
134
|
+
getTrajectory(trajectoryId) {
|
|
135
|
+
return this.localTrajectories.get(trajectoryId);
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Check if Claude Flow is available
|
|
139
|
+
*/
|
|
140
|
+
isClaudeFlowAvailable() {
|
|
141
|
+
return this.claudeFlowAvailable;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Persist trajectory to local SQLite
|
|
145
|
+
*/
|
|
146
|
+
async persistTrajectory(trajectory) {
|
|
147
|
+
try {
|
|
148
|
+
const { join } = await import('path');
|
|
149
|
+
const { existsSync, mkdirSync } = await import('fs');
|
|
150
|
+
const { createRequire } = await import('module');
|
|
151
|
+
const require = createRequire(import.meta.url);
|
|
152
|
+
const Database = require('better-sqlite3');
|
|
153
|
+
const dbPath = join(this.options.projectRoot, '.agentic-qe', 'trajectories.db');
|
|
154
|
+
const dir = join(this.options.projectRoot, '.agentic-qe');
|
|
155
|
+
if (!existsSync(dir)) {
|
|
156
|
+
mkdirSync(dir, { recursive: true });
|
|
157
|
+
}
|
|
158
|
+
const db = new Database(dbPath);
|
|
159
|
+
// Create table if needed
|
|
160
|
+
db.exec(`
|
|
161
|
+
CREATE TABLE IF NOT EXISTS trajectories (
|
|
162
|
+
id TEXT PRIMARY KEY,
|
|
163
|
+
task TEXT NOT NULL,
|
|
164
|
+
agent TEXT,
|
|
165
|
+
steps TEXT NOT NULL,
|
|
166
|
+
success INTEGER,
|
|
167
|
+
feedback TEXT,
|
|
168
|
+
started_at INTEGER NOT NULL,
|
|
169
|
+
completed_at INTEGER,
|
|
170
|
+
created_at INTEGER DEFAULT (strftime('%s', 'now') * 1000)
|
|
171
|
+
);
|
|
172
|
+
CREATE INDEX IF NOT EXISTS idx_trajectories_success ON trajectories(success);
|
|
173
|
+
`);
|
|
174
|
+
// Insert trajectory
|
|
175
|
+
db.prepare(`
|
|
176
|
+
INSERT OR REPLACE INTO trajectories (id, task, agent, steps, success, feedback, started_at, completed_at)
|
|
177
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
|
178
|
+
`).run(trajectory.id, trajectory.task, trajectory.agent || null, JSON.stringify(trajectory.steps), trajectory.success ? 1 : 0, trajectory.feedback || null, trajectory.startedAt, trajectory.completedAt || null);
|
|
179
|
+
db.close();
|
|
180
|
+
}
|
|
181
|
+
catch {
|
|
182
|
+
// Silently fail - persistence is optional
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Escape shell argument using $'...' syntax for complete safety
|
|
187
|
+
* This ANSI-C quoting handles ALL special characters including backslashes
|
|
188
|
+
* CodeQL: js/incomplete-sanitization - Fixed by escaping backslashes AND quotes
|
|
189
|
+
*/
|
|
190
|
+
escapeArg(arg) {
|
|
191
|
+
// Escape backslashes first, then single quotes, using ANSI-C quoting
|
|
192
|
+
// $'...' syntax interprets escape sequences like \\ and \'
|
|
193
|
+
const escaped = arg
|
|
194
|
+
.replace(/\\/g, '\\\\') // Escape backslashes first
|
|
195
|
+
.replace(/'/g, "\\'"); // Then escape single quotes
|
|
196
|
+
return "$'" + escaped + "'";
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Create trajectory bridge
|
|
201
|
+
*/
|
|
202
|
+
export function createTrajectoryBridge(options) {
|
|
203
|
+
return new TrajectoryBridge(options);
|
|
204
|
+
}
|
|
205
|
+
//# sourceMappingURL=trajectory-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trajectory-bridge.js","sourceRoot":"","sources":["../../../src/adapters/claude-flow/trajectory-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Claude Flow Adapter Types
|
|
3
|
+
* Interfaces for bridging AQE with Claude Flow MCP features
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Trajectory step for SONA learning
|
|
7
|
+
*/
|
|
8
|
+
export interface TrajectoryStep {
|
|
9
|
+
id: string;
|
|
10
|
+
action: string;
|
|
11
|
+
result?: string;
|
|
12
|
+
quality?: number;
|
|
13
|
+
timestamp: number;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Complete trajectory for SONA
|
|
17
|
+
*/
|
|
18
|
+
export interface Trajectory {
|
|
19
|
+
id: string;
|
|
20
|
+
task: string;
|
|
21
|
+
agent?: string;
|
|
22
|
+
steps: TrajectoryStep[];
|
|
23
|
+
success?: boolean;
|
|
24
|
+
feedback?: string;
|
|
25
|
+
startedAt: number;
|
|
26
|
+
completedAt?: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Model routing result
|
|
30
|
+
*/
|
|
31
|
+
export interface ModelRoutingResult {
|
|
32
|
+
model: 'haiku' | 'sonnet' | 'opus';
|
|
33
|
+
confidence: number;
|
|
34
|
+
reasoning?: string;
|
|
35
|
+
costEstimate?: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Model routing outcome for learning
|
|
39
|
+
*/
|
|
40
|
+
export interface ModelRoutingOutcome {
|
|
41
|
+
task: string;
|
|
42
|
+
model: 'haiku' | 'sonnet' | 'opus';
|
|
43
|
+
outcome: 'success' | 'failure' | 'escalated';
|
|
44
|
+
durationMs?: number;
|
|
45
|
+
tokenUsage?: {
|
|
46
|
+
input: number;
|
|
47
|
+
output: number;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Pretrain analysis result
|
|
52
|
+
*/
|
|
53
|
+
export interface PretrainResult {
|
|
54
|
+
success: boolean;
|
|
55
|
+
repositoryPath: string;
|
|
56
|
+
depth: 'shallow' | 'medium' | 'deep';
|
|
57
|
+
analysis?: {
|
|
58
|
+
languages: string[];
|
|
59
|
+
frameworks: string[];
|
|
60
|
+
patterns: string[];
|
|
61
|
+
complexity: number;
|
|
62
|
+
testCoverage?: number;
|
|
63
|
+
};
|
|
64
|
+
agentConfigs?: Record<string, unknown>[];
|
|
65
|
+
error?: string;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Pattern for storage/search
|
|
69
|
+
*/
|
|
70
|
+
export interface ClaudeFlowPattern {
|
|
71
|
+
id: string;
|
|
72
|
+
pattern: string;
|
|
73
|
+
type: string;
|
|
74
|
+
confidence: number;
|
|
75
|
+
metadata?: Record<string, unknown>;
|
|
76
|
+
embedding?: number[];
|
|
77
|
+
createdAt: number;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Pattern search result
|
|
81
|
+
*/
|
|
82
|
+
export interface PatternSearchResult {
|
|
83
|
+
pattern: ClaudeFlowPattern;
|
|
84
|
+
similarity: number;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Bridge availability status
|
|
88
|
+
*/
|
|
89
|
+
export interface BridgeStatus {
|
|
90
|
+
available: boolean;
|
|
91
|
+
version?: string;
|
|
92
|
+
features: {
|
|
93
|
+
trajectories: boolean;
|
|
94
|
+
modelRouting: boolean;
|
|
95
|
+
pretrain: boolean;
|
|
96
|
+
patternSearch: boolean;
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=types.d.ts.map
|