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
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* - Override mechanism for specific tasks
|
|
9
9
|
* - Agent category detection and preferred model resolution
|
|
10
10
|
*/
|
|
11
|
+
import { DEFAULT_OPUS_MODEL, DEFAULT_SONNET_MODEL } from '../model-registry.js';
|
|
11
12
|
// ============================================================================
|
|
12
13
|
// Default Model Preferences by Category
|
|
13
14
|
// ============================================================================
|
|
@@ -18,7 +19,7 @@ export const DEFAULT_CATEGORY_MODELS = {
|
|
|
18
19
|
// Security agents need best reasoning capabilities
|
|
19
20
|
security: {
|
|
20
21
|
provider: 'claude',
|
|
21
|
-
model:
|
|
22
|
+
model: DEFAULT_OPUS_MODEL,
|
|
22
23
|
temperature: 0.1,
|
|
23
24
|
maxTokens: 16000,
|
|
24
25
|
priority: 100,
|
|
@@ -26,7 +27,7 @@ export const DEFAULT_CATEGORY_MODELS = {
|
|
|
26
27
|
// Test generation needs good balance of quality and speed
|
|
27
28
|
'test-generation': {
|
|
28
29
|
provider: 'claude',
|
|
29
|
-
model:
|
|
30
|
+
model: DEFAULT_SONNET_MODEL,
|
|
30
31
|
temperature: 0.3,
|
|
31
32
|
maxTokens: 8000,
|
|
32
33
|
priority: 90,
|
|
@@ -34,7 +35,7 @@ export const DEFAULT_CATEGORY_MODELS = {
|
|
|
34
35
|
// Code analysis requires good understanding
|
|
35
36
|
'code-analysis': {
|
|
36
37
|
provider: 'claude',
|
|
37
|
-
model:
|
|
38
|
+
model: DEFAULT_SONNET_MODEL,
|
|
38
39
|
temperature: 0.2,
|
|
39
40
|
maxTokens: 8000,
|
|
40
41
|
priority: 85,
|
|
@@ -58,7 +59,7 @@ export const DEFAULT_CATEGORY_MODELS = {
|
|
|
58
59
|
// Learning/ML agents - balanced
|
|
59
60
|
learning: {
|
|
60
61
|
provider: 'claude',
|
|
61
|
-
model:
|
|
62
|
+
model: DEFAULT_SONNET_MODEL,
|
|
62
63
|
temperature: 0.3,
|
|
63
64
|
maxTokens: 8000,
|
|
64
65
|
priority: 80,
|
|
@@ -74,7 +75,7 @@ export const DEFAULT_CATEGORY_MODELS = {
|
|
|
74
75
|
// Simple tasks - cheapest models
|
|
75
76
|
simple: {
|
|
76
77
|
provider: 'openai',
|
|
77
|
-
model: 'gpt-
|
|
78
|
+
model: 'gpt-6-luna',
|
|
78
79
|
temperature: 0.3,
|
|
79
80
|
maxTokens: 2000,
|
|
80
81
|
priority: 50,
|
|
@@ -82,7 +83,7 @@ export const DEFAULT_CATEGORY_MODELS = {
|
|
|
82
83
|
// General purpose - balanced default
|
|
83
84
|
general: {
|
|
84
85
|
provider: 'claude',
|
|
85
|
-
model:
|
|
86
|
+
model: DEFAULT_SONNET_MODEL,
|
|
86
87
|
temperature: 0.3,
|
|
87
88
|
maxTokens: 4000,
|
|
88
89
|
priority: 60,
|
|
@@ -348,7 +349,7 @@ let agentProviderOverrides = {};
|
|
|
348
349
|
* Needed because the category defaults in `DEFAULT_CATEGORY_MODELS` pair a
|
|
349
350
|
* provider with a provider-specific model id. If a user writes
|
|
350
351
|
* `{ "provider": "ollama" }` and we inherited the category *model* too, the
|
|
351
|
-
* agent would be routed to ollama asking for `claude-sonnet-
|
|
352
|
+
* agent would be routed to ollama asking for `claude-sonnet-5` — a model that
|
|
352
353
|
* provider cannot serve. Changing provider without naming a model must fall
|
|
353
354
|
* back to that provider's own default, not the previous provider's model.
|
|
354
355
|
*/
|
|
@@ -575,7 +576,7 @@ export const DEFAULT_ROUTING_OVERRIDES = [
|
|
|
575
576
|
},
|
|
576
577
|
modelPreference: {
|
|
577
578
|
provider: 'claude',
|
|
578
|
-
model:
|
|
579
|
+
model: DEFAULT_OPUS_MODEL,
|
|
579
580
|
temperature: 0.2,
|
|
580
581
|
maxTokens: 16000,
|
|
581
582
|
priority: 150,
|
|
@@ -590,7 +591,7 @@ export const DEFAULT_ROUTING_OVERRIDES = [
|
|
|
590
591
|
},
|
|
591
592
|
modelPreference: {
|
|
592
593
|
provider: 'openai',
|
|
593
|
-
model: 'gpt-
|
|
594
|
+
model: 'gpt-6-luna',
|
|
594
595
|
temperature: 0.3,
|
|
595
596
|
maxTokens: 2000,
|
|
596
597
|
priority: 40,
|
|
@@ -605,7 +606,7 @@ export const DEFAULT_ROUTING_OVERRIDES = [
|
|
|
605
606
|
},
|
|
606
607
|
modelPreference: {
|
|
607
608
|
provider: 'ollama',
|
|
608
|
-
model: '
|
|
609
|
+
model: 'qwen3-coder:30b', // ADR-111 local QE default
|
|
609
610
|
temperature: 0.2,
|
|
610
611
|
maxTokens: 4000,
|
|
611
612
|
priority: 200,
|
|
@@ -620,7 +621,7 @@ export const DEFAULT_ROUTING_OVERRIDES = [
|
|
|
620
621
|
},
|
|
621
622
|
modelPreference: {
|
|
622
623
|
provider: 'claude',
|
|
623
|
-
model:
|
|
624
|
+
model: DEFAULT_SONNET_MODEL,
|
|
624
625
|
temperature: 0.3,
|
|
625
626
|
maxTokens: 8000,
|
|
626
627
|
priority: 95,
|
|
@@ -636,49 +637,49 @@ export const DEFAULT_ROUTING_OVERRIDES = [
|
|
|
636
637
|
*/
|
|
637
638
|
export const ALTERNATIVE_MODELS = {
|
|
638
639
|
security: [
|
|
639
|
-
{ provider: 'openai', model: 'gpt-
|
|
640
|
-
{ provider: 'claude', model:
|
|
640
|
+
{ provider: 'openai', model: 'gpt-6-sol', temperature: 0.1, priority: 90 },
|
|
641
|
+
{ provider: 'claude', model: DEFAULT_SONNET_MODEL, temperature: 0.1, priority: 80 },
|
|
641
642
|
{ provider: 'openrouter', model: 'anthropic/claude-opus-4.5', temperature: 0.1, priority: 70 },
|
|
642
643
|
],
|
|
643
644
|
'test-generation': [
|
|
644
|
-
{ provider: 'openai', model: 'gpt-
|
|
645
|
+
{ provider: 'openai', model: 'gpt-6-sol', temperature: 0.3, priority: 80 },
|
|
645
646
|
{ provider: 'claude', model: 'claude-haiku-4-5-20251001', temperature: 0.3, priority: 70 },
|
|
646
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
647
|
+
{ provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.3, priority: 60 },
|
|
647
648
|
],
|
|
648
649
|
'code-analysis': [
|
|
649
|
-
{ provider: 'openai', model: 'gpt-
|
|
650
|
+
{ provider: 'openai', model: 'gpt-6-sol', temperature: 0.2, priority: 75 },
|
|
650
651
|
{ provider: 'claude', model: 'claude-haiku-4-5-20251001', temperature: 0.2, priority: 65 },
|
|
651
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
652
|
+
{ provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.2, priority: 55 },
|
|
652
653
|
],
|
|
653
654
|
performance: [
|
|
654
|
-
{ provider: 'openai', model: 'gpt-
|
|
655
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
656
|
-
{ provider: 'ollama', model: '
|
|
655
|
+
{ provider: 'openai', model: 'gpt-6-luna', temperature: 0.2, priority: 60 },
|
|
656
|
+
{ provider: 'gemini', model: 'gemini-2.5-flash', temperature: 0.2, priority: 50 },
|
|
657
|
+
{ provider: 'ollama', model: 'qwen3-coder:30b', temperature: 0.2, priority: 40 },
|
|
657
658
|
],
|
|
658
659
|
documentation: [
|
|
659
|
-
{ provider: 'openai', model: 'gpt-
|
|
660
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
661
|
-
{ provider: 'ollama', model: '
|
|
660
|
+
{ provider: 'openai', model: 'gpt-6-luna', temperature: 0.4, priority: 50 },
|
|
661
|
+
{ provider: 'gemini', model: 'gemini-2.5-flash', temperature: 0.4, priority: 40 },
|
|
662
|
+
{ provider: 'ollama', model: 'qwen3-coder:30b', temperature: 0.4, priority: 30 },
|
|
662
663
|
],
|
|
663
664
|
learning: [
|
|
664
|
-
{ provider: 'openai', model: 'gpt-
|
|
665
|
+
{ provider: 'openai', model: 'gpt-6-sol', temperature: 0.3, priority: 70 },
|
|
665
666
|
{ provider: 'claude', model: 'claude-haiku-4-5-20251001', temperature: 0.3, priority: 60 },
|
|
666
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
667
|
+
{ provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.3, priority: 50 },
|
|
667
668
|
],
|
|
668
669
|
coordination: [
|
|
669
|
-
{ provider: 'openai', model: 'gpt-
|
|
670
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
671
|
-
{ provider: 'ollama', model: '
|
|
670
|
+
{ provider: 'openai', model: 'gpt-6-luna', temperature: 0.2, priority: 65 },
|
|
671
|
+
{ provider: 'gemini', model: 'gemini-2.5-flash', temperature: 0.2, priority: 55 },
|
|
672
|
+
{ provider: 'ollama', model: 'qwen3-coder:30b', temperature: 0.2, priority: 45 },
|
|
672
673
|
],
|
|
673
674
|
simple: [
|
|
674
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
675
|
+
{ provider: 'gemini', model: 'gemini-2.5-flash', temperature: 0.3, priority: 40 },
|
|
675
676
|
{ provider: 'claude', model: 'claude-haiku-4-5-20251001', temperature: 0.3, priority: 30 },
|
|
676
|
-
{ provider: 'ollama', model: '
|
|
677
|
+
{ provider: 'ollama', model: 'qwen3-coder:30b', temperature: 0.3, priority: 20 },
|
|
677
678
|
],
|
|
678
679
|
general: [
|
|
679
|
-
{ provider: 'openai', model: 'gpt-
|
|
680
|
+
{ provider: 'openai', model: 'gpt-6-sol', temperature: 0.3, priority: 50 },
|
|
680
681
|
{ provider: 'claude', model: 'claude-haiku-4-5-20251001', temperature: 0.3, priority: 40 },
|
|
681
|
-
{ provider: 'gemini', model: 'gemini-2.
|
|
682
|
+
{ provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.3, priority: 30 },
|
|
682
683
|
],
|
|
683
684
|
};
|
|
684
685
|
/**
|
|
@@ -13,11 +13,11 @@ import { v4 as uuidv4 } from 'uuid';
|
|
|
13
13
|
import { createLLMError, isLLMError, } from '../interfaces.js';
|
|
14
14
|
import { DEFAULT_ROUTER_CONFIG, } from './types.js';
|
|
15
15
|
import { RoutingRuleEngine, DEFAULT_QE_ROUTING_RULES } from './routing-rules.js';
|
|
16
|
-
import { applyCyberPin, CYBER_PIN_CHAT_FALLBACK, shouldCyberPin,
|
|
16
|
+
import { applyCyberPin, CYBER_PIN_CHAT_FALLBACK, cyberPinFallbackFor, shouldCyberPin, isCyberGatedModel, } from '../../../routing/security/cyber-pin.js';
|
|
17
17
|
import { createRouterMetricsCollector, createCostMetricsCollector, } from '../metrics/index.js';
|
|
18
18
|
import { toError } from '../../error-utils.js';
|
|
19
19
|
import { mapModelId, normalizeModelId, getModelMapping, } from '../model-mapping.js';
|
|
20
|
-
import { modelSupportsTools } from '../model-registry.js';
|
|
20
|
+
import { modelSupportsTools, DEFAULT_SONNET_MODEL } from '../model-registry.js';
|
|
21
21
|
/**
|
|
22
22
|
* Simple LRU-like decision cache
|
|
23
23
|
*/
|
|
@@ -195,20 +195,21 @@ export class HybridRouter {
|
|
|
195
195
|
const requestId = uuidv4();
|
|
196
196
|
const decision = await this.selectProvider(params);
|
|
197
197
|
// ADR-093: apply Cyber Verification pin before dispatch. Security agents
|
|
198
|
-
// cannot reach Opus 4.7 until AQE_CYBER_VERIFIED=true.
|
|
199
|
-
// canonical model field and the provider-specific id — if
|
|
200
|
-
//
|
|
201
|
-
//
|
|
198
|
+
// cannot reach an Opus/Fable model >= 4.7 until AQE_CYBER_VERIFIED=true.
|
|
199
|
+
// Covers both the canonical model field and the provider-specific id — if
|
|
200
|
+
// either targets a cyber-gated model for a cyber-pinned agent, downgrade
|
|
201
|
+
// to the pinned Sonnet 4.6 on the same provider (fallback candidates are
|
|
202
|
+
// pinned again in executeWithFallback). MultiModelExecutor.consult()
|
|
202
203
|
// applies the same pin independently for advisor escalations.
|
|
203
204
|
const agentName = params.agentType ?? '';
|
|
204
|
-
if (shouldCyberPin(agentName) && (
|
|
205
|
+
if (shouldCyberPin(agentName) && (isCyberGatedModel(decision.model) || isCyberGatedModel(decision.providerModelId))) {
|
|
205
206
|
if (params.strictModel) {
|
|
206
207
|
throw createLLMError(`Strict model request for ${decision.model} conflicts with the cyber verification pin for ${agentName}`, 'MODEL_NOT_FOUND', { provider: decision.providerType, model: decision.model, retryable: false });
|
|
207
208
|
}
|
|
208
209
|
const originalModel = decision.model;
|
|
209
210
|
const originalProviderModelId = decision.providerModelId;
|
|
210
211
|
decision.model = applyCyberPin(agentName, decision.model, CYBER_PIN_CHAT_FALLBACK);
|
|
211
|
-
decision.providerModelId = applyCyberPin(agentName, decision.providerModelId,
|
|
212
|
+
decision.providerModelId = applyCyberPin(agentName, decision.providerModelId, cyberPinFallbackFor(decision.providerType));
|
|
212
213
|
// eslint-disable-next-line no-console
|
|
213
214
|
console.warn(`[aqe] ADR-093: ${agentName} pinned to ${decision.model} (was ${originalModel}/${originalProviderModelId}); ` +
|
|
214
215
|
`set AQE_CYBER_VERIFIED=true after Cyber Verification Program approval`);
|
|
@@ -498,6 +499,17 @@ export class HybridRouter {
|
|
|
498
499
|
}
|
|
499
500
|
}
|
|
500
501
|
}
|
|
502
|
+
// ADR-093: fallback candidates (default model, fallback chain) are added
|
|
503
|
+
// after chat() applied the cyber pin, so pin them here too — otherwise a
|
|
504
|
+
// failed primary could escalate a security agent to an Opus/Fable model.
|
|
505
|
+
const pinAgent = params.agentType ?? '';
|
|
506
|
+
if (shouldCyberPin(pinAgent)) {
|
|
507
|
+
for (const entry of executionOrder) {
|
|
508
|
+
if (isCyberGatedModel(entry.model)) {
|
|
509
|
+
entry.model = cyberPinFallbackFor(entry.provider);
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
}
|
|
501
513
|
// Capability-aware guard: when the request needs tools, drop any candidate
|
|
502
514
|
// whose model is KNOWN to lack tool support (e.g. local llama3, codellama,
|
|
503
515
|
// mistral) so we don't silently strip tool definitions and return a
|
|
@@ -951,7 +963,7 @@ export function createQERouter(providerManager) {
|
|
|
951
963
|
mode: 'rule-based',
|
|
952
964
|
rules: DEFAULT_QE_ROUTING_RULES,
|
|
953
965
|
defaultProvider: 'claude',
|
|
954
|
-
defaultModel:
|
|
966
|
+
defaultModel: DEFAULT_SONNET_MODEL,
|
|
955
967
|
enableMetrics: true,
|
|
956
968
|
cacheDecisions: true,
|
|
957
969
|
});
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* - Override mechanism for specific tasks
|
|
16
16
|
*/
|
|
17
17
|
import { getAgentRoutingCategory, getPreferredModelForAgent, getAgentCapabilityRequirements, createAllAgentRoutingRules, AGENT_CATEGORY_MAP, DEFAULT_CATEGORY_MODELS, } from './agent-router-config.js';
|
|
18
|
+
import { DEFAULT_OPUS_MODEL, DEFAULT_SONNET_MODEL } from '../model-registry.js';
|
|
18
19
|
// ============================================================================
|
|
19
20
|
// Rule Engine
|
|
20
21
|
// ============================================================================
|
|
@@ -198,7 +199,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
198
199
|
},
|
|
199
200
|
action: {
|
|
200
201
|
provider: 'claude',
|
|
201
|
-
model:
|
|
202
|
+
model: DEFAULT_OPUS_MODEL,
|
|
202
203
|
temperature: 0.1,
|
|
203
204
|
},
|
|
204
205
|
enabled: true,
|
|
@@ -215,7 +216,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
215
216
|
},
|
|
216
217
|
action: {
|
|
217
218
|
provider: 'claude',
|
|
218
|
-
model:
|
|
219
|
+
model: DEFAULT_SONNET_MODEL,
|
|
219
220
|
temperature: 0.3,
|
|
220
221
|
},
|
|
221
222
|
enabled: true,
|
|
@@ -232,7 +233,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
232
233
|
},
|
|
233
234
|
action: {
|
|
234
235
|
provider: 'claude',
|
|
235
|
-
model:
|
|
236
|
+
model: DEFAULT_OPUS_MODEL,
|
|
236
237
|
temperature: 0.2,
|
|
237
238
|
},
|
|
238
239
|
enabled: true,
|
|
@@ -248,7 +249,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
248
249
|
},
|
|
249
250
|
action: {
|
|
250
251
|
provider: 'claude',
|
|
251
|
-
model:
|
|
252
|
+
model: DEFAULT_SONNET_MODEL,
|
|
252
253
|
temperature: 0.2,
|
|
253
254
|
},
|
|
254
255
|
enabled: true,
|
|
@@ -264,7 +265,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
264
265
|
},
|
|
265
266
|
action: {
|
|
266
267
|
provider: 'claude',
|
|
267
|
-
model:
|
|
268
|
+
model: DEFAULT_SONNET_MODEL,
|
|
268
269
|
temperature: 0.1,
|
|
269
270
|
},
|
|
270
271
|
enabled: true,
|
|
@@ -280,7 +281,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
280
281
|
},
|
|
281
282
|
action: {
|
|
282
283
|
provider: 'claude',
|
|
283
|
-
model:
|
|
284
|
+
model: DEFAULT_SONNET_MODEL,
|
|
284
285
|
temperature: 0.3,
|
|
285
286
|
},
|
|
286
287
|
enabled: true,
|
|
@@ -296,7 +297,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
296
297
|
},
|
|
297
298
|
action: {
|
|
298
299
|
provider: 'claude',
|
|
299
|
-
model:
|
|
300
|
+
model: DEFAULT_SONNET_MODEL,
|
|
300
301
|
temperature: 0.3,
|
|
301
302
|
},
|
|
302
303
|
enabled: true,
|
|
@@ -328,7 +329,7 @@ export const DEFAULT_QE_ROUTING_RULES = [
|
|
|
328
329
|
},
|
|
329
330
|
action: {
|
|
330
331
|
provider: 'ollama',
|
|
331
|
-
model: '
|
|
332
|
+
model: 'qwen3-coder:30b',
|
|
332
333
|
temperature: 0.3,
|
|
333
334
|
},
|
|
334
335
|
enabled: true,
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* @see ADR-043 - Vendor-Independent LLM Support (this extension)
|
|
20
20
|
*/
|
|
21
21
|
import { isBuiltinProviderType, } from '../interfaces.js';
|
|
22
|
+
import { CLAUDE_TIER_MODELS, DEFAULT_SONNET_MODEL } from '../model-registry.js';
|
|
22
23
|
/**
|
|
23
24
|
* Type guard for the closed extended set. Use before indexing any
|
|
24
25
|
* `Record<BuiltinExtendedProviderType, _>` with an open provider type, so the
|
|
@@ -84,7 +85,7 @@ export const DEFAULT_FALLBACK_BEHAVIOR = {
|
|
|
84
85
|
export const DEFAULT_FALLBACK_CHAIN_ENTRIES = [
|
|
85
86
|
{
|
|
86
87
|
provider: 'claude',
|
|
87
|
-
models: [
|
|
88
|
+
models: [DEFAULT_SONNET_MODEL, CLAUDE_TIER_MODELS[1]],
|
|
88
89
|
enabled: true,
|
|
89
90
|
priority: 100,
|
|
90
91
|
maxAttempts: 2,
|
|
@@ -92,7 +93,7 @@ export const DEFAULT_FALLBACK_CHAIN_ENTRIES = [
|
|
|
92
93
|
},
|
|
93
94
|
{
|
|
94
95
|
provider: 'openai',
|
|
95
|
-
models: ['gpt-
|
|
96
|
+
models: ['gpt-6-sol', 'gpt-6-luna'],
|
|
96
97
|
enabled: true,
|
|
97
98
|
priority: 90,
|
|
98
99
|
maxAttempts: 2,
|
|
@@ -100,7 +101,7 @@ export const DEFAULT_FALLBACK_CHAIN_ENTRIES = [
|
|
|
100
101
|
},
|
|
101
102
|
{
|
|
102
103
|
provider: 'openrouter',
|
|
103
|
-
models: ['anthropic/claude-sonnet-
|
|
104
|
+
models: ['anthropic/claude-sonnet-5', 'openai/gpt-6-sol'],
|
|
104
105
|
enabled: true,
|
|
105
106
|
priority: 85,
|
|
106
107
|
maxAttempts: 2,
|
|
@@ -108,7 +109,7 @@ export const DEFAULT_FALLBACK_CHAIN_ENTRIES = [
|
|
|
108
109
|
},
|
|
109
110
|
{
|
|
110
111
|
provider: 'ollama',
|
|
111
|
-
models: ['
|
|
112
|
+
models: ['qwen3-coder:30b', 'qwen3:30b-a3b'],
|
|
112
113
|
enabled: true,
|
|
113
114
|
priority: 80,
|
|
114
115
|
maxAttempts: 2,
|
|
@@ -141,18 +142,18 @@ export const DEFAULT_ROUTER_CONFIG = {
|
|
|
141
142
|
mode: 'rule-based',
|
|
142
143
|
rules: [],
|
|
143
144
|
defaultProvider: 'claude',
|
|
144
|
-
defaultModel:
|
|
145
|
+
defaultModel: DEFAULT_SONNET_MODEL,
|
|
145
146
|
fallbackChain: DEFAULT_FALLBACK_CHAIN,
|
|
146
147
|
fallbackBehavior: DEFAULT_FALLBACK_BEHAVIOR,
|
|
147
148
|
providers: {
|
|
148
|
-
claude: { enabled: true, defaultModel:
|
|
149
|
+
claude: { enabled: true, defaultModel: DEFAULT_SONNET_MODEL },
|
|
149
150
|
// ADR-123: opt-in (issue #557 — don't default the subscription/fleet path
|
|
150
151
|
// on). Enabled explicitly via AQE_LLM_PROVIDER=claude-code or disk config.
|
|
151
|
-
'claude-code': { enabled: false, defaultModel:
|
|
152
|
-
openai: { enabled: true, defaultModel: 'gpt-
|
|
153
|
-
ollama: { enabled: true, defaultModel: '
|
|
154
|
-
openrouter: { enabled: true, defaultModel: 'anthropic/claude-sonnet-
|
|
155
|
-
gemini: { enabled: false, defaultModel: 'gemini-
|
|
152
|
+
'claude-code': { enabled: false, defaultModel: DEFAULT_SONNET_MODEL },
|
|
153
|
+
openai: { enabled: true, defaultModel: 'gpt-6-sol' },
|
|
154
|
+
ollama: { enabled: true, defaultModel: 'qwen3-coder:30b' },
|
|
155
|
+
openrouter: { enabled: true, defaultModel: 'anthropic/claude-sonnet-5' },
|
|
156
|
+
gemini: { enabled: false, defaultModel: 'gemini-2.5-flash' },
|
|
156
157
|
'azure-openai': { enabled: false },
|
|
157
158
|
bedrock: { enabled: false },
|
|
158
159
|
// ADR-123: opt-in; enabled when COGNITUM_API_KEY present or via override.
|
|
@@ -190,6 +191,73 @@ export const DEFAULT_ROUTER_CONFIG = {
|
|
|
190
191
|
* This enables vendor-neutral model references
|
|
191
192
|
*/
|
|
192
193
|
export const DEFAULT_MODEL_MAPPINGS = [
|
|
194
|
+
// Claude 5 generation (2026-09 model refresh; routing tiers 2-4)
|
|
195
|
+
{
|
|
196
|
+
canonicalId: 'claude-opus-5',
|
|
197
|
+
canonicalName: 'Claude Opus 5',
|
|
198
|
+
providerIds: {
|
|
199
|
+
claude: 'claude-opus-5',
|
|
200
|
+
openrouter: 'anthropic/claude-opus-5',
|
|
201
|
+
},
|
|
202
|
+
capabilities: {
|
|
203
|
+
supportsStreaming: true,
|
|
204
|
+
supportsTools: true,
|
|
205
|
+
supportsMCP: true,
|
|
206
|
+
supportsVision: true,
|
|
207
|
+
supportsExtendedThinking: true,
|
|
208
|
+
supportsJsonMode: true,
|
|
209
|
+
maxContextTokens: 1_000_000,
|
|
210
|
+
maxOutputTokens: 128000,
|
|
211
|
+
},
|
|
212
|
+
tier: 'flagship',
|
|
213
|
+
family: 'claude',
|
|
214
|
+
inputCostPer1M: 5,
|
|
215
|
+
outputCostPer1M: 25,
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
canonicalId: 'claude-sonnet-5',
|
|
219
|
+
canonicalName: 'Claude Sonnet 5',
|
|
220
|
+
providerIds: {
|
|
221
|
+
claude: 'claude-sonnet-5',
|
|
222
|
+
openrouter: 'anthropic/claude-sonnet-5',
|
|
223
|
+
},
|
|
224
|
+
capabilities: {
|
|
225
|
+
supportsStreaming: true,
|
|
226
|
+
supportsTools: true,
|
|
227
|
+
supportsMCP: true,
|
|
228
|
+
supportsVision: true,
|
|
229
|
+
supportsExtendedThinking: true,
|
|
230
|
+
supportsJsonMode: true,
|
|
231
|
+
maxContextTokens: 1_000_000,
|
|
232
|
+
maxOutputTokens: 128000,
|
|
233
|
+
},
|
|
234
|
+
tier: 'advanced',
|
|
235
|
+
family: 'claude',
|
|
236
|
+
inputCostPer1M: 2,
|
|
237
|
+
outputCostPer1M: 10,
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
canonicalId: 'claude-opus-5-5',
|
|
241
|
+
canonicalName: 'Claude Opus 5.5',
|
|
242
|
+
providerIds: {
|
|
243
|
+
claude: 'claude-opus-5-5',
|
|
244
|
+
openrouter: 'anthropic/claude-opus-5.5',
|
|
245
|
+
},
|
|
246
|
+
capabilities: {
|
|
247
|
+
supportsStreaming: true,
|
|
248
|
+
supportsTools: true,
|
|
249
|
+
supportsMCP: true,
|
|
250
|
+
supportsVision: true,
|
|
251
|
+
supportsExtendedThinking: true,
|
|
252
|
+
supportsJsonMode: true,
|
|
253
|
+
maxContextTokens: 1_000_000,
|
|
254
|
+
maxOutputTokens: 128000,
|
|
255
|
+
},
|
|
256
|
+
tier: 'flagship',
|
|
257
|
+
family: 'claude',
|
|
258
|
+
inputCostPer1M: 4,
|
|
259
|
+
outputCostPer1M: 20,
|
|
260
|
+
},
|
|
193
261
|
// ADR-093: Claude Opus 4.7 (flagship, Apr 2026)
|
|
194
262
|
{
|
|
195
263
|
canonicalId: 'claude-opus-4-7',
|
|
@@ -230,8 +298,8 @@ export const DEFAULT_MODEL_MAPPINGS = [
|
|
|
230
298
|
supportsVision: true,
|
|
231
299
|
supportsExtendedThinking: true,
|
|
232
300
|
supportsJsonMode: true,
|
|
233
|
-
maxContextTokens:
|
|
234
|
-
maxOutputTokens:
|
|
301
|
+
maxContextTokens: 1_000_000,
|
|
302
|
+
maxOutputTokens: 128000,
|
|
235
303
|
},
|
|
236
304
|
tier: 'advanced',
|
|
237
305
|
family: 'claude',
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* - Message role mapping
|
|
9
9
|
*/
|
|
10
10
|
import { isBuiltinExtendedProviderType } from '../router/types.js';
|
|
11
|
+
import { resolveModelPricing } from '../cost-tracker.js';
|
|
11
12
|
// ============================================================================
|
|
12
13
|
// System Prompt Handling
|
|
13
14
|
// ============================================================================
|
|
@@ -220,31 +221,11 @@ export function formatResponse(response, sourceProvider, latencyMs, cached = fal
|
|
|
220
221
|
}
|
|
221
222
|
/**
|
|
222
223
|
* Calculate cost based on model pricing
|
|
223
|
-
* Note: This is a simplified version - real implementation should use model-mapping pricing
|
|
224
224
|
*/
|
|
225
225
|
function calculateCost(inputTokens, outputTokens, model) {
|
|
226
|
-
//
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
'claude-sonnet-4-6': { input: 3, output: 15 },
|
|
230
|
-
'claude-haiku-4-5-20251001': { input: 0.8, output: 4 },
|
|
231
|
-
'gpt-4o': { input: 2.5, output: 10 },
|
|
232
|
-
'gpt-4o-mini': { input: 0.15, output: 0.6 },
|
|
233
|
-
'gemini-pro': { input: 1.25, output: 5 },
|
|
234
|
-
'gemini-2.0-pro': { input: 1.25, output: 5 },
|
|
235
|
-
};
|
|
236
|
-
// Find matching pricing or use default
|
|
237
|
-
let modelPricing = pricing[model];
|
|
238
|
-
if (!modelPricing) {
|
|
239
|
-
// Try prefix matching
|
|
240
|
-
for (const [key, value] of Object.entries(pricing)) {
|
|
241
|
-
if (model.includes(key) || key.includes(model.split('-')[0])) {
|
|
242
|
-
modelPricing = value;
|
|
243
|
-
break;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
modelPricing = modelPricing || { input: 1, output: 2 }; // Default fallback
|
|
226
|
+
// Shared pricing (cost tracker table, then model registry); unknown models
|
|
227
|
+
// keep the historical conservative fallback rather than being treated as free.
|
|
228
|
+
const modelPricing = resolveModelPricing(model) ?? { input: 1, output: 2 };
|
|
248
229
|
const inputCost = (inputTokens / 1_000_000) * modelPricing.input;
|
|
249
230
|
const outputCost = (outputTokens / 1_000_000) * modelPricing.output;
|
|
250
231
|
return {
|
|
@@ -11,6 +11,12 @@ export interface AgentId {
|
|
|
11
11
|
}
|
|
12
12
|
export type DomainName = 'test-generation' | 'test-execution' | 'coverage-analysis' | 'quality-assessment' | 'defect-intelligence' | 'requirements-validation' | 'code-intelligence' | 'security-compliance' | 'contract-testing' | 'visual-accessibility' | 'chaos-resilience' | 'learning-optimization' | 'enterprise-integration' | 'coordination';
|
|
13
13
|
export declare const ALL_DOMAINS: readonly DomainName[];
|
|
14
|
+
/**
|
|
15
|
+
* Type guard for user-supplied domain names (CLI flags, MCP arguments).
|
|
16
|
+
* Validate at the boundary so an unknown domain is rejected instead of being
|
|
17
|
+
* accepted as work no domain will ever run (#734).
|
|
18
|
+
*/
|
|
19
|
+
export declare function isDomainName(value: unknown): value is DomainName;
|
|
14
20
|
export interface DomainEvent<T = unknown> {
|
|
15
21
|
readonly id: string;
|
|
16
22
|
readonly type: string;
|
|
@@ -18,6 +18,14 @@ export const ALL_DOMAINS = [
|
|
|
18
18
|
'enterprise-integration',
|
|
19
19
|
'coordination',
|
|
20
20
|
];
|
|
21
|
+
/**
|
|
22
|
+
* Type guard for user-supplied domain names (CLI flags, MCP arguments).
|
|
23
|
+
* Validate at the boundary so an unknown domain is rejected instead of being
|
|
24
|
+
* accepted as work no domain will ever run (#734).
|
|
25
|
+
*/
|
|
26
|
+
export function isDomainName(value) {
|
|
27
|
+
return typeof value === 'string' && ALL_DOMAINS.includes(value);
|
|
28
|
+
}
|
|
21
29
|
export function ok(value) {
|
|
22
30
|
return { success: true, value };
|
|
23
31
|
}
|
|
@@ -17,19 +17,19 @@ export interface VitestJsonReport {
|
|
|
17
17
|
/** CLI arguments to append to `vitest run --reporter=json`. */
|
|
18
18
|
readonly args: readonly string[];
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
20
|
+
* Read this invocation's report. Missing reports return undefined so callers
|
|
21
|
+
* can distinguish them from a completed run; malformed reports throw.
|
|
22
|
+
* Stdout is diagnostic text, never a substitute for the requested report.
|
|
23
23
|
*/
|
|
24
|
-
read(stdout: string): string;
|
|
24
|
+
read(stdout: string): string | undefined;
|
|
25
25
|
/** Remove the temporary report directory. Safe to call more than once. */
|
|
26
26
|
cleanup(): void;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
29
|
+
* Read the report owned by a finished Vitest run. The stdout parameter stays
|
|
30
|
+
* for existing callers but is never treated as result evidence.
|
|
31
31
|
*/
|
|
32
|
-
export declare function resolveVitestJsonOutput(
|
|
32
|
+
export declare function resolveVitestJsonOutput(_stdout: string, reportPath: string | undefined): string | undefined;
|
|
33
33
|
/**
|
|
34
34
|
* Create a per-run report location. The directory is unique per call so
|
|
35
35
|
* concurrent runs never read each other's output.
|
|
@@ -11,25 +11,34 @@
|
|
|
11
11
|
* that spawns `vitest run --reporter=json` must go through this module
|
|
12
12
|
* instead of parsing stdout directly.
|
|
13
13
|
*/
|
|
14
|
-
import {
|
|
14
|
+
import { mkdtempSync, readFileSync, rmSync } from 'node:fs';
|
|
15
15
|
import { tmpdir } from 'node:os';
|
|
16
16
|
import { join } from 'node:path';
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
19
|
-
*
|
|
18
|
+
* Read the report owned by a finished Vitest run. The stdout parameter stays
|
|
19
|
+
* for existing callers but is never treated as result evidence.
|
|
20
20
|
*/
|
|
21
|
-
export function resolveVitestJsonOutput(
|
|
22
|
-
if (reportPath
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
catch {
|
|
29
|
-
// Unreadable report: fall back to stdout below.
|
|
30
|
-
}
|
|
21
|
+
export function resolveVitestJsonOutput(_stdout, reportPath) {
|
|
22
|
+
if (!reportPath)
|
|
23
|
+
return undefined;
|
|
24
|
+
let content;
|
|
25
|
+
try {
|
|
26
|
+
content = readFileSync(reportPath, 'utf-8');
|
|
31
27
|
}
|
|
32
|
-
|
|
28
|
+
catch (error) {
|
|
29
|
+
if (error.code === 'ENOENT')
|
|
30
|
+
return undefined;
|
|
31
|
+
throw new Error('Could not read the current Vitest JSON report.');
|
|
32
|
+
}
|
|
33
|
+
try {
|
|
34
|
+
const parsed = JSON.parse(content);
|
|
35
|
+
if (!parsed || !Array.isArray(parsed.testResults))
|
|
36
|
+
throw new Error('Invalid report');
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
throw new Error('The current Vitest JSON report is malformed.');
|
|
40
|
+
}
|
|
41
|
+
return content;
|
|
33
42
|
}
|
|
34
43
|
/**
|
|
35
44
|
* Create a per-run report location. The directory is unique per call so
|
|
@@ -25,11 +25,12 @@ export interface VitestConfig {
|
|
|
25
25
|
* is detected historically by tracking pass/fail patterns over time.
|
|
26
26
|
*/
|
|
27
27
|
flakyTracker?: FlakyTestTracker;
|
|
28
|
+
/** Grace period before forcefully stopping a test process tree. */
|
|
29
|
+
terminationGraceMs?: number;
|
|
28
30
|
}
|
|
29
31
|
export declare class VitestPhaseExecutor implements PhaseExecutor {
|
|
30
32
|
private readonly config;
|
|
31
|
-
private
|
|
32
|
-
private isAborted;
|
|
33
|
+
private currentCommand;
|
|
33
34
|
constructor(config?: VitestConfig);
|
|
34
35
|
execute(phase: TestPhase, testFiles?: string[]): Promise<PhaseResult>;
|
|
35
36
|
isReady(): Promise<boolean>;
|
|
@@ -38,6 +39,10 @@ export declare class VitestPhaseExecutor implements PhaseExecutor {
|
|
|
38
39
|
private buildArgs;
|
|
39
40
|
private runVitest;
|
|
40
41
|
private runCommand;
|
|
42
|
+
private terminateProcessTree;
|
|
43
|
+
private signalGroup;
|
|
44
|
+
private waitForGroupExit;
|
|
45
|
+
private waitForClose;
|
|
41
46
|
private parseResult;
|
|
42
47
|
private getCoverageFromReport;
|
|
43
48
|
private createErrorResult;
|