agentic-qe 3.14.3 → 3.14.5
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-coverage-specialist.md +1 -1
- package/.claude/agents/v3/qe-fleet-commander.md +1 -1
- package/.claude/agents/v3/qe-pentest-validator.md +1 -1
- package/.claude/agents/v3/qe-queen-coordinator.md +1 -1
- package/.claude/agents/v3/qe-risk-assessor.md +1 -1
- package/.claude/agents/v3/qe-root-cause-analyzer.md +1 -1
- package/.claude/agents/v3/qe-security-auditor.md +1 -1
- package/.claude/agents/v3/qe-test-architect.md +1 -1
- package/.claude/commands/aqe-costs.md +10 -10
- package/.claude/helpers/advisor-call.cjs +3 -3
- package/.claude/helpers/v3/advisor-call.cjs +3 -3
- package/.claude/skills/.validation/examples/chaos-engineering-output.example.json +1 -1
- package/.claude/skills/.validation/examples/performance-testing-output.example.json +1 -1
- package/.claude/skills/.validation/examples/security-testing-output.example.json +1 -1
- package/.claude/skills/.validation/examples/testability-scoring-output.example.json +1 -1
- package/.claude/skills/.validation/schemas/skill-eval.schema.json +4 -1
- package/.claude/skills/.validation/schemas/skill-frontmatter.schema.json +1 -1
- package/.claude/skills/.validation/schemas/skill-output.template.json +1 -1
- package/.claude/skills/.validation/templates/eval.template.yaml +1 -1
- package/.claude/skills/.validation/templates/security-testing-eval.template.yaml +1 -1
- package/.claude/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
- package/.claude/skills/.validation/test-data/sample-output.json +1 -1
- package/.claude/skills/a11y-ally/SKILL.md +1 -1
- package/.claude/skills/a11y-ally/evals/a11y-ally.yaml +1 -1
- package/.claude/skills/accessibility-testing/evals/accessibility-testing.yaml +1 -1
- package/.claude/skills/api-testing-patterns/evals/api-testing-patterns.yaml +1 -1
- package/.claude/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
- package/.claude/skills/cicd-pipeline-qe-orchestrator/evals/cicd-pipeline-qe-orchestrator.yaml +1 -1
- package/.claude/skills/compatibility-testing/evals/compatibility-testing.yaml +1 -1
- package/.claude/skills/compliance-testing/evals/compliance-testing.yaml +1 -1
- package/.claude/skills/contract-testing/evals/contract-testing.yaml +1 -1
- package/.claude/skills/database-testing/evals/database-testing.yaml +1 -1
- package/.claude/skills/enterprise-integration-testing/evals/enterprise-integration-testing.yaml +1 -1
- package/.claude/skills/localization-testing/evals/localization-testing.yaml +1 -1
- package/.claude/skills/middleware-testing-patterns/evals/middleware-testing-patterns.yaml +1 -1
- package/.claude/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
- package/.claude/skills/mutation-testing/evals/mutation-testing.yaml +1 -1
- package/.claude/skills/mutation-testing/test-data/sample-output.json +1 -1
- package/.claude/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +1 -1
- package/.claude/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +1 -1
- package/.claude/skills/n8n-security-testing/evals/n8n-security-testing.yaml +1 -1
- package/.claude/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +1 -1
- package/.claude/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +1 -1
- package/.claude/skills/observability-testing-patterns/evals/observability-testing-patterns.yaml +1 -1
- package/.claude/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
- package/.claude/skills/performance-testing/evals/performance-testing.yaml +1 -1
- package/.claude/skills/qcsd-cicd-swarm/evals/qcsd-cicd-swarm.yaml +1 -1
- package/.claude/skills/qcsd-development-swarm/evals/qcsd-development-swarm.yaml +1 -1
- package/.claude/skills/qcsd-ideation-swarm/evals/qcsd-ideation-swarm.yaml +1 -1
- package/.claude/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +1 -1
- package/.claude/skills/qcsd-refinement-swarm/evals/qcsd-refinement-swarm.yaml +1 -1
- package/.claude/skills/qe-browser/evals/qe-browser.yaml +1 -1
- package/.claude/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
- package/.claude/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
- package/.claude/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
- package/.claude/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
- package/.claude/skills/qe-learning-optimization/evals/qe-learning-optimization.yaml +2 -2
- package/.claude/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
- package/.claude/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
- package/.claude/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
- package/.claude/skills/qe-test-generation/evals/qe-test-generation.yaml +1 -1
- package/.claude/skills/qe-visual-accessibility/evals/qe-visual-accessibility.yaml +1 -1
- package/.claude/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
- package/.claude/skills/regression-testing/evals/regression-testing.yaml +1 -1
- package/.claude/skills/risk-based-testing/evals/risk-based-testing.yaml +1 -1
- package/.claude/skills/security-testing/evals/security-testing.yaml +1 -1
- package/.claude/skills/security-visual-testing/evals/security-visual-testing.yaml +1 -1
- package/.claude/skills/shift-left-testing/evals/shift-left-testing.yaml +1 -1
- package/.claude/skills/shift-right-testing/evals/shift-right-testing.yaml +1 -1
- package/.claude/skills/skills-manifest.json +1 -1
- package/.claude/skills/test-automation-strategy/evals/test-automation-strategy.yaml +1 -1
- package/.claude/skills/test-data-management/evals/test-data-management.yaml +1 -1
- package/.claude/skills/test-design-techniques/evals/test-design-techniques.yaml +1 -1
- package/.claude/skills/test-reporting-analytics/evals/test-reporting-analytics.yaml +1 -1
- package/.claude/skills/testability-scoring/evals/testability-scoring.yaml +1 -1
- package/.claude/skills/validation-pipeline/evals/validation-pipeline.yaml +1 -1
- package/.claude/skills/verification-quality/evals/verification-quality.yaml +1 -1
- package/.claude/skills/visual-testing-advanced/evals/visual-testing-advanced.yaml +1 -1
- package/.claude/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +1 -1
- package/.opencode/agents/collective-intelligence-coordinator.yaml +1 -1
- package/.opencode/agents/ddd-domain-expert.yaml +1 -1
- package/.opencode/agents/memory-specialist.yaml +1 -1
- package/.opencode/agents/performance-engineer.yaml +1 -1
- package/.opencode/agents/qe-accessibility-auditor.yaml +1 -1
- package/.opencode/agents/qe-api-contract-validator.yaml +1 -1
- package/.opencode/agents/qe-bdd-generator.yaml +1 -1
- package/.opencode/agents/qe-chaos-engineer.yaml +1 -1
- package/.opencode/agents/qe-code-complexity.yaml +1 -1
- package/.opencode/agents/qe-code-intelligence.yaml +1 -1
- package/.opencode/agents/qe-coverage-analyzer.yaml +1 -1
- package/.opencode/agents/qe-defect-predictor.yaml +1 -1
- package/.opencode/agents/qe-dependency-mapper.yaml +1 -1
- package/.opencode/agents/qe-deployment-advisor.yaml +1 -1
- package/.opencode/agents/qe-devils-advocate.yaml +1 -1
- package/.opencode/agents/qe-flaky-hunter.yaml +1 -1
- package/.opencode/agents/qe-fleet-commander.yaml +1 -1
- package/.opencode/agents/qe-gap-detector.yaml +1 -1
- package/.opencode/agents/qe-graphql-tester.yaml +1 -1
- package/.opencode/agents/qe-impact-analyzer.yaml +1 -1
- package/.opencode/agents/qe-integration-architect.yaml +1 -1
- package/.opencode/agents/qe-integration-tester.yaml +1 -1
- package/.opencode/agents/qe-kg-builder.yaml +1 -1
- package/.opencode/agents/qe-learning-coordinator.yaml +1 -1
- package/.opencode/agents/qe-load-tester.yaml +1 -1
- package/.opencode/agents/qe-message-broker-tester.yaml +1 -1
- package/.opencode/agents/qe-metrics-optimizer.yaml +1 -1
- package/.opencode/agents/qe-middleware-validator.yaml +1 -1
- package/.opencode/agents/qe-mutation-tester.yaml +1 -1
- package/.opencode/agents/qe-odata-contract-tester.yaml +1 -1
- package/.opencode/agents/qe-parallel-executor.yaml +1 -1
- package/.opencode/agents/qe-pattern-learner.yaml +1 -1
- package/.opencode/agents/qe-pentest-validator.yaml +1 -1
- package/.opencode/agents/qe-performance-tester.yaml +1 -1
- package/.opencode/agents/qe-product-factors-assessor.yaml +1 -1
- package/.opencode/agents/qe-property-tester.yaml +1 -1
- package/.opencode/agents/qe-quality-criteria-recommender.yaml +1 -1
- package/.opencode/agents/qe-quality-gate.yaml +1 -1
- package/.opencode/agents/qe-queen-coordinator.yaml +1 -1
- package/.opencode/agents/qe-qx-partner.yaml +1 -1
- package/.opencode/agents/qe-regression-analyzer.yaml +1 -1
- package/.opencode/agents/qe-requirements-validator.yaml +1 -1
- package/.opencode/agents/qe-responsive-tester.yaml +1 -1
- package/.opencode/agents/qe-retry-handler.yaml +1 -1
- package/.opencode/agents/qe-risk-assessor.yaml +1 -1
- package/.opencode/agents/qe-root-cause-analyzer.yaml +1 -1
- package/.opencode/agents/qe-sap-idoc-tester.yaml +1 -1
- package/.opencode/agents/qe-sap-rfc-tester.yaml +1 -1
- package/.opencode/agents/qe-security-auditor.yaml +1 -1
- package/.opencode/agents/qe-security-scanner.yaml +1 -1
- package/.opencode/agents/qe-soap-tester.yaml +1 -1
- package/.opencode/agents/qe-sod-analyzer.yaml +1 -1
- package/.opencode/agents/qe-tdd-specialist.yaml +1 -1
- package/.opencode/agents/qe-test-generator.yaml +1 -1
- package/.opencode/agents/qe-test-idea-rewriter.yaml +1 -1
- package/.opencode/agents/qe-transfer-specialist.yaml +1 -1
- package/.opencode/agents/qe-visual-tester.yaml +1 -1
- package/.opencode/agents/security-architect.yaml +1 -1
- package/.opencode/agents/security-auditor.yaml +1 -1
- package/CHANGELOG.md +204 -0
- package/README.md +7 -2
- package/assets/agents/v3/helpers/advisor-call.cjs +3 -3
- package/assets/agents/v3/qe-coverage-specialist.md +1 -1
- package/assets/agents/v3/qe-fleet-commander.md +1 -1
- package/assets/agents/v3/qe-pentest-validator.md +1 -1
- package/assets/agents/v3/qe-queen-coordinator.md +1 -1
- package/assets/agents/v3/qe-risk-assessor.md +1 -1
- package/assets/agents/v3/qe-root-cause-analyzer.md +1 -1
- package/assets/agents/v3/qe-security-auditor.md +1 -1
- package/assets/agents/v3/qe-test-architect.md +1 -1
- package/assets/skills/.validation/examples/chaos-engineering-output.example.json +1 -1
- package/assets/skills/.validation/examples/performance-testing-output.example.json +1 -1
- package/assets/skills/.validation/examples/security-testing-output.example.json +1 -1
- package/assets/skills/.validation/examples/testability-scoring-output.example.json +1 -1
- package/assets/skills/.validation/schemas/skill-eval.schema.json +4 -1
- package/assets/skills/.validation/schemas/skill-frontmatter.schema.json +1 -1
- package/assets/skills/.validation/schemas/skill-output.template.json +1 -1
- package/assets/skills/.validation/templates/eval.template.yaml +1 -1
- package/assets/skills/.validation/templates/security-testing-eval.template.yaml +1 -1
- package/assets/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
- package/assets/skills/.validation/test-data/sample-output.json +1 -1
- package/assets/skills/a11y-ally/SKILL.md +1 -1
- package/assets/skills/a11y-ally/evals/a11y-ally.yaml +1 -1
- package/assets/skills/accessibility-testing/evals/accessibility-testing.yaml +1 -1
- package/assets/skills/api-testing-patterns/evals/api-testing-patterns.yaml +1 -1
- package/assets/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
- package/assets/skills/cicd-pipeline-qe-orchestrator/evals/cicd-pipeline-qe-orchestrator.yaml +1 -1
- package/assets/skills/compatibility-testing/evals/compatibility-testing.yaml +1 -1
- package/assets/skills/compliance-testing/evals/compliance-testing.yaml +1 -1
- package/assets/skills/contract-testing/evals/contract-testing.yaml +1 -1
- package/assets/skills/database-testing/evals/database-testing.yaml +1 -1
- package/assets/skills/enterprise-integration-testing/evals/enterprise-integration-testing.yaml +1 -1
- package/assets/skills/localization-testing/evals/localization-testing.yaml +1 -1
- package/assets/skills/middleware-testing-patterns/evals/middleware-testing-patterns.yaml +1 -1
- package/assets/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
- package/assets/skills/mutation-testing/evals/mutation-testing.yaml +1 -1
- package/assets/skills/mutation-testing/test-data/sample-output.json +1 -1
- package/assets/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +1 -1
- package/assets/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +1 -1
- package/assets/skills/n8n-security-testing/evals/n8n-security-testing.yaml +1 -1
- package/assets/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +1 -1
- package/assets/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +1 -1
- package/assets/skills/observability-testing-patterns/evals/observability-testing-patterns.yaml +1 -1
- package/assets/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
- package/assets/skills/performance-testing/evals/performance-testing.yaml +1 -1
- package/assets/skills/qcsd-cicd-swarm/evals/qcsd-cicd-swarm.yaml +1 -1
- package/assets/skills/qcsd-development-swarm/evals/qcsd-development-swarm.yaml +1 -1
- package/assets/skills/qcsd-ideation-swarm/evals/qcsd-ideation-swarm.yaml +1 -1
- package/assets/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +1 -1
- package/assets/skills/qcsd-refinement-swarm/evals/qcsd-refinement-swarm.yaml +1 -1
- package/assets/skills/qe-browser/evals/qe-browser.yaml +1 -1
- package/assets/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
- package/assets/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
- package/assets/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
- package/assets/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
- package/assets/skills/qe-learning-optimization/evals/qe-learning-optimization.yaml +2 -2
- package/assets/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
- package/assets/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
- package/assets/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
- package/assets/skills/qe-test-generation/evals/qe-test-generation.yaml +1 -1
- package/assets/skills/qe-visual-accessibility/evals/qe-visual-accessibility.yaml +1 -1
- package/assets/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
- package/assets/skills/regression-testing/evals/regression-testing.yaml +1 -1
- package/assets/skills/risk-based-testing/evals/risk-based-testing.yaml +1 -1
- package/assets/skills/security-testing/evals/security-testing.yaml +1 -1
- package/assets/skills/security-visual-testing/evals/security-visual-testing.yaml +1 -1
- package/assets/skills/shift-left-testing/evals/shift-left-testing.yaml +1 -1
- package/assets/skills/shift-right-testing/evals/shift-right-testing.yaml +1 -1
- package/assets/skills/skills-manifest.json +1 -1
- package/assets/skills/test-automation-strategy/evals/test-automation-strategy.yaml +1 -1
- package/assets/skills/test-data-management/evals/test-data-management.yaml +1 -1
- package/assets/skills/test-design-techniques/evals/test-design-techniques.yaml +1 -1
- package/assets/skills/test-reporting-analytics/evals/test-reporting-analytics.yaml +1 -1
- package/assets/skills/testability-scoring/evals/testability-scoring.yaml +1 -1
- package/assets/skills/validation-pipeline/evals/validation-pipeline.yaml +1 -1
- package/assets/skills/verification-quality/evals/verification-quality.yaml +1 -1
- package/assets/skills/visual-testing-advanced/evals/visual-testing-advanced.yaml +1 -1
- package/assets/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +1 -1
- package/dist/audit/witness-chain.d.ts +1 -1
- package/dist/audit/witness-chain.js +29 -22
- package/dist/cli/bundle.js +13 -10
- package/dist/cli/chunks/adapter-IYC62SXA.js +2 -0
- package/dist/cli/chunks/{agent-booster-wasm-TQOMLWWX.js → agent-booster-wasm-EDNKP3SP.js} +2 -2
- package/dist/cli/chunks/{agent-handler-Q3SEMMI2.js → agent-handler-V6CZ7Q6S.js} +2 -2
- package/dist/cli/chunks/{agent-memory-branch-SJXAQSZI.js → agent-memory-branch-ZMD6ULC3.js} +2 -2
- package/dist/cli/chunks/aqe-learning-engine-LLOU2IXD.js +2 -0
- package/dist/cli/chunks/{arena-7RC7TBGW.js → arena-4UPAEHFT.js} +4 -4
- package/dist/cli/chunks/{arena-UPB7TKUY.js → arena-QLSBESC7.js} +2 -2
- package/dist/cli/chunks/{audit-IXN5R4WB.js → audit-CVZQMF55.js} +3 -3
- package/dist/cli/chunks/base-P3Z4IKCT.js +2 -0
- package/dist/cli/chunks/{better-sqlite3-RP4DEGK3.js → better-sqlite3-4DSBPDRH.js} +2 -2
- package/dist/cli/chunks/brain-handler-GBY4EZ4P.js +94 -0
- package/dist/cli/chunks/{branch-enumerator-VPRWDGFJ.js → branch-enumerator-XYBVXCNO.js} +2 -2
- package/dist/cli/chunks/{browser-B6E7JPPJ.js → browser-32F6MREU.js} +2 -2
- package/dist/cli/chunks/browser-workflow-YYHQQ25X.js +2 -0
- package/dist/cli/chunks/{chunk-HOQQCY2K.js → chunk-2JGEZHWY.js} +2 -2
- package/dist/cli/chunks/{chunk-NN76NTOX.js → chunk-2KJQ2UQE.js} +1 -1
- package/dist/cli/chunks/{chunk-D4Z2N74A.js → chunk-2OMLTYQK.js} +1 -1
- package/dist/cli/chunks/chunk-37TUN44F.js +4 -0
- package/dist/cli/chunks/{chunk-LVLBIKJD.js → chunk-3DDXWYMO.js} +1 -1
- package/dist/cli/chunks/{chunk-UHQY3GK7.js → chunk-3EZ5DR2R.js} +3 -3
- package/dist/cli/chunks/{chunk-3P6NCFI2.js → chunk-3KDL6QDK.js} +2 -2
- package/dist/cli/chunks/{chunk-SG47AXJG.js → chunk-3VIXOHMS.js} +1 -1
- package/dist/cli/chunks/{chunk-7FYMDKQH.js → chunk-3YUB5HER.js} +165 -167
- package/dist/cli/chunks/chunk-4FWTLJEP.js +16 -0
- package/dist/cli/chunks/{chunk-PI74GOE4.js → chunk-52L77RMG.js} +2 -2
- package/dist/cli/chunks/{chunk-LS3EUMBP.js → chunk-5D36YHS3.js} +5 -5
- package/dist/cli/chunks/{chunk-EY4OQHU3.js → chunk-5WOSWNDN.js} +1 -1
- package/dist/cli/chunks/{chunk-F67AV5P2.js → chunk-67YV75XP.js} +2 -2
- package/dist/cli/chunks/{chunk-IP7NSFQQ.js → chunk-6A44AOGN.js} +2 -2
- package/dist/cli/chunks/{chunk-3ABRGG3C.js → chunk-6CR4VQBQ.js} +2 -2
- package/dist/cli/chunks/chunk-6ITZZIQX.js +2 -0
- package/dist/cli/chunks/{chunk-7BUERZYL.js → chunk-6LKDHEBY.js} +2 -2
- package/dist/cli/chunks/{chunk-FKG5OQFT.js → chunk-6TU7FEMD.js} +1 -1
- package/dist/cli/chunks/{chunk-KF63AYXD.js → chunk-6VAZAHQG.js} +2 -2
- package/dist/cli/chunks/{chunk-XXCYQXK3.js → chunk-73EI4C2E.js} +2 -2
- package/dist/cli/chunks/chunk-75QJ5HWE.js +14 -0
- package/dist/cli/chunks/{chunk-72UJXEKQ.js → chunk-7CD7PBHY.js} +2 -2
- package/dist/cli/chunks/chunk-7DETTOPZ.js +14 -0
- package/dist/cli/chunks/{chunk-7JQHPANT.js → chunk-7JZJJA7U.js} +3 -3
- package/dist/cli/chunks/{chunk-5Y5TC6BY.js → chunk-7VFY7TUR.js} +2 -2
- package/dist/cli/chunks/chunk-7X7JYWT4.js +27 -0
- package/dist/cli/chunks/chunk-AF4XKLXO.js +2 -0
- package/dist/cli/chunks/{chunk-7SLAZAVU.js → chunk-AFEDJ3RU.js} +2 -2
- package/dist/cli/chunks/{chunk-ZUG5MOUB.js → chunk-AMMQOV35.js} +2 -2
- package/dist/cli/chunks/{chunk-ZN3J6TZD.js → chunk-BHFR2EXL.js} +1 -1
- package/dist/cli/chunks/{chunk-HXE5NBJG.js → chunk-BJPL6THQ.js} +1 -1
- package/dist/cli/chunks/{chunk-37BASGWC.js → chunk-BXVAVFGU.js} +2 -2
- package/dist/cli/chunks/{chunk-VWNHKYK7.js → chunk-BYG36QC5.js} +2 -2
- package/dist/cli/chunks/chunk-C3HQL6S4.js +2 -0
- package/dist/cli/chunks/{chunk-OY7MLMEX.js → chunk-C3Z4VVHP.js} +5 -5
- package/dist/cli/chunks/{chunk-CB5JPRIZ.js → chunk-CPC7FN52.js} +2 -2
- package/dist/cli/chunks/{chunk-OVDKWCD7.js → chunk-CVMNJSCB.js} +2 -2
- package/dist/cli/chunks/{chunk-N4H2QOT5.js → chunk-CYE2TJFV.js} +2 -2
- package/dist/cli/chunks/{chunk-YCBDE2N7.js → chunk-CZO4BJG5.js} +2 -2
- package/dist/cli/chunks/{chunk-YEXPFHV6.js → chunk-D6OUCB2H.js} +2 -2
- package/dist/cli/chunks/{chunk-JRYZKBY2.js → chunk-DDCIYOGT.js} +2 -2
- package/dist/cli/chunks/{chunk-XX7HUSX2.js → chunk-DKUBQQFG.js} +2 -2
- package/dist/cli/chunks/{chunk-SGXSB7YO.js → chunk-DLF5BOJD.js} +1 -1
- package/dist/cli/chunks/{chunk-5BLFXQEB.js → chunk-DO6EI5KB.js} +1 -1
- package/dist/cli/chunks/{chunk-33VPWGCM.js → chunk-DPBRWP4J.js} +3 -3
- package/dist/cli/chunks/{chunk-H6XBM2LY.js → chunk-E3W6XQ57.js} +2 -2
- package/dist/cli/chunks/{chunk-KPMGTVB4.js → chunk-E4AZXCT5.js} +1 -1
- package/dist/cli/chunks/chunk-E4EYPYR3.js +2 -0
- package/dist/cli/chunks/{chunk-TFHQE6NK.js → chunk-EFV4ADMO.js} +4 -4
- package/dist/cli/chunks/{chunk-VIDBBB6F.js → chunk-ELBZON4V.js} +2 -2
- package/dist/cli/chunks/chunk-EOR2UT72.js +2 -0
- package/dist/cli/chunks/{chunk-H5ZRV5K5.js → chunk-F34OAHOM.js} +2 -2
- package/dist/cli/chunks/{chunk-UMENRGHK.js → chunk-FUNGTIF2.js} +2 -2
- package/dist/cli/chunks/{chunk-DBA3N742.js → chunk-G3L5L6YQ.js} +1 -1
- package/dist/cli/chunks/{chunk-ELU4IC3I.js → chunk-G3W6BMVJ.js} +1 -1
- package/dist/cli/chunks/{chunk-RTJ2M6V6.js → chunk-GTKCGPJZ.js} +3 -3
- package/dist/cli/chunks/chunk-HBCGYMQU.js +2 -0
- package/dist/cli/chunks/{chunk-YL7T3VV7.js → chunk-HSVKZ5KI.js} +4 -4
- package/dist/cli/chunks/{chunk-MXMFGSWR.js → chunk-HVU64GP5.js} +2 -2
- package/dist/cli/chunks/chunk-HVXJC3OC.js +2 -0
- package/dist/cli/chunks/chunk-HYEJJJY3.js +4 -0
- package/dist/cli/chunks/{chunk-CR3QGHVN.js → chunk-I2NENQ44.js} +2 -2
- package/dist/cli/chunks/{chunk-GNTVFN7D.js → chunk-I6X3EGJI.js} +1 -1
- package/dist/cli/chunks/{chunk-2GNRW3OD.js → chunk-IGBEJ4UJ.js} +2 -2
- package/dist/cli/chunks/{chunk-UYJHYMEQ.js → chunk-IIAR5S7Q.js} +2 -2
- package/dist/cli/chunks/{chunk-YAKS3CAB.js → chunk-IJHCIXJC.js} +2 -2
- package/dist/cli/chunks/{chunk-YDNSLLBS.js → chunk-IUDWEOLX.js} +2 -2
- package/dist/cli/chunks/chunk-IUHB5GVS.js +3 -0
- package/dist/cli/chunks/{chunk-4UDZLD42.js → chunk-IYTLXUBO.js} +2 -2
- package/dist/cli/chunks/chunk-J27F4NSB.js +2 -0
- package/dist/cli/chunks/{chunk-HRUU7E3D.js → chunk-J5UNP6W3.js} +2 -2
- package/dist/cli/chunks/{chunk-E3FBW6G2.js → chunk-JES6R5KP.js} +1 -1
- package/dist/cli/chunks/chunk-JROVR6YS.js +11 -0
- package/dist/cli/chunks/chunk-JSZ663MU.js +2 -0
- package/dist/cli/chunks/{chunk-FUE6LL72.js → chunk-JVQBWYHW.js} +2 -2
- package/dist/cli/chunks/{chunk-G6ZHTF42.js → chunk-K27SU3RE.js} +2 -2
- package/dist/cli/chunks/chunk-K7NJHFLZ.js +54 -0
- package/dist/cli/chunks/{chunk-MDZ6RRLX.js → chunk-KEY43ANX.js} +2 -2
- package/dist/cli/chunks/chunk-KIP6WZGV.js +13 -0
- package/dist/cli/chunks/{chunk-SQ3PPISY.js → chunk-KKHYJF5U.js} +1 -1
- package/dist/cli/chunks/{chunk-TJEIOE7F.js → chunk-KLTP5IDB.js} +1 -1
- package/dist/cli/chunks/{chunk-IKIITGU5.js → chunk-KO4FNAUR.js} +4 -4
- package/dist/cli/chunks/{chunk-DX3C5HPN.js → chunk-KYA5LARK.js} +1 -1
- package/dist/cli/chunks/{chunk-ZHXWGNYM.js → chunk-LSUILON7.js} +1 -1
- package/dist/cli/chunks/chunk-LULD4JV2.js +15 -0
- package/dist/cli/chunks/{chunk-MWWAMDHI.js → chunk-M23ZOZVY.js} +1 -1
- package/dist/cli/chunks/{chunk-RKJZWWB7.js → chunk-M5AEL7IS.js} +2 -2
- package/dist/cli/chunks/chunk-MI5Q55DG.js +65 -0
- package/dist/cli/chunks/chunk-N7H767TP.js +4 -0
- package/dist/cli/chunks/{chunk-5F6DWHQG.js → chunk-NQI7FWCS.js} +2 -2
- package/dist/cli/chunks/{chunk-LLVGTEHU.js → chunk-NRE4NAVA.js} +1 -1
- package/dist/cli/chunks/{chunk-XA7CG3LH.js → chunk-NU7UTXMP.js} +2 -2
- package/dist/cli/chunks/chunk-NVYBM3R4.js +2 -0
- package/dist/cli/chunks/chunk-O3JTQ7N4.js +2 -0
- package/dist/cli/chunks/{chunk-TISSZFHO.js → chunk-OEIQTWQP.js} +1 -1
- package/dist/cli/chunks/{chunk-2IGT5WNQ.js → chunk-PSPKSUF6.js} +1 -1
- package/dist/cli/chunks/{chunk-B7SWW5A6.js → chunk-QIRL6B3C.js} +2 -2
- package/dist/cli/chunks/{chunk-JBB7E26R.js → chunk-QRCIZFNK.js} +2 -2
- package/dist/cli/chunks/{chunk-4JBFJTHJ.js → chunk-QWUXCG2L.js} +1 -1
- package/dist/cli/chunks/{chunk-B5XFDFBT.js → chunk-QYOGD2VW.js} +1 -1
- package/dist/cli/chunks/chunk-QZMUXJHZ.js +2 -0
- package/dist/cli/chunks/chunk-R6IU3EWP.js +2 -0
- package/dist/cli/chunks/{chunk-G5C2XVZC.js → chunk-R74ZKREV.js} +1 -1
- package/dist/cli/chunks/chunk-RD2VGOUH.js +2 -0
- package/dist/cli/chunks/{chunk-OV5EZO3U.js → chunk-RD6TEZ64.js} +2 -2
- package/dist/cli/chunks/{chunk-4C6UJIHB.js → chunk-RGGK6VZ7.js} +1 -1
- package/dist/cli/chunks/{chunk-4XPPMADQ.js → chunk-RIZVC4XY.js} +6 -6
- package/dist/cli/chunks/{chunk-4RP5VUBI.js → chunk-RKOUXVZZ.js} +2 -2
- package/dist/cli/chunks/{chunk-IFFZR6GY.js → chunk-RP2ZKPYV.js} +1 -1
- package/dist/cli/chunks/{chunk-BN7DKW5D.js → chunk-SQF6HRXR.js} +1 -1
- package/dist/cli/chunks/chunk-SQKW3B6B.js +2 -0
- package/dist/cli/chunks/{chunk-LKN7JQTW.js → chunk-SX4JLSLV.js} +2 -2
- package/dist/cli/chunks/{chunk-YGB6R5DW.js → chunk-TUSSPKRM.js} +1 -1
- package/dist/cli/chunks/{chunk-LHGNNZ76.js → chunk-TY5WC3FT.js} +3 -3
- package/dist/cli/chunks/{chunk-B2ZONZPZ.js → chunk-UDHVCKGA.js} +2 -2
- package/dist/cli/chunks/{chunk-IU4EBTA2.js → chunk-UJWAWIRV.js} +4 -4
- package/dist/cli/chunks/{chunk-LTBCAFTZ.js → chunk-UKGXWW64.js} +3 -3
- package/dist/cli/chunks/{chunk-JV4FZUE7.js → chunk-UMGFMKDW.js} +2 -2
- package/dist/cli/chunks/{chunk-STRDSVH3.js → chunk-URVHZPWY.js} +2 -2
- package/dist/cli/chunks/{chunk-PZTVH2AS.js → chunk-UTBYJ4RF.js} +2 -2
- package/dist/cli/chunks/{chunk-ZK5JKHP4.js → chunk-VD5IO5EO.js} +1 -1
- package/dist/cli/chunks/chunk-VTOVWHEM.js +2 -0
- package/dist/cli/chunks/{chunk-OYMLHX2B.js → chunk-W2XCZU62.js} +1 -1
- package/dist/cli/chunks/{chunk-T35GZXTU.js → chunk-WJHWH5D2.js} +2 -2
- package/dist/cli/chunks/{chunk-NBWQBQO5.js → chunk-WJTSY5MC.js} +1 -1
- package/dist/cli/chunks/{chunk-NTSXHZTC.js → chunk-WK7B4B6Y.js} +4 -4
- package/dist/cli/chunks/{chunk-2WT7AKKK.js → chunk-WLXK2KNU.js} +2 -2
- package/dist/cli/chunks/chunk-WOIGKU2N.js +180 -0
- package/dist/cli/chunks/{chunk-WYMGK5DX.js → chunk-WX6RRIGW.js} +2 -2
- package/dist/cli/chunks/{chunk-C46DMCWF.js → chunk-XEZIIQYJ.js} +2 -2
- package/dist/cli/chunks/{chunk-TTMHIOQ3.js → chunk-XFPPERA2.js} +2 -2
- package/dist/cli/chunks/{chunk-OVPJQWHW.js → chunk-XLAUGSW7.js} +2 -2
- package/dist/cli/chunks/{chunk-V4AOVDCJ.js → chunk-XQSIRBKT.js} +8 -8
- package/dist/cli/chunks/{chunk-4Q35TI6Z.js → chunk-XUR2M2WB.js} +2 -2
- package/dist/cli/chunks/{chunk-5IAB5NRZ.js → chunk-XZSMZHM2.js} +2 -2
- package/dist/cli/chunks/{chunk-AB4U6ZNI.js → chunk-Y5L3ES4L.js} +2 -2
- package/dist/cli/chunks/chunk-YDFL445W.js +2 -0
- package/dist/cli/chunks/{chunk-7G6UX2QN.js → chunk-YQGPQBCX.js} +2 -2
- package/dist/cli/chunks/{chunk-5FOZO7KM.js → chunk-YXP6BKGS.js} +46 -46
- package/dist/cli/chunks/chunk-ZBABIZ2D.js +2 -0
- package/dist/cli/chunks/{chunk-IQEJGZV6.js → chunk-ZCWERUYB.js} +4 -4
- package/dist/cli/chunks/ci-RACDAJMR.js +81 -0
- package/dist/cli/chunks/{ci-output-LK3MBXLZ.js → ci-output-EHRSZBKG.js} +2 -2
- package/dist/cli/chunks/{circuit-breaker-7AIXACR7.js → circuit-breaker-GBV7M5XG.js} +2 -2
- package/dist/cli/chunks/{claude-flow-setup-UA7EO6VN.js → claude-flow-setup-5LVJOFKP.js} +2 -2
- package/dist/cli/chunks/client-HUVFA5PF.js +2 -0
- package/dist/cli/chunks/{cline-installer-YDDCKKEV.js → cline-installer-W4NMXJSG.js} +2 -2
- package/dist/cli/chunks/{code-URB7UAKW.js → code-JWXJMYXB.js} +29 -29
- package/dist/cli/chunks/{code-index-extractor-BL6HWH4Q.js → code-index-extractor-RVI2IFTM.js} +2 -2
- package/dist/cli/chunks/codex-installer-3BORJINH.js +14 -0
- package/dist/cli/chunks/{completions-RCKBSSSS.js → completions-A55NCTAO.js} +2 -2
- package/dist/cli/chunks/complexity-analyzer-JCXHGGLY.js +2 -0
- package/dist/cli/chunks/{continuedev-installer-VOTCEBFH.js → continuedev-installer-PUVFMGYW.js} +2 -2
- package/dist/cli/chunks/{copilot-installer-NVTGLZX3.js → copilot-installer-4DCMYWHB.js} +2 -2
- package/dist/cli/chunks/core-handlers-UEXO3VAA.js +2 -0
- package/dist/cli/chunks/cost-tracker-5TV2GGKY.js +2 -0
- package/dist/cli/chunks/{coverage-ZTPJWXWE.js → coverage-NNWM7TX3.js} +3 -3
- package/dist/cli/chunks/cross-domain-router-ODU5IZD6.js +2 -0
- package/dist/cli/chunks/{cursor-installer-CMGJQMHX.js → cursor-installer-4NCHGJGK.js} +2 -2
- package/dist/cli/chunks/{daemon-Y2I3YVIU.js → daemon-QIKCXKWO.js} +4 -4
- package/dist/cli/chunks/{daemon-V456IWR3.js → daemon-T4JO4IXP.js} +3 -3
- package/dist/cli/chunks/{dag-attention-scheduler-ZCBBOD3D.js → dag-attention-scheduler-RPAAIDAD.js} +2 -2
- package/dist/cli/chunks/{detect-2GHEA4A3.js → detect-SBEEVDSN.js} +2 -2
- package/dist/cli/chunks/{dist-node-44AGYJCH.js → dist-node-ZHI6NCSU.js} +2 -2
- package/dist/cli/chunks/{domain-handler-IDLIEP6X.js → domain-handler-LBC3GJ7Z.js} +2 -2
- package/dist/cli/chunks/domain-plugins-H6IZ5USZ.js +2 -0
- package/dist/cli/chunks/{domain-transfer-KLEXGIRF.js → domain-transfer-JZA5TMW3.js} +2 -2
- package/dist/cli/chunks/dream-HE3OX42F.js +2 -0
- package/dist/cli/chunks/embed-and-insert-pattern-AHTR7CRU.js +3 -0
- package/dist/cli/chunks/eval-DZU2KISM.js +17 -0
- package/dist/cli/chunks/{experience-capture-middleware-CJJJN7CF.js → experience-capture-middleware-5IQCWKSL.js} +4 -4
- package/dist/cli/chunks/{fast-paths-LGLLKX6P.js → fast-paths-2KLDUWCY.js} +2 -2
- package/dist/cli/chunks/{feature-flags-33D3I4DD.js → feature-flags-7AC3XDZA.js} +2 -2
- package/dist/cli/chunks/{feature-flags-QL4NCEGW.js → feature-flags-N6UAEZY4.js} +2 -2
- package/dist/cli/chunks/{file-discovery-GKCYJPFZ.js → file-discovery-5SDIW4V2.js} +2 -2
- package/dist/cli/chunks/fleet-ZIQCAZ2Y.js +43 -0
- package/dist/cli/chunks/{gnn-wrapper-ELSGT67Z.js → gnn-wrapper-DUMBZJEV.js} +2 -2
- package/dist/cli/chunks/{heartbeat-handler-ZUI3DOOP.js → heartbeat-handler-6HVM6ZMR.js} +4 -4
- package/dist/cli/chunks/heartbeat-scheduler-QUIFGGLX.js +2 -0
- package/dist/cli/chunks/hnsw-adapter-42KB37KP.js +2 -0
- package/dist/cli/chunks/hnsw-index-T2PGO77J.js +2 -0
- package/dist/cli/chunks/{hnsw-legacy-bridge-EZMM5JWL.js → hnsw-legacy-bridge-5DRL5FLX.js} +2 -2
- package/dist/cli/chunks/{hnswlib-node-G4CE3EOS.js → hnswlib-node-GW67GTCL.js} +2 -2
- package/dist/cli/chunks/{hooks-LCVXXA55.js → hooks-QHH6FVO4.js} +10 -10
- package/dist/cli/chunks/hybrid-backend-FRNWYRKH.js +2 -0
- package/dist/cli/chunks/{hypergraph-engine-6Z7RQ3HI.js → hypergraph-engine-7XDCCVG2.js} +2 -2
- package/dist/cli/chunks/{hypergraph-handler-PLI2GYPK.js → hypergraph-handler-QHF7NOU5.js} +3 -3
- package/dist/cli/chunks/impact-analyzer-A5QYOYBR.js +2 -0
- package/dist/cli/chunks/{init-handler-7VH3QJ5Y.js → init-handler-5UIVOM7K.js} +6 -6
- package/dist/cli/chunks/init-wizard-XBU674YH.js +2 -0
- package/dist/cli/chunks/kernel-DV5MTNZD.js +2 -0
- package/dist/cli/chunks/{kilocode-installer-U3MW62DE.js → kilocode-installer-TGGV6K5Q.js} +2 -2
- package/dist/cli/chunks/{kiro-installer-PPEAC44T.js → kiro-installer-4XYBHZWW.js} +12 -12
- package/dist/cli/chunks/knowledge-graph-4ACGVJQK.js +2 -0
- package/dist/cli/chunks/learning-STE5W6BS.js +122 -0
- package/dist/cli/chunks/llm-router-NKF7J3RI.js +37 -0
- package/dist/cli/chunks/llm-router-service-PSMASERT.js +2 -0
- package/dist/cli/chunks/{load-VO7ABNHV.js → load-B2T77UJQ.js} +2 -2
- package/dist/cli/chunks/load-test-MRUO2VPF.js +2 -0
- package/dist/cli/chunks/mcp-JGSFCEMH.js +2 -0
- package/dist/cli/chunks/{memory-FZTT7ADM.js → memory-WRFZKG56.js} +6 -6
- package/dist/cli/chunks/memory-backend-2MPGI6JW.js +2 -0
- package/dist/cli/chunks/memory-handlers-XT4HMITB.js +2 -0
- package/dist/cli/chunks/multi-model-executor-26Q5BSVG.js +14 -0
- package/dist/cli/chunks/{opencode-installer-GQ7J5SBG.js → opencode-installer-J36EMQU7.js} +2 -2
- package/dist/cli/chunks/{orchestrator-66JK2OS5.js → orchestrator-D5IFV65I.js} +20 -20
- package/dist/cli/chunks/pattern-null-store-TGWUL237.js +2 -0
- package/dist/cli/chunks/{pattern-usage-recorder-O6XHM2G5.js → pattern-usage-recorder-BVMTWI3E.js} +2 -2
- package/dist/cli/chunks/pipeline-OWAHDUAQ.js +19 -0
- package/dist/cli/chunks/platform-ANGBFWBV.js +2 -0
- package/dist/cli/chunks/{plugin-7OFLNGOS.js → plugin-OO7ON2YW.js} +2 -2
- package/dist/cli/chunks/{prime-radiant-advanced-wasm-OSRDK2FW.js → prime-radiant-advanced-wasm-HFG3BXWU.js} +2 -2
- package/dist/cli/chunks/project-root-LNOYVTYY.js +2 -0
- package/dist/cli/chunks/protocol-executor-GEVH5KD6.js +2 -0
- package/dist/cli/chunks/{protocol-handler-WLYTX6FS.js → protocol-handler-CE3Q6LY4.js} +2 -2
- package/dist/cli/chunks/{prove-QVNE4V3J.js → prove-7XPN53PY.js} +2 -2
- package/dist/cli/chunks/qe-reasoning-bank-DJ2JL6QB.js +2 -0
- package/dist/cli/chunks/{quality-DNE2RKE5.js → quality-TT23JRFX.js} +2 -2
- package/dist/cli/chunks/{quality-gate-2K35GCSI.js → quality-gate-PPPRP255.js} +3 -3
- package/dist/cli/chunks/queen-coordinator-F7E3AS26.js +2 -0
- package/dist/cli/chunks/real-embeddings-EYNZIFJE.js +2 -0
- package/dist/cli/chunks/ref-validation-QQR64ZXD.js +2 -0
- package/dist/cli/chunks/{roocode-installer-NCEZPF5L.js → roocode-installer-UIGS7ZJD.js} +2 -2
- package/dist/cli/chunks/router-OZH3QSAU.js +2 -0
- package/dist/cli/chunks/routing-feedback-J2E3ADZB.js +2 -0
- package/dist/cli/chunks/{routing-handler-4MXXZRYP.js → routing-handler-6AENUIRG.js} +4 -4
- package/dist/cli/chunks/{ruvector-commands-WDFMMCMK.js → ruvector-commands-5AWMEV34.js} +2 -2
- package/dist/cli/chunks/rvf-dual-writer-HK525Y5Y.js +2 -0
- package/dist/cli/chunks/rvf-migration-adapter-Q7FB3BKR.js +2 -0
- package/dist/cli/chunks/rvf-migration-coordinator-NWRJ7C22.js +2 -0
- package/dist/cli/chunks/rvf-native-adapter-5ZRCGUI6.js +2 -0
- package/dist/cli/chunks/rvf-store-integrity-ISKRP563.js +2 -0
- package/dist/cli/chunks/safe-db-3OYEPVEH.js +2 -0
- package/dist/cli/chunks/schedule-AG4C2EIQ.js +2 -0
- package/dist/cli/chunks/scheduler-SQS2CZFZ.js +2 -0
- package/dist/cli/chunks/{security-CJJ3WJSB.js → security-325A7FMB.js} +3 -3
- package/dist/cli/chunks/{shared-rvf-adapter-6RGCTLHD.js → shared-rvf-adapter-NFL6QSZ6.js} +2 -2
- package/dist/cli/chunks/{shared-rvf-dual-writer-KIA6Q6MT.js → shared-rvf-dual-writer-THFDYS2Z.js} +2 -2
- package/dist/cli/chunks/sqlite-persistence-MAKDFSHC.js +2 -0
- package/dist/cli/chunks/standalone-memory-UD4MJ6GZ.js +2 -0
- package/dist/cli/chunks/{status-handler-BADQV2KA.js → status-handler-CPFTN4XL.js} +2 -2
- package/dist/cli/chunks/{structural-health-VMYEYRZG.js → structural-health-2MG2IVBL.js} +2 -2
- package/dist/cli/chunks/{sync-PXLROLHB.js → sync-EE4VVKOW.js} +2 -2
- package/dist/cli/chunks/{sync-ULY7T5II.js → sync-MBTW5XBF.js} +2 -2
- package/dist/cli/chunks/task-handler-7H5OYJG4.js +54 -0
- package/dist/cli/chunks/task-handlers-NH4GJHCJ.js +9 -0
- package/dist/cli/chunks/{test-WCLURQUT.js → test-MPHGT4T6.js} +4 -4
- package/dist/cli/chunks/test-scheduling-CHQ4ZLLJ.js +15 -0
- package/dist/cli/chunks/token-bootstrap-SSDCYEKK.js +2 -0
- package/dist/cli/chunks/{token-usage-DRVG6PKO.js → token-usage-EBXUJNRB.js} +2 -2
- package/dist/cli/chunks/{transformers-IMDDAMYQ.js → transformers-ZEKS2OJZ.js} +2 -2
- package/dist/cli/chunks/{tree-sitter-wasm-parser-WBZIHVFA.js → tree-sitter-wasm-parser-J6ZMAK37.js} +2 -2
- package/dist/cli/chunks/types-KYAA5VLV.js +2 -0
- package/dist/cli/chunks/unified-memory-DDWMC435.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-4JA7SGBK.js +2 -0
- package/dist/cli/chunks/unified-persistence-F6OSNTXY.js +2 -0
- package/dist/cli/chunks/{upgrade-6ALSDWDD.js → upgrade-UJBJ5AYM.js} +2 -2
- package/dist/cli/chunks/{validate-XF4ZG3LC.js → validate-RUV6YMWS.js} +2 -2
- package/dist/cli/chunks/{validate-swarm-P5TAFRDA.js → validate-swarm-IVEVMGVM.js} +2 -2
- package/dist/cli/chunks/{vibium-2XDXKNKZ.js → vibium-HOGMFJ2Z.js} +2 -2
- package/dist/cli/chunks/visual-security-25SMBIYT.js +2 -0
- package/dist/cli/chunks/{web-tree-sitter-4JVRQPX5.js → web-tree-sitter-AVWA6HKE.js} +2 -2
- package/dist/cli/chunks/{windsurf-installer-WYJXVDO5.js → windsurf-installer-DAH7HI2W.js} +2 -2
- package/dist/cli/chunks/{witness-chain-RPZ2SE2V.js → witness-chain-PJOQPFUX.js} +2 -2
- package/dist/cli/chunks/witness-chain-ZW6KKUZU.js +2 -0
- package/dist/cli/chunks/{witness-key-manager-LXG2VBQQ.js → witness-key-manager-JSTBMG43.js} +2 -2
- package/dist/cli/chunks/workflow-TWOIA6LZ.js +51 -0
- package/dist/cli/chunks/workflow-orchestrator-UKSIDM7Q.js +2 -0
- package/dist/cli/chunks/{wrappers-DIJNNFU6.js → wrappers-UR7BLXKV.js} +2 -2
- package/dist/cli/commands/ci.js +54 -28
- package/dist/cli/commands/code.js +6 -0
- package/dist/cli/commands/eval.js +3 -2
- package/dist/cli/commands/fleet.js +35 -16
- package/dist/cli/commands/learning-snapshot.d.ts +38 -0
- package/dist/cli/commands/learning-snapshot.js +171 -0
- package/dist/cli/commands/learning.js +16 -64
- package/dist/cli/commands/llm-router.js +13 -12
- package/dist/cli/commands/mcp.js +6 -0
- package/dist/cli/commands/memory.d.ts +1 -1
- package/dist/cli/commands/memory.js +8 -8
- package/dist/cli/commands/pipeline.js +9 -0
- package/dist/cli/commands/platform.js +15 -2
- package/dist/cli/commands/upgrade.d.ts +3 -3
- package/dist/cli/commands/upgrade.js +3 -3
- package/dist/cli/commands/workflow.js +9 -1
- package/dist/cli/handlers/init-handler.d.ts +10 -0
- package/dist/cli/handlers/task-handler.js +43 -12
- package/dist/cli/helpers/domain-plugins.d.ts +5 -0
- package/dist/cli/helpers/domain-plugins.js +11 -0
- package/dist/cli/helpers/standalone-memory.d.ts +12 -0
- package/dist/cli/helpers/standalone-memory.js +46 -0
- package/dist/cli/index.js +54 -49
- package/dist/cli/log-gate.d.ts +66 -0
- package/dist/cli/log-gate.js +170 -0
- package/dist/cli/utils/ci-config.d.ts +3 -0
- package/dist/context/sources/git-source.d.ts +2 -0
- package/dist/context/sources/git-source.js +9 -2
- package/dist/coordination/cancelled-task-settlement.d.ts +11 -0
- package/dist/coordination/cancelled-task-settlement.js +15 -0
- package/dist/coordination/consensus/providers/claude-provider.d.ts +2 -2
- package/dist/coordination/consensus/providers/claude-provider.js +18 -25
- package/dist/coordination/consensus/providers/gemini-provider.d.ts +14 -4
- package/dist/coordination/consensus/providers/gemini-provider.js +39 -36
- package/dist/coordination/consensus/providers/ollama-provider.d.ts +8 -7
- package/dist/coordination/consensus/providers/ollama-provider.js +16 -18
- package/dist/coordination/consensus/providers/openai-provider.d.ts +14 -4
- package/dist/coordination/consensus/providers/openai-provider.js +36 -34
- package/dist/coordination/consensus/providers/openrouter-provider.d.ts +5 -5
- package/dist/coordination/consensus/providers/openrouter-provider.js +64 -37
- package/dist/coordination/handlers/test-execution-handlers.js +5 -3
- package/dist/coordination/interfaces.d.ts +2 -2
- package/dist/coordination/protocol-executor.js +68 -9
- package/dist/coordination/queen-coordinator.js +10 -4
- package/dist/coordination/queen-event-handlers.js +17 -0
- package/dist/coordination/queen-task-management.js +25 -0
- package/dist/coordination/queen-types.d.ts +2 -0
- package/dist/coordination/task-executor.js +4 -8
- package/dist/coordination/workflow-composition.d.ts +19 -0
- package/dist/coordination/workflow-composition.js +114 -0
- package/dist/coordination/workflow-orchestrator.d.ts +3 -2
- package/dist/coordination/workflow-orchestrator.js +219 -85
- package/dist/coordination/workflow-types.d.ts +30 -1
- package/dist/coordination/yaml-pipeline-loader.js +9 -5
- package/dist/domains/chaos-resilience/services/chaos-engineer.js +2 -7
- package/dist/domains/code-intelligence/services/knowledge-graph.js +2 -7
- package/dist/domains/code-intelligence/services/metric-collector/test-counter.js +9 -40
- package/dist/domains/constants.d.ts +1 -6
- package/dist/domains/constants.js +2 -6
- package/dist/domains/contract-testing/services/contract-validator.js +2 -7
- package/dist/domains/coverage-analysis/services/coverage-analyzer.js +2 -12
- package/dist/domains/coverage-analysis/services/gap-detector.js +2 -7
- package/dist/domains/defect-intelligence/services/defect-predictor.js +2 -12
- package/dist/domains/defect-intelligence/services/root-cause-analyzer.js +2 -7
- package/dist/domains/learning-optimization/services/learning-coordinator.js +2 -7
- package/dist/domains/quality-assessment/services/deployment-advisor.js +2 -7
- package/dist/domains/quality-assessment/services/quality-analyzer.js +2 -7
- package/dist/domains/requirements-validation/services/requirements-validator.js +2 -7
- package/dist/domains/security-compliance/services/scanners/sast-scanner.js +3 -7
- package/dist/domains/test-execution/services/flaky-detector.js +33 -3
- package/dist/domains/test-execution/services/retry-handler.js +22 -14
- package/dist/domains/test-execution/services/test-executor.js +42 -21
- package/dist/domains/test-generation/services/test-generator.js +2 -7
- package/dist/domains/visual-accessibility/services/visual-tester.js +2 -7
- package/dist/init/codex-installer.js +18 -6
- package/dist/init/init-wizard-steps.js +1 -1
- package/dist/init/kiro-installer.js +9 -8
- package/dist/init/opencode-installer.js +1 -1
- package/dist/init/orchestrator.js +1 -0
- package/dist/init/phases/07-hooks.js +4 -2
- package/dist/init/phases/09-assets.d.ts +10 -0
- package/dist/init/phases/09-assets.js +3 -0
- package/dist/init/phases/12-verification.js +1 -1
- package/dist/init/settings-merge.d.ts +10 -3
- package/dist/init/settings-merge.js +40 -9
- package/dist/init/token-bootstrap.d.ts +1 -1
- package/dist/init/token-bootstrap.js +12 -2
- package/dist/init/types.d.ts +10 -0
- package/dist/integrations/agentic-flow/model-router/types.js +6 -8
- package/dist/integrations/ruvector/brain-exporter.js +26 -15
- package/dist/integrations/ruvector/brain-import-audit.d.ts +20 -0
- package/dist/integrations/ruvector/brain-import-audit.js +22 -0
- package/dist/integrations/ruvector/brain-rvf-exporter.js +33 -30
- package/dist/integrations/ruvector/brain-shared.d.ts +5 -1
- package/dist/integrations/ruvector/brain-shared.js +70 -4
- package/dist/integrations/ruvector/rvf-dual-writer.js +42 -16
- package/dist/integrations/ruvector/rvf-store-integrity.d.ts +14 -9
- package/dist/integrations/ruvector/rvf-store-integrity.js +39 -9
- package/dist/integrations/ruvector/shared-rvf-adapter.js +20 -23
- package/dist/kernel/hybrid-backend.d.ts +6 -0
- package/dist/kernel/hybrid-backend.js +18 -0
- package/dist/kernel/kernel.js +9 -14
- package/dist/kernel/memory-factory.js +14 -4
- package/dist/kernel/project-root.d.ts +1 -1
- package/dist/kernel/project-root.js +33 -10
- package/dist/kernel/unified-memory.js +1 -1
- package/dist/learning/embedder-identity-store.js +4 -3
- package/dist/learning/local-judge-client.d.ts +6 -5
- package/dist/learning/local-judge-client.js +7 -6
- package/dist/learning/pattern-store.js +34 -12
- package/dist/learning/real-embeddings.d.ts +8 -0
- package/dist/learning/real-embeddings.js +16 -0
- package/dist/learning/rvf-pattern-store.js +10 -3
- package/dist/mcp/bundle.js +480 -480
- package/dist/mcp/entry.js +2 -0
- package/dist/mcp/handlers/index.d.ts +1 -1
- package/dist/mcp/handlers/index.js +1 -1
- package/dist/mcp/handlers/memory-handlers.d.ts +6 -1
- package/dist/mcp/handlers/memory-handlers.js +44 -22
- package/dist/mcp/handlers/pipeline-handlers.d.ts +31 -1
- package/dist/mcp/handlers/pipeline-handlers.js +63 -0
- package/dist/mcp/handlers/task-handlers.d.ts +1 -0
- package/dist/mcp/handlers/task-handlers.js +26 -5
- package/dist/mcp/protocol-server.d.ts +2 -0
- package/dist/mcp/protocol-server.js +105 -49
- package/dist/mcp/security/sampling-server.js +2 -1
- package/dist/mcp/services/session-store.js +5 -1
- package/dist/mcp/tool-annotations.js +1 -1
- package/dist/mcp/tools/test-execution/schedule.js +7 -0
- package/dist/mcp/types.d.ts +5 -1
- package/dist/optimization/session-cache.d.ts +5 -0
- package/dist/optimization/session-cache.js +23 -0
- package/dist/plugins/cache.d.ts +2 -0
- package/dist/plugins/cache.js +15 -2
- package/dist/plugins/lifecycle.js +15 -2
- package/dist/plugins/manifest.js +7 -5
- package/dist/plugins/resolver.d.ts +13 -22
- package/dist/plugins/resolver.js +169 -61
- package/dist/plugins/version-policy.d.ts +13 -0
- package/dist/plugins/version-policy.js +18 -0
- package/dist/routing/advisor/multi-model-executor.d.ts +4 -1
- package/dist/routing/advisor/multi-model-executor.js +8 -1
- package/dist/routing/free-tier/ladder.d.ts +2 -1
- package/dist/routing/free-tier/ladder.js +3 -2
- package/dist/routing/security/cyber-pin.d.ts +35 -11
- package/dist/routing/security/cyber-pin.js +76 -14
- package/dist/routing/value-score.js +1 -1
- package/dist/shared/git/index.d.ts +1 -0
- package/dist/shared/git/index.js +1 -0
- package/dist/shared/git/ref-validation.d.ts +20 -0
- package/dist/shared/git/ref-validation.js +43 -0
- package/dist/shared/llm/anthropic-params.d.ts +40 -0
- package/dist/shared/llm/anthropic-params.js +51 -0
- package/dist/shared/llm/cost-tracker.d.ts +15 -2
- package/dist/shared/llm/cost-tracker.js +62 -10
- package/dist/shared/llm/index.d.ts +2 -2
- package/dist/shared/llm/index.js +2 -2
- package/dist/shared/llm/interfaces.d.ts +1 -1
- package/dist/shared/llm/metrics/cost-metrics.js +5 -4
- package/dist/shared/llm/model-mapping.js +131 -0
- package/dist/shared/llm/model-registry.d.ts +37 -11
- package/dist/shared/llm/model-registry.js +393 -18
- package/dist/shared/llm/openai-params.d.ts +35 -0
- package/dist/shared/llm/openai-params.js +54 -0
- package/dist/shared/llm/provider-manager.js +4 -3
- package/dist/shared/llm/providers/azure-openai.d.ts +11 -0
- package/dist/shared/llm/providers/azure-openai.js +26 -15
- package/dist/shared/llm/providers/bedrock.js +11 -19
- package/dist/shared/llm/providers/claude.js +6 -29
- package/dist/shared/llm/providers/codex.js +4 -3
- package/dist/shared/llm/providers/gemini.d.ts +3 -2
- package/dist/shared/llm/providers/gemini.js +19 -10
- package/dist/shared/llm/providers/ollama.d.ts +2 -0
- package/dist/shared/llm/providers/ollama.js +30 -20
- package/dist/shared/llm/providers/openai.js +10 -17
- package/dist/shared/llm/providers/openrouter.d.ts +1 -1
- package/dist/shared/llm/providers/openrouter.js +57 -21
- package/dist/shared/llm/router/agent-router-config.js +33 -32
- package/dist/shared/llm/router/hybrid-router.js +21 -9
- package/dist/shared/llm/router/routing-rules.js +9 -8
- package/dist/shared/llm/router/types.js +81 -13
- package/dist/shared/llm/translation/message-formatter.js +4 -23
- package/dist/shared/types/index.d.ts +6 -0
- package/dist/shared/types/index.js +8 -0
- package/dist/shared/vitest-json-report.d.ts +7 -7
- package/dist/shared/vitest-json-report.js +23 -14
- package/dist/test-scheduling/executors/vitest-executor.d.ts +7 -2
- package/dist/test-scheduling/executors/vitest-executor.js +157 -47
- package/dist/test-scheduling/git-aware/test-selector.js +3 -0
- package/dist/test-scheduling/phase-scheduler.d.ts +1 -0
- package/dist/test-scheduling/phase-scheduler.js +23 -1
- package/package.json +2 -1
- package/dist/cli/chunks/adapter-AKQYU6UH.js +0 -2
- package/dist/cli/chunks/aqe-learning-engine-MICRPL3N.js +0 -2
- package/dist/cli/chunks/base-DZK36ITB.js +0 -2
- package/dist/cli/chunks/brain-handler-H5OVZ22L.js +0 -90
- package/dist/cli/chunks/browser-workflow-ADK54DOE.js +0 -2
- package/dist/cli/chunks/chunk-26GM5CWD.js +0 -13
- package/dist/cli/chunks/chunk-42VSQ2MX.js +0 -4
- package/dist/cli/chunks/chunk-44WISFTU.js +0 -2
- package/dist/cli/chunks/chunk-4OUPCTBS.js +0 -16
- package/dist/cli/chunks/chunk-4TXAP3YH.js +0 -2
- package/dist/cli/chunks/chunk-4W7QVUNO.js +0 -2
- package/dist/cli/chunks/chunk-527HQAY7.js +0 -14
- package/dist/cli/chunks/chunk-5DFHE4H5.js +0 -180
- package/dist/cli/chunks/chunk-5P3G6ZW4.js +0 -2
- package/dist/cli/chunks/chunk-6F2RM6X2.js +0 -2
- package/dist/cli/chunks/chunk-74PK3NEW.js +0 -15
- package/dist/cli/chunks/chunk-7Y2CEXRS.js +0 -65
- package/dist/cli/chunks/chunk-AWNYEAGB.js +0 -2
- package/dist/cli/chunks/chunk-CBOPBYPU.js +0 -2
- package/dist/cli/chunks/chunk-FD2JFEQC.js +0 -2
- package/dist/cli/chunks/chunk-G6DCESPU.js +0 -2
- package/dist/cli/chunks/chunk-I4NDQGKP.js +0 -2
- package/dist/cli/chunks/chunk-L2GKMBDP.js +0 -2
- package/dist/cli/chunks/chunk-QLWNXBRU.js +0 -2
- package/dist/cli/chunks/chunk-R2AFVFRF.js +0 -2
- package/dist/cli/chunks/chunk-ROX7NLS4.js +0 -14
- package/dist/cli/chunks/chunk-SHGKY3QB.js +0 -2
- package/dist/cli/chunks/chunk-SJPZSCZP.js +0 -27
- package/dist/cli/chunks/chunk-T62DH4GG.js +0 -11
- package/dist/cli/chunks/chunk-TGLAWI62.js +0 -4
- package/dist/cli/chunks/chunk-UMNYF5EZ.js +0 -2
- package/dist/cli/chunks/chunk-UTVRQEZM.js +0 -54
- package/dist/cli/chunks/chunk-Y2DVFVGI.js +0 -2
- package/dist/cli/chunks/chunk-Y5SQBI2F.js +0 -2
- package/dist/cli/chunks/ci-YVKDQWIX.js +0 -81
- package/dist/cli/chunks/client-M72GXFVQ.js +0 -2
- package/dist/cli/chunks/codex-installer-2AVEO4EA.js +0 -14
- package/dist/cli/chunks/complexity-analyzer-LEDG62YK.js +0 -2
- package/dist/cli/chunks/core-handlers-C32RAMVI.js +0 -2
- package/dist/cli/chunks/cost-tracker-GJIFB2BM.js +0 -2
- package/dist/cli/chunks/cross-domain-router-UGFUCPKC.js +0 -2
- package/dist/cli/chunks/dream-UFBBXY5W.js +0 -2
- package/dist/cli/chunks/embed-and-insert-pattern-DUW6K35A.js +0 -3
- package/dist/cli/chunks/eval-PR6YWDFM.js +0 -17
- package/dist/cli/chunks/fleet-QNT6X2YI.js +0 -43
- package/dist/cli/chunks/heartbeat-scheduler-VQWHSGTY.js +0 -2
- package/dist/cli/chunks/hnsw-adapter-BS3NXWGU.js +0 -2
- package/dist/cli/chunks/hnsw-index-JP26B4HW.js +0 -2
- package/dist/cli/chunks/impact-analyzer-WRE4CWPJ.js +0 -2
- package/dist/cli/chunks/init-wizard-OFOEYB75.js +0 -2
- package/dist/cli/chunks/kernel-MXNFWNUD.js +0 -2
- package/dist/cli/chunks/knowledge-graph-7JE2TVKJ.js +0 -2
- package/dist/cli/chunks/learning-7B5NITDV.js +0 -122
- package/dist/cli/chunks/llm-router-BNEPT5OB.js +0 -37
- package/dist/cli/chunks/llm-router-service-GTDVDKSU.js +0 -2
- package/dist/cli/chunks/load-test-JZ4CLSBF.js +0 -2
- package/dist/cli/chunks/mcp-THXEINCL.js +0 -2
- package/dist/cli/chunks/memory-backend-Q54CC5A5.js +0 -2
- package/dist/cli/chunks/memory-handlers-IIBJXKHZ.js +0 -2
- package/dist/cli/chunks/multi-model-executor-HEDVOZ6X.js +0 -14
- package/dist/cli/chunks/pattern-null-store-W33O7FYO.js +0 -2
- package/dist/cli/chunks/pipeline-UOG6UO6D.js +0 -19
- package/dist/cli/chunks/platform-Q7UH7FZQ.js +0 -2
- package/dist/cli/chunks/protocol-executor-VGN4M7XY.js +0 -2
- package/dist/cli/chunks/qe-reasoning-bank-7VB5LJGS.js +0 -2
- package/dist/cli/chunks/queen-coordinator-HIDMJMMG.js +0 -2
- package/dist/cli/chunks/real-embeddings-SF42ML7G.js +0 -2
- package/dist/cli/chunks/router-CTIJS4D7.js +0 -2
- package/dist/cli/chunks/routing-feedback-LFYYZS5J.js +0 -2
- package/dist/cli/chunks/rvf-dual-writer-MNPMIWVM.js +0 -2
- package/dist/cli/chunks/rvf-migration-adapter-DXOKSSNW.js +0 -2
- package/dist/cli/chunks/rvf-migration-coordinator-JT7ZCJY7.js +0 -2
- package/dist/cli/chunks/rvf-native-adapter-PZKUKA7R.js +0 -2
- package/dist/cli/chunks/rvf-store-integrity-Q3FGYKFT.js +0 -2
- package/dist/cli/chunks/safe-db-73BLFV2C.js +0 -2
- package/dist/cli/chunks/schedule-YVTGTTI4.js +0 -2
- package/dist/cli/chunks/scheduler-5DSAFIRQ.js +0 -2
- package/dist/cli/chunks/sqlite-persistence-LRG4IPCU.js +0 -2
- package/dist/cli/chunks/task-handler-L7E2I267.js +0 -49
- package/dist/cli/chunks/task-handlers-6DPKE4AK.js +0 -9
- package/dist/cli/chunks/test-scheduling-4CNJA6TW.js +0 -15
- package/dist/cli/chunks/token-bootstrap-GTI24JAL.js +0 -2
- package/dist/cli/chunks/types-TXMY5M2K.js +0 -2
- package/dist/cli/chunks/unified-memory-VBQ572X4.js +0 -2
- package/dist/cli/chunks/unified-memory-hnsw-J3L74ZRY.js +0 -2
- package/dist/cli/chunks/unified-persistence-EM2VYRTQ.js +0 -2
- package/dist/cli/chunks/visual-security-GX4S7K6O.js +0 -2
- package/dist/cli/chunks/witness-chain-QGKMHCNW.js +0 -2
- package/dist/cli/chunks/workflow-2OYNO7UU.js +0 -51
- package/dist/cli/chunks/workflow-orchestrator-KWHIJMFV.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.
|
|
2
|
-
import"./chunk-UYJHYMEQ.js";import"./chunk-2IGT5WNQ.js";import{a as d}from"./chunk-ZN3J6TZD.js";import"./chunk-NBWQBQO5.js";import{a as v,c as P}from"./chunk-HRUU7E3D.js";import{i as C}from"./chunk-OYMLHX2B.js";import"./chunk-5IAB5NRZ.js";import"./chunk-XA7CG3LH.js";import"./chunk-Y2DVFVGI.js";var L={maxEvents:1e5,memorySampleInterval:1e3,enableTimeline:!0,timelineSampleInterval:1e3},u=class{config;activeAgents=new Map;peakAgentCount=0;totalAgentsSpawned=0;activeTasks=new Map;totalTasksStarted=0;totalTasksCompleted=0;coordinationLatencies;taskDurations;memorySnapshots;peakMemoryUsed=0;memorySum=0;memorySamples=0;agentTimeline=[];latencyTimeline=[];memoryTimeline=[];startTime=0;endTime=0;running=!1;memorySamplerTimer=null;timelineSamplerTimer=null;issues=[];constructor(t={}){this.config={...L,...t},this.coordinationLatencies=new d(this.config.maxEvents),this.taskDurations=new d(this.config.maxEvents),this.memorySnapshots=new d(1e4)}start(){this.running||(this.running=!0,this.startTime=Date.now(),this.memorySamplerTimer=setInterval(()=>{this.sampleMemory()},this.config.memorySampleInterval),this.config.enableTimeline&&(this.timelineSamplerTimer=setInterval(()=>{this.sampleTimeline()},this.config.timelineSampleInterval)))}stop(){this.running&&(this.running=!1,this.endTime=Date.now(),this.memorySamplerTimer&&(clearInterval(this.memorySamplerTimer),this.memorySamplerTimer=null),this.timelineSamplerTimer&&(clearInterval(this.timelineSamplerTimer),this.timelineSamplerTimer=null))}reset(){this.stop(),this.activeAgents.clear(),this.peakAgentCount=0,this.totalAgentsSpawned=0,this.activeTasks.clear(),this.totalTasksStarted=0,this.totalTasksCompleted=0,this.coordinationLatencies.clear(),this.taskDurations.clear(),this.memorySnapshots.clear(),this.peakMemoryUsed=0,this.memorySum=0,this.memorySamples=0,this.agentTimeline.length=0,this.latencyTimeline.length=0,this.memoryTimeline.length=0,this.startTime=0,this.endTime=0,this.issues.length=0}recordAgentSpawn(t,e=Date.now()){this.activeAgents.set(t,e),this.totalAgentsSpawned++;let r=this.activeAgents.size;r>this.peakAgentCount&&(this.peakAgentCount=r)}recordAgentTerminate(t,e=Date.now()){this.activeAgents.delete(t)}recordTaskStart(t,e,r=Date.now()){this.activeTasks.set(e,{agentId:t,startTime:r}),this.totalTasksStarted++}recordTaskComplete(t,e,r,n=Date.now()){let o=this.activeTasks.get(e);o&&o.agentId===t&&(this.activeTasks.delete(e),this.taskDurations.push(r),this.totalTasksCompleted++)}recordCoordination(t,e,r=Date.now()){this.coordinationLatencies.push(e),e>100&&this.issues.push(`High coordination latency for agent ${t}: ${e}ms`)}recordMemoryUsage(t,e){let r={timestamp:Date.now(),heapUsed:t,heapTotal:e,external:0,rss:0};this.memorySnapshots.push(r),this.memorySum+=t,this.memorySamples++,t>this.peakMemoryUsed&&(this.peakMemoryUsed=t);let n=4*1024*1024*1024;t>n&&this.issues.push(`Memory exceeded 4GB limit: ${(t/1024/1024/1024).toFixed(2)}GB`)}recordIssue(t){this.issues.push(t)}getAgentCount(){return this.activeAgents.size}getPeakAgentCount(){return this.peakAgentCount}getTotalAgentsSpawned(){return this.totalAgentsSpawned}getP95CoordinationLatency(){return this.calculatePercentile(this.coordinationLatencies.toArray(),.95)}getP99CoordinationLatency(){return this.calculatePercentile(this.coordinationLatencies.toArray(),.99)}getCoordinationLatencyPercentiles(){return this.calculatePercentiles(this.coordinationLatencies.toArray())}getTaskLatencyPercentiles(){return this.calculatePercentiles(this.taskDurations.toArray())}getMaxMemoryUsage(){return this.peakMemoryUsed}getAverageMemoryUsage(){return this.memorySamples>0?this.memorySum/this.memorySamples:0}getThroughput(){let e=this.getDuration()/1e3;return{tasks:this.totalTasksCompleted,tasksPerSecond:e>0?this.totalTasksCompleted/e:0,agents:this.totalAgentsSpawned,agentsPerSecond:e>0?this.totalAgentsSpawned/e:0}}getDuration(){return this.startTime===0?0:(this.endTime>0?this.endTime:Date.now())-this.startTime}hasAgentStarvation(){let t=this.activeAgents.size,e=this.activeTasks.size;return t>0&&e===0&&this.totalTasksCompleted>0}hasDeadlocks(){let t=Date.now(),e=6e4,r=Array.from(this.activeTasks.values());for(let n of r)if(t-n.startTime>e)return!0;return!1}exportReport(){let t=this.getDuration(),e=this.getCoordinationLatencyPercentiles(),r=this.getTaskLatencyPercentiles(),n=this.getThroughput(),o=100,a=4*1024*1024*1024,c={agentCount:this.peakAgentCount>=o,memoryLimit:this.peakMemoryUsed<a,coordinationLatency:e.p95<=100,noDeadlocks:!this.hasDeadlocks(),noStarvation:!this.hasAgentStarvation()},y=Object.values(c).every(Boolean),p=this.generateRecommendations(e,this.peakMemoryUsed,n);return{summary:{totalAgents:this.totalAgentsSpawned,peakAgents:this.peakAgentCount,totalTasks:this.totalTasksCompleted,duration:t,success:y,successCriteria:c},performance:{coordinationLatency:e,taskLatency:r,throughput:n},resources:{memoryPeak:this.peakMemoryUsed,memoryAverage:this.getAverageMemoryUsage(),cpuPeak:0,cpuAverage:0},timeline:{agentCounts:[...this.agentTimeline],latencies:[...this.latencyTimeline],memoryUsage:[...this.memoryTimeline]},issues:[...this.issues],recommendations:p}}sampleMemory(){let t=process.memoryUsage();this.recordMemoryUsage(t.heapUsed,t.heapTotal)}sampleTimeline(){let t=Date.now();this.agentTimeline.push({timestamp:t,count:this.activeAgents.size});let e=this.coordinationLatencies.toArray();e.length>0&&this.latencyTimeline.push({timestamp:t,p95:this.calculatePercentile(e,.95)});let r=process.memoryUsage();this.memoryTimeline.push({timestamp:t,heapUsed:r.heapUsed});let n=1e3;this.agentTimeline.length>n&&this.agentTimeline.shift(),this.latencyTimeline.length>n&&this.latencyTimeline.shift(),this.memoryTimeline.length>n&&this.memoryTimeline.shift()}calculatePercentile(t,e){if(t.length===0)return 0;let r=[...t].sort((o,a)=>o-a),n=Math.ceil(r.length*e)-1;return r[Math.max(0,n)]}calculatePercentiles(t){if(t.length===0)return{p50:0,p95:0,p99:0,max:0,min:0,avg:0,count:0};let e=[...t].sort((n,o)=>n-o),r=e.reduce((n,o)=>n+o,0);return{p50:this.calculatePercentile(e,.5),p95:this.calculatePercentile(e,.95),p99:this.calculatePercentile(e,.99),max:e[e.length-1],min:e[0],avg:r/e.length,count:e.length}}generateRecommendations(t,e,r){let n=[];t.p95>100&&n.push(`P95 coordination latency (${t.p95.toFixed(1)}ms) exceeds 100ms target. Consider optimizing gossip protocol or reducing agent count.`),t.p99>t.p95*2&&n.push("High P99/P95 ratio indicates latency outliers. Investigate specific agents or network conditions.");let o=e/1024/1024/1024;return o>3&&n.push(`Memory usage (${o.toFixed(2)}GB) approaching 4GB limit. Consider implementing agent pooling or reducing per-agent memory.`),r.tasksPerSecond<10&&n.push(`Task throughput (${r.tasksPerSecond.toFixed(1)}/s) is low. Consider parallelizing task execution or reducing task complexity.`),this.issues.length>10&&n.push(`${this.issues.length} issues recorded. Review issue log for patterns and prioritize fixes.`),n}};function k(s){return new u(s)}P();var h={memoryWarning:3*1024*1024*1024,memoryCritical:4*1024*1024*1024,latencyP95Warning:75,latencyP95Critical:100,latencyP99Warning:150,latencyP99Critical:200,agentStarvationTime:3e4,deadlockTimeout:6e4,minTasksPerSecond:5,minAgentUtilization:.5,gossipConvergenceTime:5e3,gossipMaxPartitions:0},b={thresholds:h,enableDetailedAnalysis:!0},l=class{config;constructor(t={}){this.config={...b,...t,thresholds:{...h,...t.thresholds}}}analyze(t){let e=[];e.push(this.checkMemoryPressure(t)),e.push(this.checkCoordinationLatencyP95(t)),e.push(this.checkCoordinationLatencyP99(t)),e.push(this.checkAgentStarvation(t)),e.push(this.checkDeadlocks(t)),e.push(this.checkThroughput(t));let r=e.filter(i=>i.detected),n={totalChecks:e.length,detected:r.length,critical:r.filter(i=>i.severity==="critical").length,high:r.filter(i=>i.severity==="high").length,medium:r.filter(i=>i.severity==="medium").length,low:r.filter(i=>i.severity==="low").length},o="low";n.critical>0?o="critical":n.high>0?o="high":n.medium>0&&(o="medium");let a=this.generatePrioritizedRecommendations(r);return{overallSeverity:o,hasCritical:n.critical>0,bottlenecks:e,summary:n,recommendations:a,timestamp:new Date}}analyzeReport(t){let e=[];e.push(this.checkMemoryFromReport(t)),e.push(this.checkLatencyP95FromReport(t)),e.push(this.checkLatencyP99FromReport(t)),e.push(this.checkThroughputFromReport(t)),e.push(this.checkSuccessCriteria(t));let r=e.filter(i=>i.detected),n={totalChecks:e.length,detected:r.length,critical:r.filter(i=>i.severity==="critical").length,high:r.filter(i=>i.severity==="high").length,medium:r.filter(i=>i.severity==="medium").length,low:r.filter(i=>i.severity==="low").length},o="low";n.critical>0?o="critical":n.high>0?o="high":n.medium>0&&(o="medium");let a=this.generatePrioritizedRecommendations(r);return{overallSeverity:o,hasCritical:n.critical>0,bottlenecks:e,summary:n,recommendations:a,timestamp:new Date}}checkMemoryPressure(t){let e=t?.getMaxMemoryUsage()??process.memoryUsage().heapUsed,{memoryWarning:r,memoryCritical:n}=this.config.thresholds,o=e>=r,a="low",i="Memory usage is within acceptable limits.";return e>=n?(a="critical",i="Memory usage exceeds 4GB limit. Implement agent pooling, reduce per-agent state, or decrease concurrent agent count."):e>=r&&(a="high",i="Memory usage approaching critical threshold. Consider optimizing agent memory footprint or implementing memory pressure relief mechanisms."),{detected:o,severity:a,metric:"memory_pressure",threshold:n,actual:e,recommendation:i,context:{usedGB:e/1024/1024/1024,warningThresholdGB:r/1024/1024/1024,criticalThresholdGB:n/1024/1024/1024}}}checkCoordinationLatency(){return this.checkCoordinationLatencyP95()}checkCoordinationLatencyP95(t){let e=t?.getP95CoordinationLatency()??0,{latencyP95Warning:r,latencyP95Critical:n}=this.config.thresholds,o=e>=r,a="low",i="P95 coordination latency is within acceptable limits.";return e>=n?(a="critical",i="P95 coordination latency exceeds 100ms target. Optimize gossip protocol, reduce message size, or implement batching."):e>=r&&(a="medium",i="P95 coordination latency approaching target. Monitor closely and consider proactive optimization."),{detected:o,severity:a,metric:"coordination_latency_p95",threshold:n,actual:e,recommendation:i}}checkCoordinationLatencyP99(t){let e=t?.getP99CoordinationLatency()??0,{latencyP99Warning:r,latencyP99Critical:n}=this.config.thresholds,o=e>=r,a="low",i="P99 coordination latency is within acceptable limits.";return e>=n?(a="high",i="P99 coordination latency indicates outliers. Investigate specific agents or network conditions causing delays."):e>=r&&(a="medium",i="P99 coordination latency elevated. Some agents may be experiencing delays."),{detected:o,severity:a,metric:"coordination_latency_p99",threshold:n,actual:e,recommendation:i}}checkAgentStarvation(t){let e=t?.hasAgentStarvation()??!1;return{detected:e,severity:e?"high":"low",metric:"agent_starvation",threshold:this.config.thresholds.agentStarvationTime,actual:e?1:0,recommendation:e?"Agent starvation detected. Agents are idle without tasks. Review task distribution algorithm and work stealing configuration.":"No agent starvation detected."}}checkDeadlocks(t){let e=t?.hasDeadlocks()??!1;return{detected:e,severity:e?"critical":"low",metric:"deadlock_detection",threshold:this.config.thresholds.deadlockTimeout,actual:e?1:0,recommendation:e?"Potential deadlock detected. Tasks running for extended period. Review lock ordering and add timeout mechanisms.":"No deadlocks detected."}}checkGossipStability(){return{detected:!1,severity:"low",metric:"gossip_stability",threshold:this.config.thresholds.gossipMaxPartitions,actual:0,recommendation:"Gossip protocol stability check requires integration with gossip metrics."}}checkThroughput(t){let r=t?.getThroughput()?.tasksPerSecond??0,n=this.config.thresholds.minTasksPerSecond,o=r<n&&r>0;return{detected:o,severity:o?"medium":"low",metric:"throughput",threshold:n,actual:r,recommendation:o?`Task throughput (${r.toFixed(1)}/s) below minimum (${n}/s). Consider parallelizing task execution or optimizing task handlers.`:"Task throughput is acceptable."}}checkMemoryFromReport(t){let e=t.resources.memoryPeak,{memoryCritical:r}=this.config.thresholds;return{detected:e>=r,severity:e>=r?"critical":"low",metric:"memory_pressure",threshold:r,actual:e,recommendation:e>=r?"Memory exceeded 4GB limit during test.":"Memory usage within limits."}}checkLatencyP95FromReport(t){let e=t.performance.coordinationLatency.p95,{latencyP95Critical:r}=this.config.thresholds;return{detected:e>=r,severity:e>=r?"critical":"low",metric:"coordination_latency_p95",threshold:r,actual:e,recommendation:e>=r?"P95 coordination latency exceeded 100ms target.":"P95 latency within target."}}checkLatencyP99FromReport(t){let e=t.performance.coordinationLatency.p99,{latencyP99Critical:r}=this.config.thresholds;return{detected:e>=r,severity:e>=r?"high":"low",metric:"coordination_latency_p99",threshold:r,actual:e,recommendation:e>=r?"P99 coordination latency indicates significant outliers.":"P99 latency acceptable."}}checkThroughputFromReport(t){let e=t.performance.throughput.tasksPerSecond,r=this.config.thresholds.minTasksPerSecond;return{detected:e<r&&e>0,severity:e<r?"medium":"low",metric:"throughput",threshold:r,actual:e,recommendation:e<r?"Throughput below minimum target.":"Throughput acceptable."}}checkSuccessCriteria(t){let e=t.summary.successCriteria,r=Object.entries(e).filter(([n,o])=>!o).map(([n])=>n);return{detected:r.length>0,severity:r.length>0?"high":"low",metric:"success_criteria",threshold:0,actual:r.length,recommendation:r.length>0?`Failed criteria: ${r.join(", ")}`:"All success criteria met.",context:{failedCriteria:r}}}generatePrioritizedRecommendations(t){let e={critical:0,high:1,medium:2,low:3},r=[...t].sort((a,i)=>e[a.severity]-e[i.severity]),n=new Set,o=[];for(let a of r)n.has(a.recommendation)||(n.add(a.recommendation),o.push(`[${a.severity.toUpperCase()}] ${a.metric}: ${a.recommendation}`));return o}};function T(s){return new l(s)}function f(s){return new l({thresholds:{...h,...s}})}var A={maxAgents:100,memoryLimit:4*1024*1024*1024,coordinationTimeout:100,workloadProfile:"medium",mockMode:!0},S={agentCount:100,memoryLimit:4*1024*1024*1024,coordinationLatency:100,noAgentStarvation:!0,noDeadlocks:!0,gossipStable:!0},g={light:{taskCount:5,taskDuration:50,memoryUsage:5*1024*1024,coordinationFrequency:2,durationVariance:.1},medium:{taskCount:10,taskDuration:100,memoryUsage:10*1024*1024,coordinationFrequency:5,durationVariance:.2},heavy:{taskCount:20,taskDuration:200,memoryUsage:20*1024*1024,coordinationFrequency:10,durationVariance:.3}},M={name:"ramp-up-100",description:"Gradually add agents until reaching 100",steps:[{agents:25,holdTime:3e4},{agents:50,holdTime:3e4},{agents:75,holdTime:3e4},{agents:100,holdTime:6e4}],workload:g.medium},R={name:"burst-100",description:"Instantly spawn 100 agents",steps:[{agents:100,holdTime:12e4}],workload:{taskCount:20,taskDuration:50,memoryUsage:10*1024*1024,coordinationFrequency:5}},x={name:"churn-100",description:"Maintain 100 agents with continuous spawn/terminate",steps:[{agents:100,holdTime:18e4,churnRate:.1}],workload:{taskCount:15,taskDuration:75,memoryUsage:10*1024*1024,coordinationFrequency:5}},D={name:"stress-150",description:"Push beyond 100 agents to find limits",steps:[{agents:100,holdTime:3e4},{agents:125,holdTime:3e4},{agents:150,holdTime:6e4}],workload:g.heavy,criteria:{agentCount:150}},m=class{config;metrics;analyzer;running=!1;stopRequested=!1;mockAgents=new Map;mockTaskTimers=new Map;mockCoordinationTimers=new Map;churnTimer=null;random;constructor(t={},e,r){this.config={...A,...t},this.metrics=k(e),this.analyzer=r?f(r):T(),this.random=this.config.seed!==void 0?this.seededRandom(this.config.seed):Math.random.bind(Math)}async runTest(t,e){let r={name:"custom",description:`Custom test with ${t} agents for ${e}ms`,steps:[{agents:t,holdTime:e}],workload:this.getWorkload()};return this.runScenario(r)}async runScenario(t){if(this.running)throw new Error("Load test already running");this.running=!0,this.stopRequested=!1;let e=Date.now();try{this.metrics.reset(),this.metrics.start();for(let i of t.steps){if(this.stopRequested)break;await this.executeStep(i,t.workload)}this.metrics.stop();let r=this.metrics.exportReport(),n=this.analyzer.analyzeReport(r),o={...S,...t.criteria};return{success:this.evaluateSuccess(r,o),report:r,bottlenecks:n,config:this.config,duration:Date.now()-e}}catch(r){return this.metrics.stop(),{success:!1,report:this.metrics.exportReport(),bottlenecks:this.analyzer.analyze(this.metrics),config:this.config,duration:Date.now()-e,error:v(r)}}finally{await this.cleanup(),this.running=!1}}async rampUp(t,e){let r=this.mockAgents.size,n=t-r;if(n<=0)return;let o=e/n,a=this.getWorkload();for(let i=0;i<n&&!this.stopRequested;i++)await this.spawnMockAgent(a),await this.delay(o)}async simulateAgent(t,e){let r=Date.now(),n=0,o=0;for(let a=0;a<e.taskCount&&!this.stopRequested;a++){let i=`${t}_task_${a}`,c=Date.now();this.metrics.recordTaskStart(t,i,c);let y=e.durationVariance??.2,p=e.taskDuration*(1+(this.random()-.5)*2*y);await this.delay(p),this.metrics.recordTaskComplete(t,i,Date.now()-c),n++;let w=this.simulateCoordinationLatency();this.metrics.recordCoordination(t,w),o++}return{agentId:t,tasksCompleted:n,totalDuration:Date.now()-r,coordinationEvents:o}}async stop(){this.stopRequested=!0,await this.delay(100),await this.cleanup()}getMetrics(){return this.metrics}getAgentCount(){return this.mockAgents.size}isRunning(){return this.running}async executeStep(t,e){let r=t.agents,n=this.mockAgents.size;r>n?await this.spawnAgents(r-n,e):r<n&&await this.terminateAgents(n-r),t.churnRate&&t.churnRate>0&&this.startChurn(t.churnRate,r,e),await this.hold(t.holdTime),this.stopChurn()}async spawnAgents(t,e){let r=[];for(let n=0;n<t&&!this.stopRequested;n++)r.push(this.spawnMockAgent(e)),r.length>=10&&(await Promise.all(r),r.length=0,await this.delay(10));r.length>0&&await Promise.all(r)}async terminateAgents(t){let e=Array.from(this.mockAgents.keys()).slice(0,t);for(let r of e)await this.terminateMockAgent(r)}async hold(t){let r=0;for(;r<t&&!this.stopRequested;)await this.delay(100),r+=100}startChurn(t,e,r){let o=6e4/Math.ceil(e*t);this.churnTimer=setInterval(async()=>{if(this.random()<.5){let a=Array.from(this.mockAgents.keys());if(a.length>0){let i=a[Math.floor(this.random()*a.length)];await this.terminateMockAgent(i)}}this.mockAgents.size<e&&await this.spawnMockAgent(r)},o)}stopChurn(){this.churnTimer&&(clearInterval(this.churnTimer),this.churnTimer=null)}async spawnMockAgent(t){let e=`agent_${C().slice(0,8)}`,r=Date.now(),n={id:e,domain:this.getRandomDomain(),spawnedAt:r,workload:t,activeTasks:0,totalTasks:0,terminated:!1};this.mockAgents.set(e,n),this.metrics.recordAgentSpawn(e,r),this.startAgentTasks(n),this.startAgentCoordination(n),this.simulateMemoryUsage()}async terminateMockAgent(t){let e=this.mockAgents.get(t);if(!e)return;e.terminated=!0;let r=this.mockTaskTimers.get(t);r&&(clearInterval(r),this.mockTaskTimers.delete(t));let n=this.mockCoordinationTimers.get(t);n&&(clearInterval(n),this.mockCoordinationTimers.delete(t)),this.mockAgents.delete(t),this.metrics.recordAgentTerminate(t,Date.now())}startAgentTasks(t){let e=t.workload.taskDuration*1.5,r=setInterval(()=>{if(t.terminated||t.totalTasks>=t.workload.taskCount){clearInterval(r),this.mockTaskTimers.delete(t.id);return}let n=`${t.id}_task_${t.totalTasks}`,o=Date.now();t.activeTasks++,t.totalTasks++,this.metrics.recordTaskStart(t.id,n,o);let a=t.workload.durationVariance??.2,i=t.workload.taskDuration*(1+(this.random()-.5)*2*a);setTimeout(()=>{t.terminated||(t.activeTasks--,this.metrics.recordTaskComplete(t.id,n,Date.now()-o))},i)},e);this.mockTaskTimers.set(t.id,r)}startAgentCoordination(t){let e=1e3/t.workload.coordinationFrequency,r=setInterval(()=>{if(t.terminated){clearInterval(r),this.mockCoordinationTimers.delete(t.id);return}let n=this.simulateCoordinationLatency();this.metrics.recordCoordination(t.id,n)},e);this.mockCoordinationTimers.set(t.id,r)}simulateCoordinationLatency(){let e=this.random()*30,r=this.random()<.05?this.random()*100:0,o=Math.min(this.mockAgents.size/100,2)*10;return 5+e+r+o}simulateMemoryUsage(){let t=this.mockAgents.size,e=this.getWorkload().memoryUsage,r=50*1024*1024,n=t*e,o=t*1024*100,a=r+n+o,i=a*1.5;this.metrics.recordMemoryUsage(a,i)}getRandomDomain(){let t=["test-generation","test-execution","coverage-analysis","quality-assessment","defect-intelligence","security-compliance"];return t[Math.floor(this.random()*t.length)]}getWorkload(){return this.config.customWorkload?this.config.customWorkload:g[this.config.workloadProfile]}evaluateSuccess(t,e){let{summary:r,performance:n}=t;return!(r.peakAgents<e.agentCount||t.resources.memoryPeak>=e.memoryLimit||n.coordinationLatency.p95>e.coordinationLatency||e.noAgentStarvation&&!r.successCriteria.noStarvation||e.noDeadlocks&&!r.successCriteria.noDeadlocks)}async cleanup(){this.stopChurn();let t=Array.from(this.mockAgents.keys());for(let e of t)await this.terminateMockAgent(e);this.mockTaskTimers.forEach(e=>{clearInterval(e)}),this.mockTaskTimers.clear(),this.mockCoordinationTimers.forEach(e=>{clearInterval(e)}),this.mockCoordinationTimers.clear()}delay(t){return new Promise(e=>setTimeout(e,t))}seededRandom(t){return function(){let e=t+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}}};function B(s,t,e){return new m(s,t,e)}function _(s,t="medium"){return new m({maxAgents:s,workloadProfile:t,mockMode:!0})}export{m as AgentLoadTester,l as BottleneckAnalyzer,b as DEFAULT_ANALYZER_CONFIG,A as DEFAULT_LOAD_TEST_CONFIG,S as DEFAULT_SUCCESS_CRITERIA,h as DEFAULT_THRESHOLDS,u as MetricsCollector,R as SCENARIO_BURST_100,x as SCENARIO_CHURN_100,M as SCENARIO_RAMP_UP_100,D as SCENARIO_STRESS_150,g as WORKLOAD_PROFILES,B as createAgentLoadTester,T as createBottleneckAnalyzer,f as createBottleneckAnalyzerWithThresholds,_ as createLoadTesterForTarget,k as createMetricsCollector};
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import"./chunk-IIAR5S7Q.js";import"./chunk-PSPKSUF6.js";import{a as d}from"./chunk-BHFR2EXL.js";import"./chunk-WJTSY5MC.js";import{a as v,c as P}from"./chunk-J5UNP6W3.js";import{i as C}from"./chunk-W2XCZU62.js";import"./chunk-XZSMZHM2.js";import"./chunk-NU7UTXMP.js";import"./chunk-JSZ663MU.js";var L={maxEvents:1e5,memorySampleInterval:1e3,enableTimeline:!0,timelineSampleInterval:1e3},u=class{config;activeAgents=new Map;peakAgentCount=0;totalAgentsSpawned=0;activeTasks=new Map;totalTasksStarted=0;totalTasksCompleted=0;coordinationLatencies;taskDurations;memorySnapshots;peakMemoryUsed=0;memorySum=0;memorySamples=0;agentTimeline=[];latencyTimeline=[];memoryTimeline=[];startTime=0;endTime=0;running=!1;memorySamplerTimer=null;timelineSamplerTimer=null;issues=[];constructor(t={}){this.config={...L,...t},this.coordinationLatencies=new d(this.config.maxEvents),this.taskDurations=new d(this.config.maxEvents),this.memorySnapshots=new d(1e4)}start(){this.running||(this.running=!0,this.startTime=Date.now(),this.memorySamplerTimer=setInterval(()=>{this.sampleMemory()},this.config.memorySampleInterval),this.config.enableTimeline&&(this.timelineSamplerTimer=setInterval(()=>{this.sampleTimeline()},this.config.timelineSampleInterval)))}stop(){this.running&&(this.running=!1,this.endTime=Date.now(),this.memorySamplerTimer&&(clearInterval(this.memorySamplerTimer),this.memorySamplerTimer=null),this.timelineSamplerTimer&&(clearInterval(this.timelineSamplerTimer),this.timelineSamplerTimer=null))}reset(){this.stop(),this.activeAgents.clear(),this.peakAgentCount=0,this.totalAgentsSpawned=0,this.activeTasks.clear(),this.totalTasksStarted=0,this.totalTasksCompleted=0,this.coordinationLatencies.clear(),this.taskDurations.clear(),this.memorySnapshots.clear(),this.peakMemoryUsed=0,this.memorySum=0,this.memorySamples=0,this.agentTimeline.length=0,this.latencyTimeline.length=0,this.memoryTimeline.length=0,this.startTime=0,this.endTime=0,this.issues.length=0}recordAgentSpawn(t,e=Date.now()){this.activeAgents.set(t,e),this.totalAgentsSpawned++;let r=this.activeAgents.size;r>this.peakAgentCount&&(this.peakAgentCount=r)}recordAgentTerminate(t,e=Date.now()){this.activeAgents.delete(t)}recordTaskStart(t,e,r=Date.now()){this.activeTasks.set(e,{agentId:t,startTime:r}),this.totalTasksStarted++}recordTaskComplete(t,e,r,n=Date.now()){let o=this.activeTasks.get(e);o&&o.agentId===t&&(this.activeTasks.delete(e),this.taskDurations.push(r),this.totalTasksCompleted++)}recordCoordination(t,e,r=Date.now()){this.coordinationLatencies.push(e),e>100&&this.issues.push(`High coordination latency for agent ${t}: ${e}ms`)}recordMemoryUsage(t,e){let r={timestamp:Date.now(),heapUsed:t,heapTotal:e,external:0,rss:0};this.memorySnapshots.push(r),this.memorySum+=t,this.memorySamples++,t>this.peakMemoryUsed&&(this.peakMemoryUsed=t);let n=4*1024*1024*1024;t>n&&this.issues.push(`Memory exceeded 4GB limit: ${(t/1024/1024/1024).toFixed(2)}GB`)}recordIssue(t){this.issues.push(t)}getAgentCount(){return this.activeAgents.size}getPeakAgentCount(){return this.peakAgentCount}getTotalAgentsSpawned(){return this.totalAgentsSpawned}getP95CoordinationLatency(){return this.calculatePercentile(this.coordinationLatencies.toArray(),.95)}getP99CoordinationLatency(){return this.calculatePercentile(this.coordinationLatencies.toArray(),.99)}getCoordinationLatencyPercentiles(){return this.calculatePercentiles(this.coordinationLatencies.toArray())}getTaskLatencyPercentiles(){return this.calculatePercentiles(this.taskDurations.toArray())}getMaxMemoryUsage(){return this.peakMemoryUsed}getAverageMemoryUsage(){return this.memorySamples>0?this.memorySum/this.memorySamples:0}getThroughput(){let e=this.getDuration()/1e3;return{tasks:this.totalTasksCompleted,tasksPerSecond:e>0?this.totalTasksCompleted/e:0,agents:this.totalAgentsSpawned,agentsPerSecond:e>0?this.totalAgentsSpawned/e:0}}getDuration(){return this.startTime===0?0:(this.endTime>0?this.endTime:Date.now())-this.startTime}hasAgentStarvation(){let t=this.activeAgents.size,e=this.activeTasks.size;return t>0&&e===0&&this.totalTasksCompleted>0}hasDeadlocks(){let t=Date.now(),e=6e4,r=Array.from(this.activeTasks.values());for(let n of r)if(t-n.startTime>e)return!0;return!1}exportReport(){let t=this.getDuration(),e=this.getCoordinationLatencyPercentiles(),r=this.getTaskLatencyPercentiles(),n=this.getThroughput(),o=100,a=4*1024*1024*1024,c={agentCount:this.peakAgentCount>=o,memoryLimit:this.peakMemoryUsed<a,coordinationLatency:e.p95<=100,noDeadlocks:!this.hasDeadlocks(),noStarvation:!this.hasAgentStarvation()},y=Object.values(c).every(Boolean),p=this.generateRecommendations(e,this.peakMemoryUsed,n);return{summary:{totalAgents:this.totalAgentsSpawned,peakAgents:this.peakAgentCount,totalTasks:this.totalTasksCompleted,duration:t,success:y,successCriteria:c},performance:{coordinationLatency:e,taskLatency:r,throughput:n},resources:{memoryPeak:this.peakMemoryUsed,memoryAverage:this.getAverageMemoryUsage(),cpuPeak:0,cpuAverage:0},timeline:{agentCounts:[...this.agentTimeline],latencies:[...this.latencyTimeline],memoryUsage:[...this.memoryTimeline]},issues:[...this.issues],recommendations:p}}sampleMemory(){let t=process.memoryUsage();this.recordMemoryUsage(t.heapUsed,t.heapTotal)}sampleTimeline(){let t=Date.now();this.agentTimeline.push({timestamp:t,count:this.activeAgents.size});let e=this.coordinationLatencies.toArray();e.length>0&&this.latencyTimeline.push({timestamp:t,p95:this.calculatePercentile(e,.95)});let r=process.memoryUsage();this.memoryTimeline.push({timestamp:t,heapUsed:r.heapUsed});let n=1e3;this.agentTimeline.length>n&&this.agentTimeline.shift(),this.latencyTimeline.length>n&&this.latencyTimeline.shift(),this.memoryTimeline.length>n&&this.memoryTimeline.shift()}calculatePercentile(t,e){if(t.length===0)return 0;let r=[...t].sort((o,a)=>o-a),n=Math.ceil(r.length*e)-1;return r[Math.max(0,n)]}calculatePercentiles(t){if(t.length===0)return{p50:0,p95:0,p99:0,max:0,min:0,avg:0,count:0};let e=[...t].sort((n,o)=>n-o),r=e.reduce((n,o)=>n+o,0);return{p50:this.calculatePercentile(e,.5),p95:this.calculatePercentile(e,.95),p99:this.calculatePercentile(e,.99),max:e[e.length-1],min:e[0],avg:r/e.length,count:e.length}}generateRecommendations(t,e,r){let n=[];t.p95>100&&n.push(`P95 coordination latency (${t.p95.toFixed(1)}ms) exceeds 100ms target. Consider optimizing gossip protocol or reducing agent count.`),t.p99>t.p95*2&&n.push("High P99/P95 ratio indicates latency outliers. Investigate specific agents or network conditions.");let o=e/1024/1024/1024;return o>3&&n.push(`Memory usage (${o.toFixed(2)}GB) approaching 4GB limit. Consider implementing agent pooling or reducing per-agent memory.`),r.tasksPerSecond<10&&n.push(`Task throughput (${r.tasksPerSecond.toFixed(1)}/s) is low. Consider parallelizing task execution or reducing task complexity.`),this.issues.length>10&&n.push(`${this.issues.length} issues recorded. Review issue log for patterns and prioritize fixes.`),n}};function k(s){return new u(s)}P();var h={memoryWarning:3*1024*1024*1024,memoryCritical:4*1024*1024*1024,latencyP95Warning:75,latencyP95Critical:100,latencyP99Warning:150,latencyP99Critical:200,agentStarvationTime:3e4,deadlockTimeout:6e4,minTasksPerSecond:5,minAgentUtilization:.5,gossipConvergenceTime:5e3,gossipMaxPartitions:0},b={thresholds:h,enableDetailedAnalysis:!0},l=class{config;constructor(t={}){this.config={...b,...t,thresholds:{...h,...t.thresholds}}}analyze(t){let e=[];e.push(this.checkMemoryPressure(t)),e.push(this.checkCoordinationLatencyP95(t)),e.push(this.checkCoordinationLatencyP99(t)),e.push(this.checkAgentStarvation(t)),e.push(this.checkDeadlocks(t)),e.push(this.checkThroughput(t));let r=e.filter(i=>i.detected),n={totalChecks:e.length,detected:r.length,critical:r.filter(i=>i.severity==="critical").length,high:r.filter(i=>i.severity==="high").length,medium:r.filter(i=>i.severity==="medium").length,low:r.filter(i=>i.severity==="low").length},o="low";n.critical>0?o="critical":n.high>0?o="high":n.medium>0&&(o="medium");let a=this.generatePrioritizedRecommendations(r);return{overallSeverity:o,hasCritical:n.critical>0,bottlenecks:e,summary:n,recommendations:a,timestamp:new Date}}analyzeReport(t){let e=[];e.push(this.checkMemoryFromReport(t)),e.push(this.checkLatencyP95FromReport(t)),e.push(this.checkLatencyP99FromReport(t)),e.push(this.checkThroughputFromReport(t)),e.push(this.checkSuccessCriteria(t));let r=e.filter(i=>i.detected),n={totalChecks:e.length,detected:r.length,critical:r.filter(i=>i.severity==="critical").length,high:r.filter(i=>i.severity==="high").length,medium:r.filter(i=>i.severity==="medium").length,low:r.filter(i=>i.severity==="low").length},o="low";n.critical>0?o="critical":n.high>0?o="high":n.medium>0&&(o="medium");let a=this.generatePrioritizedRecommendations(r);return{overallSeverity:o,hasCritical:n.critical>0,bottlenecks:e,summary:n,recommendations:a,timestamp:new Date}}checkMemoryPressure(t){let e=t?.getMaxMemoryUsage()??process.memoryUsage().heapUsed,{memoryWarning:r,memoryCritical:n}=this.config.thresholds,o=e>=r,a="low",i="Memory usage is within acceptable limits.";return e>=n?(a="critical",i="Memory usage exceeds 4GB limit. Implement agent pooling, reduce per-agent state, or decrease concurrent agent count."):e>=r&&(a="high",i="Memory usage approaching critical threshold. Consider optimizing agent memory footprint or implementing memory pressure relief mechanisms."),{detected:o,severity:a,metric:"memory_pressure",threshold:n,actual:e,recommendation:i,context:{usedGB:e/1024/1024/1024,warningThresholdGB:r/1024/1024/1024,criticalThresholdGB:n/1024/1024/1024}}}checkCoordinationLatency(){return this.checkCoordinationLatencyP95()}checkCoordinationLatencyP95(t){let e=t?.getP95CoordinationLatency()??0,{latencyP95Warning:r,latencyP95Critical:n}=this.config.thresholds,o=e>=r,a="low",i="P95 coordination latency is within acceptable limits.";return e>=n?(a="critical",i="P95 coordination latency exceeds 100ms target. Optimize gossip protocol, reduce message size, or implement batching."):e>=r&&(a="medium",i="P95 coordination latency approaching target. Monitor closely and consider proactive optimization."),{detected:o,severity:a,metric:"coordination_latency_p95",threshold:n,actual:e,recommendation:i}}checkCoordinationLatencyP99(t){let e=t?.getP99CoordinationLatency()??0,{latencyP99Warning:r,latencyP99Critical:n}=this.config.thresholds,o=e>=r,a="low",i="P99 coordination latency is within acceptable limits.";return e>=n?(a="high",i="P99 coordination latency indicates outliers. Investigate specific agents or network conditions causing delays."):e>=r&&(a="medium",i="P99 coordination latency elevated. Some agents may be experiencing delays."),{detected:o,severity:a,metric:"coordination_latency_p99",threshold:n,actual:e,recommendation:i}}checkAgentStarvation(t){let e=t?.hasAgentStarvation()??!1;return{detected:e,severity:e?"high":"low",metric:"agent_starvation",threshold:this.config.thresholds.agentStarvationTime,actual:e?1:0,recommendation:e?"Agent starvation detected. Agents are idle without tasks. Review task distribution algorithm and work stealing configuration.":"No agent starvation detected."}}checkDeadlocks(t){let e=t?.hasDeadlocks()??!1;return{detected:e,severity:e?"critical":"low",metric:"deadlock_detection",threshold:this.config.thresholds.deadlockTimeout,actual:e?1:0,recommendation:e?"Potential deadlock detected. Tasks running for extended period. Review lock ordering and add timeout mechanisms.":"No deadlocks detected."}}checkGossipStability(){return{detected:!1,severity:"low",metric:"gossip_stability",threshold:this.config.thresholds.gossipMaxPartitions,actual:0,recommendation:"Gossip protocol stability check requires integration with gossip metrics."}}checkThroughput(t){let r=t?.getThroughput()?.tasksPerSecond??0,n=this.config.thresholds.minTasksPerSecond,o=r<n&&r>0;return{detected:o,severity:o?"medium":"low",metric:"throughput",threshold:n,actual:r,recommendation:o?`Task throughput (${r.toFixed(1)}/s) below minimum (${n}/s). Consider parallelizing task execution or optimizing task handlers.`:"Task throughput is acceptable."}}checkMemoryFromReport(t){let e=t.resources.memoryPeak,{memoryCritical:r}=this.config.thresholds;return{detected:e>=r,severity:e>=r?"critical":"low",metric:"memory_pressure",threshold:r,actual:e,recommendation:e>=r?"Memory exceeded 4GB limit during test.":"Memory usage within limits."}}checkLatencyP95FromReport(t){let e=t.performance.coordinationLatency.p95,{latencyP95Critical:r}=this.config.thresholds;return{detected:e>=r,severity:e>=r?"critical":"low",metric:"coordination_latency_p95",threshold:r,actual:e,recommendation:e>=r?"P95 coordination latency exceeded 100ms target.":"P95 latency within target."}}checkLatencyP99FromReport(t){let e=t.performance.coordinationLatency.p99,{latencyP99Critical:r}=this.config.thresholds;return{detected:e>=r,severity:e>=r?"high":"low",metric:"coordination_latency_p99",threshold:r,actual:e,recommendation:e>=r?"P99 coordination latency indicates significant outliers.":"P99 latency acceptable."}}checkThroughputFromReport(t){let e=t.performance.throughput.tasksPerSecond,r=this.config.thresholds.minTasksPerSecond;return{detected:e<r&&e>0,severity:e<r?"medium":"low",metric:"throughput",threshold:r,actual:e,recommendation:e<r?"Throughput below minimum target.":"Throughput acceptable."}}checkSuccessCriteria(t){let e=t.summary.successCriteria,r=Object.entries(e).filter(([n,o])=>!o).map(([n])=>n);return{detected:r.length>0,severity:r.length>0?"high":"low",metric:"success_criteria",threshold:0,actual:r.length,recommendation:r.length>0?`Failed criteria: ${r.join(", ")}`:"All success criteria met.",context:{failedCriteria:r}}}generatePrioritizedRecommendations(t){let e={critical:0,high:1,medium:2,low:3},r=[...t].sort((a,i)=>e[a.severity]-e[i.severity]),n=new Set,o=[];for(let a of r)n.has(a.recommendation)||(n.add(a.recommendation),o.push(`[${a.severity.toUpperCase()}] ${a.metric}: ${a.recommendation}`));return o}};function T(s){return new l(s)}function f(s){return new l({thresholds:{...h,...s}})}var A={maxAgents:100,memoryLimit:4*1024*1024*1024,coordinationTimeout:100,workloadProfile:"medium",mockMode:!0},S={agentCount:100,memoryLimit:4*1024*1024*1024,coordinationLatency:100,noAgentStarvation:!0,noDeadlocks:!0,gossipStable:!0},g={light:{taskCount:5,taskDuration:50,memoryUsage:5*1024*1024,coordinationFrequency:2,durationVariance:.1},medium:{taskCount:10,taskDuration:100,memoryUsage:10*1024*1024,coordinationFrequency:5,durationVariance:.2},heavy:{taskCount:20,taskDuration:200,memoryUsage:20*1024*1024,coordinationFrequency:10,durationVariance:.3}},M={name:"ramp-up-100",description:"Gradually add agents until reaching 100",steps:[{agents:25,holdTime:3e4},{agents:50,holdTime:3e4},{agents:75,holdTime:3e4},{agents:100,holdTime:6e4}],workload:g.medium},R={name:"burst-100",description:"Instantly spawn 100 agents",steps:[{agents:100,holdTime:12e4}],workload:{taskCount:20,taskDuration:50,memoryUsage:10*1024*1024,coordinationFrequency:5}},x={name:"churn-100",description:"Maintain 100 agents with continuous spawn/terminate",steps:[{agents:100,holdTime:18e4,churnRate:.1}],workload:{taskCount:15,taskDuration:75,memoryUsage:10*1024*1024,coordinationFrequency:5}},D={name:"stress-150",description:"Push beyond 100 agents to find limits",steps:[{agents:100,holdTime:3e4},{agents:125,holdTime:3e4},{agents:150,holdTime:6e4}],workload:g.heavy,criteria:{agentCount:150}},m=class{config;metrics;analyzer;running=!1;stopRequested=!1;mockAgents=new Map;mockTaskTimers=new Map;mockCoordinationTimers=new Map;churnTimer=null;random;constructor(t={},e,r){this.config={...A,...t},this.metrics=k(e),this.analyzer=r?f(r):T(),this.random=this.config.seed!==void 0?this.seededRandom(this.config.seed):Math.random.bind(Math)}async runTest(t,e){let r={name:"custom",description:`Custom test with ${t} agents for ${e}ms`,steps:[{agents:t,holdTime:e}],workload:this.getWorkload()};return this.runScenario(r)}async runScenario(t){if(this.running)throw new Error("Load test already running");this.running=!0,this.stopRequested=!1;let e=Date.now();try{this.metrics.reset(),this.metrics.start();for(let i of t.steps){if(this.stopRequested)break;await this.executeStep(i,t.workload)}this.metrics.stop();let r=this.metrics.exportReport(),n=this.analyzer.analyzeReport(r),o={...S,...t.criteria};return{success:this.evaluateSuccess(r,o),report:r,bottlenecks:n,config:this.config,duration:Date.now()-e}}catch(r){return this.metrics.stop(),{success:!1,report:this.metrics.exportReport(),bottlenecks:this.analyzer.analyze(this.metrics),config:this.config,duration:Date.now()-e,error:v(r)}}finally{await this.cleanup(),this.running=!1}}async rampUp(t,e){let r=this.mockAgents.size,n=t-r;if(n<=0)return;let o=e/n,a=this.getWorkload();for(let i=0;i<n&&!this.stopRequested;i++)await this.spawnMockAgent(a),await this.delay(o)}async simulateAgent(t,e){let r=Date.now(),n=0,o=0;for(let a=0;a<e.taskCount&&!this.stopRequested;a++){let i=`${t}_task_${a}`,c=Date.now();this.metrics.recordTaskStart(t,i,c);let y=e.durationVariance??.2,p=e.taskDuration*(1+(this.random()-.5)*2*y);await this.delay(p),this.metrics.recordTaskComplete(t,i,Date.now()-c),n++;let w=this.simulateCoordinationLatency();this.metrics.recordCoordination(t,w),o++}return{agentId:t,tasksCompleted:n,totalDuration:Date.now()-r,coordinationEvents:o}}async stop(){this.stopRequested=!0,await this.delay(100),await this.cleanup()}getMetrics(){return this.metrics}getAgentCount(){return this.mockAgents.size}isRunning(){return this.running}async executeStep(t,e){let r=t.agents,n=this.mockAgents.size;r>n?await this.spawnAgents(r-n,e):r<n&&await this.terminateAgents(n-r),t.churnRate&&t.churnRate>0&&this.startChurn(t.churnRate,r,e),await this.hold(t.holdTime),this.stopChurn()}async spawnAgents(t,e){let r=[];for(let n=0;n<t&&!this.stopRequested;n++)r.push(this.spawnMockAgent(e)),r.length>=10&&(await Promise.all(r),r.length=0,await this.delay(10));r.length>0&&await Promise.all(r)}async terminateAgents(t){let e=Array.from(this.mockAgents.keys()).slice(0,t);for(let r of e)await this.terminateMockAgent(r)}async hold(t){let r=0;for(;r<t&&!this.stopRequested;)await this.delay(100),r+=100}startChurn(t,e,r){let o=6e4/Math.ceil(e*t);this.churnTimer=setInterval(async()=>{if(this.random()<.5){let a=Array.from(this.mockAgents.keys());if(a.length>0){let i=a[Math.floor(this.random()*a.length)];await this.terminateMockAgent(i)}}this.mockAgents.size<e&&await this.spawnMockAgent(r)},o)}stopChurn(){this.churnTimer&&(clearInterval(this.churnTimer),this.churnTimer=null)}async spawnMockAgent(t){let e=`agent_${C().slice(0,8)}`,r=Date.now(),n={id:e,domain:this.getRandomDomain(),spawnedAt:r,workload:t,activeTasks:0,totalTasks:0,terminated:!1};this.mockAgents.set(e,n),this.metrics.recordAgentSpawn(e,r),this.startAgentTasks(n),this.startAgentCoordination(n),this.simulateMemoryUsage()}async terminateMockAgent(t){let e=this.mockAgents.get(t);if(!e)return;e.terminated=!0;let r=this.mockTaskTimers.get(t);r&&(clearInterval(r),this.mockTaskTimers.delete(t));let n=this.mockCoordinationTimers.get(t);n&&(clearInterval(n),this.mockCoordinationTimers.delete(t)),this.mockAgents.delete(t),this.metrics.recordAgentTerminate(t,Date.now())}startAgentTasks(t){let e=t.workload.taskDuration*1.5,r=setInterval(()=>{if(t.terminated||t.totalTasks>=t.workload.taskCount){clearInterval(r),this.mockTaskTimers.delete(t.id);return}let n=`${t.id}_task_${t.totalTasks}`,o=Date.now();t.activeTasks++,t.totalTasks++,this.metrics.recordTaskStart(t.id,n,o);let a=t.workload.durationVariance??.2,i=t.workload.taskDuration*(1+(this.random()-.5)*2*a);setTimeout(()=>{t.terminated||(t.activeTasks--,this.metrics.recordTaskComplete(t.id,n,Date.now()-o))},i)},e);this.mockTaskTimers.set(t.id,r)}startAgentCoordination(t){let e=1e3/t.workload.coordinationFrequency,r=setInterval(()=>{if(t.terminated){clearInterval(r),this.mockCoordinationTimers.delete(t.id);return}let n=this.simulateCoordinationLatency();this.metrics.recordCoordination(t.id,n)},e);this.mockCoordinationTimers.set(t.id,r)}simulateCoordinationLatency(){let e=this.random()*30,r=this.random()<.05?this.random()*100:0,o=Math.min(this.mockAgents.size/100,2)*10;return 5+e+r+o}simulateMemoryUsage(){let t=this.mockAgents.size,e=this.getWorkload().memoryUsage,r=50*1024*1024,n=t*e,o=t*1024*100,a=r+n+o,i=a*1.5;this.metrics.recordMemoryUsage(a,i)}getRandomDomain(){let t=["test-generation","test-execution","coverage-analysis","quality-assessment","defect-intelligence","security-compliance"];return t[Math.floor(this.random()*t.length)]}getWorkload(){return this.config.customWorkload?this.config.customWorkload:g[this.config.workloadProfile]}evaluateSuccess(t,e){let{summary:r,performance:n}=t;return!(r.peakAgents<e.agentCount||t.resources.memoryPeak>=e.memoryLimit||n.coordinationLatency.p95>e.coordinationLatency||e.noAgentStarvation&&!r.successCriteria.noStarvation||e.noDeadlocks&&!r.successCriteria.noDeadlocks)}async cleanup(){this.stopChurn();let t=Array.from(this.mockAgents.keys());for(let e of t)await this.terminateMockAgent(e);this.mockTaskTimers.forEach(e=>{clearInterval(e)}),this.mockTaskTimers.clear(),this.mockCoordinationTimers.forEach(e=>{clearInterval(e)}),this.mockCoordinationTimers.clear()}delay(t){return new Promise(e=>setTimeout(e,t))}seededRandom(t){return function(){let e=t+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}}};function B(s,t,e){return new m(s,t,e)}function _(s,t="medium"){return new m({maxAgents:s,workloadProfile:t,mockMode:!0})}export{m as AgentLoadTester,l as BottleneckAnalyzer,b as DEFAULT_ANALYZER_CONFIG,A as DEFAULT_LOAD_TEST_CONFIG,S as DEFAULT_SUCCESS_CRITERIA,h as DEFAULT_THRESHOLDS,u as MetricsCollector,R as SCENARIO_BURST_100,x as SCENARIO_CHURN_100,M as SCENARIO_RAMP_UP_100,D as SCENARIO_STRESS_150,g as WORKLOAD_PROFILES,B as createAgentLoadTester,T as createBottleneckAnalyzer,f as createBottleneckAnalyzerWithThresholds,_ as createLoadTesterForTarget,k as createMetricsCollector};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{a}from"./chunk-6VAZAHQG.js";import"./chunk-YDFL445W.js";import"./chunk-LULD4JV2.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-7VFY7TUR.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{a as LoadTestTool};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{a as p}from"./chunk-TUSSPKRM.js";import{a as i,d as c}from"./chunk-IUHB5GVS.js";import{a as m}from"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-JSZ663MU.js";import{Command as a}from"commander";import{join as e,dirname as l}from"path";import{existsSync as d}from"fs";import{fileURLToPath as f,pathToFileURL as u}from"url";m();function g(){return new a("mcp").description("Start the MCP protocol server for Claude Code integration").option("--http <port>","Also start HTTP server for AG-UI/A2A protocols","0").option("--verbose","Enable verbose logging").action(async r=>{process.env.AQE_HTTP_PORT=r.http||"0",r.verbose&&(process.env.AQE_VERBOSE="true"),c(i(process.env,1));let s=v();s||(console.error("Error: Could not find MCP server entry point"),console.error("Make sure agentic-qe is properly installed"),process.exit(1));try{await import(u(s).href)}catch(o){console.error("Failed to start MCP server:",o.message),process.exit(1)}await new Promise(()=>{})})}function v(){let t=[],r=p(import.meta.url);r&&t.push(e(r,"dist","mcp","bundle.js"),e(r,"dist","mcp","entry.js"),e(r,"src","mcp","entry.ts"));let s=f(import.meta.url),o=l(s);t.push(e(o,"..","mcp","bundle.js"),e(o,"..","mcp","entry.js"),e(o,"..","mcp","entry.ts"),e(o,"..","..","mcp","bundle.js")),t.push(e(process.cwd(),"node_modules","agentic-qe","dist","mcp","bundle.js"),e(process.cwd(),"node_modules","agentic-qe","dist","mcp","entry.js"));for(let n of t)if(d(n))return n;return null}var L=g;export{g as createMcpCommand,L as default};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.
|
|
2
|
-
import{a as
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{a as i,c as p}from"./chunk-J5UNP6W3.js";import"./chunk-JSZ663MU.js";p();import{Command as f}from"commander";import r from"chalk";function S(w,o,l){let c=new f("memory").description("Memory store, retrieve, search, and delete operations").addHelpText("after",`
|
|
3
3
|
Examples:
|
|
4
4
|
# Store a value
|
|
5
5
|
aqe memory store --key "auth-pattern" --value "JWT with refresh tokens" --namespace patterns
|
|
@@ -24,9 +24,9 @@ Examples:
|
|
|
24
24
|
|
|
25
25
|
# Show usage stats
|
|
26
26
|
aqe memory usage
|
|
27
|
-
`);return c.command("store").description("Store a key-value pair in memory").requiredOption("--key <key>","Memory key").requiredOption("--value <value>","Value to store (string or JSON)").option("--namespace <ns>","Namespace for grouping","default").option("--ttl <seconds>","Time-to-live in seconds").option("--json","Output as JSON").action(async e=>{if(await
|
|
27
|
+
`);return c.command("store").description("Store a key-value pair in memory").requiredOption("--key <key>","Memory key").requiredOption("--value <value>","Value to store (string or JSON)").option("--namespace <ns>","Namespace for grouping","default").option("--ttl <seconds>","Time-to-live in seconds").option("--json","Output as JSON").action(async e=>{if(await l())try{let{handleMemoryStore:t}=await import("./memory-handlers-XT4HMITB.js"),a=e.value;try{a=JSON.parse(e.value)}catch{}let s=await t({key:e.key,value:a,namespace:e.namespace,ttl:e.ttl?parseInt(e.ttl,10):void 0});e.json?console.log(JSON.stringify(s,null,2)):s.success?(console.log(r.green(` \u2713 Stored "${e.key}" in namespace "${e.namespace}"`)),s.data?.vectorIndex?.status==="failed"&&console.warn(r.yellow(` \u26A0 ${s.data.vectorIndex.error.message}`))):(console.error(r.red(` \u2717 ${s.error}`)),await o(1))}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c.command("get").description("Retrieve a value by key").requiredOption("--key <key>","Memory key to retrieve").option("--namespace <ns>","Namespace","default").option("--include-metadata","Include metadata in response").option("--json","Output as JSON").action(async e=>{if(await l())try{let{handleMemoryRetrieve:t}=await import("./memory-handlers-XT4HMITB.js"),a=await t({key:e.key,namespace:e.namespace,includeMetadata:e.includeMetadata});if(e.json)console.log(JSON.stringify(a,null,2));else if(a.success&&a.data)if(a.data.found){let s=typeof a.data.value=="string"?a.data.value:JSON.stringify(a.data.value,null,2);console.log(r.green(` ${e.key}`)+r.gray(` [${e.namespace}]`)),console.log(` ${s}`)}else console.log(r.yellow(` Key "${e.key}" not found in namespace "${e.namespace}"`));else console.error(r.red(` \u2717 ${a.error}`)),await o(1)}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c.command("search").description("Search memory by pattern (glob) or semantic query").option("--pattern <glob>",'Glob pattern to match keys (e.g., "auth*")').option("--query <text>","Natural language query (implies --semantic)").option("--semantic","Use HNSW vector search for semantic matching").option("--namespace <ns>","Namespace to search in","default").option("--limit <n>","Maximum results","20").option("--offset <n>","Skip first N results","0").option("--json","Output as JSON").action(async e=>{if(!e.pattern&&!e.query&&(console.error(r.red(" Either --pattern or --query is required")),await o(1)),!!await l())try{let{handleMemoryQuery:t}=await import("./memory-handlers-XT4HMITB.js"),a=e.query||e.pattern,s=e.semantic||!!e.query,n=await t({pattern:a,namespace:e.namespace,limit:parseInt(e.limit,10),offset:parseInt(e.offset,10),semantic:s});if(e.json)console.log(JSON.stringify(n,null,2));else if(n.success&&n.data){let{entries:d,total:u,searchType:y}=n.data;console.log(r.blue(` ${u} result(s) via ${y} search
|
|
28
28
|
`));for(let m of d){let g=m.score!==void 0?r.gray(` (score: ${m.score.toFixed(3)})`):"";console.log(` ${r.green(m.key)} ${r.gray(`[${m.namespace}]`)}${g}`)}n.data.hasMore&&console.log(r.gray(`
|
|
29
|
-
... and more. Use --offset ${parseInt(e.offset,10)+parseInt(e.limit,10)} to see next page`))}else console.error(r.red(` \u2717 ${n.error}`)),await o(1)}catch(t){console.error(r.red(` Error: ${
|
|
29
|
+
... and more. Use --offset ${parseInt(e.offset,10)+parseInt(e.limit,10)} to see next page`))}else console.error(r.red(` \u2717 ${n.error}`)),await o(1)}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c.command("list").description("List all memory entries in a namespace").option("--namespace <ns>","Namespace to list","default").option("--limit <n>","Maximum results","50").option("--json","Output as JSON").action(async e=>{if(await l())try{let{handleMemoryQuery:t}=await import("./memory-handlers-XT4HMITB.js"),a=await t({pattern:"*",namespace:e.namespace,limit:parseInt(e.limit,10)});if(e.json)console.log(JSON.stringify(a,null,2));else if(a.success&&a.data){console.log(r.blue(` ${a.data.total} entries in namespace "${e.namespace}"
|
|
30
30
|
`));for(let s of a.data.entries)console.log(` ${r.green(s.key)}`);a.data.hasMore&&console.log(r.gray(`
|
|
31
|
-
... more entries exist. Use --limit to see more.`))}else console.error(r.red(` \u2717 ${a.error}`)),await o(1)}catch(t){console.error(r.red(` Error: ${
|
|
32
|
-
`)),console.log(` Entries: ${r.green(String(a.data.entries))}`),console.log(` Vectors: ${r.green(String(a.data.vectors))}`),console.log(` Namespaces: ${r.green(String(a.data.namespaces))}`)):(console.error(r.red(` \u2717 ${a.error}`)),await o(1))}catch(t){console.error(r.red(` Error: ${
|
|
31
|
+
... more entries exist. Use --limit to see more.`))}else console.error(r.red(` \u2717 ${a.error}`)),await o(1)}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c.command("delete").description("Delete a memory entry by key").requiredOption("--key <key>","Memory key to delete").option("--namespace <ns>","Namespace","default").option("--json","Output as JSON").action(async e=>{if(await l())try{let{handleMemoryDelete:t}=await import("./memory-handlers-XT4HMITB.js"),a=await t({key:e.key,namespace:e.namespace});e.json?console.log(JSON.stringify(a,null,2)):a.success&&a.data?a.data.deleted?console.log(r.green(` \u2713 Deleted "${e.key}" from namespace "${e.namespace}"`)):console.log(r.yellow(` Key "${e.key}" not found in namespace "${e.namespace}"`)):(console.error(r.red(` \u2717 ${a.error}`)),await o(1))}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c.command("share").description("Share knowledge between agents").requiredOption("--from <agentId>","Source agent ID").requiredOption("--to <agentIds>","Comma-separated target agent IDs").requiredOption("--domain <domain>","Knowledge domain").requiredOption("--content <json>","JSON content to share").option("--json","Output as JSON").action(async e=>{if(await l())try{let{handleMemoryShare:t}=await import("./memory-handlers-XT4HMITB.js"),a;try{a=JSON.parse(e.content)}catch{console.error(r.red(" --content must be valid JSON")),await o(1);return}let s=e.to.split(",").map(d=>d.trim()),n=await t({sourceAgentId:e.from,targetAgentIds:s,knowledgeDomain:e.domain,knowledgeContent:a});e.json?console.log(JSON.stringify(n,null,2)):n.success&&n.data?(console.log(r.green(` \u2713 Shared knowledge from ${n.data.sourceAgent} to ${n.data.targetAgents.join(", ")}`)),console.log(r.gray(` Domain: ${n.data.domain}`))):(console.error(r.red(` \u2717 ${n.error}`)),await o(1))}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c.command("usage").description("Show memory usage statistics").option("--json","Output as JSON").action(async e=>{if(await l())try{let{handleMemoryUsage:t}=await import("./memory-handlers-XT4HMITB.js"),a=await t();e.json?console.log(JSON.stringify(a,null,2)):a.success&&a.data?(console.log(r.blue(` Memory Usage
|
|
32
|
+
`)),console.log(` Entries: ${r.green(String(a.data.entries))}`),console.log(` Vectors: ${r.green(String(a.data.vectors))}`),console.log(` Namespaces: ${r.green(String(a.data.namespaces))}`)):(console.error(r.red(` \u2717 ${a.error}`)),await o(1))}catch(t){console.error(r.red(` Error: ${i(t)}`)),await o(1)}}),c}export{S as createMemoryCommand};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{a}from"./chunk-7VFY7TUR.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-JSZ663MU.js";export{a as InMemoryBackend};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{c as S,d as b}from"./chunk-YXP6BKGS.js";import"./chunk-K27SU3RE.js";import"./chunk-WK7B4B6Y.js";import"./chunk-3EZ5DR2R.js";import"./chunk-IUDWEOLX.js";import"./chunk-37TUN44F.js";import"./chunk-6TU7FEMD.js";import"./chunk-3YUB5HER.js";import"./chunk-N7H767TP.js";import"./chunk-DPBRWP4J.js";import"./chunk-G3L5L6YQ.js";import"./chunk-RIZVC4XY.js";import"./chunk-IYTLXUBO.js";import"./chunk-AFEDJ3RU.js";import"./chunk-2OMLTYQK.js";import"./chunk-HSVKZ5KI.js";import"./chunk-QYOGD2VW.js";import"./chunk-OEIQTWQP.js";import"./chunk-DKUBQQFG.js";import"./chunk-JES6R5KP.js";import"./chunk-XLAUGSW7.js";import"./chunk-AF4XKLXO.js";import"./chunk-6VAZAHQG.js";import"./chunk-FUNGTIF2.js";import"./chunk-KKHYJF5U.js";import"./chunk-E3W6XQ57.js";import"./chunk-VTOVWHEM.js";import"./chunk-RGGK6VZ7.js";import"./chunk-TY5WC3FT.js";import"./chunk-XFPPERA2.js";import"./chunk-67YV75XP.js";import"./chunk-C3Z4VVHP.js";import"./chunk-KEY43ANX.js";import"./chunk-ZCWERUYB.js";import"./chunk-UDHVCKGA.js";import"./chunk-HYEJJJY3.js";import"./chunk-6ITZZIQX.js";import"./chunk-YDFL445W.js";import"./chunk-IGBEJ4UJ.js";import"./chunk-75QJ5HWE.js";import"./chunk-3DDXWYMO.js";import"./chunk-CPC7FN52.js";import"./chunk-KLTP5IDB.js";import"./chunk-RD2VGOUH.js";import"./chunk-HVXJC3OC.js";import"./chunk-KO4FNAUR.js";import"./chunk-M5AEL7IS.js";import"./chunk-YQGPQBCX.js";import"./chunk-WOIGKU2N.js";import"./chunk-E4AZXCT5.js";import"./chunk-2KJQ2UQE.js";import"./chunk-AMMQOV35.js";import{a as u,b as w,d as v,e as d,f as m,i as R}from"./chunk-QIRL6B3C.js";import"./chunk-IIAR5S7Q.js";import"./chunk-PSPKSUF6.js";import"./chunk-4FWTLJEP.js";import"./chunk-CYE2TJFV.js";import"./chunk-JVQBWYHW.js";import"./chunk-BHFR2EXL.js";import"./chunk-UKGXWW64.js";import"./chunk-I2NENQ44.js";import"./chunk-F34OAHOM.js";import"./chunk-DLF5BOJD.js";import"./chunk-QZMUXJHZ.js";import"./chunk-UJWAWIRV.js";import"./chunk-MI5Q55DG.js";import"./chunk-RP2ZKPYV.js";import"./chunk-6LKDHEBY.js";import"./chunk-5WOSWNDN.js";import"./chunk-BJPL6THQ.js";import"./chunk-WJTSY5MC.js";import"./chunk-BYG36QC5.js";import"./chunk-7DETTOPZ.js";import"./chunk-EOR2UT72.js";import"./chunk-SQKW3B6B.js";import"./chunk-K7NJHFLZ.js";import"./chunk-2JGEZHWY.js";import"./chunk-BXVAVFGU.js";import"./chunk-JROVR6YS.js";import"./chunk-WX6RRIGW.js";import"./chunk-E4EYPYR3.js";import"./chunk-R6IU3EWP.js";import"./chunk-GTKCGPJZ.js";import"./chunk-ZBABIZ2D.js";import"./chunk-SX4JLSLV.js";import"./chunk-HBCGYMQU.js";import"./chunk-6CR4VQBQ.js";import"./chunk-Y5L3ES4L.js";import"./chunk-7X7JYWT4.js";import"./chunk-RD6TEZ64.js";import"./chunk-LULD4JV2.js";import"./chunk-CZO4BJG5.js";import"./chunk-UTBYJ4RF.js";import{e as M}from"./chunk-KIP6WZGV.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-QWUXCG2L.js";import"./chunk-XEZIIQYJ.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import{a as i,c as p}from"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-7VFY7TUR.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";p();var P=null;function _(e){P=e}function c(){return b()?S().kernel.memory:P}async function V(e){let r=c();if(!r)return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let t=e.namespace||"default",o=`${t}:${e.key}`;if(u()){let s=m(e.key,e.value,t,{tags:e.metadata?.tags}),a=await d.evaluateWrite(s);if(!a.allowed){if(w()&&R.recordViolation({type:"contradiction",severity:"medium",gate:"memoryWriteGate",description:`Memory write blocked for key ${e.key}: ${a.reason}`,context:{key:e.key,namespace:t,reason:a.reason,conflictingPatterns:a.conflictingPatterns}}),v())return{success:!1,error:`Memory write blocked by governance: ${a.reason}`};console.warn(`[MemoryHandler] Write allowed with warning: ${a.reason}`)}}await r.set(o,e.value,{ttl:e.ttl});let n;try{let s=`${e.key} ${JSON.stringify(e.value)}`,a=await M(s);await r.storeVector(o,a,{key:e.key,namespace:t,storedAt:Date.now()}),n={status:"indexed"}}catch{let s="Semantic vector indexing is unavailable for this entry. Configure AQE_EMBEDDER_ENDPOINT for the recommended remote backend. The compatible local @huggingface/transformers@4.2.0 dependency chain currently has unresolved HIGH advisories GHSA-xcpc-8h2w-3j85 and GHSA-f88m-g3jw-g9cj.";console.warn(`[MemoryHandler] VECTOR_INDEX_UNAVAILABLE: ${s}`),n={status:"failed",error:{code:"VECTOR_INDEX_UNAVAILABLE",message:s}}}return u()&&d.registerPattern(m(e.key,e.value,t)),{success:!0,data:{stored:!0,key:e.key,namespace:t,timestamp:new Date().toISOString(),persisted:!0,vectorIndex:n}}}catch(t){return{success:!1,error:`Failed to store memory: ${i(t)}`}}}async function B(e){let r=c();if(!r)return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let o=`${e.namespace||"default"}:${e.key}`,n=await r.get(o);if(n===void 0)return{success:!0,data:{found:!1,key:e.key}};let s={found:!0,key:e.key,value:n,timestamp:new Date().toISOString()};return e.includeMetadata&&(s.metadata={}),{success:!0,data:s}}catch(t){return{success:!1,error:`Failed to retrieve memory: ${i(t)}`}}}function A(e){return e.includes(" ")&&!e.includes("*")&&!e.includes("?")}async function z(e){let r=c();if(!r)return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let t=e.namespace||"default",o=e.limit||100,n=e.offset||0;if((e.semantic===!0||e.semantic!==!1&&e.pattern&&A(e.pattern))&&e.pattern)try{let l=await M(e.pattern),y=t!=="default"?`${t}:`:void 0,h=await r.vectorSearch(l,o+n,y);return{success:!0,data:{entries:h.slice(n,n+o).map(k=>{let g=k.key.split(":");return{key:g.length>1?g.slice(1).join(":"):k.key,namespace:g.length>1?g[0]:t,score:k.score}}),total:h.length,hasMore:n+o<h.length,searchType:"semantic",searchProvenance:r.getVectorSearchProvenance?.()}}}catch(l){console.error(`[MemoryHandler] Semantic search failed, falling back to pattern: ${i(l)}`)}let a=e.pattern?`${t}:${e.pattern}`:`${t}:*`,f=await r.search(a,o+n);return{success:!0,data:{entries:f.slice(n,n+o).map(l=>{let y=l.split(":");return{key:y.slice(1).join(":"),namespace:y[0]}}),total:f.length,hasMore:n+o<f.length,searchType:"pattern"}}}catch(t){return{success:!1,error:`Failed to query memory: ${i(t)}`}}}async function N(e){let r=c();if(!r)return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let t=e.namespace||"default",o=`${t}:${e.key}`;return{success:!0,data:{deleted:await r.delete(o),key:e.key,namespace:t}}}catch(t){return{success:!1,error:`Failed to delete memory: ${i(t)}`}}}async function G(){let e=c();if(!e)return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let r=await e.search("*",1e4),t=0,o=1;try{let n=e;n.getVectorStats&&(t=(await n.getVectorStats())?.vectorCount??0);let s=new Set(r.map(a=>a.split(":")[0]).filter(Boolean));o=Math.max(1,s.size)}catch{}return{success:!0,data:{entries:r.length,vectors:t,namespaces:o,size:{current:r.length,limit:Number.MAX_SAFE_INTEGER,unit:"entries"}}}}catch(r){return{success:!1,error:`Failed to get memory usage: ${i(r)}`}}}async function H(e){let r=c();if(!r)return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let t=`shared:${e.knowledgeDomain}:${Date.now()}`,o={source:e.sourceAgentId,targets:e.targetAgentIds,domain:e.knowledgeDomain,content:e.knowledgeContent,timestamp:new Date().toISOString()};if(u()){let n=m(t,o,e.knowledgeDomain,{agentId:e.sourceAgentId}),s=await d.evaluateWrite(n);if(!s.allowed&&(w()&&R.recordViolation({type:"contradiction",severity:"medium",agentId:e.sourceAgentId,gate:"memoryWriteGate",description:`Shared knowledge blocked for domain ${e.knowledgeDomain}: ${s.reason}`,context:{sourceAgent:e.sourceAgentId,targetAgents:e.targetAgentIds,domain:e.knowledgeDomain,reason:s.reason}}),v()))return{success:!1,error:`Knowledge sharing blocked by governance: ${s.reason}`}}return await r.set(t,o,{namespace:"agent-knowledge"}),u()&&d.registerPattern(m(t,o,e.knowledgeDomain)),{success:!0,data:{shared:!0,sourceAgent:e.sourceAgentId,targetAgents:e.targetAgentIds,domain:e.knowledgeDomain}}}catch(t){return{success:!1,error:`Failed to share memory: ${i(t)}`}}}export{N as handleMemoryDelete,z as handleMemoryQuery,B as handleMemoryRetrieve,H as handleMemoryShare,V as handleMemoryStore,G as handleMemoryUsage,_ as setStandaloneMemoryBackend};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{a as D}from"./chunk-NRE4NAVA.js";import{a as f,e as b}from"./chunk-SQKW3B6B.js";import{a as E,d as $,j as R,n as z}from"./chunk-R6IU3EWP.js";import{a as g}from"./chunk-JSZ663MU.js";import{createHash as N}from"crypto";var B=[{category:"aws_key",regex:/\b(AKIA[0-9A-Z]{16})\b/g,replacement:"<REDACTED:aws_key>",modes:["strict","balanced"]},{category:"env_value",regex:/^([A-Z][A-Z0-9_]{2,})=(.+)$/gm,replacement:"$1=<REDACTED:env_value>",modes:["strict","balanced"]},{category:"api_key_header",regex:/(Authorization:\s*Bearer\s+)\S+/gi,replacement:"$1<REDACTED:api_key>",modes:["strict","balanced"]},{category:"api_key_header",regex:/(x-api-key:\s*)\S+/gi,replacement:"$1<REDACTED:api_key>",modes:["strict","balanced"]},{category:"private_key",regex:/-----BEGIN\s[\w\s]*PRIVATE KEY-----[\s\S]*?-----END\s[\w\s]*PRIVATE KEY-----/g,replacement:"<REDACTED:private_key>",modes:["strict","balanced"]},{category:"jwt",regex:/\beyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\b/g,replacement:"<REDACTED:jwt>",modes:["strict","balanced"]},{category:"github_token",regex:/\b(ghp_|gho_|ghs_|ghr_|github_pat_)[A-Za-z0-9_]{16,}\b/g,replacement:"<REDACTED:github_token>",modes:["strict","balanced"]},{category:"gitlab_token",regex:/\b(glpat-)[A-Za-z0-9_-]{20,}\b/g,replacement:"<REDACTED:gitlab_token>",modes:["strict","balanced"]},{category:"slack_token",regex:/\b(xoxb-|xoxp-|xoxs-|xoxa-)[A-Za-z0-9-]{10,}\b/g,replacement:"<REDACTED:slack_token>",modes:["strict","balanced"]},{category:"stripe_key",regex:/\b(sk_live_|pk_live_|sk_test_|pk_test_|rk_live_|rk_test_)[A-Za-z0-9]{10,}\b/g,replacement:"<REDACTED:stripe_key>",modes:["strict","balanced"]},{category:"google_api_key",regex:/\bAIzaSy[A-Za-z0-9_-]{33}\b/g,replacement:"<REDACTED:google_api_key>",modes:["strict","balanced"]},{category:"aws_session_token",regex:/\bASIA[0-9A-Z]{16}\b/g,replacement:"<REDACTED:aws_session_token>",modes:["strict","balanced"]},{category:"connection_string",regex:/\b(mongodb(\+srv)?|postgres(ql)?|mysql|redis|amqp):\/\/[^\s"']+/gi,replacement:"<REDACTED:connection_string>",modes:["strict","balanced"]},{category:"generic_secret",regex:/\b(password|secret|token|apikey|api_key|access_key|secret_key)\s*[:=]\s*['"]?(?!ghp_|gho_|ghs_|ghr_|github_pat_|glpat-|xoxb-|xoxp-|xoxs-|xoxa-|sk_live_|pk_live_|sk_test_|pk_test_|rk_live_|rk_test_|AIzaSy|AKIA|ASIA|<REDACTED:)[^\s'"]{8,}['"]?/gi,replacement:"<REDACTED:generic_secret>",modes:["strict","balanced"]},{category:"email",regex:/\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/g,replacement:"<REDACTED:pii_email>",modes:["strict"]},{category:"phone",regex:/\b(\+?1?[-.\s]?)?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}\b/g,replacement:"<REDACTED:pii_phone>",modes:["strict"]},{category:"ssn",regex:/\b\d{3}-\d{2}-\d{4}\b/g,replacement:"<REDACTED:pii_ssn>",modes:["strict"]}],v=new Set(["ollama"]),C=new Set(["claude","ollama"]);function m(o){return v.has(o)}function Z(o){return C.has(o)}function F(o){return/^qe-security|^qe-pentest/.test(o)}function T(o,t="strict"){if(t==="off")return{text:o,redactions:[],replacementCount:0};let e=o,r=new Set,a=0;for(let s of B){if(!s.modes.includes(t))continue;let i=new RegExp(s.regex.source,s.regex.flags),n=e.match(i);n&&n.length>0&&(r.add(s.category),a+=n.length,e=e.replace(i,s.replacement))}return{text:e,redactions:Array.from(r).sort(),replacementCount:a}}function S(o,t,e){if(F(o)&&!Z(t))throw new p(`Security agent "${o}" may only use providers: ${[...C].join(", ")}. Got: "${t}". OpenRouter is excluded (third-party proxy risk).`,6);if(e==="off"&&!m(t))throw new p(`Redaction mode "off" is only allowed for self-hosted providers (${[...v].join(", ")}). Got: "${t}".`,6)}var p=class extends Error{constructor(e,r){super(e);this.exitCode=r;this.name="AdvisorRedactionError"}exitCode};z();$();var U="openrouter",j=E(R,"openrouter"),q=100,H=`You are the advisor in an executor/advisor pattern. The executor has forwarded its full conversation transcript to you and is waiting for brief strategic guidance.
|
|
3
|
+
|
|
4
|
+
You see the task, every tool call the executor has made, every result it has seen.
|
|
5
|
+
|
|
6
|
+
Respond with a brief plan or correction in under 100 words. Use enumerated steps. No prose explanations. No pleasantries. Do not restate the task \u2014 the executor already knows the task. Focus on the next 1-3 concrete actions the executor should take, in order, with one-line reasons.
|
|
7
|
+
|
|
8
|
+
If you see the executor about to commit to a wrong approach, say so in step 1. If you see the executor is on track, say so in one line and name the specific next action. If the transcript lacks enough information to give useful advice, say "INSUFFICIENT CONTEXT" and name the missing piece.`,u=class{constructor(t,e){this.router=t;this.circuitBreaker=new D(e)}router;circuitBreaker;getCircuitBreakerState(t){return this.circuitBreaker.getState(t)}resetCircuitBreaker(t){this.circuitBreaker.reset(t)}async consult(t,e={}){let r=e.provider??U,a=e.model??j,s=e.maxWords??q,i=e.agentName??"unknown",n=b(i,a,f);n!==a&&console.warn(`[aqe] ADR-093: ${i} pinned to ${n} (was ${a}); set AQE_CYBER_VERIFIED=true after Cyber Verification Program approval`);let d=e.triggerReason??"manual",_=e.sessionId??"default",y=e.redact??"strict";S(i,r,y);let w=this.circuitBreaker.acquire(_),h=[],l=this.serializeTranscript(t,s);if(!m(r)){let k=T(l,y);l=k.text,h=k.redactions}let I=[{role:"user",content:l}],P=e.advisorSystemPrompt??H,M={messages:I,systemPrompt:P,agentType:i,preferredProvider:r,model:n,maxTokens:Math.max(300,Math.ceil(s*1.6)),temperature:.2,metadata:{advisorCall:!0,triggerReason:d,adrRef:"ADR-092"}},c=await this.router.chat(M),x=c.content.trim(),O=N("sha256").update(x).digest("hex"),A={advice:x,model:c.model,provider:c.provider,tokensIn:c.usage?.promptTokens??0,tokensOut:c.usage?.completionTokens??0,latencyMs:c.latencyMs,costUsd:c.cost?.totalCost??0,adviceHash:O,triggerReason:d,cacheHit:c.cached??!1,redactionsApplied:h,circuitBreakerRemaining:w.remaining};return this.persistConsultation(_,A),A}persistConsultation(t,e){try{let{writeFileSync:r,mkdirSync:a}=g("fs"),{join:s}=g("path"),{homedir:i}=g("os"),n=s(i(),".agentic-qe","advisor","consultations");a(n,{recursive:!0});let d=s(n,`${t}.json`);r(d,JSON.stringify({model:e.model,provider:e.provider,tokensIn:e.tokensIn,tokensOut:e.tokensOut,latencyMs:e.latencyMs,costUsd:e.costUsd,adviceHash:e.adviceHash,triggerReason:e.triggerReason,redactionsApplied:e.redactionsApplied,timestamp:new Date().toISOString()},null,2))}catch{}}serializeTranscript(t,e){let r=[];t.systemPrompt&&r.push(`# Executor System Prompt
|
|
9
|
+
${t.systemPrompt}`),t.taskDescription&&r.push(`# Task
|
|
10
|
+
${t.taskDescription}`),r.push("# Conversation so far");for(let a of t.messages){let s=a.role.toUpperCase();r.push(`[${s}] ${a.content}`)}return r.push(`
|
|
11
|
+
# Your job
|
|
12
|
+
Respond with brief strategic guidance in under ${e} words. Use enumerated steps. No prose.`),r.join(`
|
|
13
|
+
|
|
14
|
+
`)}};function X(o){return new u(o)}export{j as DEFAULT_ADVISOR_MODEL,U as DEFAULT_ADVISOR_PROVIDER,q as DEFAULT_MAX_WORDS,u as MultiModelExecutor,X as createMultiModelExecutor};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.
|
|
2
|
-
import{a as b}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.5");process.exit(0)}
|
|
2
|
+
import{a as b}from"./chunk-TUSSPKRM.js";import{a as f,c as O}from"./chunk-J5UNP6W3.js";import"./chunk-JSZ663MU.js";O();import{existsSync as l,mkdirSync as h,readdirSync as v,readFileSync as k,writeFileSync as R}from"fs";import{join as o}from"path";import{parse as y,stringify as D}from"yaml";var E=new Set(["read","edit","glob","grep","list","bash","task","external_directory","todowrite","webfetch","websearch","lsp","skill","question","doom_loop"]),$={fetch:"webfetch",write:"edit"},w=class{projectRoot;options;sourceDir;constructor(e){this.projectRoot=e.projectRoot,this.options={installAgents:!0,installSkills:!0,installTools:!1,overwrite:!1,...e},this.sourceDir=this.findSourceDir()}findSourceDir(){let e=o(this.projectRoot,".opencode"),t=b(import.meta.url),s=[];t&&s.push(o(t,".opencode")),s.push(o(this.projectRoot,"node_modules/agentic-qe/.opencode"));for(let n of s)if(n!==e&&this.isValidSourceDir(n))return n;return s[0]??o(this.projectRoot,"node_modules/agentic-qe/.opencode")}isValidSourceDir(e){return l(e)?l(o(e,"agents"))||l(o(e,"skills")):!1}async install(){let e=o(this.projectRoot,".opencode"),t={success:!0,agentsInstalled:[],skillsInstalled:[],toolsInstalled:[],permissionsInstalled:!1,errors:[],targetDir:e};try{if(!l(this.sourceDir))return t.errors.push(`Source .opencode directory not found: ${this.sourceDir}`),t.success=!1,t;let s=this.loadPermissionsYaml();if(this.options.installAgents){let n=this.installAgents(e,s);t.agentsInstalled=n.installed,t.errors.push(...n.errors),t.permissionsInstalled=t.agentsInstalled.length>0}if(this.options.installSkills){let n=this.installSkills(e);t.skillsInstalled=n.installed,t.errors.push(...n.errors)}this.generateOpenCodeConfig()}catch(s){t.success=!1,t.errors.push(`Installation failed: ${f(s)}`)}return t}loadPermissionsYaml(){let e={defaults:{},agents:{}},t=o(this.sourceDir,"permissions.yaml");if(!l(t))return e;try{let s=y(k(t,"utf-8"));return{defaults:s?.defaults??{},agents:s?.agents??{}}}catch{return e}}buildPermission(e,t,s){let n={...s.defaults,...t??{},...s.agents[e]??{}},a={};for(let[c,i]of Object.entries(n)){if(c.includes(":"))continue;let r=$[c]??c;E.has(r)&&(a[r]=i)}return a}installAgents(e,t){let s=[],n=[],a=o(this.sourceDir,"agents"),c=o(e,"agent");if(!l(a))return n.push(`Source agents directory not found: ${a}`),{installed:s,errors:n};l(c)||h(c,{recursive:!0});for(let i of v(a).filter(r=>r.endsWith(".yaml")))try{let r=y(k(o(a,i),"utf-8")),d=r.name||i.replace(/\.yaml$/,""),g=o(c,`${d}.md`);if(l(g)&&!this.options.overwrite)continue;let u={description:(r.description||d).replace(/\s+/g," ").trim(),mode:"subagent"},p=this.buildPermission(d,r.permissions,t);Object.keys(p).length>0&&(u.permission=p);let m=(r.systemPrompt||"").trimEnd()+`
|
|
3
3
|
`;R(g,this.renderFrontmatter(u)+`
|
|
4
4
|
`+m),s.push(d)}catch(r){n.push(`Failed to convert agent ${i}: ${f(r)}`)}return{installed:s,errors:n}}installSkills(e){let t=[],s=[],n=o(this.sourceDir,"skills"),a=o(e,"skills");if(!l(n))return s.push(`Source skills directory not found: ${n}`),{installed:t,errors:s};l(a)||h(a,{recursive:!0});for(let c of v(n).filter(i=>i.endsWith(".yaml")))try{let i=y(k(o(n,c),"utf-8")),r=(i.name||c.replace(/\.yaml$/,"")).toLowerCase();if(!/^[a-z0-9]+(-[a-z0-9]+)*$/.test(r)){s.push(`Skipped skill with non-conforming name: ${r}`);continue}let d=o(a,r),g=o(d,"SKILL.md");if(l(g)&&!this.options.overwrite)continue;l(d)||h(d,{recursive:!0});let u=(i.description||r).replace(/\s+/g," ").trim();u.length>1024&&(u=u.slice(0,1021)+"...");let p="";for(let m of i.steps??[]){p+=`## ${m.name||"step"}
|
|
5
5
|
|