agentic-qe 3.14.2 → 3.14.4

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.
Files changed (760) hide show
  1. package/.claude/agents/v3/qe-coverage-specialist.md +1 -1
  2. package/.claude/agents/v3/qe-fleet-commander.md +1 -1
  3. package/.claude/agents/v3/qe-pentest-validator.md +1 -1
  4. package/.claude/agents/v3/qe-queen-coordinator.md +1 -1
  5. package/.claude/agents/v3/qe-risk-assessor.md +1 -1
  6. package/.claude/agents/v3/qe-root-cause-analyzer.md +1 -1
  7. package/.claude/agents/v3/qe-security-auditor.md +1 -1
  8. package/.claude/agents/v3/qe-test-architect.md +1 -1
  9. package/.claude/commands/aqe-costs.md +10 -10
  10. package/.claude/helpers/advisor-call.cjs +3 -3
  11. package/.claude/helpers/v3/advisor-call.cjs +3 -3
  12. package/.claude/skills/.validation/examples/chaos-engineering-output.example.json +1 -1
  13. package/.claude/skills/.validation/examples/performance-testing-output.example.json +1 -1
  14. package/.claude/skills/.validation/examples/security-testing-output.example.json +1 -1
  15. package/.claude/skills/.validation/examples/testability-scoring-output.example.json +1 -1
  16. package/.claude/skills/.validation/schemas/skill-eval.schema.json +4 -1
  17. package/.claude/skills/.validation/schemas/skill-frontmatter.schema.json +1 -1
  18. package/.claude/skills/.validation/schemas/skill-output.template.json +1 -1
  19. package/.claude/skills/.validation/templates/eval.template.yaml +1 -1
  20. package/.claude/skills/.validation/templates/security-testing-eval.template.yaml +1 -1
  21. package/.claude/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
  22. package/.claude/skills/.validation/test-data/sample-output.json +1 -1
  23. package/.claude/skills/a11y-ally/SKILL.md +1 -1
  24. package/.claude/skills/a11y-ally/evals/a11y-ally.yaml +1 -1
  25. package/.claude/skills/accessibility-testing/evals/accessibility-testing.yaml +1 -1
  26. package/.claude/skills/api-testing-patterns/evals/api-testing-patterns.yaml +1 -1
  27. package/.claude/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
  28. package/.claude/skills/cicd-pipeline-qe-orchestrator/evals/cicd-pipeline-qe-orchestrator.yaml +1 -1
  29. package/.claude/skills/compatibility-testing/evals/compatibility-testing.yaml +1 -1
  30. package/.claude/skills/compliance-testing/evals/compliance-testing.yaml +1 -1
  31. package/.claude/skills/contract-testing/evals/contract-testing.yaml +1 -1
  32. package/.claude/skills/database-testing/evals/database-testing.yaml +1 -1
  33. package/.claude/skills/enterprise-integration-testing/evals/enterprise-integration-testing.yaml +1 -1
  34. package/.claude/skills/localization-testing/evals/localization-testing.yaml +1 -1
  35. package/.claude/skills/middleware-testing-patterns/evals/middleware-testing-patterns.yaml +1 -1
  36. package/.claude/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
  37. package/.claude/skills/mutation-testing/evals/mutation-testing.yaml +1 -1
  38. package/.claude/skills/mutation-testing/test-data/sample-output.json +1 -1
  39. package/.claude/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +1 -1
  40. package/.claude/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +1 -1
  41. package/.claude/skills/n8n-security-testing/evals/n8n-security-testing.yaml +1 -1
  42. package/.claude/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +1 -1
  43. package/.claude/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +1 -1
  44. package/.claude/skills/observability-testing-patterns/evals/observability-testing-patterns.yaml +1 -1
  45. package/.claude/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
  46. package/.claude/skills/performance-testing/evals/performance-testing.yaml +1 -1
  47. package/.claude/skills/qcsd-cicd-swarm/evals/qcsd-cicd-swarm.yaml +1 -1
  48. package/.claude/skills/qcsd-development-swarm/evals/qcsd-development-swarm.yaml +1 -1
  49. package/.claude/skills/qcsd-ideation-swarm/evals/qcsd-ideation-swarm.yaml +1 -1
  50. package/.claude/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +1 -1
  51. package/.claude/skills/qcsd-refinement-swarm/evals/qcsd-refinement-swarm.yaml +1 -1
  52. package/.claude/skills/qe-browser/evals/qe-browser.yaml +1 -1
  53. package/.claude/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
  54. package/.claude/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
  55. package/.claude/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
  56. package/.claude/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
  57. package/.claude/skills/qe-learning-optimization/evals/qe-learning-optimization.yaml +2 -2
  58. package/.claude/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
  59. package/.claude/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
  60. package/.claude/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
  61. package/.claude/skills/qe-test-generation/evals/qe-test-generation.yaml +1 -1
  62. package/.claude/skills/qe-visual-accessibility/evals/qe-visual-accessibility.yaml +1 -1
  63. package/.claude/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
  64. package/.claude/skills/regression-testing/evals/regression-testing.yaml +1 -1
  65. package/.claude/skills/risk-based-testing/evals/risk-based-testing.yaml +1 -1
  66. package/.claude/skills/security-testing/evals/security-testing.yaml +1 -1
  67. package/.claude/skills/security-visual-testing/evals/security-visual-testing.yaml +1 -1
  68. package/.claude/skills/shift-left-testing/evals/shift-left-testing.yaml +1 -1
  69. package/.claude/skills/shift-right-testing/evals/shift-right-testing.yaml +1 -1
  70. package/.claude/skills/skills-manifest.json +1 -1
  71. package/.claude/skills/test-automation-strategy/evals/test-automation-strategy.yaml +1 -1
  72. package/.claude/skills/test-data-management/evals/test-data-management.yaml +1 -1
  73. package/.claude/skills/test-design-techniques/evals/test-design-techniques.yaml +1 -1
  74. package/.claude/skills/test-reporting-analytics/evals/test-reporting-analytics.yaml +1 -1
  75. package/.claude/skills/testability-scoring/evals/testability-scoring.yaml +1 -1
  76. package/.claude/skills/validation-pipeline/evals/validation-pipeline.yaml +1 -1
  77. package/.claude/skills/verification-quality/evals/verification-quality.yaml +1 -1
  78. package/.claude/skills/visual-testing-advanced/evals/visual-testing-advanced.yaml +1 -1
  79. package/.claude/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +1 -1
  80. package/.opencode/agents/collective-intelligence-coordinator.yaml +1 -1
  81. package/.opencode/agents/ddd-domain-expert.yaml +1 -1
  82. package/.opencode/agents/memory-specialist.yaml +1 -1
  83. package/.opencode/agents/performance-engineer.yaml +1 -1
  84. package/.opencode/agents/qe-accessibility-auditor.yaml +1 -1
  85. package/.opencode/agents/qe-api-contract-validator.yaml +1 -1
  86. package/.opencode/agents/qe-bdd-generator.yaml +1 -1
  87. package/.opencode/agents/qe-chaos-engineer.yaml +1 -1
  88. package/.opencode/agents/qe-code-complexity.yaml +1 -1
  89. package/.opencode/agents/qe-code-intelligence.yaml +1 -1
  90. package/.opencode/agents/qe-coverage-analyzer.yaml +1 -1
  91. package/.opencode/agents/qe-defect-predictor.yaml +1 -1
  92. package/.opencode/agents/qe-dependency-mapper.yaml +1 -1
  93. package/.opencode/agents/qe-deployment-advisor.yaml +1 -1
  94. package/.opencode/agents/qe-devils-advocate.yaml +1 -1
  95. package/.opencode/agents/qe-flaky-hunter.yaml +1 -1
  96. package/.opencode/agents/qe-fleet-commander.yaml +1 -1
  97. package/.opencode/agents/qe-gap-detector.yaml +1 -1
  98. package/.opencode/agents/qe-graphql-tester.yaml +1 -1
  99. package/.opencode/agents/qe-impact-analyzer.yaml +1 -1
  100. package/.opencode/agents/qe-integration-architect.yaml +1 -1
  101. package/.opencode/agents/qe-integration-tester.yaml +1 -1
  102. package/.opencode/agents/qe-kg-builder.yaml +1 -1
  103. package/.opencode/agents/qe-learning-coordinator.yaml +1 -1
  104. package/.opencode/agents/qe-load-tester.yaml +1 -1
  105. package/.opencode/agents/qe-message-broker-tester.yaml +1 -1
  106. package/.opencode/agents/qe-metrics-optimizer.yaml +1 -1
  107. package/.opencode/agents/qe-middleware-validator.yaml +1 -1
  108. package/.opencode/agents/qe-mutation-tester.yaml +1 -1
  109. package/.opencode/agents/qe-odata-contract-tester.yaml +1 -1
  110. package/.opencode/agents/qe-parallel-executor.yaml +1 -1
  111. package/.opencode/agents/qe-pattern-learner.yaml +1 -1
  112. package/.opencode/agents/qe-pentest-validator.yaml +1 -1
  113. package/.opencode/agents/qe-performance-tester.yaml +1 -1
  114. package/.opencode/agents/qe-product-factors-assessor.yaml +1 -1
  115. package/.opencode/agents/qe-property-tester.yaml +1 -1
  116. package/.opencode/agents/qe-quality-criteria-recommender.yaml +1 -1
  117. package/.opencode/agents/qe-quality-gate.yaml +1 -1
  118. package/.opencode/agents/qe-queen-coordinator.yaml +1 -1
  119. package/.opencode/agents/qe-qx-partner.yaml +1 -1
  120. package/.opencode/agents/qe-regression-analyzer.yaml +1 -1
  121. package/.opencode/agents/qe-requirements-validator.yaml +1 -1
  122. package/.opencode/agents/qe-responsive-tester.yaml +1 -1
  123. package/.opencode/agents/qe-retry-handler.yaml +1 -1
  124. package/.opencode/agents/qe-risk-assessor.yaml +1 -1
  125. package/.opencode/agents/qe-root-cause-analyzer.yaml +1 -1
  126. package/.opencode/agents/qe-sap-idoc-tester.yaml +1 -1
  127. package/.opencode/agents/qe-sap-rfc-tester.yaml +1 -1
  128. package/.opencode/agents/qe-security-auditor.yaml +1 -1
  129. package/.opencode/agents/qe-security-scanner.yaml +1 -1
  130. package/.opencode/agents/qe-soap-tester.yaml +1 -1
  131. package/.opencode/agents/qe-sod-analyzer.yaml +1 -1
  132. package/.opencode/agents/qe-tdd-specialist.yaml +1 -1
  133. package/.opencode/agents/qe-test-generator.yaml +1 -1
  134. package/.opencode/agents/qe-test-idea-rewriter.yaml +1 -1
  135. package/.opencode/agents/qe-transfer-specialist.yaml +1 -1
  136. package/.opencode/agents/qe-visual-tester.yaml +1 -1
  137. package/.opencode/agents/security-architect.yaml +1 -1
  138. package/.opencode/agents/security-auditor.yaml +1 -1
  139. package/CHANGELOG.md +183 -0
  140. package/README.md +7 -2
  141. package/assets/agents/v3/helpers/advisor-call.cjs +3 -3
  142. package/assets/agents/v3/qe-coverage-specialist.md +1 -1
  143. package/assets/agents/v3/qe-fleet-commander.md +1 -1
  144. package/assets/agents/v3/qe-pentest-validator.md +1 -1
  145. package/assets/agents/v3/qe-queen-coordinator.md +1 -1
  146. package/assets/agents/v3/qe-risk-assessor.md +1 -1
  147. package/assets/agents/v3/qe-root-cause-analyzer.md +1 -1
  148. package/assets/agents/v3/qe-security-auditor.md +1 -1
  149. package/assets/agents/v3/qe-test-architect.md +1 -1
  150. package/assets/skills/.validation/examples/chaos-engineering-output.example.json +1 -1
  151. package/assets/skills/.validation/examples/performance-testing-output.example.json +1 -1
  152. package/assets/skills/.validation/examples/security-testing-output.example.json +1 -1
  153. package/assets/skills/.validation/examples/testability-scoring-output.example.json +1 -1
  154. package/assets/skills/.validation/schemas/skill-eval.schema.json +4 -1
  155. package/assets/skills/.validation/schemas/skill-frontmatter.schema.json +1 -1
  156. package/assets/skills/.validation/schemas/skill-output.template.json +1 -1
  157. package/assets/skills/.validation/templates/eval.template.yaml +1 -1
  158. package/assets/skills/.validation/templates/security-testing-eval.template.yaml +1 -1
  159. package/assets/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
  160. package/assets/skills/.validation/test-data/sample-output.json +1 -1
  161. package/assets/skills/a11y-ally/SKILL.md +1 -1
  162. package/assets/skills/a11y-ally/evals/a11y-ally.yaml +1 -1
  163. package/assets/skills/accessibility-testing/evals/accessibility-testing.yaml +1 -1
  164. package/assets/skills/api-testing-patterns/evals/api-testing-patterns.yaml +1 -1
  165. package/assets/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
  166. package/assets/skills/cicd-pipeline-qe-orchestrator/evals/cicd-pipeline-qe-orchestrator.yaml +1 -1
  167. package/assets/skills/compatibility-testing/evals/compatibility-testing.yaml +1 -1
  168. package/assets/skills/compliance-testing/evals/compliance-testing.yaml +1 -1
  169. package/assets/skills/contract-testing/evals/contract-testing.yaml +1 -1
  170. package/assets/skills/database-testing/evals/database-testing.yaml +1 -1
  171. package/assets/skills/enterprise-integration-testing/evals/enterprise-integration-testing.yaml +1 -1
  172. package/assets/skills/localization-testing/evals/localization-testing.yaml +1 -1
  173. package/assets/skills/middleware-testing-patterns/evals/middleware-testing-patterns.yaml +1 -1
  174. package/assets/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
  175. package/assets/skills/mutation-testing/evals/mutation-testing.yaml +1 -1
  176. package/assets/skills/mutation-testing/test-data/sample-output.json +1 -1
  177. package/assets/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +1 -1
  178. package/assets/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +1 -1
  179. package/assets/skills/n8n-security-testing/evals/n8n-security-testing.yaml +1 -1
  180. package/assets/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +1 -1
  181. package/assets/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +1 -1
  182. package/assets/skills/observability-testing-patterns/evals/observability-testing-patterns.yaml +1 -1
  183. package/assets/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
  184. package/assets/skills/performance-testing/evals/performance-testing.yaml +1 -1
  185. package/assets/skills/qcsd-cicd-swarm/evals/qcsd-cicd-swarm.yaml +1 -1
  186. package/assets/skills/qcsd-development-swarm/evals/qcsd-development-swarm.yaml +1 -1
  187. package/assets/skills/qcsd-ideation-swarm/evals/qcsd-ideation-swarm.yaml +1 -1
  188. package/assets/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +1 -1
  189. package/assets/skills/qcsd-refinement-swarm/evals/qcsd-refinement-swarm.yaml +1 -1
  190. package/assets/skills/qe-browser/evals/qe-browser.yaml +1 -1
  191. package/assets/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
  192. package/assets/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
  193. package/assets/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
  194. package/assets/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
  195. package/assets/skills/qe-learning-optimization/evals/qe-learning-optimization.yaml +2 -2
  196. package/assets/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
  197. package/assets/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
  198. package/assets/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
  199. package/assets/skills/qe-test-generation/evals/qe-test-generation.yaml +1 -1
  200. package/assets/skills/qe-visual-accessibility/evals/qe-visual-accessibility.yaml +1 -1
  201. package/assets/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
  202. package/assets/skills/regression-testing/evals/regression-testing.yaml +1 -1
  203. package/assets/skills/risk-based-testing/evals/risk-based-testing.yaml +1 -1
  204. package/assets/skills/security-testing/evals/security-testing.yaml +1 -1
  205. package/assets/skills/security-visual-testing/evals/security-visual-testing.yaml +1 -1
  206. package/assets/skills/shift-left-testing/evals/shift-left-testing.yaml +1 -1
  207. package/assets/skills/shift-right-testing/evals/shift-right-testing.yaml +1 -1
  208. package/assets/skills/skills-manifest.json +1 -1
  209. package/assets/skills/test-automation-strategy/evals/test-automation-strategy.yaml +1 -1
  210. package/assets/skills/test-data-management/evals/test-data-management.yaml +1 -1
  211. package/assets/skills/test-design-techniques/evals/test-design-techniques.yaml +1 -1
  212. package/assets/skills/test-reporting-analytics/evals/test-reporting-analytics.yaml +1 -1
  213. package/assets/skills/testability-scoring/evals/testability-scoring.yaml +1 -1
  214. package/assets/skills/validation-pipeline/evals/validation-pipeline.yaml +1 -1
  215. package/assets/skills/verification-quality/evals/verification-quality.yaml +1 -1
  216. package/assets/skills/visual-testing-advanced/evals/visual-testing-advanced.yaml +1 -1
  217. package/assets/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +1 -1
  218. package/dist/cli/bundle.js +7 -7
  219. package/dist/cli/chunks/adapter-TNNNJRDG.js +2 -0
  220. package/dist/cli/chunks/{agent-booster-wasm-SD5N32MX.js → agent-booster-wasm-5PC7D2FW.js} +2 -2
  221. package/dist/cli/chunks/{agent-handler-OZRSJM7F.js → agent-handler-RDNTK4CA.js} +2 -2
  222. package/dist/cli/chunks/{agent-memory-branch-NYTRANRN.js → agent-memory-branch-NAAMBWIR.js} +2 -2
  223. package/dist/cli/chunks/aqe-learning-engine-5ZRMYJLB.js +2 -0
  224. package/dist/cli/chunks/{arena-EX3SC2DP.js → arena-HXTWJ5YY.js} +4 -4
  225. package/dist/cli/chunks/{arena-FOTVSRK4.js → arena-KXFHRWX4.js} +2 -2
  226. package/dist/cli/chunks/{audit-Q5GHSUQY.js → audit-YSGA7UWT.js} +3 -3
  227. package/dist/cli/chunks/base-KWZHOPSH.js +2 -0
  228. package/dist/cli/chunks/{better-sqlite3-S7M5R2HS.js → better-sqlite3-UICJZIDG.js} +2 -2
  229. package/dist/cli/chunks/brain-handler-ET6YAP4B.js +90 -0
  230. package/dist/cli/chunks/{branch-enumerator-RWAXTGEU.js → branch-enumerator-SS7UNVIA.js} +2 -2
  231. package/dist/cli/chunks/{browser-IGDESJGF.js → browser-77GI6KBE.js} +2 -2
  232. package/dist/cli/chunks/browser-workflow-2FZTKDUL.js +2 -0
  233. package/dist/cli/chunks/{chunk-U54OOA24.js → chunk-2JW3BCGG.js} +1 -1
  234. package/dist/cli/chunks/{chunk-LML5VTFK.js → chunk-33YYYWBQ.js} +1 -1
  235. package/dist/cli/chunks/{chunk-P64DMQ2C.js → chunk-34WO57CW.js} +1 -1
  236. package/dist/cli/chunks/{chunk-57TNBR2P.js → chunk-3QHGWY7T.js} +2 -2
  237. package/dist/cli/chunks/chunk-3TW5W5LX.js +2 -0
  238. package/dist/cli/chunks/{chunk-S4MR6RTE.js → chunk-3UPAMMCB.js} +1 -1
  239. package/dist/cli/chunks/{chunk-5WJUNRTY.js → chunk-3VOQRIQM.js} +2 -2
  240. package/dist/cli/chunks/{chunk-4RT7I7PI.js → chunk-3X3DJZJJ.js} +1 -1
  241. package/dist/cli/chunks/{chunk-RFNEHNJV.js → chunk-4MHXCAG2.js} +1 -1
  242. package/dist/cli/chunks/{chunk-PMUBG2RU.js → chunk-4OYFXLBK.js} +2 -2
  243. package/dist/cli/chunks/{chunk-W2FLULF4.js → chunk-55RWDRJD.js} +3 -3
  244. package/dist/cli/chunks/chunk-5R3QL7WN.js +14 -0
  245. package/dist/cli/chunks/{chunk-RHJVDCLV.js → chunk-5SJHQ2CO.js} +2 -2
  246. package/dist/cli/chunks/{chunk-HBTC4L53.js → chunk-5YPYDPBJ.js} +2 -2
  247. package/dist/cli/chunks/chunk-5Z6XZV7K.js +65 -0
  248. package/dist/cli/chunks/{chunk-6EHN7Q2Q.js → chunk-64PFWE2F.js} +2 -2
  249. package/dist/cli/chunks/{chunk-KFXZDQ5J.js → chunk-6CQN24ZK.js} +1 -1
  250. package/dist/cli/chunks/{chunk-WVY22NHZ.js → chunk-6J62K3SW.js} +2 -2
  251. package/dist/cli/chunks/{chunk-TLPL3EQY.js → chunk-6KJABXAR.js} +2 -2
  252. package/dist/cli/chunks/{chunk-PZKZY6PB.js → chunk-6QYNWR7U.js} +2 -2
  253. package/dist/cli/chunks/{chunk-A7N3YUDJ.js → chunk-6TPKK7LD.js} +2 -2
  254. package/dist/cli/chunks/{chunk-RYJHREYS.js → chunk-6UWGMOND.js} +2 -2
  255. package/dist/cli/chunks/{chunk-XPLSLHRB.js → chunk-6VRA2QGL.js} +1 -1
  256. package/dist/cli/chunks/{chunk-Q3JHS3UD.js → chunk-7D777LTF.js} +2 -2
  257. package/dist/cli/chunks/chunk-7ZIOFPL3.js +2 -0
  258. package/dist/cli/chunks/chunk-A4FYONNU.js +2 -0
  259. package/dist/cli/chunks/{chunk-7AFBNU6K.js → chunk-AIHDEEJO.js} +2 -2
  260. package/dist/cli/chunks/{chunk-L2F7FVIU.js → chunk-AUXFKCQL.js} +2 -2
  261. package/dist/cli/chunks/{chunk-67A6PEZM.js → chunk-AWWNB2T7.js} +2 -2
  262. package/dist/cli/chunks/{chunk-DVHWLAEO.js → chunk-BDESSCVR.js} +3 -3
  263. package/dist/cli/chunks/{chunk-JQ2ZD3WO.js → chunk-BFP7KO7P.js} +2 -2
  264. package/dist/cli/chunks/{chunk-N5ZRUOMR.js → chunk-BGE6FOLM.js} +2 -2
  265. package/dist/cli/chunks/{chunk-BWRHOIYC.js → chunk-BOARZKU3.js} +2 -2
  266. package/dist/cli/chunks/{chunk-CTCQOYBS.js → chunk-BOZZYWCR.js} +1 -1
  267. package/dist/cli/chunks/{chunk-NHHWLJQF.js → chunk-C2WU3533.js} +1 -1
  268. package/dist/cli/chunks/{chunk-5EHLGOWW.js → chunk-CDHQFHRP.js} +2 -2
  269. package/dist/cli/chunks/chunk-CDKG6EI7.js +16 -0
  270. package/dist/cli/chunks/{chunk-RGH3WGWD.js → chunk-CIKSHTEQ.js} +3 -3
  271. package/dist/cli/chunks/{chunk-K574FLVB.js → chunk-CIZ5JPDC.js} +2 -2
  272. package/dist/cli/chunks/{chunk-LWUJQGCS.js → chunk-CLTMDCSE.js} +2 -2
  273. package/dist/cli/chunks/{chunk-GHQ5PUOV.js → chunk-CNG6GQEZ.js} +2 -2
  274. package/dist/cli/chunks/{chunk-3C2K4YMS.js → chunk-CSU5NYOX.js} +3 -3
  275. package/dist/cli/chunks/chunk-CU46J64M.js +4 -0
  276. package/dist/cli/chunks/{chunk-EH5OCHAJ.js → chunk-CXQPR5MY.js} +1 -1
  277. package/dist/cli/chunks/chunk-DA5K5754.js +96 -0
  278. package/dist/cli/chunks/{chunk-FVGTINVR.js → chunk-DAEFDCJ4.js} +81 -65
  279. package/dist/cli/chunks/{chunk-MH73D5TN.js → chunk-DEYLEDJN.js} +2 -2
  280. package/dist/cli/chunks/{chunk-7FWP7CZY.js → chunk-DFZCKIGY.js} +3 -3
  281. package/dist/cli/chunks/{chunk-QXTW7XCS.js → chunk-DHJPWQBR.js} +2 -2
  282. package/dist/cli/chunks/{chunk-NAZVPZJS.js → chunk-DOTK76IJ.js} +2 -2
  283. package/dist/cli/chunks/{chunk-RCI64RIJ.js → chunk-DPFRKBOG.js} +2 -2
  284. package/dist/cli/chunks/{chunk-WMW47QMR.js → chunk-EDJ3O7RH.js} +2 -2
  285. package/dist/cli/chunks/{chunk-4K27ESCA.js → chunk-EKQ673SA.js} +1 -1
  286. package/dist/cli/chunks/chunk-F3SBRQC6.js +2 -0
  287. package/dist/cli/chunks/{chunk-4N44UJGI.js → chunk-FGYMFUE2.js} +2 -2
  288. package/dist/cli/chunks/chunk-FLYOJOKN.js +2 -0
  289. package/dist/cli/chunks/{chunk-W4OQYLYO.js → chunk-FRH6VAUS.js} +1 -1
  290. package/dist/cli/chunks/{chunk-VOYJJ3KA.js → chunk-FWGOHAAB.js} +2 -2
  291. package/dist/cli/chunks/{chunk-D4RCV4LY.js → chunk-G6T45OIC.js} +2 -2
  292. package/dist/cli/chunks/{chunk-2EHFEMRU.js → chunk-GPLQ6DOK.js} +2 -2
  293. package/dist/cli/chunks/{chunk-RVCWSAXI.js → chunk-HDSAM2RE.js} +2 -2
  294. package/dist/cli/chunks/chunk-HIVA55CJ.js +2 -0
  295. package/dist/cli/chunks/{chunk-6F4WHN7D.js → chunk-HIYXCDEP.js} +1 -1
  296. package/dist/cli/chunks/{chunk-NRR23SJV.js → chunk-HUWNIPZ5.js} +1 -1
  297. package/dist/cli/chunks/{chunk-4M6A3PVJ.js → chunk-HV2J7KKQ.js} +2 -2
  298. package/dist/cli/chunks/{chunk-CJHVOBJY.js → chunk-IFCLB7FJ.js} +1 -1
  299. package/dist/cli/chunks/{chunk-Q335R4MR.js → chunk-IPR4QP3H.js} +2 -2
  300. package/dist/cli/chunks/{chunk-HZMLNM2T.js → chunk-ISDMD6EU.js} +178 -175
  301. package/dist/cli/chunks/chunk-J6GNQS62.js +5 -0
  302. package/dist/cli/chunks/{chunk-3DFFFXXO.js → chunk-JBNEE5UH.js} +2 -2
  303. package/dist/cli/chunks/chunk-JZ3ORVZ3.js +54 -0
  304. package/dist/cli/chunks/{chunk-T4C56HBW.js → chunk-KCZR45PA.js} +2 -2
  305. package/dist/cli/chunks/chunk-KGT36Z42.js +14 -0
  306. package/dist/cli/chunks/{chunk-JIUF6NV6.js → chunk-KHFNNVJA.js} +2 -2
  307. package/dist/cli/chunks/{chunk-7SK6IMGZ.js → chunk-KPA7MZ6C.js} +2 -2
  308. package/dist/cli/chunks/{chunk-G2CLZVYI.js → chunk-KSKEF7LZ.js} +3 -3
  309. package/dist/cli/chunks/{chunk-6LMLN5R2.js → chunk-M2JBBZQB.js} +2 -2
  310. package/dist/cli/chunks/{chunk-UHTAI4ZB.js → chunk-M4WJKGVK.js} +1 -1
  311. package/dist/cli/chunks/{chunk-KZOBLLXW.js → chunk-M5QUBZY6.js} +2 -2
  312. package/dist/cli/chunks/{chunk-42WUDDUU.js → chunk-MCUJEZT6.js} +2 -2
  313. package/dist/cli/chunks/{chunk-ZFGND4QK.js → chunk-MDWCE7YW.js} +1 -1
  314. package/dist/cli/chunks/{chunk-TYVQNYXX.js → chunk-MEGDYJPV.js} +7 -7
  315. package/dist/cli/chunks/chunk-MIQTXNBG.js +4 -0
  316. package/dist/cli/chunks/{chunk-PFXX5Q32.js → chunk-MNW6QGNJ.js} +2 -2
  317. package/dist/cli/chunks/{chunk-IVGVOGIZ.js → chunk-MOBNBMFW.js} +1 -1
  318. package/dist/cli/chunks/{chunk-NWFIJNEB.js → chunk-MTZH7AHC.js} +1 -1
  319. package/dist/cli/chunks/chunk-MVNP7GIR.js +2 -0
  320. package/dist/cli/chunks/chunk-MVPCNSPY.js +2 -0
  321. package/dist/cli/chunks/chunk-NA7B2QYB.js +2 -0
  322. package/dist/cli/chunks/{chunk-E3Q7WNJD.js → chunk-NDPFGIMJ.js} +3 -3
  323. package/dist/cli/chunks/{chunk-GHUPID5E.js → chunk-NJBGXDQ7.js} +1 -1
  324. package/dist/cli/chunks/chunk-OBAP2TXZ.js +2 -0
  325. package/dist/cli/chunks/{chunk-OBCKP3G4.js → chunk-OCWWP5PL.js} +4 -4
  326. package/dist/cli/chunks/{chunk-CJCT452S.js → chunk-ODKLFVYC.js} +2 -2
  327. package/dist/cli/chunks/{chunk-YN6W2XIT.js → chunk-ONII3572.js} +4 -4
  328. package/dist/cli/chunks/{chunk-QW4LN5NK.js → chunk-OSLYSG3B.js} +2 -2
  329. package/dist/cli/chunks/{chunk-HZ6NEJMO.js → chunk-OULHKEVH.js} +2 -2
  330. package/dist/cli/chunks/{chunk-CG2MUD7U.js → chunk-PAWXJ73E.js} +1 -1
  331. package/dist/cli/chunks/chunk-PEPFCPES.js +2 -0
  332. package/dist/cli/chunks/{chunk-UIGEUEBT.js → chunk-PFR4G3DJ.js} +2 -2
  333. package/dist/cli/chunks/chunk-PO3IXGMQ.js +2 -0
  334. package/dist/cli/chunks/{chunk-6SZKLWZT.js → chunk-PZJOPURC.js} +5 -5
  335. package/dist/cli/chunks/{chunk-ARMZYHYL.js → chunk-Q5DO24IJ.js} +2 -2
  336. package/dist/cli/chunks/chunk-QGIU2WRL.js +2 -0
  337. package/dist/cli/chunks/{chunk-N3RN4QTC.js → chunk-R4VL6E65.js} +2 -2
  338. package/dist/cli/chunks/{chunk-MWQTACNA.js → chunk-R5NE6B2M.js} +2 -2
  339. package/dist/cli/chunks/{chunk-T46LOLW3.js → chunk-RJCYCLZV.js} +2 -2
  340. package/dist/cli/chunks/{chunk-CH2TQCV5.js → chunk-SGYJ4NFZ.js} +1 -1
  341. package/dist/cli/chunks/{chunk-NG2UVPTW.js → chunk-SRKETSFF.js} +1 -1
  342. package/dist/cli/chunks/{chunk-QFUX7ELG.js → chunk-STJCATGN.js} +2 -2
  343. package/dist/cli/chunks/{chunk-CIESXO73.js → chunk-STM3UDNO.js} +1 -1
  344. package/dist/cli/chunks/{chunk-C7AXRI7E.js → chunk-T6BVLVI5.js} +1 -1
  345. package/dist/cli/chunks/{chunk-HSJ5FQCF.js → chunk-TDZ53WO2.js} +2 -2
  346. package/dist/cli/chunks/{chunk-YF5OP6CR.js → chunk-TPGED2IF.js} +2 -2
  347. package/dist/cli/chunks/{chunk-2TG24LYQ.js → chunk-TSRSV3LD.js} +1 -1
  348. package/dist/cli/chunks/{chunk-6VKJAMZY.js → chunk-TT23RRB7.js} +1 -1
  349. package/dist/cli/chunks/{chunk-WXMSRBQF.js → chunk-TWAWHOP7.js} +2 -2
  350. package/dist/cli/chunks/{chunk-ZCDXJ27H.js → chunk-U5K45TFH.js} +1 -1
  351. package/dist/cli/chunks/{chunk-3WV4H33V.js → chunk-UDHKLT4C.js} +1 -1
  352. package/dist/cli/chunks/{chunk-VNAKBHJI.js → chunk-UEM7ZF5K.js} +2 -2
  353. package/dist/cli/chunks/{chunk-4ZUZDFAA.js → chunk-UGVHCMUN.js} +6 -6
  354. package/dist/cli/chunks/{chunk-NNOMDM4N.js → chunk-V3QLFNA2.js} +2 -2
  355. package/dist/cli/chunks/{chunk-S7N4BKI3.js → chunk-VD6QRULW.js} +2 -2
  356. package/dist/cli/chunks/{chunk-WBH4C4BG.js → chunk-VIHTL3U2.js} +2 -2
  357. package/dist/cli/chunks/chunk-W7BWUTVV.js +2 -0
  358. package/dist/cli/chunks/{chunk-IWFL6EFI.js → chunk-WLG5AJ4N.js} +2 -2
  359. package/dist/cli/chunks/{chunk-KEEBUVGV.js → chunk-XC7DYDSY.js} +8 -8
  360. package/dist/cli/chunks/{chunk-F2KRT2II.js → chunk-XJ7QNVI5.js} +3 -3
  361. package/dist/cli/chunks/chunk-XRT2WRMS.js +2 -0
  362. package/dist/cli/chunks/{chunk-ADK7DF3G.js → chunk-XRYF6JV7.js} +2 -2
  363. package/dist/cli/chunks/{chunk-PWEIDHT7.js → chunk-XWMZ6D6N.js} +2 -2
  364. package/dist/cli/chunks/{chunk-ICKLBATY.js → chunk-Y3MW3YBC.js} +2 -2
  365. package/dist/cli/chunks/chunk-YNXS6CGV.js +2 -0
  366. package/dist/cli/chunks/{chunk-PVHO6KLB.js → chunk-Z3RHREWF.js} +1 -1
  367. package/dist/cli/chunks/{chunk-EAJK25IS.js → chunk-ZBAKA4YB.js} +1 -1
  368. package/dist/cli/chunks/chunk-ZBJ4XOOV.js +180 -0
  369. package/dist/cli/chunks/chunk-ZBQY5GLF.js +11 -0
  370. package/dist/cli/chunks/{chunk-R5RNOLHI.js → chunk-ZJ26AQA5.js} +1 -1
  371. package/dist/cli/chunks/{chunk-KPFG4OIM.js → chunk-ZNEMGX5O.js} +1 -1
  372. package/dist/cli/chunks/{chunk-2H5YJ5ZK.js → chunk-ZNPKDCZR.js} +2 -2
  373. package/dist/cli/chunks/{chunk-DW6ZMNMR.js → chunk-ZZDIMOOV.js} +2 -2
  374. package/dist/cli/chunks/ci-464KPQNP.js +81 -0
  375. package/dist/cli/chunks/ci-output-I7FX2RSO.js +2 -0
  376. package/dist/cli/chunks/{circuit-breaker-4WST3QSA.js → circuit-breaker-3FW237WW.js} +2 -2
  377. package/dist/cli/chunks/{claude-flow-setup-KB4TKMYI.js → claude-flow-setup-6JKMBPGU.js} +2 -2
  378. package/dist/cli/chunks/client-7E4LM2WW.js +2 -0
  379. package/dist/cli/chunks/{cline-installer-W2ZHQ6WM.js → cline-installer-UWFHT6VY.js} +2 -2
  380. package/dist/cli/chunks/{code-TF2AVR5D.js → code-KQSUT3FS.js} +29 -29
  381. package/dist/cli/chunks/{code-index-extractor-RMDRUVQJ.js → code-index-extractor-PABBNUSC.js} +2 -2
  382. package/dist/cli/chunks/{codex-installer-VSTRHJHV.js → codex-installer-CQ24DTP5.js} +2 -2
  383. package/dist/cli/chunks/{completions-3Q37QVFR.js → completions-7RWHAUAR.js} +2 -2
  384. package/dist/cli/chunks/complexity-analyzer-XPOAF33E.js +2 -0
  385. package/dist/cli/chunks/{continuedev-installer-VTEXM455.js → continuedev-installer-V4F2FIZP.js} +2 -2
  386. package/dist/cli/chunks/{copilot-installer-AGY7DQUS.js → copilot-installer-JMICURQB.js} +2 -2
  387. package/dist/cli/chunks/core-handlers-IFG3757P.js +2 -0
  388. package/dist/cli/chunks/cost-tracker-5OFHEYFJ.js +2 -0
  389. package/dist/cli/chunks/{coverage-TT64IOS4.js → coverage-QKN57JDS.js} +3 -3
  390. package/dist/cli/chunks/cross-domain-router-EK7W4PGP.js +2 -0
  391. package/dist/cli/chunks/{cursor-installer-OVOJIOHN.js → cursor-installer-GBJ7YXSM.js} +2 -2
  392. package/dist/cli/chunks/{daemon-DMFZMXKA.js → daemon-GKP7CMEK.js} +3 -3
  393. package/dist/cli/chunks/{daemon-XCULEHWY.js → daemon-IAVSO6HK.js} +4 -4
  394. package/dist/cli/chunks/{dag-attention-scheduler-WW2RX4B5.js → dag-attention-scheduler-S225TCI7.js} +2 -2
  395. package/dist/cli/chunks/{detect-QNWIM232.js → detect-IUYH422U.js} +2 -2
  396. package/dist/cli/chunks/{dist-node-6GQIY3CG.js → dist-node-2YRE6A7C.js} +2 -2
  397. package/dist/cli/chunks/{domain-handler-6RJPDELX.js → domain-handler-PL2TZC6H.js} +2 -2
  398. package/dist/cli/chunks/domain-plugins-HCGLXKIT.js +2 -0
  399. package/dist/cli/chunks/{domain-transfer-WK524LBS.js → domain-transfer-KQJRUPXA.js} +2 -2
  400. package/dist/cli/chunks/dream-NFSCSLY7.js +2 -0
  401. package/dist/cli/chunks/{embed-and-insert-pattern-SO6GWJW7.js → embed-and-insert-pattern-ZPAG7235.js} +2 -2
  402. package/dist/cli/chunks/eval-WCK7KNFN.js +17 -0
  403. package/dist/cli/chunks/{experience-capture-middleware-BCCJ35OX.js → experience-capture-middleware-2MSQWSAR.js} +3 -3
  404. package/dist/cli/chunks/{fast-paths-CATDDBEU.js → fast-paths-VYOSIBKF.js} +2 -2
  405. package/dist/cli/chunks/{feature-flags-BUXNAORY.js → feature-flags-UJRHFBRX.js} +2 -2
  406. package/dist/cli/chunks/{feature-flags-KNNWWP5G.js → feature-flags-WCFUKHNQ.js} +2 -2
  407. package/dist/cli/chunks/{file-discovery-S4HF3O7D.js → file-discovery-JDGL4ZWS.js} +2 -2
  408. package/dist/cli/chunks/fleet-ROXVMZ2F.js +43 -0
  409. package/dist/cli/chunks/{gnn-wrapper-G7ABZUG7.js → gnn-wrapper-NIO4ZCO3.js} +2 -2
  410. package/dist/cli/chunks/{heartbeat-handler-UFMELIWT.js → heartbeat-handler-PI42WD3C.js} +4 -4
  411. package/dist/cli/chunks/heartbeat-scheduler-ZATCDJDK.js +2 -0
  412. package/dist/cli/chunks/hnsw-adapter-WXQABRCA.js +2 -0
  413. package/dist/cli/chunks/hnsw-index-TPSWLEA5.js +2 -0
  414. package/dist/cli/chunks/{hnsw-legacy-bridge-YIILSRXI.js → hnsw-legacy-bridge-YLC7SPK2.js} +2 -2
  415. package/dist/cli/chunks/{hnswlib-node-TSVRMXDH.js → hnswlib-node-LG6OS3B7.js} +2 -2
  416. package/dist/cli/chunks/{hooks-OHQPNK74.js → hooks-WVALP5GX.js} +10 -10
  417. package/dist/cli/chunks/{hypergraph-engine-LY7PJDSL.js → hypergraph-engine-GJEMW3EG.js} +2 -2
  418. package/dist/cli/chunks/{hypergraph-handler-YGDYZO6H.js → hypergraph-handler-BLF6LXEV.js} +3 -3
  419. package/dist/cli/chunks/impact-analyzer-HNIU45P5.js +2 -0
  420. package/dist/cli/chunks/{init-handler-MTK65LI3.js → init-handler-K25RWRYY.js} +6 -6
  421. package/dist/cli/chunks/init-wizard-JUIPBMHG.js +2 -0
  422. package/dist/cli/chunks/kernel-5BOZQ754.js +2 -0
  423. package/dist/cli/chunks/{kilocode-installer-3IICU4RS.js → kilocode-installer-BXN6WZ7G.js} +2 -2
  424. package/dist/cli/chunks/{kiro-installer-MXOVQYQA.js → kiro-installer-PM362DLN.js} +12 -12
  425. package/dist/cli/chunks/knowledge-graph-EWDAENWM.js +2 -0
  426. package/dist/cli/chunks/learning-CPERDDRG.js +122 -0
  427. package/dist/cli/chunks/llm-router-GOAV5FPI.js +37 -0
  428. package/dist/cli/chunks/llm-router-service-3YT7JGBS.js +2 -0
  429. package/dist/cli/chunks/{load-F4PVAMXQ.js → load-2BG6SHAK.js} +2 -2
  430. package/dist/cli/chunks/load-test-BP2CPLIV.js +2 -0
  431. package/dist/cli/chunks/{mcp-DUYJUEME.js → mcp-5TTB37DC.js} +2 -2
  432. package/dist/cli/chunks/{memory-XTTYORAS.js → memory-4NHBYT6S.js} +5 -5
  433. package/dist/cli/chunks/memory-backend-4PYQBPRM.js +2 -0
  434. package/dist/cli/chunks/memory-handlers-2B27NITS.js +2 -0
  435. package/dist/cli/chunks/multi-model-executor-KCWSGCDT.js +14 -0
  436. package/dist/cli/chunks/{opencode-installer-33ULBU2F.js → opencode-installer-ATZLLK74.js} +2 -2
  437. package/dist/cli/chunks/{orchestrator-34ZJEKTJ.js → orchestrator-RKB7XJRG.js} +19 -19
  438. package/dist/cli/chunks/pattern-null-store-OYOQOV2O.js +2 -0
  439. package/dist/cli/chunks/{pattern-usage-recorder-GZ2M3F2E.js → pattern-usage-recorder-7VE4XDAI.js} +2 -2
  440. package/dist/cli/chunks/pipeline-LQZSNDD2.js +19 -0
  441. package/dist/cli/chunks/{platform-VKJFJIAW.js → platform-OD5H5U6G.js} +2 -2
  442. package/dist/cli/chunks/{plugin-5C5UBQUQ.js → plugin-EJ6K2MGU.js} +2 -2
  443. package/dist/cli/chunks/{prime-radiant-advanced-wasm-KO2PQI3D.js → prime-radiant-advanced-wasm-OIHTKJMN.js} +2 -2
  444. package/dist/cli/chunks/protocol-executor-3ATJTXWG.js +2 -0
  445. package/dist/cli/chunks/{protocol-handler-ZF74NIKA.js → protocol-handler-NRBROAU7.js} +2 -2
  446. package/dist/cli/chunks/{prove-MO5TQQU4.js → prove-EJOGEGD3.js} +2 -2
  447. package/dist/cli/chunks/qe-reasoning-bank-LLMYZT4X.js +2 -0
  448. package/dist/cli/chunks/{quality-EYIN6AER.js → quality-E55UC73D.js} +2 -2
  449. package/dist/cli/chunks/{quality-gate-V6OQM57O.js → quality-gate-OIQATNT3.js} +3 -3
  450. package/dist/cli/chunks/queen-coordinator-RN7L6KG5.js +2 -0
  451. package/dist/cli/chunks/{real-embeddings-AR7TZX7U.js → real-embeddings-FPFFNOSZ.js} +2 -2
  452. package/dist/cli/chunks/ref-validation-OPO6J7OL.js +2 -0
  453. package/dist/cli/chunks/{roocode-installer-46E626VZ.js → roocode-installer-ODY5KRWU.js} +2 -2
  454. package/dist/cli/chunks/router-MDHITQ2V.js +2 -0
  455. package/dist/cli/chunks/routing-feedback-5XLNJ3Y3.js +2 -0
  456. package/dist/cli/chunks/{routing-handler-ZNRVW6QW.js → routing-handler-KQM6VWLC.js} +4 -4
  457. package/dist/cli/chunks/{ruvector-commands-4L2CQMWS.js → ruvector-commands-U2GVV6PF.js} +2 -2
  458. package/dist/cli/chunks/rvf-dual-writer-JBW4O3II.js +2 -0
  459. package/dist/cli/chunks/rvf-migration-adapter-BPPQL4XJ.js +2 -0
  460. package/dist/cli/chunks/{rvf-migration-coordinator-H4RVGBIA.js → rvf-migration-coordinator-V2GHCJKN.js} +2 -2
  461. package/dist/cli/chunks/rvf-native-adapter-S4562CG5.js +2 -0
  462. package/dist/cli/chunks/rvf-store-integrity-KMIHD3LP.js +2 -0
  463. package/dist/cli/chunks/safe-db-FIRHSXVF.js +2 -0
  464. package/dist/cli/chunks/schedule-RVXFB4HK.js +2 -0
  465. package/dist/cli/chunks/scheduler-IKKAMAOO.js +2 -0
  466. package/dist/cli/chunks/security-P5NM353C.js +13 -0
  467. package/dist/cli/chunks/{shared-rvf-adapter-M6NNIZ5W.js → shared-rvf-adapter-LVIUOO4S.js} +2 -2
  468. package/dist/cli/chunks/{shared-rvf-dual-writer-LHMFCYVE.js → shared-rvf-dual-writer-2CSG7C4W.js} +2 -2
  469. package/dist/cli/chunks/sqlite-persistence-SQ3HCUQ7.js +2 -0
  470. package/dist/cli/chunks/{status-handler-GMIOXQIE.js → status-handler-6TU6O37R.js} +2 -2
  471. package/dist/cli/chunks/{structural-health-YZXHVHM6.js → structural-health-KBIJSTXJ.js} +2 -2
  472. package/dist/cli/chunks/{sync-GMPCPV5L.js → sync-LNHI5SB7.js} +2 -2
  473. package/dist/cli/chunks/{sync-N56UQGCS.js → sync-UHOX6RJW.js} +2 -2
  474. package/dist/cli/chunks/task-handler-AVDHMLGI.js +49 -0
  475. package/dist/cli/chunks/task-handlers-KYK4VTRA.js +9 -0
  476. package/dist/cli/chunks/{test-GQNCKRSP.js → test-DHAAI3DU.js} +11 -11
  477. package/dist/cli/chunks/test-scheduling-XDBZ3QC2.js +15 -0
  478. package/dist/cli/chunks/{token-bootstrap-76SRNXGG.js → token-bootstrap-GUTTLPZX.js} +2 -2
  479. package/dist/cli/chunks/{token-usage-O7CZDP5Q.js → token-usage-Q2YG5YQN.js} +2 -2
  480. package/dist/cli/chunks/{transformers-LTU4LSSC.js → transformers-F5UQTQCY.js} +2 -2
  481. package/dist/cli/chunks/{tree-sitter-wasm-parser-NQSQCMBM.js → tree-sitter-wasm-parser-DEGOHS6F.js} +2 -2
  482. package/dist/cli/chunks/types-JQ7EQO5Q.js +2 -0
  483. package/dist/cli/chunks/unified-memory-CXHLHB5I.js +2 -0
  484. package/dist/cli/chunks/unified-memory-hnsw-I7WAE54M.js +2 -0
  485. package/dist/cli/chunks/unified-persistence-6CPF65WI.js +2 -0
  486. package/dist/cli/chunks/{upgrade-OQWRBZ3R.js → upgrade-TJRVGHGD.js} +2 -2
  487. package/dist/cli/chunks/{validate-TH5SRP3E.js → validate-BWPCVHBN.js} +2 -2
  488. package/dist/cli/chunks/{validate-swarm-UITL2JUS.js → validate-swarm-QVVKCQLP.js} +2 -2
  489. package/dist/cli/chunks/{vibium-O6PRAG4J.js → vibium-ZFATIWHO.js} +2 -2
  490. package/dist/cli/chunks/visual-security-GNPHME5H.js +2 -0
  491. package/dist/cli/chunks/{web-tree-sitter-XBFBY4OF.js → web-tree-sitter-KPLY7ONR.js} +2 -2
  492. package/dist/cli/chunks/{windsurf-installer-DVT5NRNY.js → windsurf-installer-H7XM7ISA.js} +2 -2
  493. package/dist/cli/chunks/{witness-chain-VRSH2F36.js → witness-chain-RRN6NDCH.js} +2 -2
  494. package/dist/cli/chunks/witness-chain-VT4UHHBR.js +2 -0
  495. package/dist/cli/chunks/{witness-key-manager-GFHRDKQ4.js → witness-key-manager-DFRL42GE.js} +2 -2
  496. package/dist/cli/chunks/workflow-2ZQO6WYI.js +51 -0
  497. package/dist/cli/chunks/workflow-orchestrator-DB3HIECD.js +2 -0
  498. package/dist/cli/chunks/{wrappers-5LLLT7GM.js → wrappers-SUS6XEJD.js} +2 -2
  499. package/dist/cli/commands/ci.js +54 -28
  500. package/dist/cli/commands/code.js +6 -0
  501. package/dist/cli/commands/eval.js +3 -2
  502. package/dist/cli/commands/fleet.js +35 -16
  503. package/dist/cli/commands/learning-snapshot.d.ts +38 -0
  504. package/dist/cli/commands/learning-snapshot.js +171 -0
  505. package/dist/cli/commands/learning.js +16 -64
  506. package/dist/cli/commands/llm-router.js +13 -12
  507. package/dist/cli/commands/pipeline.js +9 -0
  508. package/dist/cli/commands/security.js +167 -100
  509. package/dist/cli/commands/test.js +1 -0
  510. package/dist/cli/commands/workflow.js +9 -1
  511. package/dist/cli/handlers/task-handler.js +19 -9
  512. package/dist/cli/helpers/domain-plugins.d.ts +5 -0
  513. package/dist/cli/helpers/domain-plugins.js +11 -0
  514. package/dist/cli/index.js +17 -8
  515. package/dist/cli/utils/ci-config.d.ts +3 -0
  516. package/dist/cli/utils/ci-output.d.ts +17 -0
  517. package/dist/cli/utils/ci-output.js +34 -2
  518. package/dist/context/sources/git-source.d.ts +2 -0
  519. package/dist/context/sources/git-source.js +9 -2
  520. package/dist/coordination/cancelled-task-settlement.d.ts +11 -0
  521. package/dist/coordination/cancelled-task-settlement.js +15 -0
  522. package/dist/coordination/consensus/providers/claude-provider.d.ts +2 -2
  523. package/dist/coordination/consensus/providers/claude-provider.js +18 -25
  524. package/dist/coordination/consensus/providers/gemini-provider.d.ts +14 -4
  525. package/dist/coordination/consensus/providers/gemini-provider.js +39 -36
  526. package/dist/coordination/consensus/providers/ollama-provider.d.ts +8 -7
  527. package/dist/coordination/consensus/providers/ollama-provider.js +16 -18
  528. package/dist/coordination/consensus/providers/openai-provider.d.ts +14 -4
  529. package/dist/coordination/consensus/providers/openai-provider.js +36 -34
  530. package/dist/coordination/consensus/providers/openrouter-provider.d.ts +5 -5
  531. package/dist/coordination/consensus/providers/openrouter-provider.js +64 -37
  532. package/dist/coordination/handlers/handler-types.d.ts +3 -0
  533. package/dist/coordination/handlers/quality-handlers.js +10 -0
  534. package/dist/coordination/handlers/security-handlers.js +168 -72
  535. package/dist/coordination/handlers/test-execution-handlers.js +39 -43
  536. package/dist/coordination/interfaces.d.ts +2 -2
  537. package/dist/coordination/protocol-executor.js +68 -9
  538. package/dist/coordination/protocols/security-audit.d.ts +3 -0
  539. package/dist/coordination/protocols/security-audit.js +61 -39
  540. package/dist/coordination/queen-coordinator.js +10 -4
  541. package/dist/coordination/queen-event-handlers.js +17 -0
  542. package/dist/coordination/queen-task-management.js +25 -0
  543. package/dist/coordination/queen-types.d.ts +2 -0
  544. package/dist/coordination/result-saver.js +36 -5
  545. package/dist/coordination/task-executor.d.ts +3 -1
  546. package/dist/coordination/task-executor.js +8 -8
  547. package/dist/coordination/workflow-composition.d.ts +19 -0
  548. package/dist/coordination/workflow-composition.js +114 -0
  549. package/dist/coordination/workflow-orchestrator.d.ts +3 -2
  550. package/dist/coordination/workflow-orchestrator.js +219 -85
  551. package/dist/coordination/workflow-types.d.ts +30 -1
  552. package/dist/coordination/yaml-pipeline-loader.js +9 -5
  553. package/dist/domains/chaos-resilience/services/chaos-engineer.js +2 -7
  554. package/dist/domains/code-intelligence/services/knowledge-graph.js +2 -7
  555. package/dist/domains/code-intelligence/services/metric-collector/test-counter.js +9 -40
  556. package/dist/domains/constants.d.ts +1 -6
  557. package/dist/domains/constants.js +2 -6
  558. package/dist/domains/contract-testing/services/contract-validator.js +2 -7
  559. package/dist/domains/coverage-analysis/services/coverage-analyzer.js +2 -12
  560. package/dist/domains/coverage-analysis/services/gap-detector.js +2 -7
  561. package/dist/domains/defect-intelligence/services/defect-predictor.js +2 -12
  562. package/dist/domains/defect-intelligence/services/root-cause-analyzer.js +2 -7
  563. package/dist/domains/learning-optimization/services/learning-coordinator.js +2 -7
  564. package/dist/domains/quality-assessment/services/deployment-advisor.js +2 -7
  565. package/dist/domains/quality-assessment/services/quality-analyzer.js +2 -7
  566. package/dist/domains/requirements-validation/services/requirements-validator.js +2 -7
  567. package/dist/domains/security-compliance/interfaces.d.ts +5 -0
  568. package/dist/domains/security-compliance/interfaces.js +0 -6
  569. package/dist/domains/security-compliance/scan-discovery.d.ts +12 -0
  570. package/dist/domains/security-compliance/scan-discovery.js +105 -0
  571. package/dist/domains/security-compliance/scan-evidence.d.ts +57 -0
  572. package/dist/domains/security-compliance/scan-evidence.js +2 -0
  573. package/dist/domains/security-compliance/services/scanners/sast-scanner.d.ts +3 -2
  574. package/dist/domains/security-compliance/services/scanners/sast-scanner.js +112 -72
  575. package/dist/domains/security-compliance/services/semgrep-integration.d.ts +9 -2
  576. package/dist/domains/security-compliance/services/semgrep-integration.js +68 -20
  577. package/dist/domains/test-execution/services/flaky-detector.js +46 -5
  578. package/dist/domains/test-execution/services/retry-handler.js +38 -20
  579. package/dist/domains/test-execution/services/test-executor.js +84 -29
  580. package/dist/domains/test-generation/services/test-generator.js +2 -7
  581. package/dist/domains/visual-accessibility/services/visual-tester.js +2 -7
  582. package/dist/init/init-wizard-hooks.js +2 -2
  583. package/dist/init/init-wizard-steps.js +1 -1
  584. package/dist/init/kiro-installer.js +9 -8
  585. package/dist/init/opencode-installer.js +1 -1
  586. package/dist/init/phases/07-hooks.js +4 -2
  587. package/dist/init/phases/12-verification.js +1 -1
  588. package/dist/init/settings-merge.d.ts +10 -3
  589. package/dist/init/settings-merge.js +40 -9
  590. package/dist/integrations/agentic-flow/model-router/types.js +6 -8
  591. package/dist/integrations/agentic-flow/reasoning-bank/index.js +3 -20
  592. package/dist/integrations/coherence/engines/cohomology-adapter.js +100 -30
  593. package/dist/integrations/ruvector/brain-exporter.js +9 -15
  594. package/dist/integrations/ruvector/brain-rvf-exporter.js +17 -30
  595. package/dist/integrations/ruvector/brain-shared.d.ts +5 -1
  596. package/dist/integrations/ruvector/brain-shared.js +70 -4
  597. package/dist/integrations/ruvector/rvf-dual-writer.js +36 -15
  598. package/dist/integrations/ruvector/rvf-store-integrity.d.ts +14 -9
  599. package/dist/integrations/ruvector/rvf-store-integrity.js +39 -9
  600. package/dist/integrations/ruvector/shared-rvf-adapter.js +20 -23
  601. package/dist/kernel/memory-factory.js +14 -4
  602. package/dist/kernel/project-root.js +10 -8
  603. package/dist/kernel/unified-memory.js +1 -1
  604. package/dist/learning/local-judge-client.d.ts +6 -5
  605. package/dist/learning/local-judge-client.js +7 -6
  606. package/dist/learning/pattern-store.js +29 -11
  607. package/dist/mcp/bundle.js +548 -527
  608. package/dist/mcp/handlers/domain-handler-configs.d.ts +22 -1
  609. package/dist/mcp/handlers/domain-handler-configs.js +50 -19
  610. package/dist/mcp/handlers/domain-handlers.d.ts +7 -5
  611. package/dist/mcp/handlers/domain-handlers.js +7 -5
  612. package/dist/mcp/handlers/index.d.ts +1 -1
  613. package/dist/mcp/handlers/index.js +1 -1
  614. package/dist/mcp/handlers/pipeline-handlers.d.ts +31 -1
  615. package/dist/mcp/handlers/pipeline-handlers.js +63 -0
  616. package/dist/mcp/handlers/task-handlers.d.ts +1 -0
  617. package/dist/mcp/handlers/task-handlers.js +12 -4
  618. package/dist/mcp/protocol-server.d.ts +2 -0
  619. package/dist/mcp/protocol-server.js +112 -53
  620. package/dist/mcp/security/sampling-server.js +2 -1
  621. package/dist/mcp/tool-annotations.js +1 -1
  622. package/dist/mcp/tools/test-execution/schedule.js +7 -0
  623. package/dist/mcp/types.d.ts +10 -1
  624. package/dist/optimization/session-cache.d.ts +5 -0
  625. package/dist/optimization/session-cache.js +23 -0
  626. package/dist/routing/advisor/multi-model-executor.d.ts +4 -1
  627. package/dist/routing/advisor/multi-model-executor.js +8 -1
  628. package/dist/routing/free-tier/ladder.d.ts +2 -1
  629. package/dist/routing/free-tier/ladder.js +3 -2
  630. package/dist/routing/security/cyber-pin.d.ts +35 -11
  631. package/dist/routing/security/cyber-pin.js +76 -14
  632. package/dist/routing/value-score.js +1 -1
  633. package/dist/shared/git/index.d.ts +1 -0
  634. package/dist/shared/git/index.js +1 -0
  635. package/dist/shared/git/ref-validation.d.ts +20 -0
  636. package/dist/shared/git/ref-validation.js +43 -0
  637. package/dist/shared/llm/anthropic-params.d.ts +40 -0
  638. package/dist/shared/llm/anthropic-params.js +51 -0
  639. package/dist/shared/llm/cost-tracker.d.ts +15 -2
  640. package/dist/shared/llm/cost-tracker.js +62 -10
  641. package/dist/shared/llm/index.d.ts +2 -2
  642. package/dist/shared/llm/index.js +2 -2
  643. package/dist/shared/llm/interfaces.d.ts +1 -1
  644. package/dist/shared/llm/metrics/cost-metrics.js +5 -4
  645. package/dist/shared/llm/model-mapping.js +131 -0
  646. package/dist/shared/llm/model-registry.d.ts +37 -11
  647. package/dist/shared/llm/model-registry.js +393 -18
  648. package/dist/shared/llm/openai-params.d.ts +35 -0
  649. package/dist/shared/llm/openai-params.js +54 -0
  650. package/dist/shared/llm/provider-manager.js +4 -3
  651. package/dist/shared/llm/providers/azure-openai.d.ts +11 -0
  652. package/dist/shared/llm/providers/azure-openai.js +26 -15
  653. package/dist/shared/llm/providers/bedrock.js +11 -19
  654. package/dist/shared/llm/providers/claude.js +6 -29
  655. package/dist/shared/llm/providers/codex.js +4 -3
  656. package/dist/shared/llm/providers/gemini.d.ts +3 -2
  657. package/dist/shared/llm/providers/gemini.js +19 -10
  658. package/dist/shared/llm/providers/ollama.d.ts +2 -0
  659. package/dist/shared/llm/providers/ollama.js +30 -20
  660. package/dist/shared/llm/providers/openai.js +10 -17
  661. package/dist/shared/llm/providers/openrouter.d.ts +1 -1
  662. package/dist/shared/llm/providers/openrouter.js +57 -21
  663. package/dist/shared/llm/router/agent-router-config.js +33 -32
  664. package/dist/shared/llm/router/hybrid-router.d.ts +4 -0
  665. package/dist/shared/llm/router/hybrid-router.js +95 -35
  666. package/dist/shared/llm/router/routing-rules.js +9 -8
  667. package/dist/shared/llm/router/types.d.ts +9 -2
  668. package/dist/shared/llm/router/types.js +81 -13
  669. package/dist/shared/llm/translation/message-formatter.js +4 -23
  670. package/dist/shared/test-runner-verdict.d.ts +29 -0
  671. package/dist/shared/test-runner-verdict.js +43 -0
  672. package/dist/shared/vitest-json-report.d.ts +45 -0
  673. package/dist/shared/vitest-json-report.js +80 -0
  674. package/dist/test-scheduling/executors/vitest-executor.d.ts +7 -2
  675. package/dist/test-scheduling/executors/vitest-executor.js +174 -52
  676. package/dist/test-scheduling/git-aware/test-selector.js +3 -0
  677. package/dist/test-scheduling/phase-scheduler.d.ts +1 -0
  678. package/dist/test-scheduling/phase-scheduler.js +23 -1
  679. package/dist/validation/frontier-judge.d.ts +7 -4
  680. package/dist/validation/frontier-judge.js +11 -6
  681. package/package.json +6 -6
  682. package/dist/cli/chunks/adapter-OJF6LAJV.js +0 -2
  683. package/dist/cli/chunks/aqe-learning-engine-FGT474XB.js +0 -2
  684. package/dist/cli/chunks/base-HH765JFV.js +0 -2
  685. package/dist/cli/chunks/brain-handler-5FSA46R5.js +0 -90
  686. package/dist/cli/chunks/browser-workflow-NPM4FUPI.js +0 -2
  687. package/dist/cli/chunks/chunk-2LKAMMMI.js +0 -2
  688. package/dist/cli/chunks/chunk-4AKGBUYD.js +0 -4
  689. package/dist/cli/chunks/chunk-4MH22236.js +0 -2
  690. package/dist/cli/chunks/chunk-4PH7O5ZH.js +0 -2
  691. package/dist/cli/chunks/chunk-4UCMTYFQ.js +0 -65
  692. package/dist/cli/chunks/chunk-DRO5NJZA.js +0 -11
  693. package/dist/cli/chunks/chunk-FPHPP5TQ.js +0 -2
  694. package/dist/cli/chunks/chunk-FREF6Y4L.js +0 -14
  695. package/dist/cli/chunks/chunk-G6AV2HGY.js +0 -54
  696. package/dist/cli/chunks/chunk-GJAWEUIN.js +0 -16
  697. package/dist/cli/chunks/chunk-IUNMW454.js +0 -2
  698. package/dist/cli/chunks/chunk-JDXLCNKV.js +0 -2
  699. package/dist/cli/chunks/chunk-OC2CKU7I.js +0 -2
  700. package/dist/cli/chunks/chunk-OX6T26CD.js +0 -180
  701. package/dist/cli/chunks/chunk-PHHXHG2W.js +0 -2
  702. package/dist/cli/chunks/chunk-SEHCX4NH.js +0 -2
  703. package/dist/cli/chunks/chunk-TENYL5TI.js +0 -14
  704. package/dist/cli/chunks/chunk-U2AY57XZ.js +0 -5
  705. package/dist/cli/chunks/chunk-UYTWDS2R.js +0 -2
  706. package/dist/cli/chunks/chunk-VSYBMNIR.js +0 -2
  707. package/dist/cli/chunks/chunk-WBMRADQP.js +0 -81
  708. package/dist/cli/chunks/chunk-ZWRQ5VAU.js +0 -2
  709. package/dist/cli/chunks/chunk-ZYLSOBOR.js +0 -2
  710. package/dist/cli/chunks/ci-NTRH7PAW.js +0 -81
  711. package/dist/cli/chunks/ci-output-F57RSD35.js +0 -2
  712. package/dist/cli/chunks/client-GPZEC54E.js +0 -2
  713. package/dist/cli/chunks/complexity-analyzer-3FNFLACD.js +0 -2
  714. package/dist/cli/chunks/core-handlers-YMGHYIBR.js +0 -2
  715. package/dist/cli/chunks/cost-tracker-LTZAQBX7.js +0 -2
  716. package/dist/cli/chunks/cross-domain-router-ECBNTGYJ.js +0 -2
  717. package/dist/cli/chunks/dream-EHGKCFWH.js +0 -2
  718. package/dist/cli/chunks/eval-GL544IPO.js +0 -17
  719. package/dist/cli/chunks/fleet-DQVQQONW.js +0 -43
  720. package/dist/cli/chunks/heartbeat-scheduler-UFEL2CBW.js +0 -2
  721. package/dist/cli/chunks/hnsw-adapter-BLSD45CX.js +0 -2
  722. package/dist/cli/chunks/hnsw-index-A3RZODEN.js +0 -2
  723. package/dist/cli/chunks/impact-analyzer-OXHD3FOH.js +0 -2
  724. package/dist/cli/chunks/init-wizard-PKZL7QBU.js +0 -2
  725. package/dist/cli/chunks/kernel-XWPM72UJ.js +0 -2
  726. package/dist/cli/chunks/knowledge-graph-FRKR5XWI.js +0 -2
  727. package/dist/cli/chunks/learning-EV5LSOOM.js +0 -122
  728. package/dist/cli/chunks/llm-router-7LYDJUOT.js +0 -37
  729. package/dist/cli/chunks/llm-router-service-R7A5HHDM.js +0 -2
  730. package/dist/cli/chunks/load-test-5IKDWSYL.js +0 -2
  731. package/dist/cli/chunks/memory-backend-7VW5QCMO.js +0 -2
  732. package/dist/cli/chunks/memory-handlers-VZH3R2TQ.js +0 -2
  733. package/dist/cli/chunks/multi-model-executor-R6XCTMCF.js +0 -14
  734. package/dist/cli/chunks/pattern-null-store-BU6LCB2W.js +0 -2
  735. package/dist/cli/chunks/pipeline-SR5OTY45.js +0 -19
  736. package/dist/cli/chunks/protocol-executor-BSP5LWJN.js +0 -2
  737. package/dist/cli/chunks/qe-reasoning-bank-J2RC7P25.js +0 -2
  738. package/dist/cli/chunks/queen-coordinator-XI5AJV2V.js +0 -2
  739. package/dist/cli/chunks/router-VXQYYA3D.js +0 -2
  740. package/dist/cli/chunks/routing-feedback-HZQTASFF.js +0 -2
  741. package/dist/cli/chunks/rvf-dual-writer-BDTLLJER.js +0 -2
  742. package/dist/cli/chunks/rvf-migration-adapter-IB343MDN.js +0 -2
  743. package/dist/cli/chunks/rvf-native-adapter-Y7SN7LHU.js +0 -2
  744. package/dist/cli/chunks/rvf-store-integrity-OJGWWPLL.js +0 -2
  745. package/dist/cli/chunks/safe-db-2VTKKBJU.js +0 -2
  746. package/dist/cli/chunks/schedule-QJ4CFGJY.js +0 -2
  747. package/dist/cli/chunks/scheduler-2NHDQPC3.js +0 -2
  748. package/dist/cli/chunks/security-JF3BVNRO.js +0 -14
  749. package/dist/cli/chunks/sqlite-persistence-NVVAPZN3.js +0 -2
  750. package/dist/cli/chunks/task-handler-VTNRGAXP.js +0 -49
  751. package/dist/cli/chunks/task-handlers-FYSDH55N.js +0 -9
  752. package/dist/cli/chunks/test-scheduling-GPRXSIRP.js +0 -15
  753. package/dist/cli/chunks/types-OP6IWE6N.js +0 -2
  754. package/dist/cli/chunks/unified-memory-DSTIEDSH.js +0 -2
  755. package/dist/cli/chunks/unified-memory-hnsw-KBV3P4OS.js +0 -2
  756. package/dist/cli/chunks/unified-persistence-XKCOUBKY.js +0 -2
  757. package/dist/cli/chunks/visual-security-TTWSPZTZ.js +0 -2
  758. package/dist/cli/chunks/witness-chain-2KY73HPN.js +0 -2
  759. package/dist/cli/chunks/workflow-HAZ6YKOG.js +0 -51
  760. package/dist/cli/chunks/workflow-orchestrator-UK56AVOT.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: 'claude-opus-4-7',
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: 'claude-sonnet-4-6',
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: 'claude-sonnet-4-6',
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: 'claude-sonnet-4-6',
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-4o-mini',
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: 'claude-sonnet-4-6',
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-4-6` — a model that
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: 'claude-opus-4-7',
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-4o-mini',
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: 'llama3.1:70b',
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: 'claude-sonnet-4-6',
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-4o', temperature: 0.1, priority: 90 },
640
- { provider: 'claude', model: 'claude-sonnet-4-6', temperature: 0.1, priority: 80 },
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-4o', temperature: 0.3, priority: 80 },
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.0-pro', temperature: 0.3, priority: 60 },
647
+ { provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.3, priority: 60 },
647
648
  ],
648
649
  'code-analysis': [
649
- { provider: 'openai', model: 'gpt-4o', temperature: 0.2, priority: 75 },
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.0-pro', temperature: 0.2, priority: 55 },
652
+ { provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.2, priority: 55 },
652
653
  ],
653
654
  performance: [
654
- { provider: 'openai', model: 'gpt-4o-mini', temperature: 0.2, priority: 60 },
655
- { provider: 'gemini', model: 'gemini-2.0-flash', temperature: 0.2, priority: 50 },
656
- { provider: 'ollama', model: 'llama3.1', temperature: 0.2, priority: 40 },
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-4o-mini', temperature: 0.4, priority: 50 },
660
- { provider: 'gemini', model: 'gemini-2.0-flash', temperature: 0.4, priority: 40 },
661
- { provider: 'ollama', model: 'llama3.1', temperature: 0.4, priority: 30 },
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-4o', temperature: 0.3, priority: 70 },
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.0-pro', temperature: 0.3, priority: 50 },
667
+ { provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.3, priority: 50 },
667
668
  ],
668
669
  coordination: [
669
- { provider: 'openai', model: 'gpt-4o-mini', temperature: 0.2, priority: 65 },
670
- { provider: 'gemini', model: 'gemini-2.0-flash', temperature: 0.2, priority: 55 },
671
- { provider: 'ollama', model: 'llama3.1', temperature: 0.2, priority: 45 },
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.0-flash', temperature: 0.3, priority: 40 },
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: 'phi4', temperature: 0.3, priority: 20 },
677
+ { provider: 'ollama', model: 'qwen3-coder:30b', temperature: 0.3, priority: 20 },
677
678
  ],
678
679
  general: [
679
- { provider: 'openai', model: 'gpt-4o', temperature: 0.3, priority: 50 },
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.0-pro', temperature: 0.3, priority: 30 },
682
+ { provider: 'gemini', model: 'gemini-2.5-pro', temperature: 0.3, priority: 30 },
682
683
  ],
683
684
  };
684
685
  /**
@@ -113,6 +113,8 @@ export declare class HybridRouter {
113
113
  * Clear decision cache
114
114
  */
115
115
  clearCache(): void;
116
+ /** Select an explicitly pinned model without rules, shared cache, or fallback. */
117
+ private selectStrict;
116
118
  /**
117
119
  * Manual selection - use preferredProvider or default
118
120
  */
@@ -133,6 +135,8 @@ export declare class HybridRouter {
133
135
  * Execute request with fallback chain
134
136
  */
135
137
  private executeWithFallback;
138
+ /** Compare identity independently of the API transport hosting the model. */
139
+ private isSameModel;
136
140
  /**
137
141
  * Create a routing decision with proper model ID normalization (ADR-043)
138
142
  */
@@ -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, isOpus47, } from '../../../routing/security/cyber-pin.js';
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
  */
@@ -139,8 +139,11 @@ export class HybridRouter {
139
139
  async selectProvider(params) {
140
140
  await this.ensureInitialized();
141
141
  const startTime = Date.now();
142
+ // Strict requests carry their own execution identity. They must neither
143
+ // consume an ordinary cached decision nor replace one used by other callers.
144
+ const cacheDecision = this.config.cacheDecisions && !params.strictModel;
142
145
  // Check cache first
143
- if (this.config.cacheDecisions) {
146
+ if (cacheDecision) {
144
147
  const cacheKey = this.generateCacheKey(params);
145
148
  const cached = this.decisionCache.get(cacheKey);
146
149
  if (cached) {
@@ -152,26 +155,31 @@ export class HybridRouter {
152
155
  this.routerMetrics.recordCacheMiss();
153
156
  }
154
157
  let decision;
155
- switch (this.config.mode) {
156
- case 'manual':
157
- decision = await this.selectManual(params);
158
- break;
159
- case 'rule-based':
160
- decision = await this.selectRuleBased(params);
161
- break;
162
- case 'cost-optimized':
163
- decision = await this.selectCostOptimized(params);
164
- break;
165
- case 'performance-optimized':
166
- decision = await this.selectPerformanceOptimized(params);
167
- break;
168
- default:
169
- decision = await this.selectRuleBased(params);
158
+ if (params.strictModel) {
159
+ decision = this.selectStrict(params);
160
+ }
161
+ else {
162
+ switch (this.config.mode) {
163
+ case 'manual':
164
+ decision = await this.selectManual(params);
165
+ break;
166
+ case 'rule-based':
167
+ decision = await this.selectRuleBased(params);
168
+ break;
169
+ case 'cost-optimized':
170
+ decision = await this.selectCostOptimized(params);
171
+ break;
172
+ case 'performance-optimized':
173
+ decision = await this.selectPerformanceOptimized(params);
174
+ break;
175
+ default:
176
+ decision = await this.selectRuleBased(params);
177
+ }
170
178
  }
171
179
  // Update decision time
172
180
  decision.metadata.decisionTimeMs = Date.now() - startTime;
173
181
  // Cache the decision
174
- if (this.config.cacheDecisions) {
182
+ if (cacheDecision) {
175
183
  const cacheKey = this.generateCacheKey(params);
176
184
  this.decisionCache.set(cacheKey, decision);
177
185
  }
@@ -187,17 +195,21 @@ export class HybridRouter {
187
195
  const requestId = uuidv4();
188
196
  const decision = await this.selectProvider(params);
189
197
  // ADR-093: apply Cyber Verification pin before dispatch. Security agents
190
- // cannot reach Opus 4.7 until AQE_CYBER_VERIFIED=true. Covers both the
191
- // canonical model field and the provider-specific id — if either targets
192
- // 4.7 for a cyber-pinned agent, downgrade to Sonnet 4.6 on the same
193
- // provider. Applies to direct chat() calls; MultiModelExecutor.consult()
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()
194
203
  // applies the same pin independently for advisor escalations.
195
204
  const agentName = params.agentType ?? '';
196
- if (shouldCyberPin(agentName) && (isOpus47(decision.model) || isOpus47(decision.providerModelId))) {
205
+ if (shouldCyberPin(agentName) && (isCyberGatedModel(decision.model) || isCyberGatedModel(decision.providerModelId))) {
206
+ if (params.strictModel) {
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 });
208
+ }
197
209
  const originalModel = decision.model;
198
210
  const originalProviderModelId = decision.providerModelId;
199
211
  decision.model = applyCyberPin(agentName, decision.model, CYBER_PIN_CHAT_FALLBACK);
200
- decision.providerModelId = applyCyberPin(agentName, decision.providerModelId, CYBER_PIN_CHAT_FALLBACK);
212
+ decision.providerModelId = applyCyberPin(agentName, decision.providerModelId, cyberPinFallbackFor(decision.providerType));
201
213
  // eslint-disable-next-line no-console
202
214
  console.warn(`[aqe] ADR-093: ${agentName} pinned to ${decision.model} (was ${originalModel}/${originalProviderModelId}); ` +
203
215
  `set AQE_CYBER_VERIFIED=true after Cyber Verification Program approval`);
@@ -313,6 +325,18 @@ export class HybridRouter {
313
325
  // ============================================================================
314
326
  // Provider Selection Methods
315
327
  // ============================================================================
328
+ /** Select an explicitly pinned model without rules, shared cache, or fallback. */
329
+ selectStrict(params) {
330
+ if (!params.model?.trim()) {
331
+ throw createLLMError('strictModel requires an explicit nonempty model', 'MODEL_NOT_FOUND', { retryable: false });
332
+ }
333
+ const providerType = (params.preferredProvider ?? this.config.defaultProvider);
334
+ const provider = this.providerManager.getProvider(providerType);
335
+ if (!provider) {
336
+ throw createLLMError(`Strict model provider ${providerType} is unavailable`, 'PROVIDER_UNAVAILABLE', { provider: providerType, model: params.model, retryable: false });
337
+ }
338
+ return this.createDecision(provider, providerType, params.model, 'manual');
339
+ }
316
340
  /**
317
341
  * Manual selection - use preferredProvider or default
318
342
  */
@@ -452,7 +476,7 @@ export class HybridRouter {
452
476
  // surfaced by the rule-based E2E test in
453
477
  // tests/e2e/llm-router-real-providers.test.ts.
454
478
  const defaultProviderType = this.config.defaultProvider;
455
- if (defaultProviderType && defaultProviderType !== decision.providerType) {
479
+ if (!params.strictModel && defaultProviderType && defaultProviderType !== decision.providerType) {
456
480
  executionOrder.push({
457
481
  provider: defaultProviderType,
458
482
  model: this.config.defaultModel,
@@ -464,13 +488,26 @@ export class HybridRouter {
464
488
  // openrouter/gemini/azure-openai/bedrock from ADR-043) and
465
489
  // ProviderManager.createProvider() builds all of them. The narrower
466
490
  // list silently excluded users' actual fallback providers.
467
- for (const entry of fallbackChain.entries) {
468
- if (!entry.enabled)
469
- continue;
470
- if (entry.provider === decision.providerType)
471
- continue;
472
- for (const model of entry.models) {
473
- executionOrder.push({ provider: entry.provider, model });
491
+ if (!params.strictModel) {
492
+ for (const entry of fallbackChain.entries) {
493
+ if (!entry.enabled)
494
+ continue;
495
+ if (entry.provider === decision.providerType)
496
+ continue;
497
+ for (const model of entry.models) {
498
+ executionOrder.push({ provider: entry.provider, model });
499
+ }
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
+ }
474
511
  }
475
512
  }
476
513
  // Capability-aware guard: when the request needs tools, drop any candidate
@@ -520,6 +557,17 @@ export class HybridRouter {
520
557
  // ADR-123: persist the charge to the cross-process ledger so budgets
521
558
  // hold across a fleet of processes. ADR-124 M2.3: attribute to the agent.
522
559
  this.providerManager.recordResponseSpend(response, params.agentType);
560
+ // A provider can return an unexpected model even when its request was
561
+ // pinned. Account for the completed call, but do not accept that answer
562
+ // as evidence from the requested model (e.g. a frontier quality judge).
563
+ if (params.strictModel) {
564
+ if (response.provider !== providerType) {
565
+ throw createLLMError(`Strict model provider mismatch: expected ${providerType}, received ${response.provider}`, 'PROVIDER_UNAVAILABLE', { provider: providerType, model, retryable: false });
566
+ }
567
+ if (!this.isSameModel(decision.model, response.model)) {
568
+ throw createLLMError(`Strict model mismatch: expected ${decision.model}, received ${response.model}`, 'MODEL_NOT_FOUND', { provider: providerType, model, retryable: false });
569
+ }
570
+ }
523
571
  const callLatency = Date.now() - callStartTime;
524
572
  // Record success in legacy tracker
525
573
  this.metrics.recordSuccess(providerType);
@@ -585,7 +633,7 @@ export class HybridRouter {
585
633
  // delay (because no need to wait) but DOES continue to the next
586
634
  // entry in executionOrder. Only retryable errors get the delay.
587
635
  const nonRetryable = isLLMError(error) && !error.retryable;
588
- if (!nonRetryable && attempts < fallbackBehavior.maxAttempts) {
636
+ if (!params.strictModel && !nonRetryable && attempts < fallbackBehavior.maxAttempts) {
589
637
  await this.delay(fallbackBehavior.delayMs);
590
638
  }
591
639
  }
@@ -595,6 +643,18 @@ export class HybridRouter {
595
643
  // ============================================================================
596
644
  // Helper Methods
597
645
  // ============================================================================
646
+ /** Compare identity independently of the API transport hosting the model. */
647
+ isSameModel(expected, actual) {
648
+ if (expected === actual)
649
+ return true;
650
+ try {
651
+ return normalizeModelId(expected) === normalizeModelId(actual);
652
+ }
653
+ catch {
654
+ // Unregistered model IDs are only equivalent when they match exactly.
655
+ return false;
656
+ }
657
+ }
598
658
  /**
599
659
  * Create a routing decision with proper model ID normalization (ADR-043)
600
660
  */
@@ -903,7 +963,7 @@ export function createQERouter(providerManager) {
903
963
  mode: 'rule-based',
904
964
  rules: DEFAULT_QE_ROUTING_RULES,
905
965
  defaultProvider: 'claude',
906
- defaultModel: 'claude-sonnet-4-6',
966
+ defaultModel: DEFAULT_SONNET_MODEL,
907
967
  enableMetrics: true,
908
968
  cacheDecisions: true,
909
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: 'claude-opus-4-7',
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: 'claude-sonnet-4-6',
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: 'claude-opus-4-7',
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: 'claude-sonnet-4-6',
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: 'claude-sonnet-4-6',
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: 'claude-sonnet-4-6',
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: 'claude-sonnet-4-6',
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: 'llama3.1',
332
+ model: 'qwen3-coder:30b',
332
333
  temperature: 0.3,
333
334
  },
334
335
  enabled: true,
@@ -686,9 +686,16 @@ export interface ChatParams {
686
686
  agentType?: string;
687
687
  /** Task complexity hint */
688
688
  complexity?: TaskComplexity;
689
- /** Specific model to use (for manual mode) - canonical or provider-specific ID */
689
+ /** Specific model to use (for manual mode or strictModel) - canonical or provider-specific ID */
690
690
  model?: string;
691
- /** Preferred provider (for manual mode) - supports extended providers */
691
+ /**
692
+ * Require the explicit model on preferredProvider (or the configured default).
693
+ * Bypasses routing rules and decision caching, disallows provider/model
694
+ * fallback, and rejects responses from a different provider or model.
695
+ * Equivalent canonical and provider-specific model IDs are accepted.
696
+ */
697
+ strictModel?: boolean;
698
+ /** Preferred provider (for manual mode or strictModel) - supports extended providers */
692
699
  preferredProvider?: ExtendedProviderType;
693
700
  /** Required capabilities (legacy) */
694
701
  requiredCapabilities?: string[];
@@ -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: ['claude-sonnet-4-6', 'claude-haiku-4-5-20251001'],
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-4o', 'gpt-4o-mini'],
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-4', 'openai/gpt-4o'],
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: ['llama3.1', 'mistral'],
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: 'claude-sonnet-4-6',
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: 'claude-sonnet-4-6' },
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: 'claude-sonnet-4-6' },
152
- openai: { enabled: true, defaultModel: 'gpt-4o' },
153
- ollama: { enabled: true, defaultModel: 'llama3.1' },
154
- openrouter: { enabled: true, defaultModel: 'anthropic/claude-sonnet-4' },
155
- gemini: { enabled: false, defaultModel: 'gemini-pro' },
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: 200000,
234
- maxOutputTokens: 64000,
301
+ maxContextTokens: 1_000_000,
302
+ maxOutputTokens: 128000,
235
303
  },
236
304
  tier: 'advanced',
237
305
  family: 'claude',