agentic-qe 3.13.10 → 3.13.12

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 (746) hide show
  1. package/.claude/helpers/.helpers-version +1 -1
  2. package/.claude/helpers/auto-memory-hook.mjs +1 -1
  3. package/.claude/helpers/helpers.manifest.json +6 -6
  4. package/.claude/helpers/hook-handler.cjs +30 -0
  5. package/.claude/helpers/intelligence.cjs +121 -10
  6. package/.claude/helpers/statusline.cjs +786 -8
  7. package/.claude/skills/skills-manifest.json +1 -1
  8. package/CHANGELOG.md +78 -0
  9. package/README.md +1 -0
  10. package/assets/skills/skills-manifest.json +1 -1
  11. package/dist/agents/claim-verifier/claim-verifier-service.js +4 -4
  12. package/dist/agents/claim-verifier/index.js +6 -6
  13. package/dist/agents/claim-verifier/verifiers/file-verifier.js +1 -1
  14. package/dist/agents/claim-verifier/verifiers/index.js +3 -3
  15. package/dist/agents/claim-verifier/verifiers/output-verifier.js +1 -1
  16. package/dist/causal-discovery/causal-graph.js +2 -2
  17. package/dist/causal-discovery/discovery-engine.js +2 -2
  18. package/dist/causal-discovery/weight-matrix.js +2 -2
  19. package/dist/cli/bundle.js +5 -5
  20. package/dist/cli/chunks/adapter-FUV6LBJT.js +2 -0
  21. package/dist/cli/chunks/{agent-booster-wasm-AWNQ6KB3.js → agent-booster-wasm-7I7LZFNC.js} +2 -2
  22. package/dist/cli/chunks/{agent-handler-RSHQZHPS.js → agent-handler-QZZT52BH.js} +2 -2
  23. package/dist/cli/chunks/{agent-memory-branch-FU7Y3TQ3.js → agent-memory-branch-MLQS5Y26.js} +2 -2
  24. package/dist/cli/chunks/aqe-learning-engine-QNFNA3J4.js +2 -0
  25. package/dist/cli/chunks/{arena-LOK2WYHC.js → arena-IM4CP6LP.js} +2 -2
  26. package/dist/cli/chunks/{arena-XQOCNKB6.js → arena-WRIY37EJ.js} +4 -4
  27. package/dist/cli/chunks/{audit-6ZS4EAD2.js → audit-BSAQ4EFN.js} +3 -3
  28. package/dist/cli/chunks/base-37W2XIXC.js +2 -0
  29. package/dist/cli/chunks/{better-sqlite3-IMBCIZK3.js → better-sqlite3-X2XZUXWZ.js} +2 -2
  30. package/dist/cli/chunks/{brain-handler-3U6BH4EO.js → brain-handler-TVTTWZGP.js} +3 -3
  31. package/dist/cli/chunks/{branch-enumerator-CJBPVBXM.js → branch-enumerator-NI4Q7DSJ.js} +2 -2
  32. package/dist/cli/chunks/{browser-M4VW3KJY.js → browser-PXBLORUZ.js} +2 -2
  33. package/dist/cli/chunks/browser-workflow-PDIUEK7B.js +2 -0
  34. package/dist/cli/chunks/{chunk-PVGOOKBF.js → chunk-2JAC57JE.js} +1 -1
  35. package/dist/cli/chunks/{chunk-JWV5ZM2S.js → chunk-2VTX4SYW.js} +2 -2
  36. package/dist/cli/chunks/{chunk-IYLSML27.js → chunk-2VY7FL6A.js} +2 -2
  37. package/dist/cli/chunks/{chunk-7QNN4GQU.js → chunk-2W3D5A4R.js} +2 -2
  38. package/dist/cli/chunks/{chunk-OZLMIEJC.js → chunk-33YZGOT6.js} +2 -2
  39. package/dist/cli/chunks/{chunk-WSPEAYPG.js → chunk-3ASVQILY.js} +2 -2
  40. package/dist/cli/chunks/{chunk-YO63NTJV.js → chunk-3XVZHJQT.js} +1 -1
  41. package/dist/cli/chunks/{chunk-H7AACUYS.js → chunk-42AS3HPO.js} +2 -2
  42. package/dist/cli/chunks/{chunk-HEY2ZRL7.js → chunk-44NPKZGI.js} +2 -2
  43. package/dist/cli/chunks/{chunk-PIV3QHGJ.js → chunk-4AITMWFZ.js} +2 -2
  44. package/dist/cli/chunks/{chunk-2SS2SSNZ.js → chunk-4ANJV6I4.js} +3 -3
  45. package/dist/cli/chunks/{chunk-CCAY7Q56.js → chunk-4FVOJBEU.js} +1 -1
  46. package/dist/cli/chunks/{chunk-EZY3DAIX.js → chunk-4M7YZ2X7.js} +4 -4
  47. package/dist/cli/chunks/{chunk-HZIT42TM.js → chunk-4THFPRFM.js} +2 -2
  48. package/dist/cli/chunks/chunk-4YFXF5AQ.js +21 -0
  49. package/dist/cli/chunks/{chunk-PUN3KZ6N.js → chunk-4Z4X2ND4.js} +2 -2
  50. package/dist/cli/chunks/{chunk-4TSLLWE7.js → chunk-52VGZJSD.js} +1 -1
  51. package/dist/cli/chunks/{chunk-NRD76M7A.js → chunk-5E76HULA.js} +2 -2
  52. package/dist/cli/chunks/{chunk-RQTXQ6C7.js → chunk-5PI75QYP.js} +2 -2
  53. package/dist/cli/chunks/{chunk-7BZUNNWC.js → chunk-5PNQNBDZ.js} +1 -1
  54. package/dist/cli/chunks/{chunk-KBJYXZI7.js → chunk-5VSS2RBD.js} +2 -2
  55. package/dist/cli/chunks/{chunk-7QSGUJE2.js → chunk-66OQ7AB3.js} +1 -1
  56. package/dist/cli/chunks/{chunk-WFEHOEYP.js → chunk-6BSZHNOC.js} +1 -1
  57. package/dist/cli/chunks/{chunk-KQVTTP2S.js → chunk-6KI6LAAZ.js} +2 -2
  58. package/dist/cli/chunks/{chunk-NZRKWUBM.js → chunk-6KKVMPPR.js} +2 -2
  59. package/dist/cli/chunks/{chunk-KITVDY4T.js → chunk-7A4WTRWI.js} +1 -1
  60. package/dist/cli/chunks/{chunk-GRTU5QOT.js → chunk-7LATB5IR.js} +2 -2
  61. package/dist/cli/chunks/{chunk-J6H2LUBM.js → chunk-7PCIN7UN.js} +2 -2
  62. package/dist/cli/chunks/{chunk-FBJUNJ2A.js → chunk-7RVLVIAI.js} +1 -1
  63. package/dist/cli/chunks/{chunk-7NDJW2DU.js → chunk-7ZVO7I4Q.js} +1 -1
  64. package/dist/cli/chunks/{chunk-EE55ALFK.js → chunk-A5RWLPVT.js} +2 -2
  65. package/dist/cli/chunks/{chunk-U6YDS37V.js → chunk-AKUDUB3O.js} +2 -2
  66. package/dist/cli/chunks/{chunk-6SM74KJI.js → chunk-AM42ROKZ.js} +1 -1
  67. package/dist/cli/chunks/{chunk-VUCCPPQ6.js → chunk-AN5CGTTJ.js} +2 -2
  68. package/dist/cli/chunks/{chunk-QZOAU2N5.js → chunk-AOOCV56W.js} +1 -1
  69. package/dist/cli/chunks/{chunk-U562TIMO.js → chunk-ASWWBNX2.js} +2 -2
  70. package/dist/cli/chunks/{chunk-C5CP66K5.js → chunk-AYH3DMW2.js} +1 -1
  71. package/dist/cli/chunks/{chunk-U5NKLMF4.js → chunk-BODFJ3DC.js} +2 -2
  72. package/dist/cli/chunks/{chunk-YHAUBZ4H.js → chunk-BZIPYXSW.js} +3 -3
  73. package/dist/cli/chunks/{chunk-JMF3FMAO.js → chunk-DCVFHVPR.js} +2 -2
  74. package/dist/cli/chunks/{chunk-H633BGA7.js → chunk-DFLASG3B.js} +1 -1
  75. package/dist/cli/chunks/{chunk-CPXZC7LF.js → chunk-DGFINXUE.js} +1 -1
  76. package/dist/cli/chunks/{chunk-54RIPGMC.js → chunk-E67ZXRG6.js} +1 -1
  77. package/dist/cli/chunks/{chunk-A233TTUX.js → chunk-EDRPTLAX.js} +1 -1
  78. package/dist/cli/chunks/{chunk-UHSIP4DJ.js → chunk-EG73WYAW.js} +2 -2
  79. package/dist/cli/chunks/{chunk-EKZNA6HW.js → chunk-FI6J3UHJ.js} +1 -1
  80. package/dist/cli/chunks/{chunk-6FIWTBR5.js → chunk-G45AOQDZ.js} +1 -1
  81. package/dist/cli/chunks/{chunk-IR7FZYPO.js → chunk-G6FJHDUG.js} +1 -1
  82. package/dist/cli/chunks/chunk-GEQWCK4F.js +2 -0
  83. package/dist/cli/chunks/{chunk-6L36EHM2.js → chunk-GJJWXRAD.js} +2 -2
  84. package/dist/cli/chunks/{chunk-MMRORLMM.js → chunk-GJUGG6UR.js} +2 -2
  85. package/dist/cli/chunks/{chunk-YC5UJVV3.js → chunk-GMLRIZ4E.js} +1 -1
  86. package/dist/cli/chunks/{chunk-UNXPBIX5.js → chunk-GQLJYTXN.js} +2 -2
  87. package/dist/cli/chunks/{chunk-IJ3HHUSD.js → chunk-H3GAR4SV.js} +2 -2
  88. package/dist/cli/chunks/{chunk-OSWAQX4G.js → chunk-HAJG44BD.js} +2 -2
  89. package/dist/cli/chunks/{chunk-GSN4QIDI.js → chunk-HQWFZQMJ.js} +2 -2
  90. package/dist/cli/chunks/{chunk-JUVW4DOU.js → chunk-HRTSYT4N.js} +2 -2
  91. package/dist/cli/chunks/{chunk-2HMBDTSI.js → chunk-I5SXLV7D.js} +2 -2
  92. package/dist/cli/chunks/{chunk-DR4V75BF.js → chunk-IOJ34SXJ.js} +2 -2
  93. package/dist/cli/chunks/{chunk-JALFKAAD.js → chunk-IPDM3CAK.js} +1 -1
  94. package/dist/cli/chunks/{chunk-NL3KX4NE.js → chunk-IPZEBALY.js} +34 -29
  95. package/dist/cli/chunks/{chunk-PSBQRTNF.js → chunk-IQH2RDN3.js} +5 -5
  96. package/dist/cli/chunks/{chunk-SWZUMHIQ.js → chunk-IT5QIUUA.js} +2 -2
  97. package/dist/cli/chunks/{chunk-2LGQNT6Q.js → chunk-JTYCOFTD.js} +1 -1
  98. package/dist/cli/chunks/{chunk-Q7QKJY6Y.js → chunk-JVFZAJ5N.js} +2 -2
  99. package/dist/cli/chunks/{chunk-F3AHUNWH.js → chunk-KRZYWVS3.js} +2 -2
  100. package/dist/cli/chunks/{chunk-7JK57AI2.js → chunk-KXSUDN46.js} +1 -1
  101. package/dist/cli/chunks/{chunk-EP2HOAEB.js → chunk-KYJBJ56M.js} +2 -2
  102. package/dist/cli/chunks/{chunk-OLETDPH2.js → chunk-L3GBNX7B.js} +2 -2
  103. package/dist/cli/chunks/{chunk-VWZ743HH.js → chunk-LRO74LPA.js} +4 -4
  104. package/dist/cli/chunks/{chunk-FC47FRFI.js → chunk-LXVT6JXO.js} +4 -4
  105. package/dist/cli/chunks/{chunk-7XWFAPPI.js → chunk-M3354CE4.js} +2 -2
  106. package/dist/cli/chunks/{chunk-37GWETSW.js → chunk-M73KM3AZ.js} +2 -2
  107. package/dist/cli/chunks/{chunk-BM5BSYPW.js → chunk-M7CPJW53.js} +2 -2
  108. package/dist/cli/chunks/{chunk-ZAEUW3Q4.js → chunk-MB2KLJ6Q.js} +1 -1
  109. package/dist/cli/chunks/{chunk-QHRMZP6J.js → chunk-MGKH4LCM.js} +1 -1
  110. package/dist/cli/chunks/{chunk-AJQGNQ3W.js → chunk-MLFELTJX.js} +2 -2
  111. package/dist/cli/chunks/{chunk-I3SBXWF2.js → chunk-MLXLGBQZ.js} +1 -1
  112. package/dist/cli/chunks/{chunk-6C5WRBGZ.js → chunk-MYVKTG55.js} +3 -3
  113. package/dist/cli/chunks/{chunk-EJRDL5W5.js → chunk-N4OQ4D4V.js} +2 -2
  114. package/dist/cli/chunks/{chunk-MMA6Q6NF.js → chunk-NDRZZSD5.js} +2 -2
  115. package/dist/cli/chunks/{chunk-HL5RC5YB.js → chunk-NG6A7LCG.js} +1 -1
  116. package/dist/cli/chunks/{chunk-JPDJARGR.js → chunk-NJ3QXJ54.js} +2 -2
  117. package/dist/cli/chunks/{chunk-DZNK4EM7.js → chunk-NJ4YVAG7.js} +3 -3
  118. package/dist/cli/chunks/chunk-NL2SCAGJ.js +12 -0
  119. package/dist/cli/chunks/chunk-NLZUGANH.js +11 -0
  120. package/dist/cli/chunks/{chunk-TIGBPVPZ.js → chunk-NNLZAVFH.js} +1 -1
  121. package/dist/cli/chunks/{chunk-7XCRPSSU.js → chunk-NTALX2YC.js} +2 -2
  122. package/dist/cli/chunks/{chunk-YALYPHSG.js → chunk-O4BWESH5.js} +2 -2
  123. package/dist/cli/chunks/{chunk-C656WHED.js → chunk-OG3DBHIV.js} +2 -2
  124. package/dist/cli/chunks/{chunk-BFX3N7KU.js → chunk-OZ53BIY5.js} +1 -1
  125. package/dist/cli/chunks/{chunk-BB4LWAAH.js → chunk-P6EFKHNI.js} +2 -2
  126. package/dist/cli/chunks/{chunk-2FFCL4BK.js → chunk-PGFCKE4G.js} +3 -3
  127. package/dist/cli/chunks/{chunk-66BUC3JG.js → chunk-PVINNJ4P.js} +2 -2
  128. package/dist/cli/chunks/{chunk-FOWBKCRK.js → chunk-QG5L2JM5.js} +10 -10
  129. package/dist/cli/chunks/{chunk-ATSVI6T4.js → chunk-QM4Z7TQH.js} +1 -1
  130. package/dist/cli/chunks/{chunk-Q26QKZYI.js → chunk-QXO35J6F.js} +2 -2
  131. package/dist/cli/chunks/{chunk-FOPLJRWL.js → chunk-R7LGVJMZ.js} +2 -2
  132. package/dist/cli/chunks/{chunk-PLJ72A3I.js → chunk-RACWX2ZX.js} +2 -2
  133. package/dist/cli/chunks/{chunk-ZH3MVVXO.js → chunk-RP2BRRLX.js} +2 -2
  134. package/dist/cli/chunks/{chunk-T7OS4CB4.js → chunk-RP5VFZJO.js} +2 -2
  135. package/dist/cli/chunks/{chunk-7GZJMPTD.js → chunk-S6WHYOWV.js} +2 -2
  136. package/dist/cli/chunks/{chunk-C5HYQTD7.js → chunk-SCQNISGS.js} +1 -1
  137. package/dist/cli/chunks/chunk-SNC73DWF.js +2 -0
  138. package/dist/cli/chunks/{chunk-WKE2FUCP.js → chunk-SOS37ECY.js} +1 -1
  139. package/dist/cli/chunks/{chunk-BTG5UFMA.js → chunk-SXFSJJZF.js} +2 -2
  140. package/dist/cli/chunks/{chunk-IHNPXNFG.js → chunk-TB2N3CAK.js} +2 -2
  141. package/dist/cli/chunks/chunk-TDVMILKO.js +2 -0
  142. package/dist/cli/chunks/{chunk-RYHOV4E3.js → chunk-TJVTV3HP.js} +2 -2
  143. package/dist/cli/chunks/{chunk-2E35LWYJ.js → chunk-TK5XLF3Z.js} +4 -4
  144. package/dist/cli/chunks/{chunk-NCX4W65B.js → chunk-TWUWLSGQ.js} +6 -6
  145. package/dist/cli/chunks/{chunk-WIB6KRFJ.js → chunk-U5G6OC2C.js} +2 -2
  146. package/dist/cli/chunks/{chunk-OZO2JUEK.js → chunk-UBOGJHWC.js} +1 -1
  147. package/dist/cli/chunks/{chunk-WK5MKY45.js → chunk-UC4EIULB.js} +13 -13
  148. package/dist/cli/chunks/{chunk-KBOGA4GA.js → chunk-UJUK6T4V.js} +2 -2
  149. package/dist/cli/chunks/chunk-UQ4UCHO7.js +2 -0
  150. package/dist/cli/chunks/{chunk-4PRQMFVO.js → chunk-UWZYXI3R.js} +2 -2
  151. package/dist/cli/chunks/{chunk-GQ6H37RN.js → chunk-VA2ORJB5.js} +2 -2
  152. package/dist/cli/chunks/{chunk-U5WFVIKL.js → chunk-VBHA4SDU.js} +2 -2
  153. package/dist/cli/chunks/{chunk-PGJHCCR6.js → chunk-VD53LBF7.js} +3 -3
  154. package/dist/cli/chunks/{chunk-UHHWEWDA.js → chunk-VNODKACB.js} +2 -2
  155. package/dist/cli/chunks/{chunk-3E3YLEHB.js → chunk-VQCLSX7T.js} +1 -1
  156. package/dist/cli/chunks/{chunk-G7YD3BR3.js → chunk-VQD2ELNL.js} +2 -2
  157. package/dist/cli/chunks/{chunk-RCXC4YGL.js → chunk-VZGP77YU.js} +1 -1
  158. package/dist/cli/chunks/chunk-WA6CSEOX.js +2 -0
  159. package/dist/cli/chunks/{chunk-JGXU5FUZ.js → chunk-WE3VKDMK.js} +3 -3
  160. package/dist/cli/chunks/{chunk-MGJPS2YV.js → chunk-WXU7FAEB.js} +2 -2
  161. package/dist/cli/chunks/{chunk-O5QZB2AP.js → chunk-WYFAPA2G.js} +2 -2
  162. package/dist/cli/chunks/{chunk-MFGKSD44.js → chunk-WYIXNHPF.js} +2 -2
  163. package/dist/cli/chunks/{chunk-2HEHM2KV.js → chunk-X2SZCVDA.js} +2 -2
  164. package/dist/cli/chunks/{chunk-2CLM53W2.js → chunk-X3JNFQW2.js} +2 -2
  165. package/dist/cli/chunks/{chunk-NBUBGYLE.js → chunk-XIKYUBIV.js} +2 -2
  166. package/dist/cli/chunks/{chunk-2FPHM356.js → chunk-XM5I7J5S.js} +2 -2
  167. package/dist/cli/chunks/{chunk-35CHBX6K.js → chunk-XT473WPO.js} +2 -2
  168. package/dist/cli/chunks/{chunk-74QKFILD.js → chunk-YL2GOJF6.js} +2 -2
  169. package/dist/cli/chunks/{chunk-K6SXDKWV.js → chunk-YQOQVSYU.js} +1 -1
  170. package/dist/cli/chunks/{chunk-G427QR5W.js → chunk-Z56BBX77.js} +2 -2
  171. package/dist/cli/chunks/{chunk-LPVHYZAE.js → chunk-Z6DSYLAG.js} +1 -1
  172. package/dist/cli/chunks/{chunk-W3DCBOLL.js → chunk-ZMYV4R32.js} +1 -1
  173. package/dist/cli/chunks/{chunk-UL6PT654.js → chunk-ZSAGRDXA.js} +2 -2
  174. package/dist/cli/chunks/{ci-7QW7234M.js → ci-QAUD62WH.js} +2 -2
  175. package/dist/cli/chunks/{ci-output-WGP4YKPQ.js → ci-output-TZDVTNE7.js} +2 -2
  176. package/dist/cli/chunks/{circuit-breaker-AOHSCJYO.js → circuit-breaker-ZWPHJ7YJ.js} +2 -2
  177. package/dist/cli/chunks/{claude-flow-setup-CIZ3TWR7.js → claude-flow-setup-SCB4EURN.js} +2 -2
  178. package/dist/cli/chunks/client-4W3KWTAU.js +2 -0
  179. package/dist/cli/chunks/{cline-installer-J2QVGPJY.js → cline-installer-EHZLMLXF.js} +2 -2
  180. package/dist/cli/chunks/{code-WH26MFMB.js → code-3N6PBJMK.js} +2 -2
  181. package/dist/cli/chunks/{code-index-extractor-DBOYEFZ4.js → code-index-extractor-6DIKHNRI.js} +2 -2
  182. package/dist/cli/chunks/{codex-installer-MWYVGZC4.js → codex-installer-P7DPQMYL.js} +2 -2
  183. package/dist/cli/chunks/{completions-LNBHGWUS.js → completions-5MKWWCCE.js} +2 -2
  184. package/dist/cli/chunks/{complexity-analyzer-AMYCTQG2.js → complexity-analyzer-TPM4IPEK.js} +2 -2
  185. package/dist/cli/chunks/{continuedev-installer-73EQPP37.js → continuedev-installer-VXODKGVX.js} +2 -2
  186. package/dist/cli/chunks/{copilot-installer-JWSY2272.js → copilot-installer-PVD5O56P.js} +2 -2
  187. package/dist/cli/chunks/core-handlers-BDU2XBLO.js +2 -0
  188. package/dist/cli/chunks/{cost-tracker-XQVIORRZ.js → cost-tracker-JOMZEQF3.js} +2 -2
  189. package/dist/cli/chunks/{coverage-HYGJIQ25.js → coverage-HTXLEV3B.js} +3 -3
  190. package/dist/cli/chunks/cross-domain-router-BPB6IHN4.js +2 -0
  191. package/dist/cli/chunks/{cursor-installer-DNPNJGZM.js → cursor-installer-SHKDTDDZ.js} +2 -2
  192. package/dist/cli/chunks/{daemon-GSOGO6L3.js → daemon-FCFEWVVJ.js} +3 -3
  193. package/dist/cli/chunks/{daemon-6JNNBU33.js → daemon-PN4FEPLE.js} +6 -6
  194. package/dist/cli/chunks/{dag-attention-scheduler-7SGPLKGI.js → dag-attention-scheduler-PLOHU5SR.js} +2 -2
  195. package/dist/cli/chunks/{detect-IXD77HG4.js → detect-F3H4ZEZY.js} +2 -2
  196. package/dist/cli/chunks/{dist-node-ARTYK2HL.js → dist-node-5TC665N6.js} +2 -2
  197. package/dist/cli/chunks/{domain-handler-X4BOFLMY.js → domain-handler-ZIWVFXCU.js} +2 -2
  198. package/dist/cli/chunks/{domain-transfer-7JBEXLFL.js → domain-transfer-7Q5JYMYR.js} +2 -2
  199. package/dist/cli/chunks/dream-WFCZGFDY.js +2 -0
  200. package/dist/cli/chunks/{embed-and-insert-pattern-VSOLKM3Y.js → embed-and-insert-pattern-VESJQSYD.js} +2 -2
  201. package/dist/cli/chunks/{eval-HS2QQW42.js → eval-E2K2T75A.js} +2 -2
  202. package/dist/cli/chunks/{experience-capture-middleware-MWEPZYBT.js → experience-capture-middleware-Z5SE2O53.js} +3 -3
  203. package/dist/cli/chunks/{fast-paths-RONNJ6AC.js → fast-paths-3H52RSUK.js} +2 -2
  204. package/dist/cli/chunks/{feature-flags-4YE5A6XG.js → feature-flags-LUHSMHPS.js} +2 -2
  205. package/dist/cli/chunks/{feature-flags-CLW4K2HN.js → feature-flags-ONIKUZVK.js} +2 -2
  206. package/dist/cli/chunks/{file-discovery-56C2FW4V.js → file-discovery-FLYSYSS4.js} +2 -2
  207. package/dist/cli/chunks/{fleet-KMB6RM3R.js → fleet-6OJUAAKV.js} +3 -3
  208. package/dist/cli/chunks/{gnn-wrapper-R2OMDND4.js → gnn-wrapper-PUL6B7KZ.js} +2 -2
  209. package/dist/cli/chunks/{heartbeat-handler-FP3CIA2V.js → heartbeat-handler-HGHHDUDY.js} +4 -4
  210. package/dist/cli/chunks/heartbeat-scheduler-HWS4SHRM.js +2 -0
  211. package/dist/cli/chunks/hnsw-adapter-7QOBHKRB.js +2 -0
  212. package/dist/cli/chunks/hnsw-index-6WUKYJH7.js +2 -0
  213. package/dist/cli/chunks/{hnsw-legacy-bridge-EQKXBLRX.js → hnsw-legacy-bridge-NDZSNMYX.js} +2 -2
  214. package/dist/cli/chunks/{hnswlib-node-JG3WOXKM.js → hnswlib-node-PISLKSO2.js} +2 -2
  215. package/dist/cli/chunks/{hooks-6QZYELUZ.js → hooks-WYG54MRI.js} +40 -40
  216. package/dist/cli/chunks/hybrid-router-525JTRA5.js +2 -0
  217. package/dist/cli/chunks/{hypergraph-engine-5HGNZFDH.js → hypergraph-engine-EDHKHZZ2.js} +2 -2
  218. package/dist/cli/chunks/{hypergraph-handler-LO2ODOYD.js → hypergraph-handler-OCHZAPPL.js} +3 -3
  219. package/dist/cli/chunks/impact-analyzer-GG6CJEOK.js +2 -0
  220. package/dist/cli/chunks/{init-handler-E346YK6H.js → init-handler-5TCJ672H.js} +6 -6
  221. package/dist/cli/chunks/init-wizard-4VFAOK4Y.js +2 -0
  222. package/dist/cli/chunks/kernel-N3FQGOST.js +2 -0
  223. package/dist/cli/chunks/{kilocode-installer-ZBJNB6N4.js → kilocode-installer-SWUQRCTZ.js} +2 -2
  224. package/dist/cli/chunks/{kiro-installer-3TWFO4QZ.js → kiro-installer-L22EBAM5.js} +2 -2
  225. package/dist/cli/chunks/knowledge-graph-I5QIHB4G.js +2 -0
  226. package/dist/cli/chunks/{learning-3MLFLTM2.js → learning-TQOGG3CR.js} +3 -3
  227. package/dist/cli/chunks/llm-router-F2L4LFT2.js +37 -0
  228. package/dist/cli/chunks/llm-router-service-NCJZYJLG.js +2 -0
  229. package/dist/cli/chunks/{load-P6XC2P74.js → load-A4ZF2KHC.js} +2 -2
  230. package/dist/cli/chunks/load-test-DCJEYIXD.js +2 -0
  231. package/dist/cli/chunks/{mcp-XEND7FPN.js → mcp-T2Z46NNK.js} +2 -2
  232. package/dist/cli/chunks/{memory-HZ2WSMWW.js → memory-PUC3J6XC.js} +5 -5
  233. package/dist/cli/chunks/memory-backend-O6KO2KTX.js +2 -0
  234. package/dist/cli/chunks/memory-handlers-4Z43WEKD.js +2 -0
  235. package/dist/cli/chunks/{multi-model-executor-IYEHZP73.js → multi-model-executor-U5L4FI4O.js} +2 -2
  236. package/dist/cli/chunks/{opencode-installer-GH3VVBM2.js → opencode-installer-UWI6KHYH.js} +2 -2
  237. package/dist/cli/chunks/{orchestrator-GOKIBTQG.js → orchestrator-3BEI7R5D.js} +5 -5
  238. package/dist/cli/chunks/pattern-null-store-5WIJKX2K.js +2 -0
  239. package/dist/cli/chunks/{pattern-usage-recorder-J2X4DD5S.js → pattern-usage-recorder-EGWUI5LU.js} +2 -2
  240. package/dist/cli/chunks/{pipeline-ELINTMVF.js → pipeline-JG6M4RHD.js} +2 -2
  241. package/dist/cli/chunks/{platform-PIPUB3LU.js → platform-F76G6RUI.js} +2 -2
  242. package/dist/cli/chunks/{plugin-DXDNI6ZV.js → plugin-EEGN3PMK.js} +2 -2
  243. package/dist/cli/chunks/{prime-radiant-advanced-wasm-K6WWURGX.js → prime-radiant-advanced-wasm-7KZAINFT.js} +2 -2
  244. package/dist/cli/chunks/protocol-executor-5TPNAZTB.js +2 -0
  245. package/dist/cli/chunks/{protocol-handler-NMO7VI64.js → protocol-handler-UCEHYK2R.js} +2 -2
  246. package/dist/cli/chunks/{prove-4BLOE4SC.js → prove-JSNG75VD.js} +2 -2
  247. package/dist/cli/chunks/provider-manager-3VMOZ6HV.js +2 -0
  248. package/dist/cli/chunks/qe-reasoning-bank-BATV4NTT.js +2 -0
  249. package/dist/cli/chunks/{quality-MYXBP3GX.js → quality-7SRM2HBM.js} +2 -2
  250. package/dist/cli/chunks/{quality-gate-AXPBK3MT.js → quality-gate-A5MPWHST.js} +3 -3
  251. package/dist/cli/chunks/queen-coordinator-EIHGYBUO.js +2 -0
  252. package/dist/cli/chunks/{real-embeddings-4AKAVZIY.js → real-embeddings-ZBF5EQOG.js} +2 -2
  253. package/dist/cli/chunks/{roocode-installer-JE36LP4T.js → roocode-installer-UYQK64BZ.js} +2 -2
  254. package/dist/cli/chunks/router-EMVGY4HU.js +2 -0
  255. package/dist/cli/chunks/routing-feedback-JUP4OFB2.js +2 -0
  256. package/dist/cli/chunks/{routing-handler-LOJUJCVV.js → routing-handler-PY3KPDTH.js} +2 -2
  257. package/dist/cli/chunks/{ruvector-commands-6PNDYF32.js → ruvector-commands-GCAOUTYS.js} +2 -2
  258. package/dist/cli/chunks/{rvf-dual-writer-GSTQPRNA.js → rvf-dual-writer-BUNP4SKD.js} +2 -2
  259. package/dist/cli/chunks/{rvf-migration-adapter-Z2DSEG3E.js → rvf-migration-adapter-VSOAPLMB.js} +2 -2
  260. package/dist/cli/chunks/{rvf-migration-coordinator-XRNODDH4.js → rvf-migration-coordinator-LSWEHAWX.js} +2 -2
  261. package/dist/cli/chunks/rvf-native-adapter-LOC42TQ6.js +2 -0
  262. package/dist/cli/chunks/{rvf-store-integrity-LVEFIUUW.js → rvf-store-integrity-HNDKOM4L.js} +2 -2
  263. package/dist/cli/chunks/safe-db-WQ62IQKV.js +2 -0
  264. package/dist/cli/chunks/schedule-XJRP57TE.js +2 -0
  265. package/dist/cli/chunks/scheduler-EZH5SDIM.js +2 -0
  266. package/dist/cli/chunks/{security-A2FK2DER.js → security-MQ2VB7PY.js} +3 -3
  267. package/dist/cli/chunks/{shared-rvf-adapter-V7IBEGQQ.js → shared-rvf-adapter-TAZEU6QK.js} +2 -2
  268. package/dist/cli/chunks/{shared-rvf-dual-writer-SMGECN2K.js → shared-rvf-dual-writer-B7N6AOCY.js} +2 -2
  269. package/dist/cli/chunks/sqlite-persistence-HPEVCTIB.js +2 -0
  270. package/dist/cli/chunks/status-handler-NZP7DFHE.js +47 -0
  271. package/dist/cli/chunks/{structural-health-6BRP74EW.js → structural-health-ALLUQ4X6.js} +2 -2
  272. package/dist/cli/chunks/{sync-4PDTGP34.js → sync-MM7OCUYD.js} +2 -2
  273. package/dist/cli/chunks/{sync-KI573HOR.js → sync-WJJG5J6V.js} +2 -2
  274. package/dist/cli/chunks/{task-handler-QQGSAK6T.js → task-handler-CAQUEEB4.js} +2 -2
  275. package/dist/cli/chunks/{task-handlers-VUPCDYTI.js → task-handlers-25BJ7D3W.js} +3 -3
  276. package/dist/cli/chunks/{test-CJLXBSRH.js → test-HW7GVGVN.js} +4 -4
  277. package/dist/cli/chunks/{test-scheduling-IKPQPQUB.js → test-scheduling-HTMFJMSP.js} +3 -3
  278. package/dist/cli/chunks/{token-bootstrap-FHLC3SHC.js → token-bootstrap-F2DCLWGW.js} +2 -2
  279. package/dist/cli/chunks/{token-usage-NCXAK7TB.js → token-usage-RJZDMBDP.js} +2 -2
  280. package/dist/cli/chunks/{transformers-SZFBEILB.js → transformers-3YFW3EUO.js} +2 -2
  281. package/dist/cli/chunks/{tree-sitter-wasm-parser-LFGJRML7.js → tree-sitter-wasm-parser-U3PQPIK7.js} +2 -2
  282. package/dist/cli/chunks/{types-NKXH7VTP.js → types-7Q762WDO.js} +2 -2
  283. package/dist/cli/chunks/unified-memory-ATILROKR.js +2 -0
  284. package/dist/cli/chunks/unified-memory-hnsw-XJXAX7DW.js +2 -0
  285. package/dist/cli/chunks/unified-persistence-3TN5PBWE.js +2 -0
  286. package/dist/cli/chunks/{upgrade-PFCFH6M5.js → upgrade-F7MKJWBQ.js} +2 -2
  287. package/dist/cli/chunks/{validate-YEBJRWQM.js → validate-B27AVRA6.js} +2 -2
  288. package/dist/cli/chunks/{validate-swarm-TD2NA6QF.js → validate-swarm-GYZR3GNL.js} +2 -2
  289. package/dist/cli/chunks/{vibium-ACC4GIOT.js → vibium-W4XQMPJP.js} +2 -2
  290. package/dist/cli/chunks/visual-security-VFWRBCNA.js +2 -0
  291. package/dist/cli/chunks/{web-tree-sitter-IWVW5FIE.js → web-tree-sitter-I7CDCFJU.js} +2 -2
  292. package/dist/cli/chunks/{windsurf-installer-5PVGLJ3T.js → windsurf-installer-UYLHFDHU.js} +2 -2
  293. package/dist/cli/chunks/{witness-chain-VZB4LJOJ.js → witness-chain-B66SYZKU.js} +2 -2
  294. package/dist/cli/chunks/witness-chain-JC5LEXRV.js +2 -0
  295. package/dist/cli/chunks/{witness-key-manager-X632AZTN.js → witness-key-manager-U4JPAHVW.js} +2 -2
  296. package/dist/cli/chunks/{workflow-VNAYFUVY.js → workflow-DYMO47FF.js} +4 -4
  297. package/dist/cli/chunks/workflow-orchestrator-TKQUF2KN.js +2 -0
  298. package/dist/cli/chunks/{wrappers-KO3QXNZP.js → wrappers-7S6DQTEA.js} +2 -2
  299. package/dist/cli/commands/daemon.js +3 -3
  300. package/dist/cli/commands/hooks-handlers/hooks-dream-learning.js +2 -2
  301. package/dist/cli/commands/hooks-handlers/routing-hooks.js +7 -0
  302. package/dist/cli/commands/llm-router.js +35 -6
  303. package/dist/cli/commands/plugin.js +4 -4
  304. package/dist/cli/commands/quality-gate.js +5 -1
  305. package/dist/cli/handlers/status-handler.js +18 -2
  306. package/dist/cli/index.js +1 -1
  307. package/dist/cli/utils/index.js +2 -2
  308. package/dist/context/compaction/index.js +11 -11
  309. package/dist/context/compaction/tier1-microcompact.js +1 -1
  310. package/dist/context/compaction/tier2-session-summary.js +1 -1
  311. package/dist/context/compaction/tier3-llm-compact.js +1 -1
  312. package/dist/context/compaction/tier4-reactive.js +1 -1
  313. package/dist/coordination/claims/index.js +8 -8
  314. package/dist/coordination/consensus/consensus-engine.js +4 -4
  315. package/dist/coordination/consensus/factory.js +4 -4
  316. package/dist/coordination/consensus/index.js +8 -8
  317. package/dist/coordination/consensus/providers/claude-provider.js +1 -1
  318. package/dist/coordination/consensus/providers/gemini-provider.js +1 -1
  319. package/dist/coordination/consensus/providers/index.js +7 -7
  320. package/dist/coordination/consensus/providers/native-learning-provider.js +1 -1
  321. package/dist/coordination/consensus/providers/ollama-provider.js +1 -1
  322. package/dist/coordination/consensus/providers/openai-provider.js +1 -1
  323. package/dist/coordination/consensus/providers/openrouter-provider.js +1 -1
  324. package/dist/coordination/consensus/strategies/index.js +3 -3
  325. package/dist/coordination/cross-domain-router.js +2 -2
  326. package/dist/coordination/dynamic-scaling/dynamic-scaler.js +1 -1
  327. package/dist/coordination/dynamic-scaling/index.js +2 -2
  328. package/dist/coordination/fleet-tiers/index.js +3 -3
  329. package/dist/coordination/fleet-tiers/tier-selector.js +2 -2
  330. package/dist/coordination/handlers/code-intelligence-handlers.js +2 -2
  331. package/dist/coordination/handlers/coverage-collection.js +1 -1
  332. package/dist/coordination/handlers/coverage-handlers.js +3 -3
  333. package/dist/coordination/handlers/index.js +7 -7
  334. package/dist/coordination/handlers/misc-handlers.js +1 -1
  335. package/dist/coordination/handlers/quality-handlers.js +2 -2
  336. package/dist/coordination/handlers/requirements-handlers.js +2 -2
  337. package/dist/coordination/handlers/security-handlers.js +2 -2
  338. package/dist/coordination/handlers/test-execution-handlers.js +1 -1
  339. package/dist/coordination/index.js +20 -20
  340. package/dist/coordination/mincut/dream-integration.js +1 -1
  341. package/dist/coordination/mincut/index.js +14 -14
  342. package/dist/coordination/mincut/mincut-health-monitor.js +2 -2
  343. package/dist/coordination/mincut/mincut-persistence.js +1 -1
  344. package/dist/coordination/mincut/morphogenetic-growth.js +1 -1
  345. package/dist/coordination/mincut/neural-goap.js +1 -1
  346. package/dist/coordination/mincut/queen-integration.js +5 -5
  347. package/dist/coordination/mincut/shared-singleton.js +3 -3
  348. package/dist/coordination/mincut/strange-loop.js +1 -1
  349. package/dist/coordination/mincut/time-crystal.js +8 -8
  350. package/dist/coordination/mixins/consensus-enabled-domain.js +2 -2
  351. package/dist/coordination/mixins/index.js +3 -3
  352. package/dist/coordination/protocol-executor.js +2 -2
  353. package/dist/coordination/protocols/code-intelligence-index.js +4 -4
  354. package/dist/coordination/protocols/defect-investigation.js +2 -2
  355. package/dist/coordination/protocols/morning-sync.js +1 -1
  356. package/dist/coordination/protocols/quality-gate.js +2 -2
  357. package/dist/coordination/queen-coordinator.js +4 -4
  358. package/dist/coordination/queen-task-management.js +1 -1
  359. package/dist/coordination/services/index.js +1 -1
  360. package/dist/coordination/task-executor.js +6 -6
  361. package/dist/domains/chaos-resilience/coordinator.js +6 -6
  362. package/dist/domains/chaos-resilience/index.js +5 -5
  363. package/dist/domains/chaos-resilience/plugin.js +6 -6
  364. package/dist/domains/chaos-resilience/services/chaos-engineer.js +3 -3
  365. package/dist/domains/chaos-resilience/services/index.js +3 -3
  366. package/dist/domains/chaos-resilience/services/load-tester.js +2 -2
  367. package/dist/domains/chaos-resilience/services/performance-profiler.js +2 -2
  368. package/dist/domains/code-intelligence/coordinator-consensus.js +1 -1
  369. package/dist/domains/code-intelligence/coordinator-gnn.js +1 -1
  370. package/dist/domains/code-intelligence/coordinator-hypergraph.js +2 -2
  371. package/dist/domains/code-intelligence/coordinator.js +9 -9
  372. package/dist/domains/code-intelligence/index.js +7 -7
  373. package/dist/domains/code-intelligence/plugin.js +6 -6
  374. package/dist/domains/code-intelligence/services/c4-model/index.js +3 -3
  375. package/dist/domains/code-intelligence/services/impact-analyzer.js +2 -2
  376. package/dist/domains/code-intelligence/services/index.js +6 -6
  377. package/dist/domains/code-intelligence/services/knowledge-graph.js +4 -4
  378. package/dist/domains/code-intelligence/services/metric-collector/loc-counter.js +1 -1
  379. package/dist/domains/code-intelligence/services/metric-collector/test-counter.js +1 -1
  380. package/dist/domains/code-intelligence/services/product-factors-bridge.js +5 -5
  381. package/dist/domains/code-intelligence/services/semantic-analyzer.js +2 -2
  382. package/dist/domains/coverage-analysis/coordinator.js +9 -9
  383. package/dist/domains/coverage-analysis/index.js +10 -10
  384. package/dist/domains/coverage-analysis/plugin.js +4 -4
  385. package/dist/domains/coverage-analysis/services/coverage-analyzer.js +1 -1
  386. package/dist/domains/coverage-analysis/services/gap-detector.js +1 -1
  387. package/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js +1 -1
  388. package/dist/domains/coverage-analysis/services/index.js +7 -7
  389. package/dist/domains/coverage-analysis/services/risk-scorer.js +1 -1
  390. package/dist/domains/coverage-analysis/services/sublinear-analyzer.js +3 -3
  391. package/dist/domains/defect-intelligence/coordinator.js +5 -5
  392. package/dist/domains/defect-intelligence/index.js +5 -5
  393. package/dist/domains/defect-intelligence/plugin.js +6 -6
  394. package/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.js +2 -2
  395. package/dist/domains/defect-intelligence/services/defect-predictor.js +4 -4
  396. package/dist/domains/defect-intelligence/services/index.js +4 -4
  397. package/dist/domains/defect-intelligence/services/pattern-learner.js +2 -2
  398. package/dist/domains/defect-intelligence/services/root-cause-analyzer.js +1 -1
  399. package/dist/domains/domain-interface.js +1 -1
  400. package/dist/domains/index.js +14 -14
  401. package/dist/domains/learning-optimization/coordinator.d.ts +3 -0
  402. package/dist/domains/learning-optimization/coordinator.js +6 -0
  403. package/dist/domains/learning-optimization/interfaces.d.ts +2 -0
  404. package/dist/domains/learning-optimization/plugin.d.ts +3 -0
  405. package/dist/domains/learning-optimization/plugin.js +5 -0
  406. package/dist/domains/quality-assessment/coherence/gate-controller.js +2 -2
  407. package/dist/domains/quality-assessment/coherence/lambda-calculator.js +1 -1
  408. package/dist/domains/quality-assessment/coherence/partition-detector.js +1 -1
  409. package/dist/domains/quality-assessment/coordinator-gate-evaluation.js +1 -1
  410. package/dist/domains/quality-assessment/coordinator-reports.js +1 -1
  411. package/dist/domains/quality-assessment/coordinator-rl-integration.js +2 -2
  412. package/dist/domains/quality-assessment/coordinator.js +5 -5
  413. package/dist/domains/quality-assessment/index.js +9 -9
  414. package/dist/domains/quality-assessment/plugin.js +6 -6
  415. package/dist/domains/quality-assessment/services/coherence-gate.js +6 -6
  416. package/dist/domains/quality-assessment/services/deployment-advisor.js +1 -1
  417. package/dist/domains/quality-assessment/services/index.js +4 -4
  418. package/dist/domains/quality-assessment/services/quality-analyzer.js +2 -2
  419. package/dist/domains/quality-assessment/services/quality-gate.js +1 -1
  420. package/dist/domains/requirements-validation/services/product-factors-assessment/analyzers/brutal-honesty-analyzer.js +2 -2
  421. package/dist/domains/requirements-validation/services/product-factors-assessment/analyzers/sfdipot-analyzer.js +2 -2
  422. package/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.js +1 -1
  423. package/dist/domains/requirements-validation/services/product-factors-assessment/formatters/gherkin-formatter.js +1 -1
  424. package/dist/domains/requirements-validation/services/product-factors-assessment/formatters/html-formatter.js +2 -2
  425. package/dist/domains/requirements-validation/services/product-factors-assessment/formatters/markdown-formatter.js +1 -1
  426. package/dist/domains/requirements-validation/services/product-factors-assessment/generators/question-generator.js +3 -3
  427. package/dist/domains/requirements-validation/services/product-factors-assessment/generators/test-idea-generator.js +3 -3
  428. package/dist/domains/requirements-validation/services/product-factors-assessment/patterns/domain-registry.js +1 -1
  429. package/dist/domains/requirements-validation/services/product-factors-assessment/patterns/index.js +1 -1
  430. package/dist/domains/requirements-validation/services/product-factors-assessment/skills/skill-integration.js +1 -1
  431. package/dist/domains/security-compliance/coordinator.js +1 -1
  432. package/dist/domains/security-compliance/index.js +1 -1
  433. package/dist/domains/security-compliance/services/compliance-validator.js +1 -1
  434. package/dist/domains/security-compliance/services/scanners/dast-helpers.js +1 -1
  435. package/dist/domains/security-compliance/services/scanners/dast-scanner.js +2 -2
  436. package/dist/domains/security-compliance/services/scanners/dependency-scanner.js +4 -4
  437. package/dist/domains/security-compliance/services/scanners/sast-scanner.js +3 -3
  438. package/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js +2 -2
  439. package/dist/domains/test-execution/coordinator.js +8 -8
  440. package/dist/domains/test-execution/index.js +9 -9
  441. package/dist/domains/test-execution/interfaces.js +1 -1
  442. package/dist/domains/test-execution/plugin.js +3 -3
  443. package/dist/domains/test-execution/services/e2e/adaptive-locator-service.js +1 -1
  444. package/dist/domains/test-execution/services/e2e/assertion-handlers.js +2 -2
  445. package/dist/domains/test-execution/services/e2e/browser-orchestrator.js +3 -3
  446. package/dist/domains/test-execution/services/e2e/e2e-coordinator.js +7 -7
  447. package/dist/domains/test-execution/services/e2e/index.js +10 -10
  448. package/dist/domains/test-execution/services/e2e/step-executors.js +6 -6
  449. package/dist/domains/test-execution/services/e2e/step-retry-handler.js +3 -3
  450. package/dist/domains/test-execution/services/e2e/wait-condition-handler.js +1 -1
  451. package/dist/domains/test-execution/services/e2e-runner.js +6 -6
  452. package/dist/domains/test-execution/services/flaky-detector.js +1 -1
  453. package/dist/domains/test-execution/services/index.js +9 -9
  454. package/dist/domains/test-execution/services/retry-handler.js +1 -1
  455. package/dist/domains/test-execution/services/test-executor.js +1 -1
  456. package/dist/domains/test-execution/services/test-prioritizer.js +3 -3
  457. package/dist/domains/test-execution/services/user-flow-generator.js +3 -3
  458. package/dist/domains/test-execution/test-prioritization-types.js +1 -1
  459. package/dist/domains/test-execution/types/index.js +3 -3
  460. package/dist/domains/test-generation/coordinator.js +5 -5
  461. package/dist/domains/test-generation/factories/index.js +1 -1
  462. package/dist/domains/test-generation/factories/test-generator-factory.js +1 -1
  463. package/dist/domains/test-generation/generators/base-test-generator.js +1 -1
  464. package/dist/domains/test-generation/generators/go-test-generator.js +2 -2
  465. package/dist/domains/test-generation/generators/index.js +13 -13
  466. package/dist/domains/test-generation/generators/jest-vitest-generator.js +1 -1
  467. package/dist/domains/test-generation/generators/junit5-generator.js +2 -2
  468. package/dist/domains/test-generation/generators/kotlin-junit-generator.js +2 -2
  469. package/dist/domains/test-generation/generators/mocha-generator.js +1 -1
  470. package/dist/domains/test-generation/generators/node-test-generator.js +1 -1
  471. package/dist/domains/test-generation/generators/pytest-generator.js +2 -2
  472. package/dist/domains/test-generation/generators/rust-test-generator.js +3 -3
  473. package/dist/domains/test-generation/generators/swift-testing-generator.js +2 -2
  474. package/dist/domains/test-generation/generators/xunit-generator.js +2 -2
  475. package/dist/domains/test-generation/index.js +7 -7
  476. package/dist/domains/test-generation/interfaces/index.js +1 -1
  477. package/dist/domains/test-generation/plugin.js +5 -5
  478. package/dist/domains/test-generation/services/code-transform-integration.js +1 -1
  479. package/dist/domains/test-generation/services/index.js +10 -10
  480. package/dist/domains/test-generation/services/pattern-matcher.js +2 -2
  481. package/dist/domains/test-generation/services/test-generator.js +5 -5
  482. package/dist/domains/visual-accessibility/coordinator.js +1 -1
  483. package/dist/early-exit/early-exit-controller.js +4 -4
  484. package/dist/early-exit/early-exit-decision.js +2 -2
  485. package/dist/early-exit/index.js +5 -5
  486. package/dist/early-exit/quality-signal.js +1 -1
  487. package/dist/early-exit/speculative-executor.js +1 -1
  488. package/dist/index.js +18 -18
  489. package/dist/integrations/agentic-flow/agent-booster/adapter.js +4 -4
  490. package/dist/integrations/agentic-flow/agent-booster/index.js +10 -10
  491. package/dist/integrations/agentic-flow/index.js +6 -6
  492. package/dist/integrations/agentic-flow/metrics/index.js +3 -3
  493. package/dist/integrations/agentic-flow/metrics/metrics-tracker.js +2 -2
  494. package/dist/integrations/agentic-flow/metrics/pattern-updater.js +1 -1
  495. package/dist/integrations/agentic-flow/model-router/budget-enforcer.js +1 -1
  496. package/dist/integrations/agentic-flow/model-router/complexity-analyzer.js +7 -7
  497. package/dist/integrations/agentic-flow/model-router/example.js +1 -1
  498. package/dist/integrations/agentic-flow/model-router/index.js +16 -16
  499. package/dist/integrations/agentic-flow/model-router/router.js +6 -6
  500. package/dist/integrations/agentic-flow/model-router/signal-collector.js +1 -1
  501. package/dist/integrations/agentic-flow/model-router/tier-recommender.js +1 -1
  502. package/dist/integrations/agentic-flow/reasoning-bank/pattern-evolution.js +11 -6
  503. package/dist/integrations/browser/agent-browser/client.js +4 -4
  504. package/dist/integrations/browser/agent-browser/index.js +4 -4
  505. package/dist/integrations/browser/agent-browser/session-manager.js +1 -1
  506. package/dist/integrations/browser/client-factory.js +3 -3
  507. package/dist/integrations/browser/index.js +8 -8
  508. package/dist/integrations/browser/page-pool.js +1 -1
  509. package/dist/integrations/browser/stealth/index.js +2 -2
  510. package/dist/integrations/browser/stealth/stealth-client.js +3 -3
  511. package/dist/integrations/browser/web-content-fetcher.js +1 -1
  512. package/dist/integrations/coherence/coherence-service.js +2 -2
  513. package/dist/integrations/coherence/engines/category-adapter.js +1 -1
  514. package/dist/integrations/coherence/engines/causal-adapter.js +1 -1
  515. package/dist/integrations/coherence/engines/cohomology-adapter.js +1 -1
  516. package/dist/integrations/coherence/engines/homotopy-adapter.js +1 -1
  517. package/dist/integrations/coherence/engines/index.js +6 -6
  518. package/dist/integrations/coherence/engines/spectral-adapter.js +1 -1
  519. package/dist/integrations/coherence/engines/witness-adapter.js +1 -1
  520. package/dist/integrations/coherence/index.js +7 -7
  521. package/dist/integrations/coherence/threshold-tuner.js +1 -1
  522. package/dist/integrations/coherence/wasm-loader.js +2 -2
  523. package/dist/integrations/rl-suite/algorithms/a2c.js +2 -2
  524. package/dist/integrations/rl-suite/algorithms/actor-critic.js +2 -2
  525. package/dist/integrations/rl-suite/algorithms/ddpg.js +1 -1
  526. package/dist/integrations/rl-suite/algorithms/decision-transformer.js +1 -1
  527. package/dist/integrations/rl-suite/algorithms/dqn.js +2 -2
  528. package/dist/integrations/rl-suite/algorithms/eprop.js +2 -2
  529. package/dist/integrations/rl-suite/algorithms/index.js +10 -10
  530. package/dist/integrations/rl-suite/algorithms/policy-gradient.js +2 -2
  531. package/dist/integrations/rl-suite/algorithms/ppo.js +2 -2
  532. package/dist/integrations/rl-suite/algorithms/q-learning.js +3 -3
  533. package/dist/integrations/rl-suite/algorithms/sarsa.js +2 -2
  534. package/dist/integrations/rl-suite/base-algorithm.js +1 -1
  535. package/dist/integrations/rl-suite/index.js +6 -6
  536. package/dist/integrations/rl-suite/neural/index.js +2 -2
  537. package/dist/integrations/rl-suite/orchestrator.js +11 -11
  538. package/dist/integrations/ruvector/ast-complexity.js +1 -1
  539. package/dist/integrations/ruvector/coverage-router.js +1 -1
  540. package/dist/integrations/ruvector/diff-risk-classifier.js +1 -1
  541. package/dist/integrations/ruvector/graph-boundaries.js +1 -1
  542. package/dist/integrations/ruvector/hypergraph-engine.js +1 -1
  543. package/dist/integrations/ruvector/hypergraph-schema.js +1 -1
  544. package/dist/integrations/ruvector/index.js +52 -52
  545. package/dist/integrations/ruvector/persistent-q-router.js +2 -2
  546. package/dist/integrations/ruvector/q-learning-router.js +1 -1
  547. package/dist/integrations/ruvector/solver-adapter.js +1 -1
  548. package/dist/integrations/ruvector/sona-persistence.d.ts +13 -11
  549. package/dist/integrations/ruvector/sona-persistence.js +1 -1
  550. package/dist/integrations/vibium/client.js +3 -3
  551. package/dist/integrations/vibium/fallback.js +2 -2
  552. package/dist/integrations/vibium/index.js +9 -9
  553. package/dist/kernel/agent-coordinator.js +1 -1
  554. package/dist/kernel/event-bus.js +1 -1
  555. package/dist/kernel/hybrid-backend.js +1 -1
  556. package/dist/kernel/index.js +11 -11
  557. package/dist/kernel/kernel.js +27 -27
  558. package/dist/kernel/memory-factory.js +2 -2
  559. package/dist/kernel/unified-persistence.js +1 -1
  560. package/dist/learning/aqe-learning-engine.d.ts +0 -1
  561. package/dist/learning/aqe-learning-engine.js +2 -36
  562. package/dist/learning/pattern-lifecycle.js +1 -1
  563. package/dist/learning/pattern-routing-guidance.d.ts +16 -0
  564. package/dist/learning/pattern-routing-guidance.js +34 -0
  565. package/dist/learning/qe-reasoning-bank-types.d.ts +2 -0
  566. package/dist/learning/qe-reasoning-bank.js +2 -1
  567. package/dist/learning/real-qe-reasoning-bank.d.ts +2 -0
  568. package/dist/learning/real-qe-reasoning-bank.js +4 -2
  569. package/dist/learning/token-tracker.js +1 -1
  570. package/dist/logging/index.js +1 -1
  571. package/dist/logging/logger-factory.js +1 -1
  572. package/dist/mcp/bundle.js +445 -432
  573. package/dist/mcp/entry.js +1 -1
  574. package/dist/mcp/handlers/agent-handlers.js +2 -2
  575. package/dist/mcp/handlers/core-handlers.js +9 -9
  576. package/dist/mcp/handlers/domain-handler-configs.js +2 -2
  577. package/dist/mcp/handlers/domain-handlers.js +2 -2
  578. package/dist/mcp/handlers/handler-factory.js +3 -3
  579. package/dist/mcp/handlers/index.js +7 -7
  580. package/dist/mcp/handlers/memory-handlers.js +1 -1
  581. package/dist/mcp/handlers/task-handlers.js +3 -3
  582. package/dist/mcp/handlers/team-handlers.js +1 -1
  583. package/dist/mcp/index.js +11 -11
  584. package/dist/mcp/metrics/index.js +1 -1
  585. package/dist/mcp/protocol-server.js +13 -13
  586. package/dist/mcp/security/cve-prevention.js +23 -23
  587. package/dist/mcp/security/index.js +9 -9
  588. package/dist/mcp/security/validators/index.js +6 -6
  589. package/dist/mcp/services/index.js +1 -1
  590. package/dist/mcp/services/task-router.js +1 -1
  591. package/dist/mcp/tool-registry.js +4 -4
  592. package/dist/mcp/tools/base.js +1 -1
  593. package/dist/mcp/tools/code-intelligence/analyze.js +4 -4
  594. package/dist/mcp/tools/code-intelligence/c4.js +6 -6
  595. package/dist/mcp/tools/coverage-analysis/index.js +4 -4
  596. package/dist/mcp/tools/defect-intelligence/predict.js +2 -2
  597. package/dist/mcp/tools/embeddings/embedding.js +2 -2
  598. package/dist/mcp/tools/embeddings/index.js +1 -1
  599. package/dist/mcp/tools/index.js +20 -20
  600. package/dist/mcp/tools/learning-optimization/optimize.d.ts +11 -0
  601. package/dist/mcp/tools/learning-optimization/optimize.js +21 -0
  602. package/dist/mcp/tools/mincut/index.js +2 -2
  603. package/dist/mcp/tools/quality-assessment/evaluate.js +1 -1
  604. package/dist/mcp/tools/quality-assessment/gate.js +5 -2
  605. package/dist/mcp/tools/qx-analysis/analyze.js +5 -5
  606. package/dist/mcp/tools/qx-analysis/heuristics-engine.js +1 -1
  607. package/dist/mcp/tools/qx-analysis/index.js +6 -6
  608. package/dist/mcp/tools/registry.js +25 -25
  609. package/dist/mcp/tools/requirements-validation/quality-criteria.js +1 -1
  610. package/dist/mcp/tools/requirements-validation/validate.js +1 -1
  611. package/dist/mcp/tools/security-compliance/scan.js +1 -1
  612. package/dist/mcp/tools/test-execution/e2e-execute.js +3 -3
  613. package/dist/mcp/tools/test-execution/execute.js +1 -1
  614. package/dist/mcp/tools/test-execution/index.js +2 -2
  615. package/dist/mcp/tools/test-generation/generate.js +3 -3
  616. package/dist/mcp/tools/visual-accessibility/index.js +3 -3
  617. package/dist/plugins/index.js +8 -8
  618. package/dist/plugins/lifecycle.js +5 -5
  619. package/dist/plugins/sources/github.js +1 -1
  620. package/dist/plugins/sources/local.js +1 -1
  621. package/dist/plugins/sources/npm.js +1 -1
  622. package/dist/shared/base-domain-plugin.js +1 -1
  623. package/dist/shared/c4-model/index.js +1 -1
  624. package/dist/shared/embeddings/index.js +4 -4
  625. package/dist/shared/embeddings/nomic-embedder.js +3 -3
  626. package/dist/shared/embeddings/ollama-client.js +1 -1
  627. package/dist/shared/entities/agent.js +1 -1
  628. package/dist/shared/entities/index.js +2 -2
  629. package/dist/shared/events/index.js +1 -1
  630. package/dist/shared/git/index.js +1 -1
  631. package/dist/shared/http/http-client.js +1 -1
  632. package/dist/shared/http/index.js +1 -1
  633. package/dist/shared/index.js +15 -15
  634. package/dist/shared/io/file-reader.js +1 -1
  635. package/dist/shared/io/index.js +1 -1
  636. package/dist/shared/llm/billing-modes.d.ts +5 -0
  637. package/dist/shared/llm/billing-modes.js +42 -3
  638. package/dist/shared/llm/circuit-breaker.js +1 -1
  639. package/dist/shared/llm/index.d.ts +4 -1
  640. package/dist/shared/llm/index.js +15 -11
  641. package/dist/shared/llm/interfaces.d.ts +34 -3
  642. package/dist/shared/llm/interfaces.js +17 -0
  643. package/dist/shared/llm/metrics/cost-metrics.js +2 -2
  644. package/dist/shared/llm/metrics/index.js +2 -2
  645. package/dist/shared/llm/metrics/router-metrics.js +1 -1
  646. package/dist/shared/llm/model-registry.js +1 -1
  647. package/dist/shared/llm/provider-manager.js +24 -17
  648. package/dist/shared/llm/provider-registry.d.ts +135 -0
  649. package/dist/shared/llm/provider-registry.js +227 -0
  650. package/dist/shared/llm/providers/azure-openai.js +2 -2
  651. package/dist/shared/llm/providers/bedrock.js +2 -2
  652. package/dist/shared/llm/providers/claude-code.js +1 -1
  653. package/dist/shared/llm/providers/claude.js +4 -4
  654. package/dist/shared/llm/providers/codex.js +1 -1
  655. package/dist/shared/llm/providers/cognitum.js +1 -1
  656. package/dist/shared/llm/providers/external-cli.d.ts +129 -0
  657. package/dist/shared/llm/providers/external-cli.js +385 -0
  658. package/dist/shared/llm/providers/gemini.js +1 -1
  659. package/dist/shared/llm/providers/index.js +10 -10
  660. package/dist/shared/llm/providers/ollama.js +2 -2
  661. package/dist/shared/llm/providers/openai.js +2 -2
  662. package/dist/shared/llm/providers/openrouter.js +1 -1
  663. package/dist/shared/llm/router/config-store.d.ts +14 -0
  664. package/dist/shared/llm/router/config-store.js +102 -14
  665. package/dist/shared/llm/router/external-provider-config.d.ts +47 -0
  666. package/dist/shared/llm/router/external-provider-config.js +105 -0
  667. package/dist/shared/llm/router/hybrid-router.js +7 -7
  668. package/dist/shared/llm/router/index.js +4 -4
  669. package/dist/shared/llm/router/routing-rules.js +1 -1
  670. package/dist/shared/llm/router/types.d.ts +50 -4
  671. package/dist/shared/llm/router/types.js +10 -0
  672. package/dist/shared/llm/translation/index.js +3 -3
  673. package/dist/shared/llm/translation/message-formatter.js +7 -1
  674. package/dist/shared/llm/translation/prompt-translator.js +2 -2
  675. package/dist/shared/metrics/code-metrics.js +2 -2
  676. package/dist/shared/metrics/index.js +2 -2
  677. package/dist/shared/parsers/index.js +3 -3
  678. package/dist/shared/security/compliance-patterns.js +1 -1
  679. package/dist/shared/security/index.js +8 -8
  680. package/dist/shared/security/osv-client.js +1 -1
  681. package/dist/test-scheduling/index.js +9 -9
  682. package/dist/test-scheduling/phase-scheduler.js +1 -1
  683. package/dist/test-scheduling/pipeline.js +9 -9
  684. package/dist/validation/provider-llm-executor.js +5 -5
  685. package/dist/workers/daemon.js +3 -3
  686. package/dist/workers/index.js +5 -5
  687. package/dist/workers/quality-daemon/index.js +15 -15
  688. package/dist/workers/workers/compliance-checker.js +2 -2
  689. package/dist/workers/workers/coverage-tracker.js +1 -1
  690. package/dist/workers/workers/defect-predictor.js +1 -1
  691. package/dist/workers/workers/flaky-detector.js +1 -1
  692. package/dist/workers/workers/learning-consolidation.js +4 -4
  693. package/dist/workers/workers/performance-baseline.js +1 -1
  694. package/dist/workers/workers/quality-gate.js +1 -1
  695. package/dist/workers/workers/regression-monitor.js +1 -1
  696. package/dist/workers/workers/security-scan.js +1 -1
  697. package/dist/workers/workers/test-health.js +1 -1
  698. package/dist/workflows/browser/index.js +1 -1
  699. package/package.json +8 -3
  700. package/dist/cli/chunks/adapter-6CNMDJVJ.js +0 -2
  701. package/dist/cli/chunks/aqe-learning-engine-JGHHNSFX.js +0 -2
  702. package/dist/cli/chunks/base-ND3KAA2L.js +0 -2
  703. package/dist/cli/chunks/browser-workflow-EBSNGTSH.js +0 -2
  704. package/dist/cli/chunks/chunk-3I5ZTLFY.js +0 -2
  705. package/dist/cli/chunks/chunk-4EWKERKV.js +0 -3
  706. package/dist/cli/chunks/chunk-4NXABNLF.js +0 -2
  707. package/dist/cli/chunks/chunk-A6V5NZCV.js +0 -21
  708. package/dist/cli/chunks/chunk-QR6NVCRT.js +0 -12
  709. package/dist/cli/chunks/chunk-TL5FMEKW.js +0 -2
  710. package/dist/cli/chunks/chunk-XPUPST5T.js +0 -2
  711. package/dist/cli/chunks/client-NEGGUFEM.js +0 -2
  712. package/dist/cli/chunks/core-handlers-Q2XPFYQ5.js +0 -2
  713. package/dist/cli/chunks/cross-domain-router-WNZMUQ3G.js +0 -2
  714. package/dist/cli/chunks/dream-OL5XLAYS.js +0 -2
  715. package/dist/cli/chunks/heartbeat-scheduler-XUAW3I3Q.js +0 -2
  716. package/dist/cli/chunks/hnsw-adapter-EDK2YUZJ.js +0 -2
  717. package/dist/cli/chunks/hnsw-index-RDMT66NM.js +0 -2
  718. package/dist/cli/chunks/hybrid-router-BALMPXND.js +0 -2
  719. package/dist/cli/chunks/impact-analyzer-P6XLP3QX.js +0 -2
  720. package/dist/cli/chunks/init-wizard-HMU5OPKQ.js +0 -2
  721. package/dist/cli/chunks/kernel-HMSENQ6R.js +0 -2
  722. package/dist/cli/chunks/knowledge-graph-G7W72UC5.js +0 -2
  723. package/dist/cli/chunks/llm-router-XCBGZRKA.js +0 -36
  724. package/dist/cli/chunks/llm-router-service-VCM7LAGO.js +0 -2
  725. package/dist/cli/chunks/load-test-H5FATYS2.js +0 -2
  726. package/dist/cli/chunks/memory-backend-OPHD5UCR.js +0 -2
  727. package/dist/cli/chunks/memory-handlers-EA5UFT4G.js +0 -2
  728. package/dist/cli/chunks/pattern-null-store-XJOXEDQO.js +0 -2
  729. package/dist/cli/chunks/protocol-executor-XVN7GTLL.js +0 -2
  730. package/dist/cli/chunks/provider-manager-NQICCJZZ.js +0 -2
  731. package/dist/cli/chunks/qe-reasoning-bank-SVCH233Z.js +0 -2
  732. package/dist/cli/chunks/queen-coordinator-Z3PBE4EH.js +0 -2
  733. package/dist/cli/chunks/router-HMWZW2SF.js +0 -2
  734. package/dist/cli/chunks/routing-feedback-ZZYHE2CL.js +0 -2
  735. package/dist/cli/chunks/rvf-native-adapter-ZPT4RLBE.js +0 -2
  736. package/dist/cli/chunks/safe-db-VMYUKPV6.js +0 -2
  737. package/dist/cli/chunks/schedule-DOQ4X4MH.js +0 -2
  738. package/dist/cli/chunks/scheduler-FE2DH224.js +0 -2
  739. package/dist/cli/chunks/sqlite-persistence-TKCACSFQ.js +0 -2
  740. package/dist/cli/chunks/status-handler-UHY36LOR.js +0 -47
  741. package/dist/cli/chunks/unified-memory-2PA3CIQT.js +0 -2
  742. package/dist/cli/chunks/unified-memory-hnsw-W43H4ZKY.js +0 -2
  743. package/dist/cli/chunks/unified-persistence-SOW7AAZL.js +0 -2
  744. package/dist/cli/chunks/visual-security-R6BVIOYU.js +0 -2
  745. package/dist/cli/chunks/witness-chain-GSJW7VDF.js +0 -2
  746. package/dist/cli/chunks/workflow-orchestrator-TXEMI5DD.js +0 -2
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
2
  var p={"claude-sonnet-4-5":{canonical:"Claude Sonnet 4.5",family:"claude",tier:"standard",providers:{anthropic:"claude-sonnet-4-5-20250929",openrouter:"anthropic/claude-sonnet-4.5",bedrock:"anthropic.claude-sonnet-4-5-v2:0"}},"claude-opus-4":{canonical:"Claude Opus 4",family:"claude",tier:"flagship",providers:{anthropic:"claude-opus-4-20250514",openrouter:"anthropic/claude-opus-4",bedrock:"anthropic.claude-opus-4-v1:0"}},"claude-opus-4-5":{canonical:"Claude Opus 4.5",family:"claude",tier:"flagship",providers:{anthropic:"claude-opus-4-5-20251101",openrouter:"anthropic/claude-opus-4.5",bedrock:"anthropic.claude-opus-4-5-v1:0"}},"claude-haiku-3-5":{canonical:"Claude Haiku 3.5",family:"claude",tier:"economy",providers:{anthropic:"claude-3-5-haiku-20241022",openrouter:"anthropic/claude-3.5-haiku",bedrock:"anthropic.claude-3-5-haiku-v1:0"}},"claude-sonnet-4":{canonical:"Claude Sonnet 4",family:"claude",tier:"standard",providers:{anthropic:"claude-sonnet-4-20250514",openrouter:"anthropic/claude-sonnet-4",bedrock:"anthropic.claude-sonnet-4-v1:0"}},"claude-opus-4-7":{canonical:"Claude Opus 4.7",family:"claude",tier:"flagship",providers:{anthropic:"claude-opus-4-7",openrouter:"anthropic/claude-opus-4.7",bedrock:"anthropic.claude-opus-4-7-v1:0"}},"claude-sonnet-4-6":{canonical:"Claude Sonnet 4.6",family:"claude",tier:"standard",providers:{anthropic:"claude-sonnet-4-6",openrouter:"anthropic/claude-sonnet-4.6",bedrock:"anthropic.claude-sonnet-4-6-v1:0"}},"claude-haiku-4-5":{canonical:"Claude Haiku 4.5",family:"claude",tier:"economy",providers:{anthropic:"claude-haiku-4-5-20251001",openrouter:"anthropic/claude-haiku-4.5",bedrock:"anthropic.claude-haiku-4-5-v1:0"}},"gpt-4o":{canonical:"GPT-4o",family:"gpt",tier:"standard",providers:{openai:"gpt-4o",azure:"gpt-4o",openrouter:"openai/gpt-4o"}},"gpt-4o-mini":{canonical:"GPT-4o Mini",family:"gpt",tier:"economy",providers:{openai:"gpt-4o-mini",azure:"gpt-4o-mini",openrouter:"openai/gpt-4o-mini"}},"gpt-4-turbo":{canonical:"GPT-4 Turbo",family:"gpt",tier:"premium",providers:{openai:"gpt-4-turbo",azure:"gpt-4-turbo",openrouter:"openai/gpt-4-turbo"}},"gpt-4":{canonical:"GPT-4",family:"gpt",tier:"premium",providers:{openai:"gpt-4",azure:"gpt-4",openrouter:"openai/gpt-4"}},o1:{canonical:"OpenAI o1",family:"gpt",tier:"flagship",providers:{openai:"o1",azure:"o1",openrouter:"openai/o1"}},"o1-mini":{canonical:"OpenAI o1 Mini",family:"gpt",tier:"standard",providers:{openai:"o1-mini",azure:"o1-mini",openrouter:"openai/o1-mini"}},"gemini-pro":{canonical:"Gemini Pro",family:"gemini",tier:"standard",providers:{gemini:"gemini-pro",openrouter:"google/gemini-pro"}},"gemini-pro-1.5":{canonical:"Gemini Pro 1.5",family:"gemini",tier:"standard",providers:{gemini:"gemini-1.5-pro",openrouter:"google/gemini-pro-1.5"}},"gemini-flash-1.5":{canonical:"Gemini Flash 1.5",family:"gemini",tier:"economy",providers:{gemini:"gemini-1.5-flash",openrouter:"google/gemini-flash-1.5"}},"gemini-ultra":{canonical:"Gemini Ultra",family:"gemini",tier:"flagship",providers:{gemini:"gemini-ultra",openrouter:"google/gemini-ultra"}},llama3:{canonical:"Llama 3",family:"llama",tier:"economy",providers:{ollama:"llama3",openrouter:"meta-llama/llama-3-8b-instruct"}},"llama3.1":{canonical:"Llama 3.1",family:"llama",tier:"economy",providers:{ollama:"llama3.1",openrouter:"meta-llama/llama-3.1-8b-instruct"}},codellama:{canonical:"CodeLlama",family:"llama",tier:"economy",providers:{ollama:"codellama",openrouter:"meta-llama/codellama-34b-instruct"}},mistral:{canonical:"Mistral",family:"mistral",tier:"economy",providers:{ollama:"mistral",openrouter:"mistralai/mistral-7b-instruct"}},mixtral:{canonical:"Mixtral",family:"mistral",tier:"standard",providers:{ollama:"mixtral",openrouter:"mistralai/mixtral-8x7b-instruct"}},phi3:{canonical:"Phi-3",family:"phi",tier:"economy",providers:{ollama:"phi3",azure:"phi-3-mini-128k-instruct"}},qwen2:{canonical:"Qwen 2",family:"qwen",tier:"economy",providers:{ollama:"qwen2",openrouter:"qwen/qwen-2-7b-instruct"}},"qwen3:8b":{canonical:"Qwen3 8B",family:"qwen",tier:"economy",providers:{ollama:"qwen3:8b"}},"qwen3:30b-a3b":{canonical:"Qwen3 30B-A3B",family:"qwen",tier:"economy",providers:{ollama:"qwen3:30b-a3b"}},"qwen3-coder:30b":{canonical:"Qwen3 Coder 30B-A3B",family:"qwen",tier:"economy",providers:{ollama:"qwen3-coder:30b"}}};function a(){let t=new Map;for(let[e,s]of Object.entries(p)){t.set(e,e),t.set(e.toLowerCase(),e);for(let[r,o]of Object.entries(s.providers))o&&(t.set(o,e),t.set(o.toLowerCase(),e),t.set(`${r}/${o}`,e),t.set(`${r}/${o}`.toLowerCase(),e))}return t}var n=a();function c(t,e){let s=i(t),r=p[s];if(!r)throw new Error(`Unknown model: ${t}`);let o=r.providers[e];if(!o)throw new Error(`Model '${s}' (${r.canonical}) is not available on provider '${e}'`);return o}function i(t){let e=n.get(t);if(e||(e=n.get(t.toLowerCase()),e))return e;let s=[/^anthropic\//i,/^openai\//i,/^google\//i,/^meta-llama\//i,/^mistralai\//i,/^qwen\//i];for(let r of s){let o=t.replace(r,"");if(e=n.get(o),e||(e=n.get(o.toLowerCase()),e))return e}throw new Error(`Unknown model ID: ${t}`)}function u(t){try{let e=i(t);return p[e]}catch{return}}var l={"claude-sonnet-4-5":{name:"Claude Sonnet 4.5",family:"claude",tier:"standard",description:"Most intelligent model, best for complex reasoning and coding tasks",releaseDate:"2025-09-29",recommended:!0,capabilities:{contextLength:2e5,maxOutputTokens:16384,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:3,outputCostPerMillion:15}},"claude-opus-4":{name:"Claude Opus 4",family:"claude",tier:"flagship",description:"Flagship model with exceptional reasoning and reliability",releaseDate:"2025-05-14",recommended:!0,capabilities:{contextLength:2e5,maxOutputTokens:16384,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:15,outputCostPerMillion:75}},"claude-opus-4-5":{name:"Claude Opus 4.5",family:"claude",tier:"flagship",description:"Latest flagship model with enhanced reasoning capabilities",releaseDate:"2025-11-01",recommended:!0,capabilities:{contextLength:2e5,maxOutputTokens:32768,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:15,outputCostPerMillion:75}},"claude-haiku-3-5":{name:"Claude Haiku 3.5",family:"claude",tier:"economy",description:"Fast and cost-effective for routine tasks",releaseDate:"2024-10-22",deprecationDate:"2026-02-19",recommended:!1,capabilities:{contextLength:2e5,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:1,outputCostPerMillion:5}},"claude-sonnet-4":{name:"Claude Sonnet 4",family:"claude",tier:"standard",description:"Balanced model for general-purpose tasks",releaseDate:"2025-05-14",deprecationDate:"2026-06-15",recommended:!1,capabilities:{contextLength:2e5,maxOutputTokens:16384,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:3,outputCostPerMillion:15}},"claude-opus-4-7":{name:"Claude Opus 4.7",family:"claude",tier:"flagship",description:"Flagship agentic-coding model (2026-04-16). 1M context at standard pricing, xhigh effort level, adaptive thinking only. New tokenizer emits 1.0\u20131.35\xD7 more tokens.",releaseDate:"2026-04-16",recommended:!0,capabilities:{contextLength:1e6,maxOutputTokens:128e3,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1,supportsAdaptiveThinking:!0,supportsEffortXHigh:!0,tokenizerVersion:"opus-4-7"},cost:{inputCostPerMillion:5,outputCostPerMillion:25}},"claude-sonnet-4-6":{name:"Claude Sonnet 4.6",family:"claude",tier:"standard",description:"Steady-state agentic-coding workhorse (2026). Standard 200k context, same pricing as Sonnet 4. ADR-093 Tier 3 default for the AQE fleet.",releaseDate:"2026-02-01",recommended:!0,capabilities:{contextLength:2e5,maxOutputTokens:64e3,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1,supportsAdaptiveThinking:!1,supportsEffortXHigh:!1,tokenizerVersion:"legacy"},cost:{inputCostPerMillion:3,outputCostPerMillion:15}},"claude-haiku-4-5":{name:"Claude Haiku 4.5",family:"claude",tier:"economy",description:"Fast economy model replacing Haiku 3.5 (retired 2026-02-19). Extended thinking support.",releaseDate:"2025-10-01",recommended:!0,capabilities:{contextLength:2e5,maxOutputTokens:16384,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!0,supportsEmbeddings:!1,supportsCodeExecution:!1,supportsAdaptiveThinking:!1,supportsEffortXHigh:!1,tokenizerVersion:"legacy"},cost:{inputCostPerMillion:1,outputCostPerMillion:5}},"gpt-4o":{name:"GPT-4o",family:"gpt",tier:"standard",description:"OpenAI flagship multimodal model, fast and capable",releaseDate:"2024-05-13",recommended:!0,capabilities:{contextLength:128e3,maxOutputTokens:16384,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:5,outputCostPerMillion:15,imageCostPerUnit:.00765}},"gpt-4o-mini":{name:"GPT-4o Mini",family:"gpt",tier:"economy",description:"Small, fast, and affordable for lightweight tasks",releaseDate:"2024-07-18",recommended:!0,capabilities:{contextLength:128e3,maxOutputTokens:16384,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:.15,outputCostPerMillion:.6,imageCostPerUnit:.001275}},"gpt-4-turbo":{name:"GPT-4 Turbo",family:"gpt",tier:"premium",description:"Previous flagship with vision and function calling",releaseDate:"2024-04-09",recommended:!1,capabilities:{contextLength:128e3,maxOutputTokens:4096,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:10,outputCostPerMillion:30}},"gpt-4":{name:"GPT-4",family:"gpt",tier:"premium",description:"Original GPT-4 model, now superseded by GPT-4o",releaseDate:"2023-03-14",deprecationDate:"2025-06-01",recommended:!1,capabilities:{contextLength:8192,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:30,outputCostPerMillion:60}},o1:{name:"OpenAI o1",family:"gpt",tier:"flagship",description:"Reasoning-focused model with extended thinking",releaseDate:"2024-12-05",recommended:!0,capabilities:{contextLength:2e5,maxOutputTokens:1e5,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:15,outputCostPerMillion:60}},"o1-mini":{name:"OpenAI o1 Mini",family:"gpt",tier:"standard",description:"Faster reasoning model optimized for STEM tasks",releaseDate:"2024-09-12",recommended:!0,capabilities:{contextLength:128e3,maxOutputTokens:65536,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:3,outputCostPerMillion:12}},"gemini-pro":{name:"Gemini Pro",family:"gemini",tier:"standard",description:"Google balanced model for diverse tasks",releaseDate:"2023-12-06",recommended:!1,capabilities:{contextLength:32e3,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:.5,outputCostPerMillion:1.5}},"gemini-pro-1.5":{name:"Gemini Pro 1.5",family:"gemini",tier:"standard",description:"Google mid-size model with 1M context window",releaseDate:"2024-02-15",recommended:!0,capabilities:{contextLength:1e6,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!0},cost:{inputCostPerMillion:3.5,outputCostPerMillion:10.5}},"gemini-flash-1.5":{name:"Gemini Flash 1.5",family:"gemini",tier:"economy",description:"Fast and efficient with 1M context window",releaseDate:"2024-05-14",recommended:!0,capabilities:{contextLength:1e6,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!0},cost:{inputCostPerMillion:.075,outputCostPerMillion:.3}},"gemini-ultra":{name:"Gemini Ultra",family:"gemini",tier:"flagship",description:"Google most capable model",releaseDate:"2024-02-08",recommended:!1,capabilities:{contextLength:32e3,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!0,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:12,outputCostPerMillion:36}},llama3:{name:"Llama 3",family:"llama",tier:"economy",description:"Meta open-source 8B model, runs locally",releaseDate:"2024-04-18",recommended:!0,capabilities:{contextLength:8192,maxOutputTokens:4096,supportsTools:!1,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!1,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},"llama3.1":{name:"Llama 3.1",family:"llama",tier:"economy",description:"Meta latest open-source model with tool support",releaseDate:"2024-07-23",recommended:!0,capabilities:{contextLength:128e3,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},codellama:{name:"CodeLlama",family:"llama",tier:"economy",description:"Meta code-specialized model",releaseDate:"2023-08-24",recommended:!0,capabilities:{contextLength:1e5,maxOutputTokens:4096,supportsTools:!1,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!1,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},mistral:{name:"Mistral",family:"mistral",tier:"economy",description:"Mistral AI 7B instruction-tuned model",releaseDate:"2023-09-27",recommended:!0,capabilities:{contextLength:32e3,maxOutputTokens:4096,supportsTools:!1,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!1,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},mixtral:{name:"Mixtral",family:"mistral",tier:"standard",description:"Mistral AI mixture of experts model",releaseDate:"2023-12-11",recommended:!0,capabilities:{contextLength:32e3,maxOutputTokens:4096,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},phi3:{name:"Phi-3",family:"phi",tier:"economy",description:"Microsoft small language model, efficient",releaseDate:"2024-04-23",recommended:!0,capabilities:{contextLength:128e3,maxOutputTokens:4096,supportsTools:!1,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!1,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},qwen2:{name:"Qwen 2",family:"qwen",tier:"economy",description:"Alibaba multilingual model",releaseDate:"2024-06-07",recommended:!0,capabilities:{contextLength:32e3,maxOutputTokens:4096,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},"qwen3:8b":{name:"Qwen3 8B",family:"qwen",tier:"economy",description:"Alibaba Qwen3 8B \u2014 tools + thinking; below the QE test-gen floor (use for judge/triage)",releaseDate:"2025-04-29",recommended:!1,capabilities:{contextLength:40960,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},"qwen3:30b-a3b":{name:"Qwen3 30B-A3B",family:"qwen",tier:"economy",description:"Alibaba Qwen3 30B MoE (3B active) \u2014 fast general local model; clears the QE test-gen floor",releaseDate:"2025-04-29",recommended:!0,capabilities:{contextLength:262144,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!0,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}},"qwen3-coder:30b":{name:"Qwen3 Coder 30B-A3B",family:"qwen",tier:"economy",description:"Alibaba Qwen3-Coder 30B MoE (3B active) \u2014 code-tuned, non-thinking; preferred local QE test-gen model",releaseDate:"2025-07-31",recommended:!0,capabilities:{contextLength:262144,maxOutputTokens:8192,supportsTools:!0,supportsStreaming:!0,supportsVision:!1,supportsJsonMode:!0,supportsSystemPrompt:!0,supportsExtendedThinking:!1,supportsMCP:!1,supportsEmbeddings:!1,supportsCodeExecution:!1},cost:{inputCostPerMillion:0,outputCostPerMillion:0}}};function d(t){let e=i(t),s=l[e];if(!s)throw new Error(`Model not found in registry: ${t}`);return{...s.capabilities}}function M(t){try{return d(t).supportsTools}catch{return!0}}var h="claude-opus-4-7";export{c as a,i as b,u as c,d,M as e,h as f};
@@ -0,0 +1,2 @@
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{a as e,b as g,e as r}from"./chunk-IOJ34SXJ.js";import{c as o}from"./chunk-ZMYV4R32.js";var L=o(()=>{"use strict";e();g();r()});export{L as a};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{S as f,b as p}from"./chunk-VUCCPPQ6.js";f();var y={predictionWindowSize:10,compressionThreshold:.3,maxConcurrentStreams:8,oscillationFrequencyMs:100};function d(s){try{return JSON.stringify(s).length}catch{return 0}}function w(s,t){let e={},n=!1;for(let r of Object.keys(t))JSON.stringify(s[r])!==JSON.stringify(t[r])&&(e[r]=t[r],n=!0);for(let r of Object.keys(s))r in t||(e[r]=void 0,n=!0);return n?e:null}function v(s,t){let e={...s};for(let[n,r]of Object.entries(t))r===void 0?delete e[n]:e[n]=r;return e}var l=class{windowSize;windows=new Map;constructor(t){this.windowSize=Math.max(1,t)}predict(t){let e=this.windows.get(t);if(!e||e.length===0)return null;let n=e[e.length-1];return typeof n!="object"||n===null||Array.isArray(n)?null:{...n}}record(t,e){let n=this.windows.get(t);n||(n=[],this.windows.set(t,n)),n.push(e),n.length>this.windowSize&&n.shift()}removeStream(t){this.windows.delete(t)}},h=class{maxStreams;cycleMs;streamIds=[];currentIndex=0;constructor(t,e){this.maxStreams=Math.max(1,t),this.cycleMs=Math.max(1,e)}addStream(t){return this.streamIds.includes(t)||this.streamIds.length>=this.maxStreams?!1:(this.streamIds.push(t),!0)}removeStream(t){let e=this.streamIds.indexOf(t);return e===-1?!1:(this.streamIds.splice(e,1),this.currentIndex>=this.streamIds.length&&(this.currentIndex=0),!0)}nextStream(){if(this.streamIds.length===0)return null;let t=this.streamIds[this.currentIndex];return this.currentIndex=(this.currentIndex+1)%this.streamIds.length,t}getActiveStreams(){return[...this.streamIds]}get activeCount(){return this.streamIds.length}},g=class{config;predictor;router;lastPayloads=new Map;totalMessages=0;compressedMessages=0;totalOriginalBytes=0;totalCompressedBytes=0;constructor(t){this.config={...y,...t},this.predictor=new l(this.config.predictionWindowSize),this.router=new h(this.config.maxConcurrentStreams,this.config.oscillationFrequencyMs)}send(t,e,n,r){this.totalMessages++;let i=d(r);this.totalOriginalBytes+=i;let c=!1,o=r,a=i;if(typeof r=="object"&&r!==null&&!Array.isArray(r)){let m=this.predictor.predict(t);if(m){let u=w(m,r);u?1-d(u)/Math.max(i,1)>=this.config.compressionThreshold&&(o={__delta:!0,__changes:u},a=d(o),c=!0,this.compressedMessages++):(o={__delta:!0,__changes:{}},a=d(o),c=!0,this.compressedMessages++)}}return this.totalCompressedBytes+=a,this.predictor.record(t,r),this.lastPayloads.set(t,r),{streamId:t,senderId:e,receiverId:n,payload:o,compressed:c,originalSize:i,compressedSize:a,timestamp:Date.now()}}receive(t){if(!t.compressed||typeof t.payload!="object"||t.payload===null)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let e=t.payload;if(!e.__delta)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let n=this.predictor.predict(t.streamId),r=e.__changes??{};if(!n)return r;let i=v(n,r);return this.predictor.record(t.streamId,i),this.lastPayloads.set(t.streamId,i),i}getStats(){let t=this.totalOriginalBytes-this.totalCompressedBytes;return{totalMessages:this.totalMessages,compressedMessages:this.compressedMessages,bandwidthSavedBytes:Math.max(0,t),bandwidthReductionPercent:this.totalOriginalBytes>0?Math.max(0,t)/this.totalOriginalBytes*100:0,activeStreams:this.router.activeCount}}addStream(t){this.router.addStream(t)}removeStream(t){this.router.removeStream(t),this.predictor.removeStream(t),this.lastPayloads.delete(t)}};function M(s){return S()?new g(s):null}function S(){return p().useCognitiveRouting}export{M as a,S as b};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{S as f,b as p}from"./chunk-AN5CGTTJ.js";f();var y={predictionWindowSize:10,compressionThreshold:.3,maxConcurrentStreams:8,oscillationFrequencyMs:100};function d(s){try{return JSON.stringify(s).length}catch{return 0}}function w(s,t){let e={},n=!1;for(let r of Object.keys(t))JSON.stringify(s[r])!==JSON.stringify(t[r])&&(e[r]=t[r],n=!0);for(let r of Object.keys(s))r in t||(e[r]=void 0,n=!0);return n?e:null}function v(s,t){let e={...s};for(let[n,r]of Object.entries(t))r===void 0?delete e[n]:e[n]=r;return e}var l=class{windowSize;windows=new Map;constructor(t){this.windowSize=Math.max(1,t)}predict(t){let e=this.windows.get(t);if(!e||e.length===0)return null;let n=e[e.length-1];return typeof n!="object"||n===null||Array.isArray(n)?null:{...n}}record(t,e){let n=this.windows.get(t);n||(n=[],this.windows.set(t,n)),n.push(e),n.length>this.windowSize&&n.shift()}removeStream(t){this.windows.delete(t)}},h=class{maxStreams;cycleMs;streamIds=[];currentIndex=0;constructor(t,e){this.maxStreams=Math.max(1,t),this.cycleMs=Math.max(1,e)}addStream(t){return this.streamIds.includes(t)||this.streamIds.length>=this.maxStreams?!1:(this.streamIds.push(t),!0)}removeStream(t){let e=this.streamIds.indexOf(t);return e===-1?!1:(this.streamIds.splice(e,1),this.currentIndex>=this.streamIds.length&&(this.currentIndex=0),!0)}nextStream(){if(this.streamIds.length===0)return null;let t=this.streamIds[this.currentIndex];return this.currentIndex=(this.currentIndex+1)%this.streamIds.length,t}getActiveStreams(){return[...this.streamIds]}get activeCount(){return this.streamIds.length}},g=class{config;predictor;router;lastPayloads=new Map;totalMessages=0;compressedMessages=0;totalOriginalBytes=0;totalCompressedBytes=0;constructor(t){this.config={...y,...t},this.predictor=new l(this.config.predictionWindowSize),this.router=new h(this.config.maxConcurrentStreams,this.config.oscillationFrequencyMs)}send(t,e,n,r){this.totalMessages++;let i=d(r);this.totalOriginalBytes+=i;let c=!1,o=r,a=i;if(typeof r=="object"&&r!==null&&!Array.isArray(r)){let m=this.predictor.predict(t);if(m){let u=w(m,r);u?1-d(u)/Math.max(i,1)>=this.config.compressionThreshold&&(o={__delta:!0,__changes:u},a=d(o),c=!0,this.compressedMessages++):(o={__delta:!0,__changes:{}},a=d(o),c=!0,this.compressedMessages++)}}return this.totalCompressedBytes+=a,this.predictor.record(t,r),this.lastPayloads.set(t,r),{streamId:t,senderId:e,receiverId:n,payload:o,compressed:c,originalSize:i,compressedSize:a,timestamp:Date.now()}}receive(t){if(!t.compressed||typeof t.payload!="object"||t.payload===null)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let e=t.payload;if(!e.__delta)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let n=this.predictor.predict(t.streamId),r=e.__changes??{};if(!n)return r;let i=v(n,r);return this.predictor.record(t.streamId,i),this.lastPayloads.set(t.streamId,i),i}getStats(){let t=this.totalOriginalBytes-this.totalCompressedBytes;return{totalMessages:this.totalMessages,compressedMessages:this.compressedMessages,bandwidthSavedBytes:Math.max(0,t),bandwidthReductionPercent:this.totalOriginalBytes>0?Math.max(0,t)/this.totalOriginalBytes*100:0,activeStreams:this.router.activeCount}}addStream(t){this.router.addStream(t)}removeStream(t){this.router.removeStream(t),this.predictor.removeStream(t),this.lastPayloads.delete(t)}};function M(s){return S()?new g(s):null}function S(){return p().useCognitiveRouting}export{M as a,S as b};
@@ -1,5 +1,5 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{a as b}from"./chunk-6SM74KJI.js";import{a as te,b as ne}from"./chunk-C5HYQTD7.js";import{b as ee}from"./chunk-EKZNA6HW.js";import{b as E,d as ke}from"./chunk-GQ6H37RN.js";import{a as k,c as T}from"./chunk-OLETDPH2.js";var be={M:16,efConstruction:200,efSearch:100},P={enabled:!0,pretrainedPatterns:!0,hnswConfig:be,promotionThreshold:3,qualityThreshold:.7,embeddingModel:"auto"},_={mode:"hybrid",confidenceThreshold:.7,feedbackEnabled:!0,cacheEnabled:!0,cacheTTLMs:300*1e3},F={enabled:["pattern-consolidator","coverage-gap-scanner","flaky-test-detector","routing-accuracy-monitor"],intervals:{"pattern-consolidator":1800*1e3,"coverage-gap-scanner":3600*1e3,"flaky-test-detector":7200*1e3,"routing-accuracy-monitor":900*1e3},maxConcurrent:4,daemonAutoStart:!0},$={claudeCode:!0,preCommit:!1,ciIntegration:!1},N={install:!0,installV2:!0,installV3:!0,overwrite:!1},O={enabled:!0,parameters:["hnsw.efSearch","routing.confidenceThreshold","pattern.promotionThreshold","testGen.complexityLimit"],tuningIntervalMs:10080*60*1e3,evaluationPeriodMs:5e3};var L=["test-generation","test-execution","coverage-analysis","quality-assessment","defect-intelligence","requirements-validation","code-intelligence","security-compliance","contract-testing","visual-accessibility","chaos-resilience","learning-optimization","enterprise-integration"];function M(){return"3.13.10"}function Ve(r,e){return{version:M(),project:{name:r,root:e,type:"single"},learning:P,routing:_,workers:F,hooks:$,skills:N,autoTuning:O,domains:{enabled:L,disabled:[]},agents:{maxConcurrent:15,defaultTimeout:6e4}}}ke();import{readFileSync as C,existsSync as p,statSync as xe,readdirSync as Se}from"fs";import{join as g,basename as re,extname as ie,relative as V}from"path";var Ae=[{name:"jest",detect:r=>{let e=["jest.config.js","jest.config.ts","jest.config.mjs","jest.config.cjs"];for(let n of e)if(p(g(r,n)))return{name:"jest",version:A(r,"jest"),configFile:n,confidence:1};let t=S(r);return t?.jest?{name:"jest",version:A(r,"jest"),configFile:"package.json",confidence:.9}:t?.devDependencies?.jest||t?.dependencies?.jest?{name:"jest",version:t.devDependencies?.jest||t.dependencies?.jest,confidence:.7}:null}},{name:"vitest",detect:r=>{let e=["vitest.config.ts","vitest.config.js","vitest.config.mts","vite.config.ts"];for(let n of e)if(p(g(r,n)))return{name:"vitest",version:A(r,"vitest"),configFile:n,confidence:1};let t=S(r);return t?.devDependencies?.vitest||t?.dependencies?.vitest?{name:"vitest",version:t.devDependencies?.vitest,confidence:.8}:null}},{name:"mocha",detect:r=>{let e=[".mocharc.js",".mocharc.json",".mocharc.yaml",".mocharc.yml"];for(let n of e)if(p(g(r,n)))return{name:"mocha",version:A(r,"mocha"),configFile:n,confidence:1};let t=S(r);return t?.devDependencies?.mocha?{name:"mocha",version:t.devDependencies?.mocha,confidence:.8}:null}},{name:"pytest",detect:r=>{let e=["pytest.ini","pyproject.toml","setup.cfg"];for(let n of e){let i=g(r,n);if(p(i))try{let s=C(i,"utf-8");if(s.includes("[pytest]")||s.includes("[tool.pytest]"))return{name:"pytest",configFile:n,confidence:1}}catch(s){console.debug("[ProjectAnalyzer] Config read failed:",s instanceof Error?s.message:s)}}let t=g(r,"requirements.txt");if(p(t))try{if(C(t,"utf-8").includes("pytest"))return{name:"pytest",configFile:"requirements.txt",confidence:.8}}catch(n){console.debug("[ProjectAnalyzer] requirements.txt read failed:",n instanceof Error?n.message:n)}return null}},{name:"playwright",detect:r=>{let e=["playwright.config.ts","playwright.config.js"];for(let n of e)if(p(g(r,n)))return{name:"playwright",version:A(r,"@playwright/test"),configFile:n,confidence:1};let t=S(r);return t?.devDependencies?.["@playwright/test"]?{name:"playwright",version:t.devDependencies["@playwright/test"],confidence:.8}:null}},{name:"cypress",detect:r=>{let e=["cypress.config.ts","cypress.config.js","cypress.json"];for(let t of e)if(p(g(r,t)))return{name:"cypress",version:A(r,"cypress"),configFile:t,confidence:1};return p(g(r,"cypress"))?{name:"cypress",configFile:"cypress/",confidence:.9}:null}}],we=[{name:"typescript",extensions:[".ts",".tsx",".mts",".cts"]},{name:"javascript",extensions:[".js",".jsx",".mjs",".cjs"]},{name:"python",extensions:[".py",".pyw"]},{name:"java",extensions:[".java"]},{name:"go",extensions:[".go"]},{name:"rust",extensions:[".rs"]},{name:"csharp",extensions:[".cs"]},{name:"ruby",extensions:[".rb"]},{name:"php",extensions:[".php"]},{name:"kotlin",extensions:[".kt",".kts"]},{name:"swift",extensions:[".swift"]}];function S(r){let e=g(r,"package.json");if(!p(e))return null;try{return E(C(e,"utf-8"))}catch{return null}}function A(r,e){let t=S(r);if(t)return t.devDependencies?.[e]||t.dependencies?.[e]}function Q(r,e,t={}){let{maxDepth:n=10,exclude:i=["node_modules",".git","dist","build","coverage",".next","__pycache__"]}=t;function s(o,a){if(a>n)return;let l;try{l=Se(o)}catch{return}for(let u of l){if(i.includes(u))continue;let c=g(o,u),x;try{x=xe(c)}catch{continue}x.isDirectory()?s(c,a+1):x.isFile()&&e(c)}}s(r,0)}var W=class{projectRoot;constructor(e){this.projectRoot=e}async analyze(){let e=Date.now(),[t,n,i,s,o]=await Promise.all([this.detectFrameworks(),this.detectLanguages(),this.detectExistingTests(),this.analyzeComplexity(),this.measureCoverage()]);return{projectName:S(this.projectRoot)?.name||re(this.projectRoot),projectRoot:this.projectRoot,projectType:this.detectProjectType(),frameworks:t,languages:n,existingTests:i,codeComplexity:s,coverage:o,packageManager:this.detectPackageManager(),hasTypeScript:p(g(this.projectRoot,"tsconfig.json")),hasCIConfig:this.detectCIConfig(),ciProvider:this.detectCIProvider(),analysisTimestamp:new Date,analysisDurationMs:Date.now()-e}}async detectFrameworks(){let e=[];for(let t of Ae){let n=t.detect(this.projectRoot);n&&e.push(n)}return e.sort((t,n)=>n.confidence-t.confidence)}async detectLanguages(){let e=new Map,t=0;Q(this.projectRoot,i=>{let s=ie(i).toLowerCase();if(s){for(let o of we)if(o.extensions.includes(s)){let a=e.get(o.name)||{count:0,extensions:new Set};a.count++,a.extensions.add(s),e.set(o.name,a),t++;break}}});let n=[];for(let[i,s]of e)n.push({name:i,percentage:t>0?Math.round(s.count/t*100):0,fileCount:s.count,extensions:Array.from(s.extensions)});return n.sort((i,s)=>s.fileCount-i.fileCount)}async detectExistingTests(){let e={totalCount:0,byFramework:{},byType:{unit:0,integration:0,e2e:0,unknown:0},directories:[]},t=new Set,n=[/\.test\.[jt]sx?$/,/\.spec\.[jt]sx?$/,/_test\.[jt]sx?$/,/test_.*\.py$/,/.*_test\.py$/,/.*_test\.go$/,/.*Test\.java$/];return Q(this.projectRoot,i=>{let s=re(i);if(n.some(a=>a.test(s))){e.totalCount++;let a=V(this.projectRoot,i).toLowerCase();a.includes("e2e")||a.includes("cypress")||a.includes("playwright")?e.byType.e2e++:a.includes("integration")||a.includes("int-test")?e.byType.integration++:a.includes("unit")||a.includes("__tests__")||a.includes("test/")?e.byType.unit++:e.byType.unknown++;let l=V(this.projectRoot,g(i,".."));t.add(l)}}),e.directories=Array.from(t).slice(0,10),e}async analyzeComplexity(){let e=[],t=[],n=0,i=0;Q(this.projectRoot,a=>{let l=ie(a);if([".ts",".tsx",".js",".jsx",".py",".java",".go"].includes(l))try{let u=C(a,"utf-8"),c=this.calculateFileComplexity(u,l);t.push(...c.functionComplexities),c.maxComplexity>n&&(n=c.maxComplexity),i++,c.maxComplexity>10&&e.push(V(this.projectRoot,a))}catch(u){console.debug("[ProjectAnalyzer] Complexity analysis read failed:",u instanceof Error?u.message:u)}});let s=t.reduce((a,l)=>a+l,0),o=t.length>0?s/t.length:0;return{averageCyclomatic:Math.round(o*10)/10,maxCyclomatic:n,totalFiles:i,complexFiles:e.slice(0,20),recommendation:o<5?"simple":o<15?"medium":"complex"}}calculateFileComplexity(e,t){let n=this.stripCommentsAndStrings(e,t),i=this.calculateComplexity(n);return{functionComplexities:[i],maxComplexity:i}}removeDelimitedBlocks(e,t,n){let i="",s=0;for(;s<e.length;){let o=e.indexOf(t,s);if(o===-1){i+=e.slice(s);break}i+=e.slice(s,o);let a=e.indexOf(n,o+t.length);if(a===-1)break;s=a+n.length}return i}stripCommentsAndStrings(e,t){let n=e;return[".ts",".tsx",".js",".jsx",".java",".go"].includes(t)?(n=n.split(`
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{a as b}from"./chunk-AM42ROKZ.js";import{a as te,b as ne}from"./chunk-SCQNISGS.js";import{b as ee}from"./chunk-FI6J3UHJ.js";import{b as E,d as ke}from"./chunk-VA2ORJB5.js";import{a as k,c as T}from"./chunk-L3GBNX7B.js";var be={M:16,efConstruction:200,efSearch:100},P={enabled:!0,pretrainedPatterns:!0,hnswConfig:be,promotionThreshold:3,qualityThreshold:.7,embeddingModel:"auto"},_={mode:"hybrid",confidenceThreshold:.7,feedbackEnabled:!0,cacheEnabled:!0,cacheTTLMs:300*1e3},F={enabled:["pattern-consolidator","coverage-gap-scanner","flaky-test-detector","routing-accuracy-monitor"],intervals:{"pattern-consolidator":1800*1e3,"coverage-gap-scanner":3600*1e3,"flaky-test-detector":7200*1e3,"routing-accuracy-monitor":900*1e3},maxConcurrent:4,daemonAutoStart:!0},$={claudeCode:!0,preCommit:!1,ciIntegration:!1},N={install:!0,installV2:!0,installV3:!0,overwrite:!1},O={enabled:!0,parameters:["hnsw.efSearch","routing.confidenceThreshold","pattern.promotionThreshold","testGen.complexityLimit"],tuningIntervalMs:10080*60*1e3,evaluationPeriodMs:5e3};var L=["test-generation","test-execution","coverage-analysis","quality-assessment","defect-intelligence","requirements-validation","code-intelligence","security-compliance","contract-testing","visual-accessibility","chaos-resilience","learning-optimization","enterprise-integration"];function M(){return"3.13.12"}function Ve(r,e){return{version:M(),project:{name:r,root:e,type:"single"},learning:P,routing:_,workers:F,hooks:$,skills:N,autoTuning:O,domains:{enabled:L,disabled:[]},agents:{maxConcurrent:15,defaultTimeout:6e4}}}ke();import{readFileSync as C,existsSync as p,statSync as xe,readdirSync as Se}from"fs";import{join as g,basename as re,extname as ie,relative as V}from"path";var Ae=[{name:"jest",detect:r=>{let e=["jest.config.js","jest.config.ts","jest.config.mjs","jest.config.cjs"];for(let n of e)if(p(g(r,n)))return{name:"jest",version:A(r,"jest"),configFile:n,confidence:1};let t=S(r);return t?.jest?{name:"jest",version:A(r,"jest"),configFile:"package.json",confidence:.9}:t?.devDependencies?.jest||t?.dependencies?.jest?{name:"jest",version:t.devDependencies?.jest||t.dependencies?.jest,confidence:.7}:null}},{name:"vitest",detect:r=>{let e=["vitest.config.ts","vitest.config.js","vitest.config.mts","vite.config.ts"];for(let n of e)if(p(g(r,n)))return{name:"vitest",version:A(r,"vitest"),configFile:n,confidence:1};let t=S(r);return t?.devDependencies?.vitest||t?.dependencies?.vitest?{name:"vitest",version:t.devDependencies?.vitest,confidence:.8}:null}},{name:"mocha",detect:r=>{let e=[".mocharc.js",".mocharc.json",".mocharc.yaml",".mocharc.yml"];for(let n of e)if(p(g(r,n)))return{name:"mocha",version:A(r,"mocha"),configFile:n,confidence:1};let t=S(r);return t?.devDependencies?.mocha?{name:"mocha",version:t.devDependencies?.mocha,confidence:.8}:null}},{name:"pytest",detect:r=>{let e=["pytest.ini","pyproject.toml","setup.cfg"];for(let n of e){let i=g(r,n);if(p(i))try{let s=C(i,"utf-8");if(s.includes("[pytest]")||s.includes("[tool.pytest]"))return{name:"pytest",configFile:n,confidence:1}}catch(s){console.debug("[ProjectAnalyzer] Config read failed:",s instanceof Error?s.message:s)}}let t=g(r,"requirements.txt");if(p(t))try{if(C(t,"utf-8").includes("pytest"))return{name:"pytest",configFile:"requirements.txt",confidence:.8}}catch(n){console.debug("[ProjectAnalyzer] requirements.txt read failed:",n instanceof Error?n.message:n)}return null}},{name:"playwright",detect:r=>{let e=["playwright.config.ts","playwright.config.js"];for(let n of e)if(p(g(r,n)))return{name:"playwright",version:A(r,"@playwright/test"),configFile:n,confidence:1};let t=S(r);return t?.devDependencies?.["@playwright/test"]?{name:"playwright",version:t.devDependencies["@playwright/test"],confidence:.8}:null}},{name:"cypress",detect:r=>{let e=["cypress.config.ts","cypress.config.js","cypress.json"];for(let t of e)if(p(g(r,t)))return{name:"cypress",version:A(r,"cypress"),configFile:t,confidence:1};return p(g(r,"cypress"))?{name:"cypress",configFile:"cypress/",confidence:.9}:null}}],we=[{name:"typescript",extensions:[".ts",".tsx",".mts",".cts"]},{name:"javascript",extensions:[".js",".jsx",".mjs",".cjs"]},{name:"python",extensions:[".py",".pyw"]},{name:"java",extensions:[".java"]},{name:"go",extensions:[".go"]},{name:"rust",extensions:[".rs"]},{name:"csharp",extensions:[".cs"]},{name:"ruby",extensions:[".rb"]},{name:"php",extensions:[".php"]},{name:"kotlin",extensions:[".kt",".kts"]},{name:"swift",extensions:[".swift"]}];function S(r){let e=g(r,"package.json");if(!p(e))return null;try{return E(C(e,"utf-8"))}catch{return null}}function A(r,e){let t=S(r);if(t)return t.devDependencies?.[e]||t.dependencies?.[e]}function Q(r,e,t={}){let{maxDepth:n=10,exclude:i=["node_modules",".git","dist","build","coverage",".next","__pycache__"]}=t;function s(o,a){if(a>n)return;let l;try{l=Se(o)}catch{return}for(let u of l){if(i.includes(u))continue;let c=g(o,u),x;try{x=xe(c)}catch{continue}x.isDirectory()?s(c,a+1):x.isFile()&&e(c)}}s(r,0)}var W=class{projectRoot;constructor(e){this.projectRoot=e}async analyze(){let e=Date.now(),[t,n,i,s,o]=await Promise.all([this.detectFrameworks(),this.detectLanguages(),this.detectExistingTests(),this.analyzeComplexity(),this.measureCoverage()]);return{projectName:S(this.projectRoot)?.name||re(this.projectRoot),projectRoot:this.projectRoot,projectType:this.detectProjectType(),frameworks:t,languages:n,existingTests:i,codeComplexity:s,coverage:o,packageManager:this.detectPackageManager(),hasTypeScript:p(g(this.projectRoot,"tsconfig.json")),hasCIConfig:this.detectCIConfig(),ciProvider:this.detectCIProvider(),analysisTimestamp:new Date,analysisDurationMs:Date.now()-e}}async detectFrameworks(){let e=[];for(let t of Ae){let n=t.detect(this.projectRoot);n&&e.push(n)}return e.sort((t,n)=>n.confidence-t.confidence)}async detectLanguages(){let e=new Map,t=0;Q(this.projectRoot,i=>{let s=ie(i).toLowerCase();if(s){for(let o of we)if(o.extensions.includes(s)){let a=e.get(o.name)||{count:0,extensions:new Set};a.count++,a.extensions.add(s),e.set(o.name,a),t++;break}}});let n=[];for(let[i,s]of e)n.push({name:i,percentage:t>0?Math.round(s.count/t*100):0,fileCount:s.count,extensions:Array.from(s.extensions)});return n.sort((i,s)=>s.fileCount-i.fileCount)}async detectExistingTests(){let e={totalCount:0,byFramework:{},byType:{unit:0,integration:0,e2e:0,unknown:0},directories:[]},t=new Set,n=[/\.test\.[jt]sx?$/,/\.spec\.[jt]sx?$/,/_test\.[jt]sx?$/,/test_.*\.py$/,/.*_test\.py$/,/.*_test\.go$/,/.*Test\.java$/];return Q(this.projectRoot,i=>{let s=re(i);if(n.some(a=>a.test(s))){e.totalCount++;let a=V(this.projectRoot,i).toLowerCase();a.includes("e2e")||a.includes("cypress")||a.includes("playwright")?e.byType.e2e++:a.includes("integration")||a.includes("int-test")?e.byType.integration++:a.includes("unit")||a.includes("__tests__")||a.includes("test/")?e.byType.unit++:e.byType.unknown++;let l=V(this.projectRoot,g(i,".."));t.add(l)}}),e.directories=Array.from(t).slice(0,10),e}async analyzeComplexity(){let e=[],t=[],n=0,i=0;Q(this.projectRoot,a=>{let l=ie(a);if([".ts",".tsx",".js",".jsx",".py",".java",".go"].includes(l))try{let u=C(a,"utf-8"),c=this.calculateFileComplexity(u,l);t.push(...c.functionComplexities),c.maxComplexity>n&&(n=c.maxComplexity),i++,c.maxComplexity>10&&e.push(V(this.projectRoot,a))}catch(u){console.debug("[ProjectAnalyzer] Complexity analysis read failed:",u instanceof Error?u.message:u)}});let s=t.reduce((a,l)=>a+l,0),o=t.length>0?s/t.length:0;return{averageCyclomatic:Math.round(o*10)/10,maxCyclomatic:n,totalFiles:i,complexFiles:e.slice(0,20),recommendation:o<5?"simple":o<15?"medium":"complex"}}calculateFileComplexity(e,t){let n=this.stripCommentsAndStrings(e,t),i=this.calculateComplexity(n);return{functionComplexities:[i],maxComplexity:i}}removeDelimitedBlocks(e,t,n){let i="",s=0;for(;s<e.length;){let o=e.indexOf(t,s);if(o===-1){i+=e.slice(s);break}i+=e.slice(s,o);let a=e.indexOf(n,o+t.length);if(a===-1)break;s=a+n.length}return i}stripCommentsAndStrings(e,t){let n=e;return[".ts",".tsx",".js",".jsx",".java",".go"].includes(t)?(n=n.split(`
3
3
  `).map(i=>{let s=i.indexOf("//");return s>=0?i.slice(0,s):i}).join(`
4
4
  `),n=this.removeDelimitedBlocks(n,"/*","*/"),n=this.removeDelimitedBlocks(n,"`","`"),n=this.removeDelimitedBlocks(n,'"','"'),n=this.removeDelimitedBlocks(n,"'","'")):t===".py"&&(n=n.split(`
5
5
  `).map(i=>{let s=i.indexOf("#");return s>=0?i.slice(0,s):i}).join(`
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
2
  var i=class{s0;s1;s2;s3;constructor(s){this.s0=this.splitmix32(s),this.s1=this.splitmix32(this.s0),this.s2=this.splitmix32(this.s1),this.s3=this.splitmix32(this.s2)}splitmix32(s){return s=s+2654435769|0,s=Math.imul(s^s>>>16,2246822507),s=Math.imul(s^s>>>13,3266489909),(s^s>>>16)>>>0}next(){let s=this.s3,t=this.s0;return this.s3=this.s2,this.s2=this.s1,this.s1=t,t^=t<<11,t^=t>>>8,this.s0=t^s^s>>>19,this.s0>>>0}nextFloat(){return this.next()/4294967296}nextGaussian(){let s=this.nextFloat()||1e-10,t=this.nextFloat();return Math.sqrt(-2*Math.log(s))*Math.cos(2*Math.PI*t)}};export{i as a};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{a as y,c as v,d as R}from"./chunk-4EWKERKV.js";import{d as u}from"./chunk-WK5MKY45.js";import{a as p,b as g,c as P,d as s}from"./chunk-MFGKSD44.js";import{d as f,e as C}from"./chunk-DR4V75BF.js";C();var E=f("llm/router-service");function m(e){let r={};for(let[i,t]of Object.entries(e.providers??{}))t?.defaultModel&&(r[i]=t.defaultModel);p(e.agentOverrides,r);let o=g();if(o.length===0)return e;let n=e.rules.length>0?e.rules:P;return{...e,rules:[...o,...n]}}var T=["ollama","onnx","gemini","openrouter","openai","claude","azure-openai","bedrock"];async function F(e={}){if(e.providerManager){let a=m(v({projectRoot:e.projectRoot,override:e.override,env:e.env})),d=new s(e.providerManager,a);return await d.initialize(),{router:d,resolvedConfig:a,enabledProviders:x(a)}}if(!R({projectRoot:e.projectRoot,env:e.env}))return null;let r=m(v({projectRoot:e.projectRoot,override:e.override,env:e.env})),o=M(r,e.env??process.env);if(o.length===0)return null;let n=new Set(o);for(let[a,d]of Object.entries(r.agentOverrides??{}))d.provider&&!n.has(d.provider)&&E.warn(`[llm-config] agentOverrides["${a}"] routes to provider "${d.provider}", which is not enabled (no API key detected and not enabled in .agentic-qe/llm-config.json). This override will not take effect until that provider is available.`);let{primary:i,fallbacks:t}=L(r,o),l={primary:i,fallbacks:t,providers:k(r,o),loadBalancing:"round-robin",global:{enableCostTracking:!0,enableMetrics:!0}},b=new u(l),c=new s(b,r);return await c.initialize(),{router:c,resolvedConfig:r,enabledProviders:o}}function M(e,r=process.env){let o=y(r),n=[],i=t=>{n.includes(t)||!e.providers?.[t]?.enabled||o.has(t)&&n.push(t)};i(e.defaultProvider);for(let t of e.fallbackChain?.entries??[])i(t.provider);for(let t of T)i(t);return n}function x(e){let r=new Set([e.defaultProvider]);for(let o of e.fallbackChain?.entries??[])r.add(o.provider);return Array.from(r)}function L(e,r){if(r.length===0)throw new Error("pickPrimaryAndFallbacks: no enabled providers");let o=r.includes(e.defaultProvider)?e.defaultProvider:r[0],n=r.filter(i=>i!==o);return{primary:o,fallbacks:n}}function k(e,r){let o={};for(let n of r){let i=e.providers?.[n];i&&(o[n]=i)}return o}export{F as a,M as b,L as c};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{c as y,e as v,f as R}from"./chunk-NLZUGANH.js";import{d as u}from"./chunk-UC4EIULB.js";import{a as p,b as g,c as P,d as s}from"./chunk-WYIXNHPF.js";import{d as f,e as C}from"./chunk-IOJ34SXJ.js";C();var E=f("llm/router-service");function m(e){let r={};for(let[i,t]of Object.entries(e.providers??{}))t?.defaultModel&&(r[i]=t.defaultModel);p(e.agentOverrides,r);let o=g();if(o.length===0)return e;let n=e.rules.length>0?e.rules:P;return{...e,rules:[...o,...n]}}var T=["ollama","onnx","gemini","openrouter","openai","claude","azure-openai","bedrock"];async function F(e={}){if(e.providerManager){let a=m(v({projectRoot:e.projectRoot,override:e.override,env:e.env})),d=new s(e.providerManager,a);return await d.initialize(),{router:d,resolvedConfig:a,enabledProviders:x(a)}}if(!R({projectRoot:e.projectRoot,env:e.env}))return null;let r=m(v({projectRoot:e.projectRoot,override:e.override,env:e.env})),o=M(r,e.env??process.env);if(o.length===0)return null;let n=new Set(o);for(let[a,d]of Object.entries(r.agentOverrides??{}))d.provider&&!n.has(d.provider)&&E.warn(`[llm-config] agentOverrides["${a}"] routes to provider "${d.provider}", which is not enabled (no API key detected and not enabled in .agentic-qe/llm-config.json). This override will not take effect until that provider is available.`);let{primary:i,fallbacks:t}=L(r,o),l={primary:i,fallbacks:t,providers:k(r,o),loadBalancing:"round-robin",global:{enableCostTracking:!0,enableMetrics:!0}},b=new u(l),c=new s(b,r);return await c.initialize(),{router:c,resolvedConfig:r,enabledProviders:o}}function M(e,r=process.env){let o=y(r),n=[],i=t=>{n.includes(t)||!e.providers?.[t]?.enabled||o.has(t)&&n.push(t)};i(e.defaultProvider);for(let t of e.fallbackChain?.entries??[])i(t.provider);for(let t of T)i(t);return n}function x(e){let r=new Set([e.defaultProvider]);for(let o of e.fallbackChain?.entries??[])r.add(o.provider);return Array.from(r)}function L(e,r){if(r.length===0)throw new Error("pickPrimaryAndFallbacks: no enabled providers");let o=r.includes(e.defaultProvider)?e.defaultProvider:r[0],n=r.filter(i=>i!==o);return{primary:o,fallbacks:n}}function k(e,r){let o={};for(let n of r){let i=e.providers?.[n];i&&(o[n]=i)}return o}export{F as a,M as b,L as c};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{b as k,c as p}from"./chunk-KQVTTP2S.js";p();import{generateKeyPairSync as g,createPrivateKey as v,createPublicKey as I,sign as m,verify as D,createHash as b}from"crypto";import{existsSync as d,mkdirSync as P,writeFileSync as y,readFileSync as o,readdirSync as w}from"fs";import{join as n}from"path";var f=class{keys=new Map;activeKeyId=null;keyDir;constructor(e={}){this.keyDir=e.keyDir??null,this.keyDir&&this.loadFromDisk(),e.autoGenerate!==!1&&this.keys.size===0&&this.generateKeyPair()}generateKeyPair(){let{publicKey:e,privateKey:i}=g("ed25519"),r=e.export({type:"spki",format:"der"}),t=b("sha256").update(r).digest("hex").slice(0,16),s={keyId:t,publicKey:e,privateKey:i,createdAt:new Date().toISOString(),retired:!1};return this.keys.set(t,s),this.activeKeyId=t,this.keyDir&&(this.saveKeyPairToDisk(s),this.saveActiveKeyId()),{keyId:t,publicKey:r}}sign(e,i){let r=i??this.activeKeyId;if(!r)throw new Error("No active key available for signing");let t=this.keys.get(r);if(!t)throw new Error(`Key not found: ${r}`);return{signature:m(null,e,t.privateKey),keyId:r}}verify(e,i,r){let t=this.keys.get(r);if(!t)return!1;try{return D(null,e,t.publicKey,i)}catch{return!1}}rotateKey(){let e=this.activeKeyId;if(!e)throw new Error("No active key to rotate");let i=this.keys.get(e);i&&(i.retired=!0,this.keyDir&&this.saveKeyPairToDisk(i));let{keyId:r}=this.generateKeyPair();return{oldKeyId:e,newKeyId:r}}getActiveKeyId(){if(!this.activeKeyId)throw new Error("No active key");return this.activeKeyId}hasKey(e){return this.keys.has(e)}getKeyCount(){return this.keys.size}saveKeyPairToDisk(e){if(!this.keyDir)return;d(this.keyDir)||P(this.keyDir,{recursive:!0});let i=n(this.keyDir,e.keyId);y(`${i}.pub.pem`,e.publicKey.export({type:"spki",format:"pem"}),"utf-8"),y(`${i}.key.pem`,e.privateKey.export({type:"pkcs8",format:"pem"}),{encoding:"utf-8",mode:384}),y(`${i}.meta.json`,JSON.stringify({keyId:e.keyId,createdAt:e.createdAt,retired:e.retired}),"utf-8")}saveActiveKeyId(){!this.keyDir||!this.activeKeyId||y(n(this.keyDir,"active-key-id"),this.activeKeyId,"utf-8")}loadFromDisk(){if(!this.keyDir||!d(this.keyDir))return;let i=w(this.keyDir).filter(t=>t.endsWith(".meta.json"));for(let t of i)try{let s=JSON.parse(o(n(this.keyDir,t),"utf-8")),a=n(this.keyDir,s.keyId),l=o(`${a}.pub.pem`,"utf-8"),K=o(`${a}.key.pem`,"utf-8"),h={keyId:s.keyId,publicKey:I(l),privateKey:v(K),createdAt:s.createdAt,retired:s.retired};this.keys.set(s.keyId,h)}catch{}let r=n(this.keyDir,"active-key-id");if(d(r)){let t=o(r,"utf-8").trim();this.keys.has(t)&&(this.activeKeyId=t)}if(!this.activeKeyId){let t=[...this.keys.values()].filter(s=>!s.retired).sort((s,a)=>a.createdAt.localeCompare(s.createdAt));t.length>0&&(this.activeKeyId=t[0].keyId)}}},c=null;function F(){if(!c){let u=n(k(),".agentic-qe","witness-keys");c=new f({keyDir:u})}return c}function O(){c=null}export{f as a,F as b,O as c};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{b as k,c as p}from"./chunk-6KI6LAAZ.js";p();import{generateKeyPairSync as g,createPrivateKey as v,createPublicKey as I,sign as m,verify as D,createHash as b}from"crypto";import{existsSync as d,mkdirSync as P,writeFileSync as y,readFileSync as o,readdirSync as w}from"fs";import{join as n}from"path";var f=class{keys=new Map;activeKeyId=null;keyDir;constructor(e={}){this.keyDir=e.keyDir??null,this.keyDir&&this.loadFromDisk(),e.autoGenerate!==!1&&this.keys.size===0&&this.generateKeyPair()}generateKeyPair(){let{publicKey:e,privateKey:i}=g("ed25519"),r=e.export({type:"spki",format:"der"}),t=b("sha256").update(r).digest("hex").slice(0,16),s={keyId:t,publicKey:e,privateKey:i,createdAt:new Date().toISOString(),retired:!1};return this.keys.set(t,s),this.activeKeyId=t,this.keyDir&&(this.saveKeyPairToDisk(s),this.saveActiveKeyId()),{keyId:t,publicKey:r}}sign(e,i){let r=i??this.activeKeyId;if(!r)throw new Error("No active key available for signing");let t=this.keys.get(r);if(!t)throw new Error(`Key not found: ${r}`);return{signature:m(null,e,t.privateKey),keyId:r}}verify(e,i,r){let t=this.keys.get(r);if(!t)return!1;try{return D(null,e,t.publicKey,i)}catch{return!1}}rotateKey(){let e=this.activeKeyId;if(!e)throw new Error("No active key to rotate");let i=this.keys.get(e);i&&(i.retired=!0,this.keyDir&&this.saveKeyPairToDisk(i));let{keyId:r}=this.generateKeyPair();return{oldKeyId:e,newKeyId:r}}getActiveKeyId(){if(!this.activeKeyId)throw new Error("No active key");return this.activeKeyId}hasKey(e){return this.keys.has(e)}getKeyCount(){return this.keys.size}saveKeyPairToDisk(e){if(!this.keyDir)return;d(this.keyDir)||P(this.keyDir,{recursive:!0});let i=n(this.keyDir,e.keyId);y(`${i}.pub.pem`,e.publicKey.export({type:"spki",format:"pem"}),"utf-8"),y(`${i}.key.pem`,e.privateKey.export({type:"pkcs8",format:"pem"}),{encoding:"utf-8",mode:384}),y(`${i}.meta.json`,JSON.stringify({keyId:e.keyId,createdAt:e.createdAt,retired:e.retired}),"utf-8")}saveActiveKeyId(){!this.keyDir||!this.activeKeyId||y(n(this.keyDir,"active-key-id"),this.activeKeyId,"utf-8")}loadFromDisk(){if(!this.keyDir||!d(this.keyDir))return;let i=w(this.keyDir).filter(t=>t.endsWith(".meta.json"));for(let t of i)try{let s=JSON.parse(o(n(this.keyDir,t),"utf-8")),a=n(this.keyDir,s.keyId),l=o(`${a}.pub.pem`,"utf-8"),K=o(`${a}.key.pem`,"utf-8"),h={keyId:s.keyId,publicKey:I(l),privateKey:v(K),createdAt:s.createdAt,retired:s.retired};this.keys.set(s.keyId,h)}catch{}let r=n(this.keyDir,"active-key-id");if(d(r)){let t=o(r,"utf-8").trim();this.keys.has(t)&&(this.activeKeyId=t)}if(!this.activeKeyId){let t=[...this.keys.values()].filter(s=>!s.retired).sort((s,a)=>a.createdAt.localeCompare(s.createdAt));t.length>0&&(this.activeKeyId=t[0].keyId)}}},c=null;function F(){if(!c){let u=n(k(),".agentic-qe","witness-keys");c=new f({keyDir:u})}return c}function O(){c=null}export{f as a,F as b,O as c};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{a as v}from"./chunk-U6YDS37V.js";import{h as U}from"./chunk-FOPLJRWL.js";import{c as D,d as R,e as h,g as x}from"./chunk-ATSVI6T4.js";var f=class{config;trackers;globalCostTodayUsd=0;lastGlobalReset=new Date;constructor(e){this.config=e,this.trackers=new Map;for(let t of[0,1,2,3,4])this.trackers.set(t,{tier:t,costSpentTodayUsd:0,requestsThisHour:0,requestsToday:0,lastHourlyReset:new Date,lastDailyReset:new Date,requestHistory:[]})}async checkBudget(e,t){if(!this.config.enabled)return this.createAllowedDecision(e,e,t,!1,[]);this.autoReset();let r=this.config.tierBudgets[e];if(!r||!r.enabled)return this.createAllowedDecision(e,e,t,!1,["Tier budget not configured or disabled"]);let s=this.getUsage(e),i=[],c=this.config.maxDailyCostUsd-this.globalCostTodayUsd;if(this.globalCostTodayUsd+t>this.config.maxDailyCostUsd)return this.handleBudgetExceeded(e,t,s,"Global daily budget would be exceeded");if(this.globalCostTodayUsd+t>=this.config.maxDailyCostUsd*this.config.warningThreshold&&(i.push(`Approaching global daily budget limit: $${this.globalCostTodayUsd.toFixed(2)}/$${this.config.maxDailyCostUsd.toFixed(2)}`),this.config.onBudgetWarning==="downgrade"))return this.downgradeTier(e,t,s,i);let a=[{exceeded:s.costSpentTodayUsd+t>r.maxDailyCostUsd,message:`Tier ${e} daily cost limit would be exceeded: $${s.costSpentTodayUsd.toFixed(2)}/$${r.maxDailyCostUsd.toFixed(2)}`},{exceeded:s.requestsThisHour>=r.maxRequestsPerHour,message:`Tier ${e} hourly request limit reached: ${s.requestsThisHour}/${r.maxRequestsPerHour}`},{exceeded:s.requestsToday>=r.maxRequestsPerDay,message:`Tier ${e} daily request limit reached: ${s.requestsToday}/${r.maxRequestsPerDay}`},{exceeded:t>r.maxCostPerRequest,message:`Tier ${e} per-request cost limit would be exceeded: $${t.toFixed(4)}/$${r.maxCostPerRequest.toFixed(4)}`}];for(let n of a)if(n.exceeded)return this.handleBudgetExceeded(e,t,s,n.message);return s.budgetUtilization>=this.config.warningThreshold&&(i.push(`Tier ${e} at ${(s.budgetUtilization*100).toFixed(1)}% of daily budget`),this.config.onBudgetWarning==="downgrade")?this.downgradeTier(e,t,s,i):this.createAllowedDecision(e,e,t,!1,i)}async recordCost(e,t){if(!this.config.enabled)return;let r=this.trackers.get(e);r&&(this.autoReset(),r.costSpentTodayUsd+=t,r.requestsThisHour++,r.requestsToday++,this.globalCostTodayUsd+=t,r.requestHistory.push({timestamp:new Date,costUsd:t}),r.requestHistory.length>1e3&&(r.requestHistory=r.requestHistory.slice(-1e3)))}getUsage(e){this.autoReset();let t=this.trackers.get(e);if(!t)return this.createEmptyUsage(e);let r=this.config.tierBudgets[e];if(!r)return this.createEmptyUsage(e);let s=r.maxDailyCostUsd>0?t.costSpentTodayUsd/r.maxDailyCostUsd:0,i=t.costSpentTodayUsd>=r.maxDailyCostUsd||t.requestsThisHour>=r.maxRequestsPerHour||t.requestsToday>=r.maxRequestsPerDay,c=s>=this.config.warningThreshold,a=new Date,n=new Date(a);return n.setUTCHours(24,0,0,0),{tier:e,costSpentTodayUsd:t.costSpentTodayUsd,requestsThisHour:t.requestsThisHour,requestsToday:t.requestsToday,budgetUtilization:s,isExceeded:i,isNearLimit:c,resetTime:n,remainingBudgetUsd:Math.max(0,r.maxDailyCostUsd-t.costSpentTodayUsd),remainingRequestsThisHour:Math.max(0,r.maxRequestsPerHour-t.requestsThisHour),remainingRequestsToday:Math.max(0,r.maxRequestsPerDay-t.requestsToday)}}getAllUsage(){let e={};for(let t of[0,1,2,3,4])e[t]=this.getUsage(t);return e}reset(){let e=new Date;for(let t of this.trackers.values())t.costSpentTodayUsd=0,t.requestsThisHour=0,t.requestsToday=0,t.lastHourlyReset=e,t.lastDailyReset=e,t.requestHistory=[];this.globalCostTodayUsd=0,this.lastGlobalReset=e}handleBudgetExceeded(e,t,r,s){switch(this.config.onBudgetExceeded){case"error":throw new h(`Budget exceeded: ${s}`,e,r);case"downgrade":return this.downgradeTier(e,t,r,[s]);case"queue":throw new h(`Budget exceeded (queueing not yet implemented): ${s}`,e,r);default:throw new h(`Budget exceeded: ${s}`,e,r)}}downgradeTier(e,t,r,s){for(let i=e-1;i>=0;i--){let c=this.config.tierBudgets[i];if(!c||!c.enabled)continue;let a=this.getUsage(i);if(!a.isExceeded){let n=t*.5;if(a.costSpentTodayUsd+n<=c.maxDailyCostUsd)return this.createAllowedDecision(e,i,n,!0,[...s,`Downgraded from Tier ${e} to Tier ${i} due to budget constraints`])}}throw new h(`Budget exceeded and no lower tier available: ${s.join("; ")}`,e,r)}createAllowedDecision(e,t,r,s,i){let c=this.getUsage(t);return{allowed:!0,reason:s?`Budget enforced: downgraded to Tier ${t}`:"Budget check passed",requestedTier:e,approvedTier:t,wasDowngraded:s,estimatedCostUsd:r,currentUsage:c,warnings:i}}createEmptyUsage(e){let t=new Date,r=new Date(t);return r.setUTCHours(24,0,0,0),{tier:e,costSpentTodayUsd:0,requestsThisHour:0,requestsToday:0,budgetUtilization:0,isExceeded:!1,isNearLimit:!1,resetTime:r,remainingBudgetUsd:0,remainingRequestsThisHour:0,remainingRequestsToday:0}}autoReset(){let e=new Date;this.shouldResetDaily(this.lastGlobalReset,e)&&(this.globalCostTodayUsd=0,this.lastGlobalReset=e);for(let t of this.trackers.values())this.shouldResetHourly(t.lastHourlyReset,e)&&(t.requestsThisHour=0,t.lastHourlyReset=e),this.shouldResetDaily(t.lastDailyReset,e)&&(t.costSpentTodayUsd=0,t.requestsToday=0,t.requestHistory=[],t.lastDailyReset=e)}shouldResetHourly(e,t){return(t.getTime()-e.getTime())/36e5>=1}shouldResetDaily(e,t){return t.getUTCDate()!==e.getUTCDate()||t.getUTCMonth()!==e.getUTCMonth()||t.getUTCFullYear()!==e.getUTCFullYear()}getSessionCostSummary(){this.autoReset();let e=this.config.maxDailyCostUsd,t=0,r={},s={0:"AgentBooster",1:"Haiku",2:"Sonnet",3:"SonnetExtended",4:"Opus"};for(let[c,a]of this.trackers.entries()){let n=this.config.tierBudgets[c],o=s[c]??`Tier${c}`;t+=a.costSpentTodayUsd,r[o]={spent:a.costSpentTodayUsd,limit:n?.maxDailyCostUsd??0,requests:a.requestsToday}}let i=e>0?Math.round(t/e*100):0;return{totalSpentUsd:t,dailyLimitUsd:e,utilizationPercent:i,byTier:r}}};var w=class{cache=new Map;maxSize;ttlMs;enabled;constructor(e,t,r){this.enabled=e,this.maxSize=t,this.ttlMs=r}generateKey(e){return`${e.agentType||"unknown"}:${e.domain||"unknown"}:${e.task.slice(0,100)}`}get(e){if(!this.enabled)return null;let t=this.generateKey(e),r=this.cache.get(t);return r?Date.now()>r.expiresAt?(this.cache.delete(t),null):{...r.decision,metadata:{...r.decision.metadata,fromCache:!0,decisionTimeMs:0}}:null}set(e,t){if(!this.enabled)return;let r=this.generateKey(e);if(this.cache.size>=this.maxSize){let s=this.cache.keys().next().value;s&&this.cache.delete(s)}this.cache.set(r,{decision:t,expiresAt:Date.now()+this.ttlMs})}clear(){this.cache.clear()}getStats(){return{size:this.cache.size,hitRate:0}}},M=class{events=[];enabled;maxEvents=1e4;constructor(e){this.enabled=e}record(e){this.enabled&&(this.events.push(e),this.events.length>this.maxEvents&&(this.events=this.events.slice(-this.maxEvents)))}getMetrics(){if(this.events.length===0)return this.createEmptyMetrics();let e=new Date,t={};for(let o of[0,1,2,3,4]){let d=this.events.filter(l=>l.tier===o);if(d.length===0)continue;let T=d.filter(l=>l.success),m=d.filter(l=>!l.wasManualOverride),b=d.filter(l=>l.wasDowngraded),y=d.map(l=>l.latencyMs).sort((l,g)=>l-g),B=Math.floor(y.length*.95);t[o]={tier:o,selectionCount:d.length,autoRouteCount:m.length,manualOverrideCount:d.length-m.length,budgetDowngradeCount:b.length,successRate:T.length/d.length,avgComplexity:d.reduce((l,g)=>l+g.complexity,0)/d.length,totalCostUsd:d.reduce((l,g)=>l+g.costUsd,0),avgLatencyMs:d.reduce((l,g)=>l+g.latencyMs,0)/d.length,p95LatencyMs:y[B]||0,budgetUtilization:0}}let r=this.events.map(o=>o.latencyMs).sort((o,d)=>o-d),s=Math.floor(r.length*.95),i=Math.floor(r.length*.99),c=this.events.filter(o=>o.agentBoosterEligible).length,a=this.events.filter(o=>o.tier===0).length,n=this.events.filter(o=>o.tier===0&&o.success).length;return{byTier:t,totalDecisions:this.events.length,avgDecisionTimeMs:this.events.reduce((o,d)=>o+d.latencyMs,0)/this.events.length,p95DecisionTimeMs:r[s]||0,p99DecisionTimeMs:r[i]||0,fallbackRate:this.events.filter(o=>o.wasDowngraded).length/this.events.length,ruleMatchRate:this.events.filter(o=>!o.wasManualOverride).length/this.events.length,estimatedCostSavings:0,agentBoosterStats:{eligible:c,used:a,fallbackToLLM:Math.max(0,c-a),successRate:a>0?n/a:0},budgetStats:{totalSpentUsd:this.events.reduce((o,d)=>o+d.costUsd,0),budgetUtilization:0,downgradeCount:this.events.filter(o=>o.wasDowngraded).length,overrideCount:this.events.filter(o=>o.wasManualOverride).length},period:{start:this.events[0]?.timestamp||e,end:this.events[this.events.length-1]?.timestamp||e}}}reset(){this.events=[]}createEmptyMetrics(){let e=new Date;return{byTier:{},totalDecisions:0,avgDecisionTimeMs:0,p95DecisionTimeMs:0,p99DecisionTimeMs:0,fallbackRate:0,ruleMatchRate:0,estimatedCostSavings:0,agentBoosterStats:{eligible:0,used:0,fallbackToLLM:0,successRate:0},budgetStats:{totalSpentUsd:0,budgetUtilization:0,downgradeCount:0,overrideCount:0},period:{start:e,end:e}}}},p=class{config;complexityAnalyzer;budgetEnforcer;agentBoosterAdapter;cache;metrics;persistentMetricsTracker;patternsLoaded=!1;tierHierarchyFromPatterns=null;constructor(e={},t,r){this.config={...D,...e},this.agentBoosterAdapter=t,this.persistentMetricsTracker=r,this.complexityAnalyzer=U(this.config,t),this.budgetEnforcer=new f(this.config.budgetConfig),this.cache=new w(this.config.enableDecisionCache,1e3,this.config.decisionCacheTtlMs),this.metrics=new M(this.config.enableMetrics)}setPersistentMetricsTracker(e){this.persistentMetricsTracker=e}async loadPatternsFromLoader(){try{let t=await v().getTierHierarchy();if(t){this.tierHierarchyFromPatterns=t,this.patternsLoaded=!0,console.info("[ModelRouter] Loaded tier hierarchy from PatternLoader",{tiers:Object.keys(t)});return}console.debug("[ModelRouter] PatternLoader returned no tier hierarchy, using defaults")}catch(e){console.warn("[ModelRouter] Failed to load patterns from PatternLoader, using defaults",{error:e instanceof Error?e.message:"Unknown error"})}this.patternsLoaded=!1}getPatternsLoaded(){return this.patternsLoaded}getTierHierarchyFromPatterns(){return this.tierHierarchyFromPatterns}async route(e){let t=Date.now(),r=e.metadata?.correlationId;try{let s=this.cache.get(e);if(s)return s;let i=await Promise.race([this.routeInternal(e,t,r),new Promise((c,a)=>setTimeout(()=>a(new x("Routing decision timed out",this.config.maxDecisionTimeMs)),this.config.maxDecisionTimeMs))]);return this.cache.set(e,i),this.recordMetrics(i,!0),i}catch(s){let i=await this.createFallbackDecision(e,t,r,s instanceof Error?s:new Error("Unknown error"));return this.recordMetrics(i,!1),i}}getMetrics(){return this.metrics.getMetrics()}async getAgentBoosterHealth(){if(!this.agentBoosterAdapter)throw new R("Agent Booster adapter not available","AGENT_BOOSTER_UNAVAILABLE");return this.agentBoosterAdapter.getHealth()}resetMetrics(){this.metrics.reset()}async dispose(){this.cache.clear(),this.metrics.reset(),this.agentBoosterAdapter&&await this.agentBoosterAdapter.dispose()}async routeInternal(e,t,r){let s=[];if(e.manualTier!==void 0&&this.config.allowManualOverrides)return this.handleManualOverride(e,e.manualTier,t,r);let i=await this.complexityAnalyzer.analyze(e),c=i.recommendedTier,a=this.estimateCost(c,e.task.length),n=await this.budgetEnforcer.checkBudget(c,a),o=n.approvedTier;s.push(...n.warnings);let d=o===0&&i.signals.isMechanicalTransform,T=this.getModelIdForTier(o),m=this.buildRationale(i,n,o),b=this.buildAlternatives(i,o),y=Date.now()-t;return{tier:o,modelId:T,complexityAnalysis:i,budgetDecision:n,confidence:i.confidence,rationale:m,agentBoosterEligible:d,agentBoosterTransform:d?i.signals.detectedTransformType:void 0,alternativeTiers:b,metadata:{timestamp:new Date,decisionTimeMs:y,fromCache:!1,correlationId:r},warnings:s}}async handleManualOverride(e,t,r,s){let i=await this.complexityAnalyzer.analyze(e),c=this.estimateCost(t,e.task.length),a=await this.budgetEnforcer.checkBudget(t,c);!a.allowed&&e.isCritical&&this.config.budgetConfig.allowCriticalOverrides&&(a={...a,allowed:!0,reason:"Critical task override",warnings:[...a.warnings,"Budget exceeded but allowed due to critical task override"]});let n=a.approvedTier,o=this.getModelIdForTier(n),d=Date.now()-r;return{tier:n,modelId:o,complexityAnalysis:i,budgetDecision:a,confidence:1,rationale:`Manual override to Tier ${n}${a.wasDowngraded?" (downgraded due to budget)":""}`,agentBoosterEligible:n===0,alternativeTiers:[],metadata:{timestamp:new Date,decisionTimeMs:d,fromCache:!1,correlationId:s},warnings:a.warnings}}async createFallbackDecision(e,t,r,s){let i=this.config.fallbackTier,c=this.getModelIdForTier(i),a={overall:50,codeComplexity:50,reasoningComplexity:50,scopeComplexity:50,confidence:.3,signals:{hasArchitectureScope:!1,hasSecurityScope:!1,requiresMultiStepReasoning:!1,requiresCrossDomainCoordination:!1,isMechanicalTransform:!1,requiresCreativity:!1,keywordMatches:{simple:[],moderate:[],complex:[],critical:[]}},recommendedTier:i,alternateTiers:[],explanation:`Fallback to Tier ${i} due to routing error`},n={allowed:!0,reason:"Fallback routing",requestedTier:i,approvedTier:i,wasDowngraded:!1,estimatedCostUsd:0,currentUsage:this.budgetEnforcer.getUsage(i),warnings:[]},o=Date.now()-t;return{tier:i,modelId:c,complexityAnalysis:a,budgetDecision:n,confidence:.3,rationale:`Fallback to Tier ${i} due to error: ${s.message}`,agentBoosterEligible:!1,alternativeTiers:[],metadata:{timestamp:new Date,decisionTimeMs:o,fromCache:!1,correlationId:r},warnings:[`Routing error: ${s.message}`,"Using fallback tier"]}}estimateCost(e,t){let r=[0,.001,.01,.05,.2],s=Math.max(1,t/1e3);return r[e]*s}getModelIdForTier(e){return this.config.tierModels[e]||`tier-${e}-default`}buildRationale(e,t,r){let s=[];return s.push(`Complexity: ${e.overall}/100`),s.push(`Tier ${r} selected`),t.wasDowngraded&&s.push(`Downgraded due to budget: ${t.reason}`),s.push(e.explanation),s.join(". ")}buildAlternatives(e,t){return e.alternateTiers.filter(r=>r!==t).map(r=>({tier:r,modelId:this.getModelIdForTier(r),reason:`Alternative tier ${r}`}))}recordMetrics(e,t){this.metrics.record({timestamp:e.metadata.timestamp,tier:e.tier,complexity:e.complexityAnalysis.overall,costUsd:e.budgetDecision.estimatedCostUsd,latencyMs:e.metadata.decisionTimeMs,wasDowngraded:e.budgetDecision.wasDowngraded,wasManualOverride:!1,agentBoosterEligible:e.agentBoosterEligible,success:t}),this.recordPersistentMetrics(e,t).catch(console.error)}async recordPersistentMetrics(e,t){if(this.persistentMetricsTracker)try{let r=`router-tier${e.tier}-${Date.now()}`;await this.persistentMetricsTracker.recordOutcome("router",r,t,e.metadata.decisionTimeMs,{subType:`tier-${e.tier}`,confidence:e.confidence,usedFallback:e.budgetDecision.wasDowngraded})}catch(r){console.warn("[ModelRouter] Failed to record persistent metrics:",r)}}};function H(u={},e,t){return new p(u,e,t)}async function $(u={},e){let{createAgentBoosterAdapter:t}=await import("./adapter-6CNMDJVJ.js"),r=await t({enabled:!0}),s=new p(u,r,e);return await s.loadPatternsFromLoader(),s}export{p as a,H as b,$ as c};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{a as v}from"./chunk-AKUDUB3O.js";import{h as U}from"./chunk-R7LGVJMZ.js";import{c as D,d as R,e as h,g as x}from"./chunk-QM4Z7TQH.js";var f=class{config;trackers;globalCostTodayUsd=0;lastGlobalReset=new Date;constructor(e){this.config=e,this.trackers=new Map;for(let t of[0,1,2,3,4])this.trackers.set(t,{tier:t,costSpentTodayUsd:0,requestsThisHour:0,requestsToday:0,lastHourlyReset:new Date,lastDailyReset:new Date,requestHistory:[]})}async checkBudget(e,t){if(!this.config.enabled)return this.createAllowedDecision(e,e,t,!1,[]);this.autoReset();let r=this.config.tierBudgets[e];if(!r||!r.enabled)return this.createAllowedDecision(e,e,t,!1,["Tier budget not configured or disabled"]);let s=this.getUsage(e),i=[],c=this.config.maxDailyCostUsd-this.globalCostTodayUsd;if(this.globalCostTodayUsd+t>this.config.maxDailyCostUsd)return this.handleBudgetExceeded(e,t,s,"Global daily budget would be exceeded");if(this.globalCostTodayUsd+t>=this.config.maxDailyCostUsd*this.config.warningThreshold&&(i.push(`Approaching global daily budget limit: $${this.globalCostTodayUsd.toFixed(2)}/$${this.config.maxDailyCostUsd.toFixed(2)}`),this.config.onBudgetWarning==="downgrade"))return this.downgradeTier(e,t,s,i);let a=[{exceeded:s.costSpentTodayUsd+t>r.maxDailyCostUsd,message:`Tier ${e} daily cost limit would be exceeded: $${s.costSpentTodayUsd.toFixed(2)}/$${r.maxDailyCostUsd.toFixed(2)}`},{exceeded:s.requestsThisHour>=r.maxRequestsPerHour,message:`Tier ${e} hourly request limit reached: ${s.requestsThisHour}/${r.maxRequestsPerHour}`},{exceeded:s.requestsToday>=r.maxRequestsPerDay,message:`Tier ${e} daily request limit reached: ${s.requestsToday}/${r.maxRequestsPerDay}`},{exceeded:t>r.maxCostPerRequest,message:`Tier ${e} per-request cost limit would be exceeded: $${t.toFixed(4)}/$${r.maxCostPerRequest.toFixed(4)}`}];for(let n of a)if(n.exceeded)return this.handleBudgetExceeded(e,t,s,n.message);return s.budgetUtilization>=this.config.warningThreshold&&(i.push(`Tier ${e} at ${(s.budgetUtilization*100).toFixed(1)}% of daily budget`),this.config.onBudgetWarning==="downgrade")?this.downgradeTier(e,t,s,i):this.createAllowedDecision(e,e,t,!1,i)}async recordCost(e,t){if(!this.config.enabled)return;let r=this.trackers.get(e);r&&(this.autoReset(),r.costSpentTodayUsd+=t,r.requestsThisHour++,r.requestsToday++,this.globalCostTodayUsd+=t,r.requestHistory.push({timestamp:new Date,costUsd:t}),r.requestHistory.length>1e3&&(r.requestHistory=r.requestHistory.slice(-1e3)))}getUsage(e){this.autoReset();let t=this.trackers.get(e);if(!t)return this.createEmptyUsage(e);let r=this.config.tierBudgets[e];if(!r)return this.createEmptyUsage(e);let s=r.maxDailyCostUsd>0?t.costSpentTodayUsd/r.maxDailyCostUsd:0,i=t.costSpentTodayUsd>=r.maxDailyCostUsd||t.requestsThisHour>=r.maxRequestsPerHour||t.requestsToday>=r.maxRequestsPerDay,c=s>=this.config.warningThreshold,a=new Date,n=new Date(a);return n.setUTCHours(24,0,0,0),{tier:e,costSpentTodayUsd:t.costSpentTodayUsd,requestsThisHour:t.requestsThisHour,requestsToday:t.requestsToday,budgetUtilization:s,isExceeded:i,isNearLimit:c,resetTime:n,remainingBudgetUsd:Math.max(0,r.maxDailyCostUsd-t.costSpentTodayUsd),remainingRequestsThisHour:Math.max(0,r.maxRequestsPerHour-t.requestsThisHour),remainingRequestsToday:Math.max(0,r.maxRequestsPerDay-t.requestsToday)}}getAllUsage(){let e={};for(let t of[0,1,2,3,4])e[t]=this.getUsage(t);return e}reset(){let e=new Date;for(let t of this.trackers.values())t.costSpentTodayUsd=0,t.requestsThisHour=0,t.requestsToday=0,t.lastHourlyReset=e,t.lastDailyReset=e,t.requestHistory=[];this.globalCostTodayUsd=0,this.lastGlobalReset=e}handleBudgetExceeded(e,t,r,s){switch(this.config.onBudgetExceeded){case"error":throw new h(`Budget exceeded: ${s}`,e,r);case"downgrade":return this.downgradeTier(e,t,r,[s]);case"queue":throw new h(`Budget exceeded (queueing not yet implemented): ${s}`,e,r);default:throw new h(`Budget exceeded: ${s}`,e,r)}}downgradeTier(e,t,r,s){for(let i=e-1;i>=0;i--){let c=this.config.tierBudgets[i];if(!c||!c.enabled)continue;let a=this.getUsage(i);if(!a.isExceeded){let n=t*.5;if(a.costSpentTodayUsd+n<=c.maxDailyCostUsd)return this.createAllowedDecision(e,i,n,!0,[...s,`Downgraded from Tier ${e} to Tier ${i} due to budget constraints`])}}throw new h(`Budget exceeded and no lower tier available: ${s.join("; ")}`,e,r)}createAllowedDecision(e,t,r,s,i){let c=this.getUsage(t);return{allowed:!0,reason:s?`Budget enforced: downgraded to Tier ${t}`:"Budget check passed",requestedTier:e,approvedTier:t,wasDowngraded:s,estimatedCostUsd:r,currentUsage:c,warnings:i}}createEmptyUsage(e){let t=new Date,r=new Date(t);return r.setUTCHours(24,0,0,0),{tier:e,costSpentTodayUsd:0,requestsThisHour:0,requestsToday:0,budgetUtilization:0,isExceeded:!1,isNearLimit:!1,resetTime:r,remainingBudgetUsd:0,remainingRequestsThisHour:0,remainingRequestsToday:0}}autoReset(){let e=new Date;this.shouldResetDaily(this.lastGlobalReset,e)&&(this.globalCostTodayUsd=0,this.lastGlobalReset=e);for(let t of this.trackers.values())this.shouldResetHourly(t.lastHourlyReset,e)&&(t.requestsThisHour=0,t.lastHourlyReset=e),this.shouldResetDaily(t.lastDailyReset,e)&&(t.costSpentTodayUsd=0,t.requestsToday=0,t.requestHistory=[],t.lastDailyReset=e)}shouldResetHourly(e,t){return(t.getTime()-e.getTime())/36e5>=1}shouldResetDaily(e,t){return t.getUTCDate()!==e.getUTCDate()||t.getUTCMonth()!==e.getUTCMonth()||t.getUTCFullYear()!==e.getUTCFullYear()}getSessionCostSummary(){this.autoReset();let e=this.config.maxDailyCostUsd,t=0,r={},s={0:"AgentBooster",1:"Haiku",2:"Sonnet",3:"SonnetExtended",4:"Opus"};for(let[c,a]of this.trackers.entries()){let n=this.config.tierBudgets[c],o=s[c]??`Tier${c}`;t+=a.costSpentTodayUsd,r[o]={spent:a.costSpentTodayUsd,limit:n?.maxDailyCostUsd??0,requests:a.requestsToday}}let i=e>0?Math.round(t/e*100):0;return{totalSpentUsd:t,dailyLimitUsd:e,utilizationPercent:i,byTier:r}}};var w=class{cache=new Map;maxSize;ttlMs;enabled;constructor(e,t,r){this.enabled=e,this.maxSize=t,this.ttlMs=r}generateKey(e){return`${e.agentType||"unknown"}:${e.domain||"unknown"}:${e.task.slice(0,100)}`}get(e){if(!this.enabled)return null;let t=this.generateKey(e),r=this.cache.get(t);return r?Date.now()>r.expiresAt?(this.cache.delete(t),null):{...r.decision,metadata:{...r.decision.metadata,fromCache:!0,decisionTimeMs:0}}:null}set(e,t){if(!this.enabled)return;let r=this.generateKey(e);if(this.cache.size>=this.maxSize){let s=this.cache.keys().next().value;s&&this.cache.delete(s)}this.cache.set(r,{decision:t,expiresAt:Date.now()+this.ttlMs})}clear(){this.cache.clear()}getStats(){return{size:this.cache.size,hitRate:0}}},M=class{events=[];enabled;maxEvents=1e4;constructor(e){this.enabled=e}record(e){this.enabled&&(this.events.push(e),this.events.length>this.maxEvents&&(this.events=this.events.slice(-this.maxEvents)))}getMetrics(){if(this.events.length===0)return this.createEmptyMetrics();let e=new Date,t={};for(let o of[0,1,2,3,4]){let d=this.events.filter(l=>l.tier===o);if(d.length===0)continue;let T=d.filter(l=>l.success),m=d.filter(l=>!l.wasManualOverride),b=d.filter(l=>l.wasDowngraded),y=d.map(l=>l.latencyMs).sort((l,g)=>l-g),B=Math.floor(y.length*.95);t[o]={tier:o,selectionCount:d.length,autoRouteCount:m.length,manualOverrideCount:d.length-m.length,budgetDowngradeCount:b.length,successRate:T.length/d.length,avgComplexity:d.reduce((l,g)=>l+g.complexity,0)/d.length,totalCostUsd:d.reduce((l,g)=>l+g.costUsd,0),avgLatencyMs:d.reduce((l,g)=>l+g.latencyMs,0)/d.length,p95LatencyMs:y[B]||0,budgetUtilization:0}}let r=this.events.map(o=>o.latencyMs).sort((o,d)=>o-d),s=Math.floor(r.length*.95),i=Math.floor(r.length*.99),c=this.events.filter(o=>o.agentBoosterEligible).length,a=this.events.filter(o=>o.tier===0).length,n=this.events.filter(o=>o.tier===0&&o.success).length;return{byTier:t,totalDecisions:this.events.length,avgDecisionTimeMs:this.events.reduce((o,d)=>o+d.latencyMs,0)/this.events.length,p95DecisionTimeMs:r[s]||0,p99DecisionTimeMs:r[i]||0,fallbackRate:this.events.filter(o=>o.wasDowngraded).length/this.events.length,ruleMatchRate:this.events.filter(o=>!o.wasManualOverride).length/this.events.length,estimatedCostSavings:0,agentBoosterStats:{eligible:c,used:a,fallbackToLLM:Math.max(0,c-a),successRate:a>0?n/a:0},budgetStats:{totalSpentUsd:this.events.reduce((o,d)=>o+d.costUsd,0),budgetUtilization:0,downgradeCount:this.events.filter(o=>o.wasDowngraded).length,overrideCount:this.events.filter(o=>o.wasManualOverride).length},period:{start:this.events[0]?.timestamp||e,end:this.events[this.events.length-1]?.timestamp||e}}}reset(){this.events=[]}createEmptyMetrics(){let e=new Date;return{byTier:{},totalDecisions:0,avgDecisionTimeMs:0,p95DecisionTimeMs:0,p99DecisionTimeMs:0,fallbackRate:0,ruleMatchRate:0,estimatedCostSavings:0,agentBoosterStats:{eligible:0,used:0,fallbackToLLM:0,successRate:0},budgetStats:{totalSpentUsd:0,budgetUtilization:0,downgradeCount:0,overrideCount:0},period:{start:e,end:e}}}},p=class{config;complexityAnalyzer;budgetEnforcer;agentBoosterAdapter;cache;metrics;persistentMetricsTracker;patternsLoaded=!1;tierHierarchyFromPatterns=null;constructor(e={},t,r){this.config={...D,...e},this.agentBoosterAdapter=t,this.persistentMetricsTracker=r,this.complexityAnalyzer=U(this.config,t),this.budgetEnforcer=new f(this.config.budgetConfig),this.cache=new w(this.config.enableDecisionCache,1e3,this.config.decisionCacheTtlMs),this.metrics=new M(this.config.enableMetrics)}setPersistentMetricsTracker(e){this.persistentMetricsTracker=e}async loadPatternsFromLoader(){try{let t=await v().getTierHierarchy();if(t){this.tierHierarchyFromPatterns=t,this.patternsLoaded=!0,console.info("[ModelRouter] Loaded tier hierarchy from PatternLoader",{tiers:Object.keys(t)});return}console.debug("[ModelRouter] PatternLoader returned no tier hierarchy, using defaults")}catch(e){console.warn("[ModelRouter] Failed to load patterns from PatternLoader, using defaults",{error:e instanceof Error?e.message:"Unknown error"})}this.patternsLoaded=!1}getPatternsLoaded(){return this.patternsLoaded}getTierHierarchyFromPatterns(){return this.tierHierarchyFromPatterns}async route(e){let t=Date.now(),r=e.metadata?.correlationId;try{let s=this.cache.get(e);if(s)return s;let i=await Promise.race([this.routeInternal(e,t,r),new Promise((c,a)=>setTimeout(()=>a(new x("Routing decision timed out",this.config.maxDecisionTimeMs)),this.config.maxDecisionTimeMs))]);return this.cache.set(e,i),this.recordMetrics(i,!0),i}catch(s){let i=await this.createFallbackDecision(e,t,r,s instanceof Error?s:new Error("Unknown error"));return this.recordMetrics(i,!1),i}}getMetrics(){return this.metrics.getMetrics()}async getAgentBoosterHealth(){if(!this.agentBoosterAdapter)throw new R("Agent Booster adapter not available","AGENT_BOOSTER_UNAVAILABLE");return this.agentBoosterAdapter.getHealth()}resetMetrics(){this.metrics.reset()}async dispose(){this.cache.clear(),this.metrics.reset(),this.agentBoosterAdapter&&await this.agentBoosterAdapter.dispose()}async routeInternal(e,t,r){let s=[];if(e.manualTier!==void 0&&this.config.allowManualOverrides)return this.handleManualOverride(e,e.manualTier,t,r);let i=await this.complexityAnalyzer.analyze(e),c=i.recommendedTier,a=this.estimateCost(c,e.task.length),n=await this.budgetEnforcer.checkBudget(c,a),o=n.approvedTier;s.push(...n.warnings);let d=o===0&&i.signals.isMechanicalTransform,T=this.getModelIdForTier(o),m=this.buildRationale(i,n,o),b=this.buildAlternatives(i,o),y=Date.now()-t;return{tier:o,modelId:T,complexityAnalysis:i,budgetDecision:n,confidence:i.confidence,rationale:m,agentBoosterEligible:d,agentBoosterTransform:d?i.signals.detectedTransformType:void 0,alternativeTiers:b,metadata:{timestamp:new Date,decisionTimeMs:y,fromCache:!1,correlationId:r},warnings:s}}async handleManualOverride(e,t,r,s){let i=await this.complexityAnalyzer.analyze(e),c=this.estimateCost(t,e.task.length),a=await this.budgetEnforcer.checkBudget(t,c);!a.allowed&&e.isCritical&&this.config.budgetConfig.allowCriticalOverrides&&(a={...a,allowed:!0,reason:"Critical task override",warnings:[...a.warnings,"Budget exceeded but allowed due to critical task override"]});let n=a.approvedTier,o=this.getModelIdForTier(n),d=Date.now()-r;return{tier:n,modelId:o,complexityAnalysis:i,budgetDecision:a,confidence:1,rationale:`Manual override to Tier ${n}${a.wasDowngraded?" (downgraded due to budget)":""}`,agentBoosterEligible:n===0,alternativeTiers:[],metadata:{timestamp:new Date,decisionTimeMs:d,fromCache:!1,correlationId:s},warnings:a.warnings}}async createFallbackDecision(e,t,r,s){let i=this.config.fallbackTier,c=this.getModelIdForTier(i),a={overall:50,codeComplexity:50,reasoningComplexity:50,scopeComplexity:50,confidence:.3,signals:{hasArchitectureScope:!1,hasSecurityScope:!1,requiresMultiStepReasoning:!1,requiresCrossDomainCoordination:!1,isMechanicalTransform:!1,requiresCreativity:!1,keywordMatches:{simple:[],moderate:[],complex:[],critical:[]}},recommendedTier:i,alternateTiers:[],explanation:`Fallback to Tier ${i} due to routing error`},n={allowed:!0,reason:"Fallback routing",requestedTier:i,approvedTier:i,wasDowngraded:!1,estimatedCostUsd:0,currentUsage:this.budgetEnforcer.getUsage(i),warnings:[]},o=Date.now()-t;return{tier:i,modelId:c,complexityAnalysis:a,budgetDecision:n,confidence:.3,rationale:`Fallback to Tier ${i} due to error: ${s.message}`,agentBoosterEligible:!1,alternativeTiers:[],metadata:{timestamp:new Date,decisionTimeMs:o,fromCache:!1,correlationId:r},warnings:[`Routing error: ${s.message}`,"Using fallback tier"]}}estimateCost(e,t){let r=[0,.001,.01,.05,.2],s=Math.max(1,t/1e3);return r[e]*s}getModelIdForTier(e){return this.config.tierModels[e]||`tier-${e}-default`}buildRationale(e,t,r){let s=[];return s.push(`Complexity: ${e.overall}/100`),s.push(`Tier ${r} selected`),t.wasDowngraded&&s.push(`Downgraded due to budget: ${t.reason}`),s.push(e.explanation),s.join(". ")}buildAlternatives(e,t){return e.alternateTiers.filter(r=>r!==t).map(r=>({tier:r,modelId:this.getModelIdForTier(r),reason:`Alternative tier ${r}`}))}recordMetrics(e,t){this.metrics.record({timestamp:e.metadata.timestamp,tier:e.tier,complexity:e.complexityAnalysis.overall,costUsd:e.budgetDecision.estimatedCostUsd,latencyMs:e.metadata.decisionTimeMs,wasDowngraded:e.budgetDecision.wasDowngraded,wasManualOverride:!1,agentBoosterEligible:e.agentBoosterEligible,success:t}),this.recordPersistentMetrics(e,t).catch(console.error)}async recordPersistentMetrics(e,t){if(this.persistentMetricsTracker)try{let r=`router-tier${e.tier}-${Date.now()}`;await this.persistentMetricsTracker.recordOutcome("router",r,t,e.metadata.decisionTimeMs,{subType:`tier-${e.tier}`,confidence:e.confidence,usedFallback:e.budgetDecision.wasDowngraded})}catch(r){console.warn("[ModelRouter] Failed to record persistent metrics:",r)}}};function H(u={},e,t){return new p(u,e,t)}async function $(u={},e){let{createAgentBoosterAdapter:t}=await import("./adapter-FUV6LBJT.js"),r=await t({enabled:!0}),s=new p(u,r,e);return await s.loadPatternsFromLoader(),s}export{p as a,H as b,$ as c};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{c as h,e as v,g as T}from"./chunk-W3DCBOLL.js";var y={};v(y,{DotProductAttention:()=>z,FlashAttention:()=>k,HyperbolicAttention:()=>C,LinearAttention:()=>j,MoEAttention:()=>W,MultiHeadAttention:()=>F,RuvectorLayer:()=>O,SonaEngine:()=>K,TensorCompress:()=>E,default:()=>I,differentiableSearch:()=>L,getCompressionLevel:()=>B,hierarchicalForward:()=>V,init:()=>D,pipeline:()=>q});import{createRequire as A}from"module";var _,g,I,O,E,L,V,B,D,k,z,F,C,j,W,K,q,R=h(()=>{_=A(import.meta.url),g=_("@ruvector/rvf-node"),I=g,{RuvectorLayer:O,TensorCompress:E,differentiableSearch:L,hierarchicalForward:V,getCompressionLevel:B,init:D,FlashAttention:k,DotProductAttention:z,MultiHeadAttention:F,HyperbolicAttention:C,LinearAttention:j,MoEAttention:W,SonaEngine:K,pipeline:q}=g||{}});var Z={};v(Z,{createRvfStore:()=>$,isRvfNativeAvailable:()=>X,openRvfStore:()=>G,openRvfStoreReadonly:()=>U});import{readFileSync as J,writeFileSync as H,copyFileSync as Q,existsSync as Y}from"fs";function c(){if(S)return m;S=!0;try{let s=(R(),T(y));!s.RvfDatabase&&s.default&&s.default.RvfDatabase&&(s=s.default),m=s}catch{m=null}return m}function w(s){return`${s}.idmap.json`}function N(s){let e=w(s),t=new Map,n=new Map,i=1;if(Y(e))try{let r=JSON.parse(J(e,"utf-8"));i=r.nextLabel;for(let[a,p]of r.entries)t.set(a,p),n.set(p,a)}catch{}return{strToNum:t,numToStr:n,nextLabel:i}}function b(s,e,t){let n={nextLabel:t,entries:Array.from(e.entries())};H(w(s),JSON.stringify(n),"utf-8")}function $(s,e){let t=c();if(!t)throw new Error("@ruvector/rvf-node is not available \u2014 install the package or check platform compatibility");let n=t.RvfDatabase.create(s,{dimension:e}),i=n.dimension();return new d(n,s,i,new Map,new Map,1)}function G(s){let e=c();if(!e)throw new Error("@ruvector/rvf-node is not available \u2014 install the package or check platform compatibility");let t=e.RvfDatabase.open(s),n=t.dimension(),{strToNum:i,numToStr:r,nextLabel:a}=N(s);return new d(t,s,n,i,r,a)}function U(s){let e=c();if(!e)throw new Error("@ruvector/rvf-node is not available \u2014 install the package or check platform compatibility");let t=e.RvfDatabase.openReadonly(s),n=t.dimension(),{strToNum:i,numToStr:r,nextLabel:a}=N(s);return new d(t,s,n,i,r,a)}function X(){return process.env.AQE_MEMORY_BACKEND==="memory"?!1:c()!==null}var m,S,d,P=h(()=>{m=null,S=!1;d=class s{db;_path;_dimension;strToNum;numToStr;nextLabel;_open;constructor(e,t,n,i,r,a){this.db=e,this._path=t,this._dimension=n,this.strToNum=i,this.numToStr=r,this.nextLabel=a,this._open=!0}ingest(e){if(this.ensureOpen(),e.length===0)return{accepted:0,rejected:0};let t=this._dimension,n=new Float32Array(e.length*t),i=[],r=[];for(let o=0;o<e.length;o++){let{id:u,vector:f,metadata:x}=e[o],l=this.strToNum.get(u);l===void 0&&(l=this.nextLabel++,this.strToNum.set(u,l),this.numToStr.set(l,u)),i.push(l),r.push(x);let M=f instanceof Float32Array?f:new Float32Array(f);n.set(M.subarray(0,t),o*t)}let a;if(r.some(o=>o!==void 0)&&typeof this.db.ingestBatchWithMetadata=="function"){let o=r.map(u=>u?JSON.stringify(u):"");a=this.db.ingestBatchWithMetadata(n,i,o)}else a=this.db.ingestBatch(n,i);return this.persistIdMap(),{accepted:a.accepted,rejected:a.rejected}}search(e,t){this.ensureOpen();let n=e instanceof Float32Array?e:new Float32Array(e);return this.db.query(n,t).map(r=>{let a=this.numToStr.get(r.id);return a===void 0?null:{id:a,distance:r.distance,score:1/(1+r.distance)}}).filter(r=>r!==null)}delete(e){this.ensureOpen();let t=[];for(let i of e){let r=this.strToNum.get(i);r!==void 0&&t.push(r)}if(t.length===0)return 0;let n=this.db.delete(t);for(let i of e){let r=this.strToNum.get(i);r!==void 0&&(this.strToNum.delete(i),this.numToStr.delete(r))}return this.persistIdMap(),n.deleted}fork(e){this.ensureOpen(),Q(this._path,e);let t=new Map(this.strToNum),n=new Map(this.numToStr);b(e,t,this.nextLabel);let r=c().RvfDatabase.open(e);return new s(r,e,this._dimension,t,n,this.nextLabel)}status(){this.ensureOpen();let e=this.db.status(),n=this.db.segments().filter(i=>i.segType==="witness");return{totalVectors:e.totalVectors,totalSegments:e.totalSegments,fileSizeBytes:e.fileSize,epoch:e.currentEpoch,witnessValid:n.length>0,witnessEntries:n.length,deadSpaceRatio:typeof e.deadSpaceRatio=="number"?e.deadSpaceRatio:0}}dimension(){return this._dimension}size(){return this.ensureOpen(),this.db.status().totalVectors}compact(){this.ensureOpen();try{let e=this.db.compact();return e&&typeof e=="object"?{segmentsCompacted:typeof e.segmentsCompacted=="number"?e.segmentsCompacted:0,bytesReclaimed:typeof e.bytesReclaimed=="number"?e.bytesReclaimed:0,epoch:typeof e.epoch=="number"?e.epoch:0}:{segmentsCompacted:0,bytesReclaimed:0,epoch:0}}catch{return null}}close(){this._open&&(this.db.close(),this._open=!1)}isOpen(){return this._open}path(){return this._path}embedKernel(e){return this.ensureOpen(),this.db.embedKernel(0,99,0,e,0,"")}extractKernel(){return this.ensureOpen(),this.db.extractKernel()}verifyWitness(){this.ensureOpen();let e=this.tryNative("verifyWitness");return e?{valid:e.valid??!0,totalEntries:e.totalEntries??0,errors:Array.isArray(e.errors)?e.errors:[]}:{valid:!0,totalEntries:0,errors:[]}}sign(e){this.ensureOpen();let t=this.tryNative("sign",e);return typeof t=="string"?t:null}fileId(){this.ensureOpen();let e=this.tryNative("fileId");return typeof e=="string"?e:null}parentId(){this.ensureOpen();let e=this.tryNative("parentId");return typeof e=="string"?e:null}lineageDepth(){this.ensureOpen();let e=this.tryNative("lineageDepth");return typeof e=="number"?e:0}indexStats(){let e=this.status();return{totalVectors:e.totalVectors,dimension:this._dimension,totalSegments:e.totalSegments,fileSizeBytes:e.fileSizeBytes,epoch:e.epoch,witnessValid:e.witnessValid,witnessEntries:e.witnessEntries,idMapSize:this.strToNum.size}}freeze(){this.ensureOpen();let e=this.tryNative("freeze");return typeof e=="number"?e:0}derive(e){this.ensureOpen();let t=c();if(typeof this.db.derive=="function")try{let n=this.db.derive(e),i=new Map(this.strToNum),r=new Map(this.numToStr);return b(e,i,this.nextLabel),new s(n,e,this._dimension,i,r,this.nextLabel)}catch{}return this.fork(e)}ensureOpen(){if(!this._open)throw new Error("RVF database is closed")}tryNative(e,...t){if(typeof this.db[e]!="function")return null;try{return this.db[e](...t)}catch{return null}}persistIdMap(){b(this._path,this.strToNum,this.nextLabel)}}});export{$ as a,G as b,U as c,X as d,Z as e,P as f};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{c as h,e as v,g as T}from"./chunk-ZMYV4R32.js";var y={};v(y,{DotProductAttention:()=>z,FlashAttention:()=>k,HyperbolicAttention:()=>C,LinearAttention:()=>j,MoEAttention:()=>W,MultiHeadAttention:()=>F,RuvectorLayer:()=>O,SonaEngine:()=>K,TensorCompress:()=>E,default:()=>I,differentiableSearch:()=>L,getCompressionLevel:()=>B,hierarchicalForward:()=>V,init:()=>D,pipeline:()=>q});import{createRequire as A}from"module";var _,g,I,O,E,L,V,B,D,k,z,F,C,j,W,K,q,R=h(()=>{_=A(import.meta.url),g=_("@ruvector/rvf-node"),I=g,{RuvectorLayer:O,TensorCompress:E,differentiableSearch:L,hierarchicalForward:V,getCompressionLevel:B,init:D,FlashAttention:k,DotProductAttention:z,MultiHeadAttention:F,HyperbolicAttention:C,LinearAttention:j,MoEAttention:W,SonaEngine:K,pipeline:q}=g||{}});var Z={};v(Z,{createRvfStore:()=>$,isRvfNativeAvailable:()=>X,openRvfStore:()=>G,openRvfStoreReadonly:()=>U});import{readFileSync as J,writeFileSync as H,copyFileSync as Q,existsSync as Y}from"fs";function c(){if(S)return m;S=!0;try{let s=(R(),T(y));!s.RvfDatabase&&s.default&&s.default.RvfDatabase&&(s=s.default),m=s}catch{m=null}return m}function w(s){return`${s}.idmap.json`}function N(s){let e=w(s),t=new Map,n=new Map,i=1;if(Y(e))try{let r=JSON.parse(J(e,"utf-8"));i=r.nextLabel;for(let[a,p]of r.entries)t.set(a,p),n.set(p,a)}catch{}return{strToNum:t,numToStr:n,nextLabel:i}}function b(s,e,t){let n={nextLabel:t,entries:Array.from(e.entries())};H(w(s),JSON.stringify(n),"utf-8")}function $(s,e){let t=c();if(!t)throw new Error("@ruvector/rvf-node is not available \u2014 install the package or check platform compatibility");let n=t.RvfDatabase.create(s,{dimension:e}),i=n.dimension();return new d(n,s,i,new Map,new Map,1)}function G(s){let e=c();if(!e)throw new Error("@ruvector/rvf-node is not available \u2014 install the package or check platform compatibility");let t=e.RvfDatabase.open(s),n=t.dimension(),{strToNum:i,numToStr:r,nextLabel:a}=N(s);return new d(t,s,n,i,r,a)}function U(s){let e=c();if(!e)throw new Error("@ruvector/rvf-node is not available \u2014 install the package or check platform compatibility");let t=e.RvfDatabase.openReadonly(s),n=t.dimension(),{strToNum:i,numToStr:r,nextLabel:a}=N(s);return new d(t,s,n,i,r,a)}function X(){return process.env.AQE_MEMORY_BACKEND==="memory"?!1:c()!==null}var m,S,d,P=h(()=>{m=null,S=!1;d=class s{db;_path;_dimension;strToNum;numToStr;nextLabel;_open;constructor(e,t,n,i,r,a){this.db=e,this._path=t,this._dimension=n,this.strToNum=i,this.numToStr=r,this.nextLabel=a,this._open=!0}ingest(e){if(this.ensureOpen(),e.length===0)return{accepted:0,rejected:0};let t=this._dimension,n=new Float32Array(e.length*t),i=[],r=[];for(let o=0;o<e.length;o++){let{id:u,vector:f,metadata:x}=e[o],l=this.strToNum.get(u);l===void 0&&(l=this.nextLabel++,this.strToNum.set(u,l),this.numToStr.set(l,u)),i.push(l),r.push(x);let M=f instanceof Float32Array?f:new Float32Array(f);n.set(M.subarray(0,t),o*t)}let a;if(r.some(o=>o!==void 0)&&typeof this.db.ingestBatchWithMetadata=="function"){let o=r.map(u=>u?JSON.stringify(u):"");a=this.db.ingestBatchWithMetadata(n,i,o)}else a=this.db.ingestBatch(n,i);return this.persistIdMap(),{accepted:a.accepted,rejected:a.rejected}}search(e,t){this.ensureOpen();let n=e instanceof Float32Array?e:new Float32Array(e);return this.db.query(n,t).map(r=>{let a=this.numToStr.get(r.id);return a===void 0?null:{id:a,distance:r.distance,score:1/(1+r.distance)}}).filter(r=>r!==null)}delete(e){this.ensureOpen();let t=[];for(let i of e){let r=this.strToNum.get(i);r!==void 0&&t.push(r)}if(t.length===0)return 0;let n=this.db.delete(t);for(let i of e){let r=this.strToNum.get(i);r!==void 0&&(this.strToNum.delete(i),this.numToStr.delete(r))}return this.persistIdMap(),n.deleted}fork(e){this.ensureOpen(),Q(this._path,e);let t=new Map(this.strToNum),n=new Map(this.numToStr);b(e,t,this.nextLabel);let r=c().RvfDatabase.open(e);return new s(r,e,this._dimension,t,n,this.nextLabel)}status(){this.ensureOpen();let e=this.db.status(),n=this.db.segments().filter(i=>i.segType==="witness");return{totalVectors:e.totalVectors,totalSegments:e.totalSegments,fileSizeBytes:e.fileSize,epoch:e.currentEpoch,witnessValid:n.length>0,witnessEntries:n.length,deadSpaceRatio:typeof e.deadSpaceRatio=="number"?e.deadSpaceRatio:0}}dimension(){return this._dimension}size(){return this.ensureOpen(),this.db.status().totalVectors}compact(){this.ensureOpen();try{let e=this.db.compact();return e&&typeof e=="object"?{segmentsCompacted:typeof e.segmentsCompacted=="number"?e.segmentsCompacted:0,bytesReclaimed:typeof e.bytesReclaimed=="number"?e.bytesReclaimed:0,epoch:typeof e.epoch=="number"?e.epoch:0}:{segmentsCompacted:0,bytesReclaimed:0,epoch:0}}catch{return null}}close(){this._open&&(this.db.close(),this._open=!1)}isOpen(){return this._open}path(){return this._path}embedKernel(e){return this.ensureOpen(),this.db.embedKernel(0,99,0,e,0,"")}extractKernel(){return this.ensureOpen(),this.db.extractKernel()}verifyWitness(){this.ensureOpen();let e=this.tryNative("verifyWitness");return e?{valid:e.valid??!0,totalEntries:e.totalEntries??0,errors:Array.isArray(e.errors)?e.errors:[]}:{valid:!0,totalEntries:0,errors:[]}}sign(e){this.ensureOpen();let t=this.tryNative("sign",e);return typeof t=="string"?t:null}fileId(){this.ensureOpen();let e=this.tryNative("fileId");return typeof e=="string"?e:null}parentId(){this.ensureOpen();let e=this.tryNative("parentId");return typeof e=="string"?e:null}lineageDepth(){this.ensureOpen();let e=this.tryNative("lineageDepth");return typeof e=="number"?e:0}indexStats(){let e=this.status();return{totalVectors:e.totalVectors,dimension:this._dimension,totalSegments:e.totalSegments,fileSizeBytes:e.fileSizeBytes,epoch:e.epoch,witnessValid:e.witnessValid,witnessEntries:e.witnessEntries,idMapSize:this.strToNum.size}}freeze(){this.ensureOpen();let e=this.tryNative("freeze");return typeof e=="number"?e:0}derive(e){this.ensureOpen();let t=c();if(typeof this.db.derive=="function")try{let n=this.db.derive(e),i=new Map(this.strToNum),r=new Map(this.numToStr);return b(e,i,this.nextLabel),new s(n,e,this._dimension,i,r,this.nextLabel)}catch{}return this.fork(e)}ensureOpen(){if(!this._open)throw new Error("RVF database is closed")}tryNative(e,...t){if(typeof this.db[e]!="function")return null;try{return this.db[e](...t)}catch{return null}}persistIdMap(){b(this._path,this.strToNum,this.nextLabel)}}});export{$ as a,G as b,U as c,X as d,Z as e,P as f};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{a as S}from"./chunk-TL5FMEKW.js";import{c as g}from"./chunk-DR4V75BF.js";import{S as T,b as l}from"./chunk-VUCCPPQ6.js";S();T();import{createRequire as B}from"module";var G=B(import.meta.url),d=class{validateTransfer(e,t){return{approved:!0}}};function R(){if(l().useCoherenceGate)try{let{CoherenceGate:o}=G("./coherence-gate.js");return new o}catch{}return new d}S();var x=g.create("transfer-verification"),A={maxSourceRegression:.05,minTargetImprovement:0,maxSourceConfidenceRegression:.1},b=class{config;constructor(e={}){this.config={...A,...e}}verifyTransfer(e){let t=e.sourcePerformanceAfter.successRate-e.sourcePerformanceBefore.successRate,r=e.targetPerformanceAfter.successRate-e.targetPerformanceBefore.successRate,n=e.sourcePerformanceAfter.avgConfidence-e.sourcePerformanceBefore.avgConfidence,a=e.targetPerformanceAfter.avgConfidence-e.targetPerformanceBefore.avgConfidence,s=t>=-this.config.maxSourceRegression&&n>=-this.config.maxSourceConfidenceRegression,c=r>=this.config.minTargetImprovement,u=s&&c,m;if(!u){let i=[];s||i.push(`source domain regressed: successRate delta=${t.toFixed(4)}, confidence delta=${n.toFixed(4)}`),c||i.push(`target domain did not improve: successRate delta=${r.toFixed(4)}`),m=i.join("; ")}return u?x.debug("Transfer verification passed",{transferId:e.transferId,sourceDelta:t,targetDelta:r}):x.warn("Transfer verification failed",{transferId:e.transferId,sourceDomain:e.sourceDomain,targetDomain:e.targetDomain,sourceDelta:t,targetDelta:r,failureReason:m}),{passed:u,sourceStable:s,targetImproved:c,sourceDelta:t,targetDelta:r,sourceConfidenceDelta:n,targetConfidenceDelta:a,failureReason:m}}getConfig(){return{...this.config}}};function M(o){return new b(o)}T();var p=class{alphas=new Map;betas=new Map;sample(e){let t=this.alphas.get(e)??1,r=this.betas.get(e)??1;return this.sampleBeta(t,r)}update(e,t){t?this.alphas.set(e,(this.alphas.get(e)??1)+1):this.betas.set(e,(this.betas.get(e)??1)+1)}getMean(e){let t=this.alphas.get(e)??1,r=this.betas.get(e)??1;return t/(t+r)}getObservationCount(e){let t=this.alphas.get(e)??1,r=this.betas.get(e)??1;return t-1+(r-1)}getAlpha(e){return this.alphas.get(e)??1}getBeta(e){return this.betas.get(e)??1}sampleBeta(e,t){let r=this.sampleGamma(e),n=this.sampleGamma(t);return r+n===0?.5:r/(r+n)}sampleGamma(e){if(e<1){let n=Math.random();return this.sampleGamma(e+1)*Math.pow(n,1/e)}let t=e-1/3,r=1/Math.sqrt(9*t);for(;;){let n,a;do n=this.standardNormal(),a=1+r*n;while(a<=0);a=a*a*a;let s=Math.random();if(s<1-.0331*n*n*n*n||Math.log(s)<.5*n*n+t*(1-a+Math.log(a)))return t*a}}standardNormal(){let e=Math.random(),t=Math.random();return Math.sqrt(-2*Math.log(e||1e-10))*Math.cos(2*Math.PI*t)}};var I={threshold:5,slack:.5,resetOnAlarm:!0,warmupSamples:20},h=class{config;states=new Map;constructor(e={}){this.config={...I,...e}}update(e,t){let r=this.getOrCreateState(e);if(r.samplesSinceReset++,r.mu===null)return r.warmupSum+=t,r.warmupCount++,r.warmupCount>=this.config.warmupSamples&&(r.mu=r.warmupSum/r.warmupCount),{driftDetected:!1,cumulativeSum:0,direction:"none",samplesSinceReset:r.samplesSinceReset};r.sPlus=Math.max(0,r.sPlus+(t-r.mu-this.config.slack)),r.sMinus=Math.max(0,r.sMinus+(-t+r.mu-this.config.slack));let n=Math.max(r.sPlus,r.sMinus),a=!1,s="none";r.sPlus>this.config.threshold?(a=!0,s="positive"):r.sMinus>this.config.threshold&&(a=!0,s="negative");let c={driftDetected:a,cumulativeSum:n,direction:s,samplesSinceReset:r.samplesSinceReset};return a&&this.config.resetOnAlarm&&(r.sPlus=0,r.sMinus=0,r.samplesSinceReset=0),c}reset(e){e?this.states.delete(e):this.states.clear()}getState(e){let t=this.states.get(e);if(!t)return{driftDetected:!1,cumulativeSum:0,direction:"none",samplesSinceReset:0};let r=Math.max(t.sPlus,t.sMinus),n="none";return t.sPlus>this.config.threshold?n="positive":t.sMinus>this.config.threshold&&(n="negative"),{driftDetected:t.sPlus>this.config.threshold||t.sMinus>this.config.threshold,cumulativeSum:r,direction:n,samplesSinceReset:t.samplesSinceReset}}getOrCreateState(e){let t=this.states.get(e);return t||(t={sPlus:0,sMinus:0,samplesSinceReset:0,warmupSum:0,warmupCount:0,mu:null},this.states.set(e,t)),t}};var w=g.create("domain-transfer"),V={minTransferProbability:.3,explorationWarmup:5,verification:{},maxHistorySize:1e3,useMetaLearningEnhancements:!0},v=class{constructor(e=100){this.decayThreshold=e}decayThreshold;getDecayMultiplier(e){return e<=0?1:Math.pow(.5,e/this.decayThreshold)}applyDecay(e,t,r){return t+(e-t)*this.getDecayMultiplier(r)}},y=class{cusum;outcomes=[];windowSize;constructor(e=20){this.windowSize=e,this.cusum=new h({threshold:3,slack:.1,resetOnAlarm:!1,warmupSamples:Math.min(10,Math.floor(e/2))})}record(e){this.outcomes.push(e),this.outcomes.length>this.windowSize*2&&this.outcomes.splice(0,this.outcomes.length-this.windowSize*2);let t=this.getCurrentRate();this.cusum.update("learn",t)}isPlateaued(){return this.outcomes.length<this.windowSize?!1:!this.cusum.getState("learn").driftDetected}getCurrentRate(){if(this.outcomes.length===0)return 0;let e=this.outcomes.slice(-this.windowSize);return e.filter(Boolean).length/e.length}getOutcomeCount(){return this.outcomes.length}getCusumState(){return this.cusum.getState("learn")}},D=class{front=[];dominates(e,t){let r=e.successRate>=t.successRate&&e.speed>=t.speed&&e.confidence>=t.confidence,n=e.successRate>t.successRate||e.speed>t.speed||e.confidence>t.confidence;return r&&n}add(e){for(let t=this.front.length-1;t>=0;t--)this.dominates(e,this.front[t])&&this.front.splice(t,1);this.front.some(t=>this.dominates(t,e))||this.front.push(e)}getFront(){return[...this.front]}isNonDominated(e){return!this.front.some(t=>this.dominates(t,e))}},C=class{constructor(e=.2){this.bonusScale=e}bonusScale;triedPairs=new Set;markTried(e){this.triedPairs.add(e)}isTried(e){return this.triedPairs.has(e)}getBonus(e){return this.triedPairs.has(e)?0:this.bonusScale}apply(e,t){return Math.min(1,e+this.getBonus(t))}getTriedCount(){return this.triedPairs.size}},P=class{config;sampler;verifier;coherenceGate;transferHistory=[];affinityScores=new Map;performanceProvider=null;transferExecutor=null;nativeModule=null;decayingBeta;plateauDetector;paretoFront;curiosityBonus;constructor(e={}){this.config={...V,...e},this.sampler=new p,this.verifier=M(this.config.verification),this.coherenceGate=R(),this.decayingBeta=new v,this.plateauDetector=new y,this.paretoFront=new D,this.curiosityBonus=new C,this.tryLoadNativeModule()}evaluateTransfer(e,t){if(!this.isEnabled())return this.createRejectedCandidate(e,t);let r=this.makePairKey(e,t),n=this.sampler.sample(r),s=this.sampler.getObservationCount(r)<this.config.explorationWarmup,c=this.getAffinityScore(e,t);if(this.isMetaLearningEnabled()){let u=this.sampler.getMean(r),m=this.sampler.getAlpha(r)-1;n=this.decayingBeta.applyDecay(n,u,m),n=this.curiosityBonus.apply(n,r)}return{sourceDomain:e,targetDomain:t,sampledProbability:n,affinityScore:c,isExploration:s,pairKey:r}}executeTransfer(e){let t=`transfer-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,r=this.coherenceGate.validateTransfer({domain:e.sourceDomain},e.targetDomain);if(!r.approved)return w.info("Transfer blocked by coherence gate",{transferId:t,source:e.sourceDomain,target:e.targetDomain,reason:r.rejectionReason}),this.createBlockedResult(t,e,r);let n=this.getPerformanceSnapshot(e.sourceDomain),a=this.getPerformanceSnapshot(e.targetDomain),s=this.computeSqrtDampening(e),c=this.doTransfer(e.sourceDomain,e.targetDomain,s),u=this.getPerformanceSnapshot(e.sourceDomain),m=this.getPerformanceSnapshot(e.targetDomain),i=this.verifier.verifyTransfer({transferId:t,sourceDomain:e.sourceDomain,targetDomain:e.targetDomain,sourcePerformanceBefore:n,sourcePerformanceAfter:u,targetPerformanceBefore:a,targetPerformanceAfter:m}),f=c&&i.passed;if(this.sampler.update(e.pairKey,f),this.updateAffinityScore(e.pairKey,f),this.isMetaLearningEnabled()){this.plateauDetector.record(f),this.curiosityBonus.markTried(e.pairKey);let F=this.sampler.getMean(e.pairKey);this.paretoFront.add({pairKey:e.pairKey,successRate:F,speed:1/(1+s),confidence:this.getAffinityScore(e.sourceDomain,e.targetDomain)})}return this.addToHistory({transferId:t,sourceDomain:e.sourceDomain,targetDomain:e.targetDomain,success:f,sampledProbability:e.sampledProbability,dampeningFactor:s,sourceDelta:i.sourceDelta,targetDelta:i.targetDelta,timestamp:Date.now()}),w.info("Transfer completed",{transferId:t,source:e.sourceDomain,target:e.targetDomain,success:f,dampeningFactor:s.toFixed(4),sourceDelta:i.sourceDelta.toFixed(4),targetDelta:i.targetDelta.toFixed(4)}),{transferId:t,candidate:e,success:f,dampeningFactor:s,verification:i,coherenceResult:r,sourcePerformanceBefore:n,sourcePerformanceAfter:u,targetPerformanceBefore:a,targetPerformanceAfter:m,timestamp:Date.now()}}getAffinityScore(e,t){return this.affinityScores.get(this.makePairKey(e,t))??.5}getTransferHistory(){return[...this.transferHistory]}getExpectedSuccessRate(e,t){return this.sampler.getMean(this.makePairKey(e,t))}getObservationCount(e,t){return this.sampler.getObservationCount(this.makePairKey(e,t))}setPerformanceProvider(e){this.performanceProvider=e}setTransferExecutor(e){this.transferExecutor=e}getSampler(){return this.sampler}getCoherenceGate(){return this.coherenceGate}getDecayingBeta(){return this.decayingBeta}getPlateauDetector(){return this.plateauDetector}getParetoFront(){return this.paretoFront}getCuriosityBonus(){return this.curiosityBonus}isLearningPlateaued(){return this.plateauDetector.isPlateaued()}isEnabled(){return l().useCrossDomainTransfer===!0}isMetaLearningEnabled(){return this.config.useMetaLearningEnhancements===!0&&l().useMetaLearningEnhancements!==!1}makePairKey(e,t){return`${e}->${t}`}computeSqrtDampening(e){let t=this.sampler.getObservationCount(e.pairKey);return Math.sqrt(t/(t+this.config.explorationWarmup))}doTransfer(e,t,r){return this.transferExecutor?this.transferExecutor(e,t,r):!0}getPerformanceSnapshot(e){return this.performanceProvider?this.performanceProvider(e):{domain:e,successRate:.5,avgConfidence:.5,patternCount:0,timestamp:Date.now()}}updateAffinityScore(e,t){let r=this.affinityScores.get(e)??.5;this.affinityScores.set(e,.2*(t?1:0)+.8*r)}addToHistory(e){for(this.transferHistory.push(e);this.transferHistory.length>this.config.maxHistorySize;)this.transferHistory.shift()}createBlockedResult(e,t,r){let n={domain:"",successRate:0,avgConfidence:0,patternCount:0,timestamp:Date.now()};return{transferId:e,candidate:t,success:!1,dampeningFactor:0,verification:{passed:!1,sourceStable:!1,targetImproved:!1,sourceDelta:0,targetDelta:0,sourceConfidenceDelta:0,targetConfidenceDelta:0,failureReason:`Coherence gate rejected: ${r.rejectionReason??"unknown"}`},coherenceResult:r,sourcePerformanceBefore:{...n,domain:t.sourceDomain},sourcePerformanceAfter:{...n,domain:t.sourceDomain},targetPerformanceBefore:{...n,domain:t.targetDomain},targetPerformanceAfter:{...n,domain:t.targetDomain},timestamp:Date.now()}}createRejectedCandidate(e,t){return{sourceDomain:e,targetDomain:t,sampledProbability:0,affinityScore:0,isExploration:!1,pairKey:this.makePairKey(e,t)}}tryLoadNativeModule(){this.nativeModule=null}};function J(o){return new P(o)}export{h as a,p as b,V as c,v as d,y as e,D as f,C as g,P as h,J as i};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{a as S}from"./chunk-GEQWCK4F.js";import{c as g}from"./chunk-IOJ34SXJ.js";import{S as T,b as l}from"./chunk-AN5CGTTJ.js";S();T();import{createRequire as B}from"module";var G=B(import.meta.url),d=class{validateTransfer(e,t){return{approved:!0}}};function R(){if(l().useCoherenceGate)try{let{CoherenceGate:o}=G("./coherence-gate.js");return new o}catch{}return new d}S();var x=g.create("transfer-verification"),A={maxSourceRegression:.05,minTargetImprovement:0,maxSourceConfidenceRegression:.1},b=class{config;constructor(e={}){this.config={...A,...e}}verifyTransfer(e){let t=e.sourcePerformanceAfter.successRate-e.sourcePerformanceBefore.successRate,r=e.targetPerformanceAfter.successRate-e.targetPerformanceBefore.successRate,n=e.sourcePerformanceAfter.avgConfidence-e.sourcePerformanceBefore.avgConfidence,a=e.targetPerformanceAfter.avgConfidence-e.targetPerformanceBefore.avgConfidence,s=t>=-this.config.maxSourceRegression&&n>=-this.config.maxSourceConfidenceRegression,c=r>=this.config.minTargetImprovement,u=s&&c,m;if(!u){let i=[];s||i.push(`source domain regressed: successRate delta=${t.toFixed(4)}, confidence delta=${n.toFixed(4)}`),c||i.push(`target domain did not improve: successRate delta=${r.toFixed(4)}`),m=i.join("; ")}return u?x.debug("Transfer verification passed",{transferId:e.transferId,sourceDelta:t,targetDelta:r}):x.warn("Transfer verification failed",{transferId:e.transferId,sourceDomain:e.sourceDomain,targetDomain:e.targetDomain,sourceDelta:t,targetDelta:r,failureReason:m}),{passed:u,sourceStable:s,targetImproved:c,sourceDelta:t,targetDelta:r,sourceConfidenceDelta:n,targetConfidenceDelta:a,failureReason:m}}getConfig(){return{...this.config}}};function M(o){return new b(o)}T();var p=class{alphas=new Map;betas=new Map;sample(e){let t=this.alphas.get(e)??1,r=this.betas.get(e)??1;return this.sampleBeta(t,r)}update(e,t){t?this.alphas.set(e,(this.alphas.get(e)??1)+1):this.betas.set(e,(this.betas.get(e)??1)+1)}getMean(e){let t=this.alphas.get(e)??1,r=this.betas.get(e)??1;return t/(t+r)}getObservationCount(e){let t=this.alphas.get(e)??1,r=this.betas.get(e)??1;return t-1+(r-1)}getAlpha(e){return this.alphas.get(e)??1}getBeta(e){return this.betas.get(e)??1}sampleBeta(e,t){let r=this.sampleGamma(e),n=this.sampleGamma(t);return r+n===0?.5:r/(r+n)}sampleGamma(e){if(e<1){let n=Math.random();return this.sampleGamma(e+1)*Math.pow(n,1/e)}let t=e-1/3,r=1/Math.sqrt(9*t);for(;;){let n,a;do n=this.standardNormal(),a=1+r*n;while(a<=0);a=a*a*a;let s=Math.random();if(s<1-.0331*n*n*n*n||Math.log(s)<.5*n*n+t*(1-a+Math.log(a)))return t*a}}standardNormal(){let e=Math.random(),t=Math.random();return Math.sqrt(-2*Math.log(e||1e-10))*Math.cos(2*Math.PI*t)}};var I={threshold:5,slack:.5,resetOnAlarm:!0,warmupSamples:20},h=class{config;states=new Map;constructor(e={}){this.config={...I,...e}}update(e,t){let r=this.getOrCreateState(e);if(r.samplesSinceReset++,r.mu===null)return r.warmupSum+=t,r.warmupCount++,r.warmupCount>=this.config.warmupSamples&&(r.mu=r.warmupSum/r.warmupCount),{driftDetected:!1,cumulativeSum:0,direction:"none",samplesSinceReset:r.samplesSinceReset};r.sPlus=Math.max(0,r.sPlus+(t-r.mu-this.config.slack)),r.sMinus=Math.max(0,r.sMinus+(-t+r.mu-this.config.slack));let n=Math.max(r.sPlus,r.sMinus),a=!1,s="none";r.sPlus>this.config.threshold?(a=!0,s="positive"):r.sMinus>this.config.threshold&&(a=!0,s="negative");let c={driftDetected:a,cumulativeSum:n,direction:s,samplesSinceReset:r.samplesSinceReset};return a&&this.config.resetOnAlarm&&(r.sPlus=0,r.sMinus=0,r.samplesSinceReset=0),c}reset(e){e?this.states.delete(e):this.states.clear()}getState(e){let t=this.states.get(e);if(!t)return{driftDetected:!1,cumulativeSum:0,direction:"none",samplesSinceReset:0};let r=Math.max(t.sPlus,t.sMinus),n="none";return t.sPlus>this.config.threshold?n="positive":t.sMinus>this.config.threshold&&(n="negative"),{driftDetected:t.sPlus>this.config.threshold||t.sMinus>this.config.threshold,cumulativeSum:r,direction:n,samplesSinceReset:t.samplesSinceReset}}getOrCreateState(e){let t=this.states.get(e);return t||(t={sPlus:0,sMinus:0,samplesSinceReset:0,warmupSum:0,warmupCount:0,mu:null},this.states.set(e,t)),t}};var w=g.create("domain-transfer"),V={minTransferProbability:.3,explorationWarmup:5,verification:{},maxHistorySize:1e3,useMetaLearningEnhancements:!0},v=class{constructor(e=100){this.decayThreshold=e}decayThreshold;getDecayMultiplier(e){return e<=0?1:Math.pow(.5,e/this.decayThreshold)}applyDecay(e,t,r){return t+(e-t)*this.getDecayMultiplier(r)}},y=class{cusum;outcomes=[];windowSize;constructor(e=20){this.windowSize=e,this.cusum=new h({threshold:3,slack:.1,resetOnAlarm:!1,warmupSamples:Math.min(10,Math.floor(e/2))})}record(e){this.outcomes.push(e),this.outcomes.length>this.windowSize*2&&this.outcomes.splice(0,this.outcomes.length-this.windowSize*2);let t=this.getCurrentRate();this.cusum.update("learn",t)}isPlateaued(){return this.outcomes.length<this.windowSize?!1:!this.cusum.getState("learn").driftDetected}getCurrentRate(){if(this.outcomes.length===0)return 0;let e=this.outcomes.slice(-this.windowSize);return e.filter(Boolean).length/e.length}getOutcomeCount(){return this.outcomes.length}getCusumState(){return this.cusum.getState("learn")}},D=class{front=[];dominates(e,t){let r=e.successRate>=t.successRate&&e.speed>=t.speed&&e.confidence>=t.confidence,n=e.successRate>t.successRate||e.speed>t.speed||e.confidence>t.confidence;return r&&n}add(e){for(let t=this.front.length-1;t>=0;t--)this.dominates(e,this.front[t])&&this.front.splice(t,1);this.front.some(t=>this.dominates(t,e))||this.front.push(e)}getFront(){return[...this.front]}isNonDominated(e){return!this.front.some(t=>this.dominates(t,e))}},C=class{constructor(e=.2){this.bonusScale=e}bonusScale;triedPairs=new Set;markTried(e){this.triedPairs.add(e)}isTried(e){return this.triedPairs.has(e)}getBonus(e){return this.triedPairs.has(e)?0:this.bonusScale}apply(e,t){return Math.min(1,e+this.getBonus(t))}getTriedCount(){return this.triedPairs.size}},P=class{config;sampler;verifier;coherenceGate;transferHistory=[];affinityScores=new Map;performanceProvider=null;transferExecutor=null;nativeModule=null;decayingBeta;plateauDetector;paretoFront;curiosityBonus;constructor(e={}){this.config={...V,...e},this.sampler=new p,this.verifier=M(this.config.verification),this.coherenceGate=R(),this.decayingBeta=new v,this.plateauDetector=new y,this.paretoFront=new D,this.curiosityBonus=new C,this.tryLoadNativeModule()}evaluateTransfer(e,t){if(!this.isEnabled())return this.createRejectedCandidate(e,t);let r=this.makePairKey(e,t),n=this.sampler.sample(r),s=this.sampler.getObservationCount(r)<this.config.explorationWarmup,c=this.getAffinityScore(e,t);if(this.isMetaLearningEnabled()){let u=this.sampler.getMean(r),m=this.sampler.getAlpha(r)-1;n=this.decayingBeta.applyDecay(n,u,m),n=this.curiosityBonus.apply(n,r)}return{sourceDomain:e,targetDomain:t,sampledProbability:n,affinityScore:c,isExploration:s,pairKey:r}}executeTransfer(e){let t=`transfer-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,r=this.coherenceGate.validateTransfer({domain:e.sourceDomain},e.targetDomain);if(!r.approved)return w.info("Transfer blocked by coherence gate",{transferId:t,source:e.sourceDomain,target:e.targetDomain,reason:r.rejectionReason}),this.createBlockedResult(t,e,r);let n=this.getPerformanceSnapshot(e.sourceDomain),a=this.getPerformanceSnapshot(e.targetDomain),s=this.computeSqrtDampening(e),c=this.doTransfer(e.sourceDomain,e.targetDomain,s),u=this.getPerformanceSnapshot(e.sourceDomain),m=this.getPerformanceSnapshot(e.targetDomain),i=this.verifier.verifyTransfer({transferId:t,sourceDomain:e.sourceDomain,targetDomain:e.targetDomain,sourcePerformanceBefore:n,sourcePerformanceAfter:u,targetPerformanceBefore:a,targetPerformanceAfter:m}),f=c&&i.passed;if(this.sampler.update(e.pairKey,f),this.updateAffinityScore(e.pairKey,f),this.isMetaLearningEnabled()){this.plateauDetector.record(f),this.curiosityBonus.markTried(e.pairKey);let F=this.sampler.getMean(e.pairKey);this.paretoFront.add({pairKey:e.pairKey,successRate:F,speed:1/(1+s),confidence:this.getAffinityScore(e.sourceDomain,e.targetDomain)})}return this.addToHistory({transferId:t,sourceDomain:e.sourceDomain,targetDomain:e.targetDomain,success:f,sampledProbability:e.sampledProbability,dampeningFactor:s,sourceDelta:i.sourceDelta,targetDelta:i.targetDelta,timestamp:Date.now()}),w.info("Transfer completed",{transferId:t,source:e.sourceDomain,target:e.targetDomain,success:f,dampeningFactor:s.toFixed(4),sourceDelta:i.sourceDelta.toFixed(4),targetDelta:i.targetDelta.toFixed(4)}),{transferId:t,candidate:e,success:f,dampeningFactor:s,verification:i,coherenceResult:r,sourcePerformanceBefore:n,sourcePerformanceAfter:u,targetPerformanceBefore:a,targetPerformanceAfter:m,timestamp:Date.now()}}getAffinityScore(e,t){return this.affinityScores.get(this.makePairKey(e,t))??.5}getTransferHistory(){return[...this.transferHistory]}getExpectedSuccessRate(e,t){return this.sampler.getMean(this.makePairKey(e,t))}getObservationCount(e,t){return this.sampler.getObservationCount(this.makePairKey(e,t))}setPerformanceProvider(e){this.performanceProvider=e}setTransferExecutor(e){this.transferExecutor=e}getSampler(){return this.sampler}getCoherenceGate(){return this.coherenceGate}getDecayingBeta(){return this.decayingBeta}getPlateauDetector(){return this.plateauDetector}getParetoFront(){return this.paretoFront}getCuriosityBonus(){return this.curiosityBonus}isLearningPlateaued(){return this.plateauDetector.isPlateaued()}isEnabled(){return l().useCrossDomainTransfer===!0}isMetaLearningEnabled(){return this.config.useMetaLearningEnhancements===!0&&l().useMetaLearningEnhancements!==!1}makePairKey(e,t){return`${e}->${t}`}computeSqrtDampening(e){let t=this.sampler.getObservationCount(e.pairKey);return Math.sqrt(t/(t+this.config.explorationWarmup))}doTransfer(e,t,r){return this.transferExecutor?this.transferExecutor(e,t,r):!0}getPerformanceSnapshot(e){return this.performanceProvider?this.performanceProvider(e):{domain:e,successRate:.5,avgConfidence:.5,patternCount:0,timestamp:Date.now()}}updateAffinityScore(e,t){let r=this.affinityScores.get(e)??.5;this.affinityScores.set(e,.2*(t?1:0)+.8*r)}addToHistory(e){for(this.transferHistory.push(e);this.transferHistory.length>this.config.maxHistorySize;)this.transferHistory.shift()}createBlockedResult(e,t,r){let n={domain:"",successRate:0,avgConfidence:0,patternCount:0,timestamp:Date.now()};return{transferId:e,candidate:t,success:!1,dampeningFactor:0,verification:{passed:!1,sourceStable:!1,targetImproved:!1,sourceDelta:0,targetDelta:0,sourceConfidenceDelta:0,targetConfidenceDelta:0,failureReason:`Coherence gate rejected: ${r.rejectionReason??"unknown"}`},coherenceResult:r,sourcePerformanceBefore:{...n,domain:t.sourceDomain},sourcePerformanceAfter:{...n,domain:t.sourceDomain},targetPerformanceBefore:{...n,domain:t.targetDomain},targetPerformanceAfter:{...n,domain:t.targetDomain},timestamp:Date.now()}}createRejectedCandidate(e,t){return{sourceDomain:e,targetDomain:t,sampledProbability:0,affinityScore:0,isExploration:!1,pairKey:this.makePairKey(e,t)}}tryLoadNativeModule(){this.nativeModule=null}};function J(o){return new P(o)}export{h as a,p as b,V as c,v as d,y as e,D as f,C as g,P as h,J as i};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{l as m}from"./chunk-NBUBGYLE.js";import{a as l,c as d}from"./chunk-OLETDPH2.js";d();var c=class extends m{config={name:"qe/tests/load",description:"Run agent load tests to validate fleet scalability. Supports light, medium, and heavy workload profiles. Uses mock agents by default (safe); set mockMode=false to test with real fleet agents (requires fleet_init). Reports bottlenecks and pass/fail criteria.",domain:"test-execution",schema:this.buildSchema(),timeout:3e5};buildSchema(){return{type:"object",properties:{targetAgents:{type:"number",description:"Target number of concurrent agents to simulate",default:10,minimum:1,maximum:200},profile:{type:"string",description:"Workload profile: light, medium, or heavy",enum:["light","medium","heavy"],default:"medium"},durationMs:{type:"number",description:"Test duration in milliseconds",default:3e4,minimum:5e3,maximum:3e5},mockMode:{type:"boolean",description:"Use mock agents (true, default) or real fleet agents (false, requires fleet_init)",default:!0}}}}async execute(t,u){try{let{createAgentLoadTester:r}=await import("./load-P6XC2P74.js"),a=t.profile||"medium",o=t.targetAgents||10,i=t.durationMs||3e4,n=t.mockMode!==!1,s=await r({maxAgents:o,workloadProfile:a,mockMode:n}).runTest(o,i),e=s.bottlenecks;return{success:!0,data:{testId:u.requestId,profile:a,targetAgents:o,duration:s.duration,mockMode:n,passed:s.success,bottleneckCount:e?.bottlenecks?.length??0,report:{overallSeverity:e?.overallSeverity??"none",hasCritical:e?.hasCritical??!1,checksPerformed:e?.summary?.totalChecks??0,bottlenecksDetected:e?.summary?.detected??0},summary:`Load test (${a}, ${n?"mock":"real"}): ${o} agents, ${i}ms \u2014 ${s.success?"PASSED":"FAILED"}`+(e?.hasCritical?" [CRITICAL BOTTLENECKS]":"")}}}catch(r){return{success:!1,error:l(r)}}}};export{c as a};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{l as m}from"./chunk-XIKYUBIV.js";import{a as l,c as d}from"./chunk-L3GBNX7B.js";d();var c=class extends m{config={name:"qe/tests/load",description:"Run agent load tests to validate fleet scalability. Supports light, medium, and heavy workload profiles. Uses mock agents by default (safe); set mockMode=false to test with real fleet agents (requires fleet_init). Reports bottlenecks and pass/fail criteria.",domain:"test-execution",schema:this.buildSchema(),timeout:3e5};buildSchema(){return{type:"object",properties:{targetAgents:{type:"number",description:"Target number of concurrent agents to simulate",default:10,minimum:1,maximum:200},profile:{type:"string",description:"Workload profile: light, medium, or heavy",enum:["light","medium","heavy"],default:"medium"},durationMs:{type:"number",description:"Test duration in milliseconds",default:3e4,minimum:5e3,maximum:3e5},mockMode:{type:"boolean",description:"Use mock agents (true, default) or real fleet agents (false, requires fleet_init)",default:!0}}}}async execute(t,u){try{let{createAgentLoadTester:r}=await import("./load-A4ZF2KHC.js"),a=t.profile||"medium",o=t.targetAgents||10,i=t.durationMs||3e4,n=t.mockMode!==!1,s=await r({maxAgents:o,workloadProfile:a,mockMode:n}).runTest(o,i),e=s.bottlenecks;return{success:!0,data:{testId:u.requestId,profile:a,targetAgents:o,duration:s.duration,mockMode:n,passed:s.success,bottleneckCount:e?.bottlenecks?.length??0,report:{overallSeverity:e?.overallSeverity??"none",hasCritical:e?.hasCritical??!1,checksPerformed:e?.summary?.totalChecks??0,bottlenecksDetected:e?.summary?.detected??0},summary:`Load test (${a}, ${n?"mock":"real"}): ${o} agents, ${i}ms \u2014 ${s.success?"PASSED":"FAILED"}`+(e?.hasCritical?" [CRITICAL BOTTLENECKS]":"")}}}catch(r){return{success:!1,error:l(r)}}}};export{c as a};
@@ -1,3 +1,3 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
2
- import{c}from"./chunk-W3DCBOLL.js";function u(r){switch(r.toUpperCase()){case"DEBUG":return 0;case"INFO":return 1;case"WARN":case"WARNING":return 2;case"ERROR":return 3;case"SILENT":case"NONE":case"OFF":return 4;default:return 1}}var f,l=c(()=>{"use strict";f={0:"DEBUG",1:"INFO",2:"WARN",3:"ERROR",4:"SILENT"}});var a,s,g,d=c(()=>{"use strict";l();a={includeTimestamp:!0,includeLevel:!0,timestampFormat:"short",prettyPrint:!1,maxContextDepth:3},s=class r{domain;level;config;inheritedContext;constructor(e,n=1,o={},t={}){this.domain=e,this.level=n,this.config={...a,...o},this.inheritedContext=t}debug(e,n){this.level<=0&&this.output(0,e,n)}info(e,n){this.level<=1&&this.output(1,e,n)}warn(e,n){this.level<=2&&this.output(2,e,n)}error(e,n,o){if(this.level<=3){let t={...o};if(n){t.errorName=n.name,t.errorMessage=n.message,n.stack&&(t.stack=n.stack);let i=n;i.cause!==void 0&&(t.cause=String(i.cause))}this.output(3,e,t)}}isEnabled(e){return this.level<=e}getDomain(){return this.domain}child(e){return new r(this.domain,this.level,this.config,{...this.inheritedContext,...e})}output(e,n,o){let t=this.format(e,n,o);switch(e){case 0:console.debug(t);break;case 1:console.info(t);break;case 2:console.warn(t);break;case 3:console.error(t);break}}format(e,n,o){let t=[];this.config.includeTimestamp&&t.push(this.formatTimestamp()),this.config.includeLevel&&t.push(this.formatLevel(e)),t.push(`[${this.domain}]`),t.push(n);let i=this.mergeContext(o);return i&&Object.keys(i).length>0&&t.push(this.formatContext(i)),t.join(" ")}formatTimestamp(){let e=new Date;if(this.config.timestampFormat==="iso")return`[${e.toISOString()}]`;let n=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),t=String(e.getSeconds()).padStart(2,"0"),i=String(e.getMilliseconds()).padStart(3,"0");return`[${n}:${o}:${t}.${i}]`}formatLevel(e){return`[${f[e].padEnd(5)}]`}mergeContext(e){if(!(!e&&Object.keys(this.inheritedContext).length===0))return{...this.inheritedContext,...e}}formatContext(e){try{return this.config.prettyPrint?`
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
+ import{c}from"./chunk-ZMYV4R32.js";function u(r){switch(r.toUpperCase()){case"DEBUG":return 0;case"INFO":return 1;case"WARN":case"WARNING":return 2;case"ERROR":return 3;case"SILENT":case"NONE":case"OFF":return 4;default:return 1}}var f,l=c(()=>{"use strict";f={0:"DEBUG",1:"INFO",2:"WARN",3:"ERROR",4:"SILENT"}});var a,s,g,d=c(()=>{"use strict";l();a={includeTimestamp:!0,includeLevel:!0,timestampFormat:"short",prettyPrint:!1,maxContextDepth:3},s=class r{domain;level;config;inheritedContext;constructor(e,n=1,o={},t={}){this.domain=e,this.level=n,this.config={...a,...o},this.inheritedContext=t}debug(e,n){this.level<=0&&this.output(0,e,n)}info(e,n){this.level<=1&&this.output(1,e,n)}warn(e,n){this.level<=2&&this.output(2,e,n)}error(e,n,o){if(this.level<=3){let t={...o};if(n){t.errorName=n.name,t.errorMessage=n.message,n.stack&&(t.stack=n.stack);let i=n;i.cause!==void 0&&(t.cause=String(i.cause))}this.output(3,e,t)}}isEnabled(e){return this.level<=e}getDomain(){return this.domain}child(e){return new r(this.domain,this.level,this.config,{...this.inheritedContext,...e})}output(e,n,o){let t=this.format(e,n,o);switch(e){case 0:console.debug(t);break;case 1:console.info(t);break;case 2:console.warn(t);break;case 3:console.error(t);break}}format(e,n,o){let t=[];this.config.includeTimestamp&&t.push(this.formatTimestamp()),this.config.includeLevel&&t.push(this.formatLevel(e)),t.push(`[${this.domain}]`),t.push(n);let i=this.mergeContext(o);return i&&Object.keys(i).length>0&&t.push(this.formatContext(i)),t.join(" ")}formatTimestamp(){let e=new Date;if(this.config.timestampFormat==="iso")return`[${e.toISOString()}]`;let n=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),t=String(e.getSeconds()).padStart(2,"0"),i=String(e.getMilliseconds()).padStart(3,"0");return`[${n}:${o}:${t}.${i}]`}formatLevel(e){return`[${f[e].padEnd(5)}]`}mergeContext(e){if(!(!e&&Object.keys(this.inheritedContext).length===0))return{...this.inheritedContext,...e}}formatContext(e){try{return this.config.prettyPrint?`
3
3
  `+JSON.stringify(e,this.createReplacer(),2):JSON.stringify(e,this.createReplacer())}catch{return"[unserializable context]"}}createReplacer(){let e=new WeakSet,n=0;return(o,t)=>{if(typeof t=="object"&&t!==null){if(n>=this.config.maxContextDepth)return"[object]";if(e.has(t))return"[circular]";e.add(t),n++}return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:typeof t=="bigint"?t.toString():typeof t=="function"?"[function]":typeof t=="symbol"?t.toString():t}}},g=class{domain;constructor(e="null"){this.domain=e}debug(e,n){}info(e,n){}warn(e,n){}error(e,n,o){}isEnabled(e){return!1}getDomain(){return this.domain}child(e){return this}}});function F(r,e){return L.create(r,e)}var v,L,m=c(()=>{"use strict";l();d();v={defaultLevel:1,domainLevels:new Map,consoleConfig:a,silent:!1},L=class{static config={...v};static customProvider=null;static instances=new Map;static setLevel(e){this.config.defaultLevel=e,this.instances.clear()}static setLevelFromString(e){this.setLevel(u(e))}static getLevel(){return this.config.defaultLevel}static setDomainLevel(e,n){this.config.domainLevels.set(e,n),this.instances.delete(e)}static getDomainLevel(e){return this.config.domainLevels.get(e)??this.config.defaultLevel}static clearDomainLevel(e){this.config.domainLevels.delete(e),this.instances.delete(e)}static configure(e){this.config.consoleConfig={...this.config.consoleConfig,...e},this.instances.clear()}static setSilent(e){this.config.silent=e,this.instances.clear()}static isSilent(){return this.config.silent}static setProvider(e){this.customProvider=e,this.instances.clear()}static create(e,n){if(!n&&this.instances.has(e))return this.instances.get(e);let o=this.getDomainLevel(e),t;return this.config.silent?t=new g(e):this.customProvider?t=this.customProvider(e,o,n):t=new s(e,o,this.config.consoleConfig,n),n||this.instances.set(e,t),t}static getLogger(e,n){return this.create(e,n)}static reset(){this.config={defaultLevel:1,domainLevels:new Map,consoleConfig:{...a},silent:!1},this.customProvider=null,this.instances.clear()}static initFromEnv(){let e=process.env.LOG_LEVEL;e&&this.setLevelFromString(e);let n=process.env.LOG_TIMESTAMP;n!==void 0&&this.configure({includeTimestamp:n.toLowerCase()==="true"});let o=process.env.LOG_PRETTY;o!==void 0&&this.configure({prettyPrint:o.toLowerCase()==="true"})}static getStats(){return{cachedLoggers:this.instances.size,domains:Array.from(this.instances.keys()),domainOverrides:this.config.domainLevels.size,currentLevel:this.config.defaultLevel,silent:this.config.silent}}}});export{l as a,d as b,L as c,F as d,m as e};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.10");process.exit(0)}
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.13.12");process.exit(0)}
2
2
  var u="quality-assessment";var o=["coverage","testsPassing","criticalBugs","codeSmells","securityVulnerabilities","technicalDebt","duplications"],d={coverage:{direction:"min",value:80,severity:"high"},testsPassing:{direction:"min",value:95,severity:"critical"},criticalBugs:{direction:"max",value:0,severity:"critical"},codeSmells:{direction:"max",value:20,severity:"medium"},securityVulnerabilities:{direction:"max",value:0,severity:"critical"},technicalDebt:{direction:"max",value:5,severity:"medium"},duplications:{direction:"max",value:5,severity:"low"}};function c(a){return`quality-evidence:${a}:latest`}function l(a,t,e){if(typeof a!="string")throw new Error("Measured quality evidence is malformed: measuredAt is required.");let r=Date.parse(a);if(!Number.isFinite(r))throw new Error("Measured quality evidence is malformed: measuredAt is invalid.");if(r>t+6e4)throw new Error("Measured quality evidence is malformed: measuredAt is in the future.");if(t-r>e)throw new Error("Measured quality evidence is stale. Run the relevant quality analyzers again.");return r}function m(a,t,e,r){if(!a||typeof a!="object")throw new Error(`No measured quality evidence found for ${t}.`);let i=a;if(i.schemaVersion!==1||i.metric!==t||!Number.isFinite(i.value)||i.value<0||typeof i.source!="string"||i.source.trim().length===0)throw new Error(`Measured quality evidence for ${t} is malformed or incomplete.`);l(i.measuredAt,e,r)}async function v(a,t,e){let r=Date.now();if(l(e.measuredAt,r,Number.POSITIVE_INFINITY),e.source.trim().length===0)throw new Error("Quality evidence source is required.");for(let i of o){let n=t[i];if(n===void 0)continue;if(!Number.isFinite(n)||n<0)throw new Error(`Quality evidence value for ${i} must be a non-negative finite number.`);let s={schemaVersion:1,metric:i,value:n,measuredAt:e.measuredAt,source:e.source};await a.set(c(i),s,{namespace:u,persist:!0})}}async function y(a,t={}){let e=t.now??Date.now(),r=t.maxAgeMs??864e5,i={};for(let n of o){let s=await a.get(c(n),{namespace:u});m(s,n,e,r),i[n]=s.value}return i}function E(a){let t=o.map(e=>{let r=d[e],i=a[e];return{name:e,value:i,threshold:r.value,direction:r.direction,severity:r.severity,passed:r.direction==="min"?i>=r.value:i<=r.value}});return{passed:t.every(e=>e.passed),checks:t,recommendations:t.filter(e=>!e.passed).map(e=>`${e.name} failed its measured ${e.direction} threshold.`)}}export{d as a,v as b,y as c,E as d};