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
|
@@ -170,6 +170,9 @@ export function createPipelineCommand(context, cleanupAndExit, ensureInitialized
|
|
|
170
170
|
if (status.error)
|
|
171
171
|
console.log(` Error: ${chalk.red(status.error)}`);
|
|
172
172
|
}
|
|
173
|
+
console.log('');
|
|
174
|
+
await cleanupAndExit(status?.status === 'completed' ? 0 : 1);
|
|
175
|
+
return;
|
|
173
176
|
}
|
|
174
177
|
console.log('');
|
|
175
178
|
await cleanupAndExit(0);
|
|
@@ -250,6 +253,12 @@ export function createPipelineCommand(context, cleanupAndExit, ensureInitialized
|
|
|
250
253
|
if (status.error) {
|
|
251
254
|
console.log(` Error: ${chalk.red(status.error)}`);
|
|
252
255
|
}
|
|
256
|
+
for (const receipt of status.parallelCompositionReceipts ?? []) {
|
|
257
|
+
console.log(` Composition ${receipt.groupId}: ${receipt.disposition}`);
|
|
258
|
+
for (const conflict of receipt.conflicts) {
|
|
259
|
+
console.log(` ${conflict.kind}: ${conflict.stepA}.${conflict.pathA} / ${conflict.stepB}.${conflict.pathB}`);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
253
262
|
console.log('');
|
|
254
263
|
await cleanupAndExit(0);
|
|
255
264
|
});
|
|
@@ -18,6 +18,17 @@ import { toErrorMessage } from '../../shared/error-utils.js';
|
|
|
18
18
|
// Helpers
|
|
19
19
|
// ============================================================================
|
|
20
20
|
const VALID_PLATFORM_IDS = Object.keys(PLATFORM_REGISTRY);
|
|
21
|
+
// Literal import paths let esbuild include every installer in the shipped CLI.
|
|
22
|
+
const PLATFORM_INSTALLERS = {
|
|
23
|
+
copilot: () => import('../../init/copilot-installer.js'),
|
|
24
|
+
cursor: () => import('../../init/cursor-installer.js'),
|
|
25
|
+
cline: () => import('../../init/cline-installer.js'),
|
|
26
|
+
kilocode: () => import('../../init/kilocode-installer.js'),
|
|
27
|
+
roocode: () => import('../../init/roocode-installer.js'),
|
|
28
|
+
codex: () => import('../../init/codex-installer.js'),
|
|
29
|
+
windsurf: () => import('../../init/windsurf-installer.js'),
|
|
30
|
+
continuedev: () => import('../../init/continuedev-installer.js'),
|
|
31
|
+
};
|
|
21
32
|
function isValidPlatformId(name) {
|
|
22
33
|
return VALID_PLATFORM_IDS.includes(name);
|
|
23
34
|
}
|
|
@@ -205,8 +216,8 @@ export function createPlatformCommand() {
|
|
|
205
216
|
console.log(chalk.gray(' ─────────────────────────────────'));
|
|
206
217
|
console.log('');
|
|
207
218
|
try {
|
|
208
|
-
//
|
|
209
|
-
const installerModule = await
|
|
219
|
+
// Load the selected installer from a statically declared import.
|
|
220
|
+
const installerModule = await PLATFORM_INSTALLERS[name]();
|
|
210
221
|
// Resolve the factory function name: create<Name>Installer
|
|
211
222
|
const factoryName = `create${name.charAt(0).toUpperCase()}${name.slice(1).replace(/([a-z])([A-Z])/g, '$1$2')}Installer`;
|
|
212
223
|
// Find the factory function (try common naming patterns)
|
|
@@ -267,10 +278,12 @@ export function createPlatformCommand() {
|
|
|
267
278
|
console.log(chalk.red(` ${err}`));
|
|
268
279
|
}
|
|
269
280
|
}
|
|
281
|
+
process.exit(1);
|
|
270
282
|
}
|
|
271
283
|
}
|
|
272
284
|
catch (error) {
|
|
273
285
|
console.log(chalk.red(` Failed to set up ${platform.name}: ${toErrorMessage(error)}`));
|
|
286
|
+
process.exit(1);
|
|
274
287
|
}
|
|
275
288
|
console.log('');
|
|
276
289
|
});
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* `aqe upgrade` — read-only advisory
|
|
3
3
|
*
|
|
4
4
|
* Detects which optional native bindings load on this platform and prints a
|
|
5
|
-
* report with recommendations.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* report with recommendations. It reports the effective runtime flags after
|
|
6
|
+
* CLI startup applies environment overrides, but does not persist changes to
|
|
7
|
+
* environment variables or config files.
|
|
8
8
|
*
|
|
9
9
|
* Related: issue #383 item 2.
|
|
10
10
|
*/
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* `aqe upgrade` — read-only advisory
|
|
3
3
|
*
|
|
4
4
|
* Detects which optional native bindings load on this platform and prints a
|
|
5
|
-
* report with recommendations.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* report with recommendations. It reports the effective runtime flags after
|
|
6
|
+
* CLI startup applies environment overrides, but does not persist changes to
|
|
7
|
+
* environment variables or config files.
|
|
8
8
|
*
|
|
9
9
|
* Related: issue #383 item 2.
|
|
10
10
|
*/
|
|
@@ -29,7 +29,6 @@ export function createWorkflowCommand(context, cleanupAndExit, ensureInitialized
|
|
|
29
29
|
.action(async (file, options) => {
|
|
30
30
|
if (!await ensureInitialized())
|
|
31
31
|
return;
|
|
32
|
-
const fs = await import('fs');
|
|
33
32
|
const pathModule = await import('path');
|
|
34
33
|
const filePath = pathModule.resolve(file);
|
|
35
34
|
try {
|
|
@@ -123,6 +122,9 @@ export function createWorkflowCommand(context, cleanupAndExit, ensureInitialized
|
|
|
123
122
|
console.log(chalk.yellow(`Workflow ${finalStatus.status}`));
|
|
124
123
|
}
|
|
125
124
|
}
|
|
125
|
+
console.log('');
|
|
126
|
+
await cleanupAndExit(finalStatus?.status === 'completed' ? 0 : 1);
|
|
127
|
+
return;
|
|
126
128
|
}
|
|
127
129
|
else {
|
|
128
130
|
console.log(chalk.green('Workflow execution started'));
|
|
@@ -424,6 +426,12 @@ export function createWorkflowCommand(context, cleanupAndExit, ensureInitialized
|
|
|
424
426
|
if (status.error) {
|
|
425
427
|
console.log(chalk.red(`\n Error: ${status.error}`));
|
|
426
428
|
}
|
|
429
|
+
for (const receipt of status.parallelCompositionReceipts ?? []) {
|
|
430
|
+
console.log(` Composition ${receipt.groupId}: ${receipt.disposition}`);
|
|
431
|
+
for (const conflict of receipt.conflicts) {
|
|
432
|
+
console.log(` ${conflict.kind}: ${conflict.stepA}.${conflict.pathA} / ${conflict.stepB}.${conflict.pathB}`);
|
|
433
|
+
}
|
|
434
|
+
}
|
|
427
435
|
if (options.verbose && status.stepResults.size > 0) {
|
|
428
436
|
console.log(chalk.cyan('\n Step Results:'));
|
|
429
437
|
for (const [stepId, result] of status.stepResults) {
|
|
@@ -70,6 +70,16 @@ export interface InitJsonOutput {
|
|
|
70
70
|
policy: 'full' | 'compact' | 'none';
|
|
71
71
|
ownedBytes: number;
|
|
72
72
|
};
|
|
73
|
+
codexComponents?: {
|
|
74
|
+
hooks: {
|
|
75
|
+
status: string;
|
|
76
|
+
error?: string;
|
|
77
|
+
};
|
|
78
|
+
skills: {
|
|
79
|
+
status: string;
|
|
80
|
+
error?: string;
|
|
81
|
+
};
|
|
82
|
+
};
|
|
73
83
|
};
|
|
74
84
|
totalDurationMs: number;
|
|
75
85
|
timestamp: string;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import chalk from 'chalk';
|
|
7
7
|
import { getStatusColor, formatDuration, } from './interfaces.js';
|
|
8
|
+
import { ALL_DOMAINS, isDomainName } from '../../shared/types/index.js';
|
|
8
9
|
import { createTimedSpinner } from '../utils/progress.js';
|
|
9
10
|
import { parseJsonOption } from '../helpers/safe-json.js';
|
|
10
11
|
import { writeOutput, toJSON } from '../utils/ci-output.js';
|
|
@@ -32,7 +33,7 @@ export class TaskHandler {
|
|
|
32
33
|
.option('-d, --domain <domain>', 'Target domain')
|
|
33
34
|
.option('-t, --timeout <ms>', 'Task timeout in ms', '300000')
|
|
34
35
|
.option('--payload <json>', 'Task payload as JSON', '{}')
|
|
35
|
-
.option('--wait', 'Wait for task completion
|
|
36
|
+
.option('--wait', 'Wait for task completion (required: CLI tasks are not persisted)')
|
|
36
37
|
.option('--no-progress', 'Disable progress indicator')
|
|
37
38
|
.action(async (type, options) => {
|
|
38
39
|
await this.executeSubmit(type, options, context);
|
|
@@ -67,8 +68,27 @@ export class TaskHandler {
|
|
|
67
68
|
});
|
|
68
69
|
}
|
|
69
70
|
async executeSubmit(type, options, context) {
|
|
71
|
+
// #734 D: reject an unknown domain up front instead of accepting work that
|
|
72
|
+
// no domain will ever run.
|
|
73
|
+
if (options.domain !== undefined && !isDomainName(options.domain)) {
|
|
74
|
+
console.error(chalk.red(`\n Unknown domain: ${options.domain}`));
|
|
75
|
+
console.error(chalk.gray(` Valid domains: ${ALL_DOMAINS.join(', ')}\n`));
|
|
76
|
+
return this.cleanupAndExit(1);
|
|
77
|
+
}
|
|
78
|
+
// #734 C: a CLI-submitted task runs inside this process and is not
|
|
79
|
+
// persisted, so a detached submit would report an ID for work that is
|
|
80
|
+
// abandoned when the command exits. Refuse it rather than claim success.
|
|
81
|
+
if (!options.wait) {
|
|
82
|
+
console.error(chalk.red('\n Detached task submission is not supported.'));
|
|
83
|
+
console.error(chalk.gray(' Tasks submitted from the CLI run inside this process and are not persisted;'));
|
|
84
|
+
console.error(chalk.gray(' the task would be abandoned when the command exits, and `aqe task status`'));
|
|
85
|
+
console.error(chalk.gray(' from another process could not find it.'));
|
|
86
|
+
console.error(chalk.gray(' Re-run with --wait to execute the task and report its result, or submit it'));
|
|
87
|
+
console.error(chalk.gray(' through the MCP server (task_submit), which keeps a long-lived coordinator.\n'));
|
|
88
|
+
return this.cleanupAndExit(1);
|
|
89
|
+
}
|
|
70
90
|
if (!await this.ensureInitialized())
|
|
71
|
-
return;
|
|
91
|
+
return this.cleanupAndExit(1);
|
|
72
92
|
try {
|
|
73
93
|
const taskType = type;
|
|
74
94
|
const payload = parseJsonOption(options.payload, 'payload');
|
|
@@ -112,9 +132,9 @@ export class TaskHandler {
|
|
|
112
132
|
waitSpinner.succeed('Task completed successfully');
|
|
113
133
|
completed = true;
|
|
114
134
|
}
|
|
115
|
-
else if (taskStatus.status === 'failed') {
|
|
116
|
-
waitSpinner.fail(`Task
|
|
117
|
-
|
|
135
|
+
else if (taskStatus.status === 'failed' || taskStatus.status === 'cancelled') {
|
|
136
|
+
waitSpinner.fail(`Task ${taskStatus.status}: ${taskStatus.error || 'No successful result'}`);
|
|
137
|
+
return this.cleanupAndExit(1);
|
|
118
138
|
}
|
|
119
139
|
else {
|
|
120
140
|
// Update spinner with progress info
|
|
@@ -127,11 +147,13 @@ export class TaskHandler {
|
|
|
127
147
|
}
|
|
128
148
|
if (!completed) {
|
|
129
149
|
waitSpinner.fail('Task timed out');
|
|
150
|
+
return this.cleanupAndExit(1);
|
|
130
151
|
}
|
|
131
152
|
}
|
|
132
153
|
}
|
|
133
154
|
else {
|
|
134
155
|
console.log(chalk.red(` Error: ${result.error.message}`));
|
|
156
|
+
return this.cleanupAndExit(1);
|
|
135
157
|
}
|
|
136
158
|
console.log('');
|
|
137
159
|
}
|
|
@@ -142,7 +164,7 @@ export class TaskHandler {
|
|
|
142
164
|
}
|
|
143
165
|
async executeList(options, context) {
|
|
144
166
|
if (!await this.ensureInitialized())
|
|
145
|
-
return;
|
|
167
|
+
return this.cleanupAndExit(1);
|
|
146
168
|
try {
|
|
147
169
|
const tasks = context.queen.listTasks({
|
|
148
170
|
status: options.status,
|
|
@@ -155,6 +177,7 @@ export class TaskHandler {
|
|
|
155
177
|
taskId: task.taskId,
|
|
156
178
|
type: task.task.type,
|
|
157
179
|
status: task.status,
|
|
180
|
+
cancellationResultPending: task.cancellationResultPending,
|
|
158
181
|
priority: task.task.priority,
|
|
159
182
|
domain: task.assignedDomain || null,
|
|
160
183
|
startedAt: task.startedAt?.toISOString() || null,
|
|
@@ -189,11 +212,14 @@ export class TaskHandler {
|
|
|
189
212
|
}
|
|
190
213
|
async executeCancel(taskId, context) {
|
|
191
214
|
if (!await this.ensureInitialized())
|
|
192
|
-
return;
|
|
215
|
+
return this.cleanupAndExit(1);
|
|
193
216
|
try {
|
|
194
217
|
const result = await context.queen.cancelTask(taskId);
|
|
195
218
|
if (result.success) {
|
|
196
|
-
console.log(chalk.green(`\n
|
|
219
|
+
console.log(chalk.green(`\n Cancellation requested: ${taskId}\n`));
|
|
220
|
+
if (context.queen.getTaskStatus(taskId)?.cancellationResultPending) {
|
|
221
|
+
console.log(chalk.yellow(' Task result pending; work may continue.'));
|
|
222
|
+
}
|
|
197
223
|
}
|
|
198
224
|
else {
|
|
199
225
|
console.log(chalk.red(`\n Failed to cancel task: ${result.error.message}\n`));
|
|
@@ -206,12 +232,12 @@ export class TaskHandler {
|
|
|
206
232
|
}
|
|
207
233
|
async executeTaskStatus(taskId, options, context) {
|
|
208
234
|
if (!await this.ensureInitialized())
|
|
209
|
-
return;
|
|
235
|
+
return this.cleanupAndExit(1);
|
|
210
236
|
try {
|
|
211
237
|
const task = context.queen.getTaskStatus(taskId);
|
|
212
238
|
if (!task) {
|
|
213
239
|
console.log(chalk.red(`\n Task not found: ${taskId}\n`));
|
|
214
|
-
return;
|
|
240
|
+
return this.cleanupAndExit(1);
|
|
215
241
|
}
|
|
216
242
|
const format = (options.format || 'text');
|
|
217
243
|
if (format === 'json') {
|
|
@@ -219,6 +245,7 @@ export class TaskHandler {
|
|
|
219
245
|
taskId,
|
|
220
246
|
type: task.task.type,
|
|
221
247
|
status: task.status,
|
|
248
|
+
cancellationResultPending: task.cancellationResultPending,
|
|
222
249
|
priority: task.task.priority,
|
|
223
250
|
domain: task.assignedDomain || null,
|
|
224
251
|
agents: task.assignedAgents,
|
|
@@ -237,6 +264,9 @@ export class TaskHandler {
|
|
|
237
264
|
console.log(chalk.blue(`\n Task: ${taskId}\n`));
|
|
238
265
|
console.log(` Type: ${task.task.type}`);
|
|
239
266
|
console.log(` Status: ${getStatusColor(task.status)}`);
|
|
267
|
+
if (task.cancellationResultPending) {
|
|
268
|
+
console.log(chalk.yellow(' Task result pending; work may continue.'));
|
|
269
|
+
}
|
|
240
270
|
console.log(` Priority: ${task.task.priority}`);
|
|
241
271
|
if (task.assignedDomain) {
|
|
242
272
|
console.log(` Domain: ${task.assignedDomain}`);
|
|
@@ -284,7 +314,8 @@ Submit Options:
|
|
|
284
314
|
-d, --domain <domain> Target domain
|
|
285
315
|
-t, --timeout <ms> Task timeout in milliseconds (default: 300000)
|
|
286
316
|
--payload <json> Task payload as JSON
|
|
287
|
-
--wait Wait for task completion
|
|
317
|
+
--wait Wait for task completion (required; CLI-submitted
|
|
318
|
+
tasks run in this process and are not persisted)
|
|
288
319
|
--no-progress Disable progress indicator
|
|
289
320
|
|
|
290
321
|
List Options:
|
|
@@ -293,7 +324,7 @@ List Options:
|
|
|
293
324
|
-d, --domain <domain> Filter by domain
|
|
294
325
|
|
|
295
326
|
Examples:
|
|
296
|
-
aqe task submit generate-tests --domain test-generation
|
|
327
|
+
aqe task submit generate-tests --domain test-generation --wait
|
|
297
328
|
aqe task submit analyze-coverage --wait --timeout 60000
|
|
298
329
|
aqe task list --status running
|
|
299
330
|
aqe task status task-123
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { DomainPlugin, PluginLoader } from '../../kernel/interfaces.js';
|
|
2
|
+
import type { DomainName } from '../../shared/types/index.js';
|
|
3
|
+
/** Supply the Queen with the actual plugin instances that execute CLI tasks. */
|
|
4
|
+
export declare function loadCLIDomainPlugins(loader: PluginLoader): Promise<Map<DomainName, DomainPlugin>>;
|
|
5
|
+
//# sourceMappingURL=domain-plugins.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Supply the Queen with the actual plugin instances that execute CLI tasks. */
|
|
2
|
+
export async function loadCLIDomainPlugins(loader) {
|
|
3
|
+
await loader.loadAll();
|
|
4
|
+
const plugins = new Map();
|
|
5
|
+
for (const domain of loader.getLoaded()) {
|
|
6
|
+
// load() returns the cached instance after loadAll(), including dependencies.
|
|
7
|
+
plugins.set(domain, await loader.load(domain));
|
|
8
|
+
}
|
|
9
|
+
return plugins;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=domain-plugins.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { CLIContext } from '../handlers/interfaces.js';
|
|
2
|
+
/**
|
|
3
|
+
* Build the readiness check for `aqe memory` subcommands.
|
|
4
|
+
*
|
|
5
|
+
* Memory operations only need the project memory backend, so this opens
|
|
6
|
+
* .agentic-qe/memory.db directly instead of booting the full v3 system
|
|
7
|
+
* (kernel, Queen Coordinator, every domain coordinator, SONA engines,
|
|
8
|
+
* DreamScheduler). If a fleet is already running in this process, its kernel
|
|
9
|
+
* memory is used as before.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createEnsureMemoryBackend(context: CLIContext): () => Promise<boolean>;
|
|
12
|
+
//# sourceMappingURL=standalone-memory.d.ts.map
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import * as fs from 'node:fs';
|
|
2
|
+
import * as path from 'node:path';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { toErrorMessage } from '../../shared/error-utils.js';
|
|
5
|
+
/**
|
|
6
|
+
* Build the readiness check for `aqe memory` subcommands.
|
|
7
|
+
*
|
|
8
|
+
* Memory operations only need the project memory backend, so this opens
|
|
9
|
+
* .agentic-qe/memory.db directly instead of booting the full v3 system
|
|
10
|
+
* (kernel, Queen Coordinator, every domain coordinator, SONA engines,
|
|
11
|
+
* DreamScheduler). If a fleet is already running in this process, its kernel
|
|
12
|
+
* memory is used as before.
|
|
13
|
+
*/
|
|
14
|
+
export function createEnsureMemoryBackend(context) {
|
|
15
|
+
let ready = null;
|
|
16
|
+
const open = async () => {
|
|
17
|
+
try {
|
|
18
|
+
const [{ findProjectRoot }, { createKernelMemoryBackend }, { setStandaloneMemoryBackend }] = await Promise.all([
|
|
19
|
+
import('../../kernel/project-root.js'),
|
|
20
|
+
import('../../kernel/hybrid-backend.js'),
|
|
21
|
+
import('../../mcp/handlers/memory-handlers.js'),
|
|
22
|
+
]);
|
|
23
|
+
// Same data directory the kernel resolves when auto-initializing.
|
|
24
|
+
const dataDir = path.join(findProjectRoot(), '.agentic-qe');
|
|
25
|
+
fs.mkdirSync(dataDir, { recursive: true });
|
|
26
|
+
const backend = createKernelMemoryBackend(dataDir);
|
|
27
|
+
await backend.initialize();
|
|
28
|
+
setStandaloneMemoryBackend(backend);
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
console.error(chalk.red(` Failed to open memory store: ${toErrorMessage(error)}`));
|
|
33
|
+
// Callers `return` on false; main() then exits with this code, matching
|
|
34
|
+
// ensureInitialized()'s failure path (#758).
|
|
35
|
+
process.exitCode = 1;
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
return () => {
|
|
40
|
+
if (context.initialized)
|
|
41
|
+
return Promise.resolve(true);
|
|
42
|
+
ready ??= open();
|
|
43
|
+
return ready;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=standalone-memory.js.map
|
package/dist/cli/index.js
CHANGED
|
@@ -10,47 +10,18 @@
|
|
|
10
10
|
* See: cli/commands/ for additional command modules
|
|
11
11
|
*/
|
|
12
12
|
import { toErrorMessage } from '../shared/error-utils.js';
|
|
13
|
+
import { initFeatureFlagsFromEnv } from '../integrations/ruvector/feature-flags.js';
|
|
13
14
|
import { createRequire } from 'node:module';
|
|
14
15
|
import { Command } from 'commander';
|
|
15
16
|
import chalk from 'chalk';
|
|
16
17
|
import { ALL_DOMAINS } from '../shared/types/index.js';
|
|
17
18
|
// ============================================================================
|
|
18
|
-
//
|
|
19
|
+
// Route internal diagnostics to stderr, filtered by AQE_LOG_LEVEL / LOG_LEVEL /
|
|
20
|
+
// AQE_VERBOSE (default: warn), so stdout stays clean for CI/JSON.
|
|
19
21
|
// ============================================================================
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
'[Queen]', '[QUEEN]', '[DomainBreakerRegistry]',
|
|
24
|
-
'[RealEmbeddings]', '[HNSWIndex]', '[PatternStore]',
|
|
25
|
-
'[TestGenerationCoordinator]', '[CodeIntelligence]', '[ProductFactorsBridge]',
|
|
26
|
-
'[LearningOptimizationCoordinator]', '[DreamEngine]', '[DreamScheduler]',
|
|
27
|
-
'[SecurityCompliance]', '[Providers]', '[GNN]',
|
|
28
|
-
'[test-generation]', '[test-execution]', '[coverage-analysis]',
|
|
29
|
-
'[quality-assessment]', '[defect-intelligence]', '[requirements-validation]',
|
|
30
|
-
'[code-intelligence]', '[security-compliance]', '[contract-testing]',
|
|
31
|
-
'[visual-accessibility]', '[chaos-resilience]', '[learning-optimization]',
|
|
32
|
-
'[enterprise-integration]', '[coordination]', '[PatternLearnerService]',
|
|
33
|
-
'[RequirementsValidation]', '[ParserRegistry]', '[AdversarialDefense]',
|
|
34
|
-
'[ContinueGateIntegration]', '[ContinueGate]', '[SQLitePatternStore]',
|
|
35
|
-
'[TokenTracking]', '[InfraHealing]', '[ExperienceCapture]',
|
|
36
|
-
];
|
|
37
|
-
/** Timestamped log pattern: [HH:MM:SS.sss] [LEVEL] */
|
|
38
|
-
const TIMESTAMPED_LOG_RE = /^\[\d{2}:\d{2}:\d{2}\.\d{3}\]\s+\[/;
|
|
39
|
-
const originalConsoleLog = console.log.bind(console);
|
|
40
|
-
console.log = (...args) => {
|
|
41
|
-
const first = typeof args[0] === 'string' ? args[0] : '';
|
|
42
|
-
const trimmed = first.trimStart();
|
|
43
|
-
if (INTERNAL_LOG_PREFIXES.some(prefix => trimmed.startsWith(prefix)) ||
|
|
44
|
-
TIMESTAMPED_LOG_RE.test(trimmed)) {
|
|
45
|
-
process.stderr.write(args.map(String).join(' ') + '\n');
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
originalConsoleLog(...args);
|
|
49
|
-
};
|
|
50
|
-
// Also redirect timestamped INFO/WARN/ERROR log lines (e.g. "[07:12:24.372] [INFO ]")
|
|
51
|
-
console.info = (...args) => {
|
|
52
|
-
process.stderr.write(args.map(String).join(' ') + '\n');
|
|
53
|
-
};
|
|
22
|
+
import { applyCommandVerbosity, installCliLogGate, isCliLogLevelEnabled } from './log-gate.js';
|
|
23
|
+
import { LogLevel } from '../logging/index.js';
|
|
24
|
+
installCliLogGate();
|
|
54
25
|
// ============================================================================
|
|
55
26
|
// CLI State
|
|
56
27
|
// ============================================================================
|
|
@@ -98,6 +69,7 @@ async function autoInitialize() {
|
|
|
98
69
|
const { WorkflowOrchestrator } = await import('../coordination/workflow-orchestrator.js');
|
|
99
70
|
const { createQueenCoordinator } = await import('../coordination/queen-coordinator.js');
|
|
100
71
|
const { createPersistentScheduler } = await import('./scheduler/index.js');
|
|
72
|
+
const { loadCLIDomainPlugins } = await import('./helpers/domain-plugins.js');
|
|
101
73
|
context.kernel = new QEKernelImpl({
|
|
102
74
|
maxConcurrentAgents: 15,
|
|
103
75
|
memoryBackend: 'sqlite',
|
|
@@ -105,10 +77,11 @@ async function autoInitialize() {
|
|
|
105
77
|
lazyLoading: true,
|
|
106
78
|
enabledDomains: [...ALL_DOMAINS],
|
|
107
79
|
// CLI commands are short-lived and don't benefit from the bridge's
|
|
108
|
-
// event-driven domain reactions.
|
|
80
|
+
// event-driven domain reactions.
|
|
109
81
|
enableExperienceBridge: false,
|
|
110
82
|
});
|
|
111
83
|
await context.kernel.initialize();
|
|
84
|
+
const domainPlugins = await loadCLIDomainPlugins(context.kernel.plugins);
|
|
112
85
|
context.router = new CrossDomainEventRouter(context.kernel.eventBus);
|
|
113
86
|
await context.router.initialize();
|
|
114
87
|
const getDomainAPI = (domain) => {
|
|
@@ -119,7 +92,7 @@ async function autoInitialize() {
|
|
|
119
92
|
await context.workflowOrchestrator.initialize();
|
|
120
93
|
registerDomainWorkflowActions(context.kernel, context.workflowOrchestrator);
|
|
121
94
|
context.persistentScheduler = createPersistentScheduler();
|
|
122
|
-
context.queen = createQueenCoordinator(context.kernel, context.router, protocolExecutor, undefined);
|
|
95
|
+
context.queen = createQueenCoordinator(context.kernel, context.router, protocolExecutor, undefined, domainPlugins);
|
|
123
96
|
await context.queen.initialize();
|
|
124
97
|
// Bridge the CLI-initialized components into the MCP handlers' fleet state.
|
|
125
98
|
// The memory/agent/task/team/pipeline handlers are shared between the MCP
|
|
@@ -142,10 +115,12 @@ async function ensureInitializedStrict() {
|
|
|
142
115
|
// For diagnostic commands: check if project was explicitly initialized
|
|
143
116
|
const fs = await import('fs');
|
|
144
117
|
const path = await import('path');
|
|
145
|
-
const
|
|
118
|
+
const { findProjectRoot } = await import('../kernel/project-root.js');
|
|
119
|
+
const configDir = path.join(findProjectRoot(), '.agentic-qe');
|
|
146
120
|
if (!fs.existsSync(configDir)) {
|
|
147
121
|
console.error(chalk.red('\nError: AQE system not initialized in this directory.'));
|
|
148
122
|
console.log(chalk.yellow('Run `aqe init` first to set up this project.\n'));
|
|
123
|
+
process.exitCode = 1;
|
|
149
124
|
return false;
|
|
150
125
|
}
|
|
151
126
|
return ensureInitialized();
|
|
@@ -154,14 +129,19 @@ async function ensureInitialized() {
|
|
|
154
129
|
if (context.initialized && context.kernel && context.queen) {
|
|
155
130
|
return true;
|
|
156
131
|
}
|
|
157
|
-
|
|
132
|
+
const showProgress = isCliLogLevelEnabled(LogLevel.INFO);
|
|
133
|
+
if (showProgress) {
|
|
134
|
+
process.stderr.write(chalk.gray('Auto-initializing v3 system...') + '\n');
|
|
135
|
+
}
|
|
158
136
|
const timeout = 30000;
|
|
159
137
|
const timeoutPromise = new Promise((_, reject) => {
|
|
160
138
|
setTimeout(() => reject(new Error('Initialization timeout after 30 seconds')), timeout);
|
|
161
139
|
});
|
|
162
140
|
try {
|
|
163
141
|
await Promise.race([autoInitialize(), timeoutPromise]);
|
|
164
|
-
|
|
142
|
+
if (showProgress) {
|
|
143
|
+
process.stderr.write(chalk.green('System ready') + '\n\n');
|
|
144
|
+
}
|
|
165
145
|
return true;
|
|
166
146
|
}
|
|
167
147
|
catch (err) {
|
|
@@ -174,6 +154,8 @@ async function ensureInitialized() {
|
|
|
174
154
|
console.error(chalk.red('Failed to auto-initialize:'), err);
|
|
175
155
|
console.log(chalk.yellow('Try running `aqe init` manually.'));
|
|
176
156
|
}
|
|
157
|
+
// Callers `return` on false; main() then exits with this code (#758).
|
|
158
|
+
process.exitCode = 1;
|
|
177
159
|
return false;
|
|
178
160
|
}
|
|
179
161
|
}
|
|
@@ -214,7 +196,18 @@ const VERSION = typeof __CLI_VERSION__ !== 'undefined' ? __CLI_VERSION__ : packa
|
|
|
214
196
|
program
|
|
215
197
|
.name('aqe')
|
|
216
198
|
.description('Agentic QE - Domain-Driven Quality Engineering')
|
|
217
|
-
.version(VERSION)
|
|
199
|
+
.version(VERSION)
|
|
200
|
+
.addHelpText('after', `
|
|
201
|
+
Environment:
|
|
202
|
+
AQE_LOG_LEVEL Internal log level: debug | info | warn | error | silent (default: warn)
|
|
203
|
+
LOG_LEVEL Same as AQE_LOG_LEVEL; AQE_LOG_LEVEL takes precedence
|
|
204
|
+
AQE_VERBOSE=1 Shorthand for info-level logging (full system-init output)
|
|
205
|
+
Diagnostics are written to stderr; stdout carries command output only.`);
|
|
206
|
+
// A command's own --verbose flag (aqe sync|status|workflow|eval ... --verbose)
|
|
207
|
+
// raises the log gate to INFO for that run; AQE_LOG_LEVEL / LOG_LEVEL win.
|
|
208
|
+
program.hook('preAction', (_thisCommand, actionCommand) => {
|
|
209
|
+
applyCommandVerbosity(actionCommand.opts());
|
|
210
|
+
});
|
|
218
211
|
// ============================================================================
|
|
219
212
|
// Register Handlers (lazy — each handler loads only when its command runs)
|
|
220
213
|
// ============================================================================
|
|
@@ -336,7 +329,11 @@ registerLazyCommand(program, {
|
|
|
336
329
|
registerLazyCommand(program, {
|
|
337
330
|
name: 'memory',
|
|
338
331
|
description: 'Memory store, retrieve, search, and delete operations',
|
|
339
|
-
|
|
332
|
+
// Memory subcommands open only the memory store, not the full v3 system.
|
|
333
|
+
factory: () => Promise.all([
|
|
334
|
+
import('./commands/memory.js'),
|
|
335
|
+
import('./helpers/standalone-memory.js'),
|
|
336
|
+
]).then(([m, h]) => m.createMemoryCommand(context, cleanupAndExit, h.createEnsureMemoryBackend(context))),
|
|
340
337
|
});
|
|
341
338
|
registerLazyCommand(program, {
|
|
342
339
|
name: 'mcp',
|
|
@@ -400,19 +397,27 @@ async function main() {
|
|
|
400
397
|
console.log(VERSION);
|
|
401
398
|
process.exit(0);
|
|
402
399
|
}
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
400
|
+
initFeatureFlagsFromEnv();
|
|
401
|
+
// File recovery must validate its input before anything opens, migrates, or
|
|
402
|
+
// auto-restores the project's database. Commander accepts `--` separators.
|
|
403
|
+
const commandArgs = process.argv.slice(2).filter(arg => arg !== '--');
|
|
404
|
+
const learningSnapshot = commandArgs[0] === 'learning'
|
|
405
|
+
&& (commandArgs[1] === 'backup' || commandArgs[1] === 'restore');
|
|
406
|
+
if (!learningSnapshot) {
|
|
407
|
+
const { bootstrapTokenTracking } = await import('../init/token-bootstrap.js');
|
|
408
|
+
await bootstrapTokenTracking({
|
|
409
|
+
enableOptimization: true,
|
|
410
|
+
enablePersistence: true,
|
|
411
|
+
verbose: process.env.AQE_VERBOSE === 'true',
|
|
412
|
+
});
|
|
413
|
+
}
|
|
409
414
|
await program.parseAsync();
|
|
410
415
|
// Foreground commands own their process lifetime after command dispatch.
|
|
411
416
|
if (isForegroundCommandActive())
|
|
412
417
|
return;
|
|
413
418
|
// If the command didn't explicitly exit, clean up and exit now.
|
|
414
419
|
// This prevents process hangs from active handles (domain init, embeddings, etc.)
|
|
415
|
-
await cleanupAndExit(0);
|
|
420
|
+
await cleanupAndExit(process.exitCode ?? 0);
|
|
416
421
|
}
|
|
417
422
|
main().catch(async (error) => {
|
|
418
423
|
console.error(chalk.red('Fatal error:'), error);
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - CLI Log Gate
|
|
3
|
+
*
|
|
4
|
+
* Single place that decides how much internal diagnostic output a CLI
|
|
5
|
+
* invocation prints. Two kinds of diagnostics exist in the codebase:
|
|
6
|
+
*
|
|
7
|
+
* 1. Structured logger output (LoggerFactory / ConsoleLogger), formatted as
|
|
8
|
+
* "[HH:MM:SS.mmm] [INFO ] [domain] message".
|
|
9
|
+
* 2. Ad-hoc console calls with a bracketed tag, e.g.
|
|
10
|
+
* console.log('[UnifiedMemory] Initialized: ...').
|
|
11
|
+
*
|
|
12
|
+
* Both are routed to stderr (stdout stays clean for JSON/CI consumers) and
|
|
13
|
+
* filtered against one threshold resolved from the environment:
|
|
14
|
+
*
|
|
15
|
+
* AQE_LOG_LEVEL debug | info | warn | error | silent (highest precedence)
|
|
16
|
+
* LOG_LEVEL same values
|
|
17
|
+
* AQE_VERBOSE 1 | true | yes | on -> info
|
|
18
|
+
* (default) warn
|
|
19
|
+
*
|
|
20
|
+
* Regular command output (anything without a bracketed tag) is never touched.
|
|
21
|
+
*/
|
|
22
|
+
import { LogLevel } from '../logging/index.js';
|
|
23
|
+
type ConsoleMethod = 'log' | 'info' | 'debug' | 'warn' | 'error';
|
|
24
|
+
type ConsoleLike = Pick<Console, ConsoleMethod>;
|
|
25
|
+
/** Default threshold for CLI commands when nothing is configured. */
|
|
26
|
+
export declare const DEFAULT_CLI_LOG_LEVEL = LogLevel.WARN;
|
|
27
|
+
/**
|
|
28
|
+
* Resolve the effective CLI log level from the environment.
|
|
29
|
+
* Unrecognised values are ignored rather than silently mapped to INFO.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveCliLogLevel(env?: NodeJS.ProcessEnv, defaultLevel?: LogLevel): LogLevel;
|
|
32
|
+
/**
|
|
33
|
+
* Classify a console call. Returns the diagnostic level of the line, or null
|
|
34
|
+
* when the line is regular command output that must pass through untouched.
|
|
35
|
+
*/
|
|
36
|
+
export declare function classifyConsoleLine(method: ConsoleMethod, firstArg: unknown): LogLevel | null;
|
|
37
|
+
/** True when AQE_LOG_LEVEL or LOG_LEVEL holds a recognised level. */
|
|
38
|
+
export declare function hasExplicitCliLogLevel(env?: NodeJS.ProcessEnv): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Honour a command's own `--verbose` flag (e.g. `aqe sync --verbose`): raise
|
|
41
|
+
* the threshold to INFO so the diagnostics the user explicitly asked for are
|
|
42
|
+
* printed (on stderr). An explicit AQE_LOG_LEVEL / LOG_LEVEL still wins.
|
|
43
|
+
* Returns true when the level was raised.
|
|
44
|
+
*/
|
|
45
|
+
export declare function applyCommandVerbosity(options: Record<string, unknown>, env?: NodeJS.ProcessEnv): boolean;
|
|
46
|
+
/** Current CLI log threshold. */
|
|
47
|
+
export declare function getCliLogLevel(): LogLevel;
|
|
48
|
+
/** True when diagnostics at `level` should be printed. */
|
|
49
|
+
export declare function isCliLogLevelEnabled(level: LogLevel): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Change the threshold at runtime. Also reconfigures LoggerFactory so loggers
|
|
52
|
+
* created afterwards filter at the source instead of relying on the gate.
|
|
53
|
+
*/
|
|
54
|
+
export declare function setCliLogLevel(level: LogLevel): void;
|
|
55
|
+
export interface InstallCliLogGateOptions {
|
|
56
|
+
level?: LogLevel;
|
|
57
|
+
target?: ConsoleLike;
|
|
58
|
+
writeStderr?: (text: string) => void;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Patch the console so internal diagnostics are routed to stderr and filtered
|
|
62
|
+
* by the CLI log level. Returns a function that restores the original methods.
|
|
63
|
+
*/
|
|
64
|
+
export declare function installCliLogGate(options?: InstallCliLogGateOptions): () => void;
|
|
65
|
+
export {};
|
|
66
|
+
//# sourceMappingURL=log-gate.d.ts.map
|