agentic-qe 3.9.25 → 3.9.26

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 (295) hide show
  1. package/.claude/skills/skills-manifest.json +1 -1
  2. package/CHANGELOG.md +104 -0
  3. package/assets/skills/skills-manifest.json +1 -1
  4. package/dist/cli/bundle.js +5 -5
  5. package/dist/cli/chunks/adapter-LIPKRUFH.js +2 -0
  6. package/dist/cli/chunks/{agent-booster-wasm-3JH5PJWN.js → agent-booster-wasm-ZOADSKRX.js} +2 -2
  7. package/dist/cli/chunks/{agent-handler-3FEJU2TM.js → agent-handler-SPLFCIHA.js} +2 -2
  8. package/dist/cli/chunks/{agent-memory-branch-FCLJ7NQB.js → agent-memory-branch-R6ZVL2FT.js} +2 -2
  9. package/dist/cli/chunks/aqe-learning-engine-XJGJ6YS7.js +2 -0
  10. package/dist/cli/chunks/{audit-FSLEJMM5.js → audit-6TQQFGQN.js} +2 -2
  11. package/dist/cli/chunks/base-22RFSMJU.js +2 -0
  12. package/dist/cli/chunks/{hnswlib-node-KUWXTCD4.js → better-sqlite3-QIKWKEGD.js} +2 -2
  13. package/dist/cli/chunks/{brain-handler-IVRXCPLL.js → brain-handler-6BQCTD3M.js} +3 -3
  14. package/dist/cli/chunks/{branch-enumerator-EXW3AFAQ.js → branch-enumerator-JTESSKID.js} +2 -2
  15. package/dist/cli/chunks/{browser-3J6OTKWZ.js → browser-YDZLFZNH.js} +2 -2
  16. package/dist/cli/chunks/browser-workflow-ST7DX7KA.js +2 -0
  17. package/dist/cli/chunks/{chunk-5RJENBAG.js → chunk-22YZRYG4.js} +3 -3
  18. package/dist/cli/chunks/{chunk-SDOG2MMY.js → chunk-2OFL5HSB.js} +2 -2
  19. package/dist/cli/chunks/{chunk-7VNGENWZ.js → chunk-2XOIJE7J.js} +2 -2
  20. package/dist/cli/chunks/{chunk-V3L3FD4I.js → chunk-3K2QCWFD.js} +1 -1
  21. package/dist/cli/chunks/{chunk-WOD7Y7NC.js → chunk-3QPQZJUY.js} +2 -2
  22. package/dist/cli/chunks/{chunk-VUEYEMMJ.js → chunk-4EBC7ATS.js} +9 -9
  23. package/dist/cli/chunks/{chunk-IJH3WAC4.js → chunk-4F6RPT7N.js} +3 -3
  24. package/dist/cli/chunks/{chunk-F3IEJL4O.js → chunk-4GUVB7FG.js} +2 -2
  25. package/dist/cli/chunks/{chunk-R7VO6E3E.js → chunk-4I6XGKSB.js} +2 -2
  26. package/dist/cli/chunks/{chunk-LFD3YTNY.js → chunk-4QUKBJAS.js} +2 -2
  27. package/dist/cli/chunks/{chunk-M4GE3R5K.js → chunk-4RFODPDS.js} +2 -2
  28. package/dist/cli/chunks/{chunk-DZVIMPC2.js → chunk-4U57VG6R.js} +2 -2
  29. package/dist/cli/chunks/{chunk-LTWNVZDR.js → chunk-4ZAOHYFA.js} +2 -2
  30. package/dist/cli/chunks/{chunk-GV3LIGPJ.js → chunk-5JGFDJA6.js} +2 -2
  31. package/dist/cli/chunks/{chunk-5SGWYFOV.js → chunk-5TTQNRAP.js} +1 -1
  32. package/dist/cli/chunks/{chunk-UHWGEZXG.js → chunk-6AH4SN6I.js} +1 -1
  33. package/dist/cli/chunks/{chunk-X66FBTTD.js → chunk-6UFMNYQV.js} +1 -1
  34. package/dist/cli/chunks/{chunk-3ITRVWXL.js → chunk-6VRKHHYI.js} +1 -1
  35. package/dist/cli/chunks/{chunk-I5WMRFJ2.js → chunk-7L3F76MS.js} +3 -3
  36. package/dist/cli/chunks/{chunk-XXG6OQSR.js → chunk-7T2KT74O.js} +25 -9
  37. package/dist/cli/chunks/{chunk-NURG5LQO.js → chunk-A4U4DNPR.js} +1 -1
  38. package/dist/cli/chunks/{chunk-W7ULVE22.js → chunk-AGBIQXB4.js} +2 -2
  39. package/dist/cli/chunks/{chunk-DPDDWIL7.js → chunk-AH3IPNOJ.js} +2 -2
  40. package/dist/cli/chunks/{chunk-AQXKM5VB.js → chunk-ANEIDNH7.js} +2 -2
  41. package/dist/cli/chunks/{chunk-I5AVFRDJ.js → chunk-AOURUJFN.js} +1 -1
  42. package/dist/cli/chunks/{chunk-3OPXTQMB.js → chunk-ARLHD5MG.js} +1 -1
  43. package/dist/cli/chunks/{chunk-74YWPNUB.js → chunk-AUD45G7X.js} +2 -2
  44. package/dist/cli/chunks/{chunk-THQNIMJU.js → chunk-B3KHJQ34.js} +2 -2
  45. package/dist/cli/chunks/{chunk-7YV5T64G.js → chunk-BBALCRJM.js} +1 -1
  46. package/dist/cli/chunks/{chunk-4EUPBVPV.js → chunk-BFSKBIAM.js} +1 -1
  47. package/dist/cli/chunks/{chunk-AFQNJJWA.js → chunk-BOV44F3Z.js} +2 -2
  48. package/dist/cli/chunks/{chunk-J2O5RRNH.js → chunk-C5ZA6UBI.js} +1 -1
  49. package/dist/cli/chunks/{chunk-EY2W47L3.js → chunk-C77FS4ER.js} +2 -2
  50. package/dist/cli/chunks/{chunk-N64WUFUI.js → chunk-CBBVUZFD.js} +4 -4
  51. package/dist/cli/chunks/{chunk-W2OPF27P.js → chunk-CMFRBO4N.js} +3 -3
  52. package/dist/cli/chunks/{chunk-MVT2F4Z4.js → chunk-CU5Q46NR.js} +4 -4
  53. package/dist/cli/chunks/{chunk-IV4OBL4P.js → chunk-CYPOU765.js} +1 -1
  54. package/dist/cli/chunks/{chunk-5XCHNZNW.js → chunk-DBSEDJ7P.js} +2 -2
  55. package/dist/cli/chunks/{chunk-4DVQS5LA.js → chunk-EEWGVVKH.js} +2 -2
  56. package/dist/cli/chunks/{chunk-LKRGOCDO.js → chunk-EFAN5HUX.js} +2 -2
  57. package/dist/cli/chunks/{chunk-FFP7OV5L.js → chunk-EPCKRFMU.js} +2 -2
  58. package/dist/cli/chunks/{chunk-HLVL2N5U.js → chunk-EQ4IZRD5.js} +2 -2
  59. package/dist/cli/chunks/{chunk-4FRRDVWH.js → chunk-ETBVBV2M.js} +2 -2
  60. package/dist/cli/chunks/{chunk-M4F7EAR6.js → chunk-EX7UGFWX.js} +2 -2
  61. package/dist/cli/chunks/{chunk-MP4GPPOD.js → chunk-EYFL6QLX.js} +2 -2
  62. package/dist/cli/chunks/{chunk-MMWH7D2O.js → chunk-F24XTOID.js} +2 -2
  63. package/dist/cli/chunks/{chunk-P5ZV4RCF.js → chunk-F77VZ4IY.js} +2 -2
  64. package/dist/cli/chunks/{chunk-AZ3GC5UX.js → chunk-FDC2ANCP.js} +3 -3
  65. package/dist/cli/chunks/{chunk-TCRBP7GO.js → chunk-FRUDEEZH.js} +1 -1
  66. package/dist/cli/chunks/{chunk-NIXA5DVA.js → chunk-FWPV44HL.js} +2 -2
  67. package/dist/cli/chunks/{chunk-76RCKSCL.js → chunk-G3KTLF57.js} +2 -2
  68. package/dist/cli/chunks/{chunk-PFH2G7AP.js → chunk-G42KXBBG.js} +2 -2
  69. package/dist/cli/chunks/{chunk-3LSHQUQ2.js → chunk-GHQ6QT47.js} +2 -2
  70. package/dist/cli/chunks/{chunk-2ZN6YGSA.js → chunk-GW5T4BSO.js} +5 -5
  71. package/dist/cli/chunks/{chunk-2ACE3T6H.js → chunk-HKHRIPXP.js} +7 -7
  72. package/dist/cli/chunks/{chunk-MYDJYPBT.js → chunk-HSQLB4GR.js} +2 -2
  73. package/dist/cli/chunks/{chunk-FUNP4GGE.js → chunk-IKRLPS4M.js} +2 -2
  74. package/dist/cli/chunks/{chunk-JPB44BMP.js → chunk-IVNZLESN.js} +2 -2
  75. package/dist/cli/chunks/{chunk-U67BTJC3.js → chunk-JWKNHSXP.js} +2 -2
  76. package/dist/cli/chunks/{chunk-Q3MHHREJ.js → chunk-K64UL5PA.js} +2 -2
  77. package/dist/cli/chunks/{chunk-OJ7RJC7F.js → chunk-KQQPUHQD.js} +1 -1
  78. package/dist/cli/chunks/{chunk-QJKXAYOM.js → chunk-LP7ILPFQ.js} +2 -2
  79. package/dist/cli/chunks/{chunk-75PD5ATI.js → chunk-LPDPGCDC.js} +2 -2
  80. package/dist/cli/chunks/{chunk-VLNCDVU6.js → chunk-MAPQ2UZ5.js} +2 -2
  81. package/dist/cli/chunks/{chunk-H6IV3LHA.js → chunk-MSPY7HMF.js} +2 -2
  82. package/dist/cli/chunks/{chunk-6UH7B3PE.js → chunk-MTRA6I7Y.js} +1 -1
  83. package/dist/cli/chunks/{chunk-W5RRYCQ7.js → chunk-MW4WEMLE.js} +2 -2
  84. package/dist/cli/chunks/{chunk-CRTUB5NH.js → chunk-MXZY5IJA.js} +1 -1
  85. package/dist/cli/chunks/{chunk-XMYX6HAG.js → chunk-N2ET2TL5.js} +2 -2
  86. package/dist/cli/chunks/{chunk-JXSEJIIB.js → chunk-N3GLRFMH.js} +1 -1
  87. package/dist/cli/chunks/{chunk-ML7AEOPI.js → chunk-OFAXQGU5.js} +2 -2
  88. package/dist/cli/chunks/{chunk-XPXL75LN.js → chunk-ONYCSOAR.js} +1 -1
  89. package/dist/cli/chunks/{chunk-4GVLZIHN.js → chunk-P6M6LNSI.js} +2 -2
  90. package/dist/cli/chunks/{chunk-2IRRXFBV.js → chunk-PJPNRDEF.js} +2 -2
  91. package/dist/cli/chunks/{chunk-R3OII6WM.js → chunk-PLB75ASZ.js} +1 -1
  92. package/dist/cli/chunks/{chunk-73SPNQDP.js → chunk-PPP7KZQL.js} +2 -2
  93. package/dist/cli/chunks/{chunk-5ZADSKFC.js → chunk-PS7YB3IV.js} +3 -3
  94. package/dist/cli/chunks/{chunk-KYDLYPOG.js → chunk-PSOF6DZA.js} +8 -8
  95. package/dist/cli/chunks/{chunk-T5WFV3EH.js → chunk-QFXOKERO.js} +1 -1
  96. package/dist/cli/chunks/{chunk-VRNRR3VU.js → chunk-QQMGUORN.js} +2 -2
  97. package/dist/cli/chunks/{chunk-QOVAU4DT.js → chunk-QU7TNCUB.js} +1 -1
  98. package/dist/cli/chunks/{chunk-MAWGLIAE.js → chunk-QUHNBIUZ.js} +1 -1
  99. package/dist/cli/chunks/{chunk-5DOCH2OX.js → chunk-QXQWQRZA.js} +1 -1
  100. package/dist/cli/chunks/{chunk-XC34CWA3.js → chunk-RD3CNJWR.js} +2 -2
  101. package/dist/cli/chunks/{chunk-JFWRCQCV.js → chunk-RLAXE5HU.js} +2 -2
  102. package/dist/cli/chunks/{chunk-XBBNMF3C.js → chunk-RNVXTNEB.js} +2 -2
  103. package/dist/cli/chunks/chunk-RSNZQ3MN.js +2 -0
  104. package/dist/cli/chunks/{chunk-4ASWQOFE.js → chunk-RXQX6JNQ.js} +2 -2
  105. package/dist/cli/chunks/{chunk-VZVHYH7B.js → chunk-SDD3XQ7X.js} +1 -1
  106. package/dist/cli/chunks/{chunk-NADXRFKX.js → chunk-SGGYSL7J.js} +1 -1
  107. package/dist/cli/chunks/{chunk-7G2UJMKQ.js → chunk-SYQZPNHQ.js} +2 -2
  108. package/dist/cli/chunks/{chunk-PMAMZZ6B.js → chunk-SYRUG2T7.js} +1 -1
  109. package/dist/cli/chunks/{chunk-X33KZ6WO.js → chunk-TLBP7EVX.js} +1 -1
  110. package/dist/cli/chunks/{chunk-6IRQAAMQ.js → chunk-TQBP3YGG.js} +1 -1
  111. package/dist/cli/chunks/{chunk-7QILWWRD.js → chunk-TRIA62JA.js} +2 -2
  112. package/dist/cli/chunks/{chunk-DNIU6W6Z.js → chunk-TU2A5BGA.js} +2 -2
  113. package/dist/cli/chunks/{chunk-SKRQF45C.js → chunk-TZ73IAF5.js} +2 -2
  114. package/dist/cli/chunks/{chunk-XBGO4NQE.js → chunk-U5BMUXV2.js} +2 -2
  115. package/dist/cli/chunks/{chunk-P6REB3IC.js → chunk-UJPERPQU.js} +1 -1
  116. package/dist/cli/chunks/{chunk-OGBDSSVO.js → chunk-VBJ4UQ3X.js} +2 -2
  117. package/dist/cli/chunks/{chunk-FHKQSSQT.js → chunk-VC2FHUOY.js} +2 -2
  118. package/dist/cli/chunks/{chunk-KAVN56IT.js → chunk-VHHFSVR3.js} +2 -2
  119. package/dist/cli/chunks/{chunk-ZGGHGWXF.js → chunk-VPPXZORB.js} +1 -1
  120. package/dist/cli/chunks/{chunk-VYFRA4ZP.js → chunk-WCI2FMWZ.js} +1 -1
  121. package/dist/cli/chunks/{chunk-ILIKB32B.js → chunk-WND3EYCS.js} +2 -2
  122. package/dist/cli/chunks/{chunk-FO3VJDCI.js → chunk-XAA7ZBNG.js} +1 -1
  123. package/dist/cli/chunks/{chunk-KVZKBPKC.js → chunk-XDEF6UFY.js} +2 -2
  124. package/dist/cli/chunks/{chunk-FL2G2VFC.js → chunk-XHENTAXI.js} +2 -2
  125. package/dist/cli/chunks/{chunk-5KWOG53N.js → chunk-XYMUYLHY.js} +1 -1
  126. package/dist/cli/chunks/{chunk-HEVA2HR3.js → chunk-Y3YJMKXS.js} +2 -2
  127. package/dist/cli/chunks/{chunk-6PW5L2SC.js → chunk-YCZEXLKL.js} +2 -2
  128. package/dist/cli/chunks/{chunk-73SK2MNU.js → chunk-YUMVG55I.js} +2 -2
  129. package/dist/cli/chunks/{chunk-EKQI2HRL.js → chunk-YYOKX7VH.js} +2 -2
  130. package/dist/cli/chunks/{chunk-QFNWLRPV.js → chunk-ZFLD5ATZ.js} +2 -2
  131. package/dist/cli/chunks/{chunk-XNXFB4TV.js → chunk-ZUUNOGHI.js} +2 -2
  132. package/dist/cli/chunks/{ci-2UUAA532.js → ci-EAX5WWT6.js} +2 -2
  133. package/dist/cli/chunks/{ci-output-NLBMSDOP.js → ci-output-JCWHRJ2A.js} +2 -2
  134. package/dist/cli/chunks/{circuit-breaker-UMHTVSA2.js → circuit-breaker-RAEDVT33.js} +2 -2
  135. package/dist/cli/chunks/{claude-flow-setup-Q6A7T2CH.js → claude-flow-setup-NJAY4WXY.js} +2 -2
  136. package/dist/cli/chunks/client-6463JNJR.js +2 -0
  137. package/dist/cli/chunks/{cline-installer-UPIZH2ZF.js → cline-installer-X3GCUEWC.js} +2 -2
  138. package/dist/cli/chunks/{code-TPVQFW7C.js → code-GXJ6JC6O.js} +2 -2
  139. package/dist/cli/chunks/{code-index-extractor-Z7J3RZ4Q.js → code-index-extractor-TTA7HZEW.js} +2 -2
  140. package/dist/cli/chunks/{codex-installer-GTT3IBZT.js → codex-installer-TXMSGJHK.js} +2 -2
  141. package/dist/cli/chunks/{completions-TXYGM6BK.js → completions-RSFIDY22.js} +2 -2
  142. package/dist/cli/chunks/{complexity-analyzer-HMXULCFI.js → complexity-analyzer-C6244ZOI.js} +2 -2
  143. package/dist/cli/chunks/{continuedev-installer-3GDGFMEE.js → continuedev-installer-5WQIRQW4.js} +2 -2
  144. package/dist/cli/chunks/{copilot-installer-S4KIV6OT.js → copilot-installer-5Q64SC52.js} +2 -2
  145. package/dist/cli/chunks/{cost-tracker-E2M57AGD.js → cost-tracker-6SBRULNN.js} +2 -2
  146. package/dist/cli/chunks/{coverage-NXF6THG2.js → coverage-X2AG3K6E.js} +3 -3
  147. package/dist/cli/chunks/cross-domain-router-OYUCD42M.js +2 -0
  148. package/dist/cli/chunks/{cursor-installer-GSMPSNIZ.js → cursor-installer-VHZ5LEPG.js} +2 -2
  149. package/dist/cli/chunks/{daemon-IGNIH3TQ.js → daemon-CDQXWIV4.js} +3 -3
  150. package/dist/cli/chunks/{dag-attention-scheduler-FFCTYK3P.js → dag-attention-scheduler-33UWNTSB.js} +2 -2
  151. package/dist/cli/chunks/{detect-CFB72DRI.js → detect-UDWTKRQL.js} +2 -2
  152. package/dist/cli/chunks/{dist-node-RGD4BMAQ.js → dist-node-CKTPNPBG.js} +2 -2
  153. package/dist/cli/chunks/{domain-handler-SAKJIOXO.js → domain-handler-5J4AH4XR.js} +2 -2
  154. package/dist/cli/chunks/{domain-transfer-44QPKEAY.js → domain-transfer-P6VPN56R.js} +2 -2
  155. package/dist/cli/chunks/dream-R76KD347.js +2 -0
  156. package/dist/cli/chunks/{embed-and-insert-pattern-Z4MA4ZST.js → embed-and-insert-pattern-2YFFI7IN.js} +2 -2
  157. package/dist/cli/chunks/{eval-IDTYZI7P.js → eval-K7VFIO2T.js} +2 -2
  158. package/dist/cli/chunks/{experience-capture-middleware-HXLGMWLK.js → experience-capture-middleware-P4RQW7JV.js} +3 -3
  159. package/dist/cli/chunks/{fast-paths-V47QDNVC.js → fast-paths-T27YLQWQ.js} +2 -2
  160. package/dist/cli/chunks/{feature-flags-YWKFG357.js → feature-flags-HHQNCU6V.js} +2 -2
  161. package/dist/cli/chunks/{feature-flags-RALYJOEU.js → feature-flags-YFPFETDZ.js} +2 -2
  162. package/dist/cli/chunks/{file-discovery-R3CDYNKP.js → file-discovery-ZKNENDOJ.js} +2 -2
  163. package/dist/cli/chunks/{fleet-XBVAD6CL.js → fleet-N5OTMFIN.js} +3 -3
  164. package/dist/cli/chunks/{gnn-wrapper-HVZMQHEX.js → gnn-wrapper-D6L4FIWY.js} +2 -2
  165. package/dist/cli/chunks/{heartbeat-handler-BBHOWYMJ.js → heartbeat-handler-5RDU3KKK.js} +4 -4
  166. package/dist/cli/chunks/{heartbeat-scheduler-SNUBX4LF.js → heartbeat-scheduler-FALV24GQ.js} +2 -2
  167. package/dist/cli/chunks/hnsw-adapter-CYWGI732.js +2 -0
  168. package/dist/cli/chunks/hnsw-index-UOYT3QKQ.js +2 -0
  169. package/dist/cli/chunks/{hnsw-legacy-bridge-NKQVKQ3J.js → hnsw-legacy-bridge-ARD7KA3G.js} +2 -2
  170. package/dist/cli/chunks/{better-sqlite3-SAJ7HAFG.js → hnswlib-node-TULXUZI4.js} +2 -2
  171. package/dist/cli/chunks/hooks-6HA23JHQ.js +259 -0
  172. package/dist/cli/chunks/{hybrid-router-YUVRBFMA.js → hybrid-router-XUYQW7FJ.js} +2 -2
  173. package/dist/cli/chunks/{hypergraph-engine-EKOOW425.js → hypergraph-engine-OGGXYQAO.js} +2 -2
  174. package/dist/cli/chunks/{hypergraph-handler-M4MSX62E.js → hypergraph-handler-UFV3XYVX.js} +3 -3
  175. package/dist/cli/chunks/impact-analyzer-PWV7CJUA.js +2 -0
  176. package/dist/cli/chunks/{init-handler-W3DIXGVJ.js → init-handler-VUSXGONQ.js} +6 -6
  177. package/dist/cli/chunks/init-wizard-DKIFAPJJ.js +2 -0
  178. package/dist/cli/chunks/kernel-WQL2MUBH.js +2 -0
  179. package/dist/cli/chunks/{kilocode-installer-VVFIT4TJ.js → kilocode-installer-C2JMSYAU.js} +2 -2
  180. package/dist/cli/chunks/{kiro-installer-JCNYLJXT.js → kiro-installer-6LJFFEEZ.js} +2 -2
  181. package/dist/cli/chunks/knowledge-graph-U5OZDWGT.js +2 -0
  182. package/dist/cli/chunks/{learning-5X4UDI4G.js → learning-4B624JV3.js} +3 -3
  183. package/dist/cli/chunks/{llm-router-M6NOWWP3.js → llm-router-QUOLZECD.js} +4 -4
  184. package/dist/cli/chunks/{load-UMYB2ZGL.js → load-MIQWBMGE.js} +2 -2
  185. package/dist/cli/chunks/load-test-D2CQYRZQ.js +2 -0
  186. package/dist/cli/chunks/{mcp-ZDAIT7D5.js → mcp-MBJWNXDM.js} +2 -2
  187. package/dist/cli/chunks/{memory-FIWC4JNS.js → memory-WX3XHQZP.js} +5 -5
  188. package/dist/cli/chunks/memory-backend-HFIGDCZE.js +2 -0
  189. package/dist/cli/chunks/{memory-handlers-AHZIB4VB.js → memory-handlers-Q3XCN5SC.js} +2 -2
  190. package/dist/cli/chunks/{multi-model-executor-SA4CVCSA.js → multi-model-executor-RLY7OQOG.js} +2 -2
  191. package/dist/cli/chunks/{opencode-installer-S6UDYAAQ.js → opencode-installer-JATQNZWA.js} +2 -2
  192. package/dist/cli/chunks/{orchestrator-JNVRGX5Z.js → orchestrator-7BNG32I2.js} +5 -5
  193. package/dist/cli/chunks/{pipeline-TLZ66K2O.js → pipeline-ORKGL7DP.js} +2 -2
  194. package/dist/cli/chunks/{platform-MQ5UXRLD.js → platform-4SLJDRVL.js} +2 -2
  195. package/dist/cli/chunks/{plugin-5S4YEY4C.js → plugin-V6FRBF4W.js} +2 -2
  196. package/dist/cli/chunks/{prime-radiant-advanced-wasm-LIVSVFZA.js → prime-radiant-advanced-wasm-NA7AXKCA.js} +2 -2
  197. package/dist/cli/chunks/protocol-executor-LTJIEFVG.js +2 -0
  198. package/dist/cli/chunks/{protocol-handler-KQIOJKTK.js → protocol-handler-RSJOZ4XL.js} +2 -2
  199. package/dist/cli/chunks/{prove-YFRZIQ2O.js → prove-2ZMKUODH.js} +2 -2
  200. package/dist/cli/chunks/{provider-manager-OKEHQIHC.js → provider-manager-PSPAFCK7.js} +2 -2
  201. package/dist/cli/chunks/qe-reasoning-bank-ZJ56AWO2.js +2 -0
  202. package/dist/cli/chunks/{quality-GGBNSKJU.js → quality-6PZOOQSK.js} +2 -2
  203. package/dist/cli/chunks/queen-coordinator-CZA7SS4O.js +2 -0
  204. package/dist/cli/chunks/{real-embeddings-2KWJAO6Y.js → real-embeddings-BGNTSKHD.js} +2 -2
  205. package/dist/cli/chunks/{roocode-installer-KYZQFIEV.js → roocode-installer-NOHRQJIP.js} +2 -2
  206. package/dist/cli/chunks/router-N23IDBEQ.js +2 -0
  207. package/dist/cli/chunks/routing-feedback-IADXJ4RV.js +2 -0
  208. package/dist/cli/chunks/{routing-handler-Y5FLAUB2.js → routing-handler-ZAOGNENU.js} +2 -2
  209. package/dist/cli/chunks/{ruvector-commands-MHSEXDRI.js → ruvector-commands-5K3Q4N5H.js} +2 -2
  210. package/dist/cli/chunks/{rvf-dual-writer-5PV65OR3.js → rvf-dual-writer-NWFQC4KN.js} +2 -2
  211. package/dist/cli/chunks/{rvf-migration-adapter-3SZW2YA4.js → rvf-migration-adapter-MS7QGBWK.js} +2 -2
  212. package/dist/cli/chunks/{rvf-migration-coordinator-5LN2I44C.js → rvf-migration-coordinator-YUBSSB6Z.js} +2 -2
  213. package/dist/cli/chunks/rvf-native-adapter-MOR7NUA5.js +2 -0
  214. package/dist/cli/chunks/safe-db-IRAUFZTC.js +2 -0
  215. package/dist/cli/chunks/schedule-PKUUCNCA.js +2 -0
  216. package/dist/cli/chunks/scheduler-NE4NP4W5.js +2 -0
  217. package/dist/cli/chunks/{security-THETDKDS.js → security-BJWJWQRB.js} +3 -3
  218. package/dist/cli/chunks/shared-rvf-adapter-OTON2BMV.js +2 -0
  219. package/dist/cli/chunks/{shared-rvf-dual-writer-NFUIB2ZL.js → shared-rvf-dual-writer-LEBD3EHA.js} +2 -2
  220. package/dist/cli/chunks/sqlite-persistence-DXFBYN5L.js +2 -0
  221. package/dist/cli/chunks/{status-handler-CUW2OUS2.js → status-handler-XANOAVIB.js} +2 -2
  222. package/dist/cli/chunks/{structural-health-IK2LN4ES.js → structural-health-TZA7PJ2T.js} +2 -2
  223. package/dist/cli/chunks/{sync-DA33QCRD.js → sync-MKNYPUYP.js} +2 -2
  224. package/dist/cli/chunks/{task-handler-24CAZ4MB.js → task-handler-KXSUKNQV.js} +2 -2
  225. package/dist/cli/chunks/{task-handlers-YHMFT7G3.js → task-handlers-54MMRT3D.js} +3 -3
  226. package/dist/cli/chunks/{test-ED6UE2EP.js → test-AKS5AAT7.js} +4 -4
  227. package/dist/cli/chunks/{test-scheduling-RQP2IPFY.js → test-scheduling-OA7UPWQ5.js} +3 -3
  228. package/dist/cli/chunks/{token-bootstrap-POOTQ33M.js → token-bootstrap-ZIUNRF3E.js} +2 -2
  229. package/dist/cli/chunks/{token-usage-YNKDAQDK.js → token-usage-IJENSXPQ.js} +2 -2
  230. package/dist/cli/chunks/{transformers-NONXIEJK.js → transformers-CACTFP7H.js} +2 -2
  231. package/dist/cli/chunks/{tree-sitter-wasm-parser-HF7WUMJQ.js → tree-sitter-wasm-parser-4H4UVHAQ.js} +2 -2
  232. package/dist/cli/chunks/{types-UUKKK3L5.js → types-AGACOWV3.js} +2 -2
  233. package/dist/cli/chunks/unified-memory-4M3V7XL6.js +2 -0
  234. package/dist/cli/chunks/unified-memory-hnsw-6IKIDXEW.js +2 -0
  235. package/dist/cli/chunks/unified-persistence-XJ4D23TB.js +2 -0
  236. package/dist/cli/chunks/{upgrade-ZNUFD44G.js → upgrade-EKE25VPL.js} +2 -2
  237. package/dist/cli/chunks/{validate-6IFD37Q4.js → validate-BZTYZQGP.js} +2 -2
  238. package/dist/cli/chunks/{validate-swarm-74CENSXV.js → validate-swarm-GZANKJ7M.js} +2 -2
  239. package/dist/cli/chunks/{vibium-B2DDFMOQ.js → vibium-5X7QY25W.js} +2 -2
  240. package/dist/cli/chunks/visual-security-2X63QHFJ.js +2 -0
  241. package/dist/cli/chunks/{web-tree-sitter-X6ELMFG4.js → web-tree-sitter-KDFT6ZUY.js} +2 -2
  242. package/dist/cli/chunks/{windsurf-installer-HEIKCJDP.js → windsurf-installer-QFZJISMO.js} +2 -2
  243. package/dist/cli/chunks/{witness-chain-TO6YFTUT.js → witness-chain-ESSANJ4X.js} +2 -2
  244. package/dist/cli/chunks/witness-chain-MWIG363M.js +2 -0
  245. package/dist/cli/chunks/{workflow-WY73P2QK.js → workflow-EQFV2P66.js} +4 -4
  246. package/dist/cli/chunks/workflow-orchestrator-B3ECPAFI.js +2 -0
  247. package/dist/cli/chunks/{wrappers-VF7LWJER.js → wrappers-RKJJDJLC.js} +2 -2
  248. package/dist/cli/commands/hooks-handlers/editing-hooks.js +21 -6
  249. package/dist/cli/commands/hooks-handlers/hooks-dream-learning.d.ts +2 -0
  250. package/dist/cli/commands/hooks-handlers/hooks-dream-learning.js +106 -6
  251. package/dist/cli/commands/hooks-handlers/hooks-shared.d.ts +20 -0
  252. package/dist/cli/commands/hooks-handlers/hooks-shared.js +72 -0
  253. package/dist/cli/commands/hooks-handlers/routing-hooks.js +33 -35
  254. package/dist/cli/commands/hooks-handlers/task-hooks.js +16 -3
  255. package/dist/learning/qe-reasoning-bank.js +39 -8
  256. package/dist/learning/rvf-pattern-store.d.ts +9 -0
  257. package/dist/learning/rvf-pattern-store.js +42 -0
  258. package/dist/learning/sqlite-persistence.d.ts +18 -0
  259. package/dist/learning/sqlite-persistence.js +59 -0
  260. package/dist/mcp/bundle.js +142 -126
  261. package/package.json +8 -3
  262. package/dist/cli/chunks/adapter-DRRUAQGD.js +0 -2
  263. package/dist/cli/chunks/aqe-learning-engine-5WYTKZ2I.js +0 -2
  264. package/dist/cli/chunks/base-LQVASZ6V.js +0 -2
  265. package/dist/cli/chunks/browser-workflow-TXQBTTSA.js +0 -2
  266. package/dist/cli/chunks/chunk-EOZIQTHG.js +0 -2
  267. package/dist/cli/chunks/client-TMGGCVZM.js +0 -2
  268. package/dist/cli/chunks/cross-domain-router-3WM3FES7.js +0 -2
  269. package/dist/cli/chunks/dream-SSRYUA2N.js +0 -2
  270. package/dist/cli/chunks/hnsw-adapter-HGJUAHPN.js +0 -2
  271. package/dist/cli/chunks/hnsw-index-Q6GETC2C.js +0 -2
  272. package/dist/cli/chunks/hooks-HOD4SK3C.js +0 -237
  273. package/dist/cli/chunks/impact-analyzer-AIOLML23.js +0 -2
  274. package/dist/cli/chunks/init-wizard-FVH6XXAD.js +0 -2
  275. package/dist/cli/chunks/kernel-EBLOZQ7R.js +0 -2
  276. package/dist/cli/chunks/knowledge-graph-BXVKN4TE.js +0 -2
  277. package/dist/cli/chunks/load-test-DAFHZ5B4.js +0 -2
  278. package/dist/cli/chunks/memory-backend-LW2HMGVV.js +0 -2
  279. package/dist/cli/chunks/protocol-executor-LP4ID64X.js +0 -2
  280. package/dist/cli/chunks/qe-reasoning-bank-6KBZMXKR.js +0 -2
  281. package/dist/cli/chunks/queen-coordinator-3ZAXRHXE.js +0 -2
  282. package/dist/cli/chunks/router-QJUMFZN6.js +0 -2
  283. package/dist/cli/chunks/routing-feedback-TVYNKT3K.js +0 -2
  284. package/dist/cli/chunks/rvf-native-adapter-G5NC4S6V.js +0 -2
  285. package/dist/cli/chunks/safe-db-7STPJWYA.js +0 -2
  286. package/dist/cli/chunks/schedule-NTT6YXMP.js +0 -2
  287. package/dist/cli/chunks/scheduler-BC5VEZI2.js +0 -2
  288. package/dist/cli/chunks/shared-rvf-adapter-T63WSHGK.js +0 -2
  289. package/dist/cli/chunks/sqlite-persistence-GJDAUFQU.js +0 -2
  290. package/dist/cli/chunks/unified-memory-JVMA5MJR.js +0 -2
  291. package/dist/cli/chunks/unified-memory-hnsw-SSBWEA2T.js +0 -2
  292. package/dist/cli/chunks/unified-persistence-CWGWVHCB.js +0 -2
  293. package/dist/cli/chunks/visual-security-LGOI2DGK.js +0 -2
  294. package/dist/cli/chunks/witness-chain-JDFTWTJS.js +0 -2
  295. package/dist/cli/chunks/workflow-orchestrator-IDCHNGN6.js +0 -2
@@ -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.9.25");process.exit(0)}
2
- import{a as L}from"./chunk-VZVHYH7B.js";import*as w from"fs";var R={"aqe test generate":{domain:"test-generation",action:"generateTests"},"aqe test execute":{domain:"test-execution",action:"execute"},"aqe coverage analyze":{domain:"coverage-analysis",action:"analyze"},"aqe coverage gaps":{domain:"coverage-analysis",action:"detectGaps"},"aqe quality gate":{domain:"quality-assessment",action:"evaluateGate"},"aqe quality assess":{domain:"quality-assessment",action:"analyzeQuality"},"aqe security scan":{domain:"security-compliance",action:"runSASTScan"},"aqe security audit":{domain:"security-compliance",action:"runAudit"},"aqe defect predict":{domain:"defect-intelligence",action:"predictDefects"},"aqe code index":{domain:"code-intelligence",action:"index"},"aqe code impact":{domain:"code-intelligence",action:"analyzeImpact"},"aqe contract validate":{domain:"contract-testing",action:"validateContract"},"aqe chaos test":{domain:"chaos-resilience",action:"runChaosTest"},"aqe requirements validate":{domain:"requirements-validation",action:"validateRequirements"},"aqe visual test":{domain:"visual-accessibility",action:"runVisualTest"},"aqe accessibility test":{domain:"visual-accessibility",action:"runAccessibilityTest"},"aqe learn optimize":{domain:"learning-optimization",action:"optimizeAllStrategies"}},D={daily:"0 0 * * *",weekly:"0 0 * * 0",hourly:"0 * * * *",minutely:"* * * * *"},S=1e4,x=20,M=1e4,W=["__proto__","constructor","prototype"];function v(t){return!W.includes(t)}function C(t){let n=t.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.9.26");process.exit(0)}
2
+ import{a as L}from"./chunk-SDD3XQ7X.js";import*as w from"fs";var R={"aqe test generate":{domain:"test-generation",action:"generateTests"},"aqe test execute":{domain:"test-execution",action:"execute"},"aqe coverage analyze":{domain:"coverage-analysis",action:"analyze"},"aqe coverage gaps":{domain:"coverage-analysis",action:"detectGaps"},"aqe quality gate":{domain:"quality-assessment",action:"evaluateGate"},"aqe quality assess":{domain:"quality-assessment",action:"analyzeQuality"},"aqe security scan":{domain:"security-compliance",action:"runSASTScan"},"aqe security audit":{domain:"security-compliance",action:"runAudit"},"aqe defect predict":{domain:"defect-intelligence",action:"predictDefects"},"aqe code index":{domain:"code-intelligence",action:"index"},"aqe code impact":{domain:"code-intelligence",action:"analyzeImpact"},"aqe contract validate":{domain:"contract-testing",action:"validateContract"},"aqe chaos test":{domain:"chaos-resilience",action:"runChaosTest"},"aqe requirements validate":{domain:"requirements-validation",action:"validateRequirements"},"aqe visual test":{domain:"visual-accessibility",action:"runVisualTest"},"aqe accessibility test":{domain:"visual-accessibility",action:"runAccessibilityTest"},"aqe learn optimize":{domain:"learning-optimization",action:"optimizeAllStrategies"}},D={daily:"0 0 * * *",weekly:"0 0 * * 0",hourly:"0 * * * *",minutely:"* * * * *"},S=1e4,x=20,M=1e4,W=["__proto__","constructor","prototype"];function v(t){return!W.includes(t)}function C(t){let n=t.split(`
3
3
  `);if(n.length>S)throw new Error(`YAML content exceeds maximum allowed lines (${S}). File has ${n.length} lines.`);for(let i=0;i<n.length;i++)if(n[i].length>M)throw new Error(`YAML line ${i+1} exceeds maximum allowed length (${M} characters).`);let a={};for(let i=0;i<n.length;i++){let e=n[i];if(e.trim()===""||e.trim().startsWith("#")||e.search(/\S/)!==0)continue;let o=e.match(/^([\w_-]+):\s*(.+)$/);if(o){let[,c,u]=o;v(c)&&(a[c]=f(u))}}let r=["tags","stages","triggers"];for(let i of r){let e=new RegExp(`^${i}:\\s*$`),s=-1;for(let l=0;l<n.length;l++){let d=n[l];if(!(d.trim()===""||d.trim().startsWith("#"))&&e.test(d.trim())){s=l;break}}if(s===-1)continue;let o=[];a[i]=o;let c=n[s].search(/\S/),u=s+1;for(;u<n.length;){let l=n[u];if(l.trim()===""||l.trim().startsWith("#")){u++;continue}let d=l.search(/\S/),p=l.trim();if(d<=c&&!p.startsWith("-"))break;if(p.startsWith("- ")){let m=p.slice(2).trim();if(!m.includes(":")){o.push(f(m)),u++;continue}let g={},k=m.match(/^([\w_-]+):\s*(.*)$/);if(k){let[,h,y]=k;g[h]=f(y)}let T=d;for(u++;u<n.length;){let h=n[u];if(h.trim()===""||h.trim().startsWith("#")){u++;continue}let y=h.search(/\S/),q=h.trim();if(y<=T)break;let _=q.match(/^([\w_-]+):\s*(.*)$/);if(_){let[,A,$]=_;if($===""){let b=E(n,u+1,y,1);g[A]=b.value,u=b.nextLine;continue}else g[A]=f($)}u++}o.push(g)}else u++}}return a}function E(t,n,a,r=0){if(r>x)throw new Error(`YAML nesting exceeds maximum allowed depth (${x}).`);let i={},e=null,s=null,o=n;for(;o<t.length;){let u=t[o];if(u.trim()===""||u.trim().startsWith("#")){o++;continue}let l=u.search(/\S/),d=u.trim();if(l<=a)break;if(d.startsWith("- ")){let m=d.slice(2).trim();s&&!Array.isArray(i[s])&&(i[s]=[]),s?i[s].push(f(m)):(e||(e=[]),e.push(f(m))),o++;continue}let p=d.match(/^([\w_-]+):\s*(.*)$/);if(p){let[,m,g]=p;if(!v(m)){o++;continue}g===""?(s=m,i[m]=[]):(i[m]=f(g),s=null)}o++}if(e&&Object.keys(i).length===0)return{value:e,nextLine:o};let c=Object.keys(i);return c.length===1&&Array.isArray(i[c[0]])?{value:i[c[0]],nextLine:o}:{value:i,nextLine:o}}function f(t){if(t==="")return"";if(t.startsWith('"')&&t.endsWith('"')||t.startsWith("'")&&t.endsWith("'"))return t.slice(1,-1);if(t==="true")return!0;if(t==="false")return!1;if(t==="null"||t==="~")return null;let n=Number(t);return!isNaN(n)&&t!==""?n:t.startsWith("[")&&t.endsWith("]")?t.slice(1,-1).split(",").map(r=>f(r.trim())):t}function K(t){let n=[];if(!w.existsSync(t))return{success:!1,errors:[`File not found: ${t}`]};let a;try{a=w.readFileSync(t,"utf-8")}catch(r){return{success:!1,errors:[`Failed to read file: ${r}`]}}return Y(a,t)}function Y(t,n){let a=[],r;try{r=C(t)}catch(s){return{success:!1,errors:[`Invalid YAML syntax: ${s}`]}}if((!r.name||typeof r.name!="string")&&a.push('Pipeline must have a "name" field'),(!r.stages||!Array.isArray(r.stages))&&a.push('Pipeline must have a "stages" array'),a.length>0)return{success:!1,errors:a};let i={name:r.name,description:r.description,version:r.version||"1.0.0",schedule:r.schedule,stages:r.stages.map((s,o)=>{let c=s;return{name:c.name||`stage-${o}`,command:c.command,params:c.params,depends_on:c.depends_on,condition:c.condition,timeout:c.timeout,retry:c.retry,continue_on_failure:c.continue_on_failure}}),triggers:r.triggers,tags:r.tags,timeout:r.timeout};for(let s=0;s<i.stages.length;s++){let o=i.stages[s];o.command||a.push(`Stage ${s+1} (${o.name}) must have a "command" field`)}if(a.length>0)return{success:!1,pipeline:i,errors:a};let e=O(i,n);return{success:!0,pipeline:i,workflow:e,errors:[]}}function O(t,n){let a=`pipeline-${t.name.replace(/\s+/g,"-").toLowerCase()}`,r=t.stages.map((e,s)=>{let o=P(e.command),c={};if(e.params)for(let[l,d]of Object.entries(e.params))v(l)&&(c[l]=`input.${l}`);let u={id:`stage-${e.name.replace(/\s+/g,"-").toLowerCase()}`,name:e.name,domain:o.domain,action:o.action,inputMapping:Object.keys(c).length>0?c:void 0,dependsOn:e.depends_on?.map(l=>`stage-${l.replace(/\s+/g,"-").toLowerCase()}`),timeout:e.timeout?e.timeout*1e3:void 0,continueOnFailure:e.continue_on_failure};return e.condition&&(u.condition={path:e.condition.path,operator:e.condition.operator,value:e.condition.value}),e.retry&&(u.retry={maxAttempts:e.retry.max_attempts||3,backoffMs:(e.retry.backoff_seconds||1)*1e3}),u}),i=t.triggers?.map(e=>{let s={eventType:I(e),sourceDomain:e.source_domain};return e.condition&&(s.condition={path:e.condition.path,operator:e.condition.operator,value:e.condition.value}),s});return{id:a,name:t.name,description:t.description||`Pipeline from ${n||"inline YAML"}`,version:t.version||"1.0.0",steps:r,triggers:i,tags:t.tags,timeout:t.timeout?t.timeout*1e3:void 0}}function P(t){let n=t.trim().replace(/\s+/g," ").toLowerCase();for(let[a,r]of Object.entries(R))if(n.startsWith(a.toLowerCase()))return r;return n.includes("test")&&n.includes("generate")?{domain:"test-generation",action:"generateTests"}:n.includes("test")&&(n.includes("execute")||n.includes("run"))?{domain:"test-execution",action:"execute"}:n.includes("coverage")?{domain:"coverage-analysis",action:"analyze"}:n.includes("quality")||n.includes("gate")?{domain:"quality-assessment",action:"evaluateGate"}:n.includes("security")||n.includes("scan")?{domain:"security-compliance",action:"runSASTScan"}:n.includes("defect")||n.includes("predict")?{domain:"defect-intelligence",action:"predictDefects"}:{domain:"learning-optimization",action:"runLearningCycle"}}function I(t){let n=t.event.toLowerCase();return n==="push"?"code-intelligence.CodePushed":n==="pull_request"||n==="pr"?"code-intelligence.PullRequestOpened":n==="schedule"?"workflow.ScheduleTrigger":n==="quality_gate"?"quality-assessment.QualityGateEvaluated":n==="test_complete"?"test-execution.TestRunCompleted":n}function F(t){let n=[],a=[];if(t.name||n.push({path:"name",message:"Pipeline name is required",severity:"error"}),!t.stages||t.stages.length===0)n.push({path:"stages",message:"Pipeline must have at least one stage",severity:"error"});else{let r=new Set;for(let e=0;e<t.stages.length;e++){let s=t.stages[e],o=`stages[${e}]`;if(r.has(s.name)&&n.push({path:`${o}.name`,message:`Duplicate stage name: ${s.name}`,severity:"error"}),r.add(s.name),s.command?P(s.command).domain==="learning-optimization"&&!s.command.toLowerCase().includes("learn")&&a.push({path:`${o}.command`,message:`Command "${s.command}" not recognized, will default to learning-optimization domain`,severity:"warning"}):n.push({path:`${o}.command`,message:"Stage must have a command",severity:"error"}),s.depends_on)for(let c of s.depends_on)t.stages.some(u=>u.name===c)||n.push({path:`${o}.depends_on`,message:`Unknown dependency: ${c}`,severity:"error"});s.timeout!==void 0&&s.timeout<=0&&n.push({path:`${o}.timeout`,message:"Timeout must be a positive number",severity:"error"}),s.retry&&s.retry.max_attempts!==void 0&&s.retry.max_attempts<1&&n.push({path:`${o}.retry.max_attempts`,message:"max_attempts must be at least 1",severity:"error"})}let i=N(t.stages);i&&n.push({path:"stages",message:`Circular dependency detected: ${i}`,severity:"error"})}if(t.schedule&&(z(t.schedule)||n.push({path:"schedule",message:`Invalid cron expression: ${t.schedule}`,severity:"error"})),t.triggers)for(let r=0;r<t.triggers.length;r++){let i=t.triggers[r],e=`triggers[${r}]`;i.event||n.push({path:`${e}.event`,message:"Trigger must have an event type",severity:"error"}),i.source_domain&&!L.includes(i.source_domain)&&a.push({path:`${e}.source_domain`,message:`Unknown domain: ${i.source_domain}`,severity:"warning"})}return{valid:n.length===0,errors:n,warnings:a}}function N(t){let n=new Set,a=new Set,r=(i,e)=>{if(a.has(i))return[...e,i].join(" -> ");if(n.has(i))return null;n.add(i),a.add(i);let s=t.find(o=>o.name===i);if(s?.depends_on)for(let o of s.depends_on){let c=r(o,[...e,i]);if(c)return c}return a.delete(i),null};for(let i of t){let e=r(i.name,[]);if(e)return e}return null}function z(t){if(Object.keys(D).includes(t))return!0;let n=t.trim().split(/\s+/);if(n.length!==5)return!1;let a=[/^(\*|[0-5]?\d)(-[0-5]?\d)?(\/\d+)?$/,/^(\*|1?\d|2[0-3])(-\d+)?(\/\d+)?$/,/^(\*|[1-9]|[12]\d|3[01])(-\d+)?(\/\d+)?$/,/^(\*|[1-9]|1[0-2])(-\d+)?(\/\d+)?$/,/^(\*|[0-7])(-[0-7])?(\/\d+)?$/];for(let r=0;r<5;r++){let i=n[r].split(",");for(let e of i)if(!a[r].test(e)&&e!=="*")return!1}return!0}function G(t){let n={"@daily":"Daily at midnight","@weekly":"Weekly on Sunday at midnight","@hourly":"Every hour","@minutely":"Every minute"};if(n[t])return n[t];if(Object.keys(D).includes(t))return{daily:"Daily at midnight",weekly:"Weekly on Sunday at midnight",hourly:"Every hour",minutely:"Every minute"}[t]||t;let a=t.trim().split(/\s+/);if(a.length!==5)return t;let[r,i,e,s,o]=a;return r==="0"&&i==="0"&&e==="*"&&s==="*"&&o==="*"?"Daily at midnight":r==="0"&&e==="*"&&s==="*"&&o==="*"?`Daily at ${i}:00`:r!=="*"&&i!=="*"&&e==="*"&&s==="*"?`Daily at ${i}:${r.padStart(2,"0")}`:i==="*"&&r==="0"?"Every hour":r!=="*"&&i==="*"?`Every hour at minute ${r}`:t}function H(t,n=new Date){let a=t.trim().split(/\s+/);if(a.length!==5)return new Date(n.getTime()+1440*60*1e3);let[r,i]=a,e=new Date(n);return i!=="*"&&r!=="*"?(e.setHours(parseInt(i,10),parseInt(r,10),0,0),e<=n&&e.setDate(e.getDate()+1)):i!=="*"?(e.setHours(parseInt(i,10),0,0,0),e<=n&&e.setDate(e.getDate()+1)):r!=="*"?(e.setMinutes(parseInt(r,10),0,0),e<=n&&e.setHours(e.getHours()+1)):(e.setSeconds(0,0),e.setMinutes(e.getMinutes()+1)),e}export{C as a,K as b,F as c,G as d,H as e};
@@ -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.9.25");process.exit(0)}
2
- import{a as v}from"./chunk-EOZIQTHG.js";import{c as l}from"./chunk-P5ZV4RCF.js";import{S as R,b as g}from"./chunk-4ASWQOFE.js";v();R();import{createHash as m,randomUUID as f}from"crypto";var a=l.create("witness-chain"),p=class{logLikelihoodRatio=0;upperBound;lowerBound;observations=0;constructor(t=.05,e=.05){this.upperBound=Math.log(1/t),this.lowerBound=Math.log(e)}addWeightedEvidence(t,e){return this.logLikelihoodRatio+=t?e:-e,this.observations++,this.logLikelihoodRatio>=this.upperBound?"PASS":this.logLikelihoodRatio<=this.lowerBound?"FAIL":"INCONCLUSIVE"}addEvidence(t){return this.addWeightedEvidence(t,.5)}getRatio(){return this.logLikelihoodRatio}getObservations(){return this.observations}getBounds(){return{upper:this.upperBound,lower:this.lowerBound}}reset(){this.logLikelihoodRatio=0,this.observations=0}},c="0".repeat(64),h=class{receipts=[];lastHash=c;sprtAccumulators=new Map;appendWitness(t){let e=f(),i=Date.now(),s=this.receipts.length,n=this.lastHash+JSON.stringify(t)+i,o=m("sha256").update(n).digest("hex"),u={id:e,timestamp:i,previousHash:this.lastHash,hash:o,decision:t,chainIndex:s};return this.receipts.push(u),this.lastHash=o,this.updateSPRT(t),a.debug("Witness appended",{chainIndex:s,type:t.type,decision:t.decision,hash:o.slice(0,16)+"..."}),u}verifyChain(){if(this.receipts.length===0)return{valid:!0,length:0,brokenAt:-1,message:"Chain is empty (valid)",lastHash:c};let t=c;for(let e=0;e<this.receipts.length;e++){let i=this.receipts[e];if(i.previousHash!==t)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: previousHash mismatch`,lastHash:this.lastHash};let s=i.previousHash+JSON.stringify(i.decision)+i.timestamp,n=m("sha256").update(s).digest("hex");if(i.hash!==n)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: hash mismatch (tamper detected)`,lastHash:this.lastHash};t=i.hash}return{valid:!0,length:this.receipts.length,brokenAt:-1,message:`Chain valid (${this.receipts.length} receipts)`,lastHash:this.lastHash}}getChain(t){return t!==void 0&&t>0?[...this.receipts.slice(-t)]:[...this.receipts]}getChainLength(){return this.receipts.length}getLastHash(){return this.lastHash}exportChain(){let t={version:"1.0.0",exportedAt:Date.now(),length:this.receipts.length,receipts:this.receipts};return JSON.stringify(t,null,2)}importChain(t){try{let e=JSON.parse(t);if(!e||e.version!=="1.0.0"||!Array.isArray(e.receipts))return a.warn("Import failed: invalid format"),!1;let i=this.receipts,s=this.lastHash;this.receipts=e.receipts,this.lastHash=e.receipts.length>0?e.receipts[e.receipts.length-1].hash:c;let n=this.verifyChain();return n.valid?(a.info("Chain imported successfully",{length:e.receipts.length}),!0):(this.receipts=i,this.lastHash=s,a.warn("Import failed: chain integrity check failed",{message:n.message}),!1)}catch(e){return a.warn("Import failed: parse error",{error:e instanceof Error?e.message:String(e)}),!1}}getSPRT(t,e,i){return this.sprtAccumulators.has(t)||this.sprtAccumulators.set(t,new p(e,i)),this.sprtAccumulators.get(t)}getReceipt(t){return this.receipts[t]}updateSPRT(t){let e=t.decision==="PASS"||t.decision==="PERMIT";this.getSPRT(t.type).addEvidence(e)}},d=class extends h{persistence;constructor(t){super(),this.persistence=t;let e=t.loadAllReceipts();if(e.length>0){let i={version:"1.0.0",exportedAt:Date.now(),length:e.length,receipts:e};this.importChain(JSON.stringify(i))?a.info("Witness chain restored from SQLite",{receipts:e.length}):a.warn("Failed to restore witness chain from SQLite \u2014 starting fresh")}}appendWitness(t){let e=super.appendWitness(t);try{this.persistence.insertReceipt(e)}catch(i){a.warn("Failed to persist witness receipt to SQLite",{chainIndex:e.chainIndex,error:i instanceof Error?i.message:String(i)})}return e}};function C(r){r.exec(`
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.9.26");process.exit(0)}
2
+ import{a as v}from"./chunk-RSNZQ3MN.js";import{c as l}from"./chunk-F77VZ4IY.js";import{S as R,b as g}from"./chunk-RXQX6JNQ.js";v();R();import{createHash as m,randomUUID as f}from"crypto";var a=l.create("witness-chain"),p=class{logLikelihoodRatio=0;upperBound;lowerBound;observations=0;constructor(t=.05,e=.05){this.upperBound=Math.log(1/t),this.lowerBound=Math.log(e)}addWeightedEvidence(t,e){return this.logLikelihoodRatio+=t?e:-e,this.observations++,this.logLikelihoodRatio>=this.upperBound?"PASS":this.logLikelihoodRatio<=this.lowerBound?"FAIL":"INCONCLUSIVE"}addEvidence(t){return this.addWeightedEvidence(t,.5)}getRatio(){return this.logLikelihoodRatio}getObservations(){return this.observations}getBounds(){return{upper:this.upperBound,lower:this.lowerBound}}reset(){this.logLikelihoodRatio=0,this.observations=0}},c="0".repeat(64),h=class{receipts=[];lastHash=c;sprtAccumulators=new Map;appendWitness(t){let e=f(),i=Date.now(),s=this.receipts.length,n=this.lastHash+JSON.stringify(t)+i,o=m("sha256").update(n).digest("hex"),u={id:e,timestamp:i,previousHash:this.lastHash,hash:o,decision:t,chainIndex:s};return this.receipts.push(u),this.lastHash=o,this.updateSPRT(t),a.debug("Witness appended",{chainIndex:s,type:t.type,decision:t.decision,hash:o.slice(0,16)+"..."}),u}verifyChain(){if(this.receipts.length===0)return{valid:!0,length:0,brokenAt:-1,message:"Chain is empty (valid)",lastHash:c};let t=c;for(let e=0;e<this.receipts.length;e++){let i=this.receipts[e];if(i.previousHash!==t)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: previousHash mismatch`,lastHash:this.lastHash};let s=i.previousHash+JSON.stringify(i.decision)+i.timestamp,n=m("sha256").update(s).digest("hex");if(i.hash!==n)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: hash mismatch (tamper detected)`,lastHash:this.lastHash};t=i.hash}return{valid:!0,length:this.receipts.length,brokenAt:-1,message:`Chain valid (${this.receipts.length} receipts)`,lastHash:this.lastHash}}getChain(t){return t!==void 0&&t>0?[...this.receipts.slice(-t)]:[...this.receipts]}getChainLength(){return this.receipts.length}getLastHash(){return this.lastHash}exportChain(){let t={version:"1.0.0",exportedAt:Date.now(),length:this.receipts.length,receipts:this.receipts};return JSON.stringify(t,null,2)}importChain(t){try{let e=JSON.parse(t);if(!e||e.version!=="1.0.0"||!Array.isArray(e.receipts))return a.warn("Import failed: invalid format"),!1;let i=this.receipts,s=this.lastHash;this.receipts=e.receipts,this.lastHash=e.receipts.length>0?e.receipts[e.receipts.length-1].hash:c;let n=this.verifyChain();return n.valid?(a.info("Chain imported successfully",{length:e.receipts.length}),!0):(this.receipts=i,this.lastHash=s,a.warn("Import failed: chain integrity check failed",{message:n.message}),!1)}catch(e){return a.warn("Import failed: parse error",{error:e instanceof Error?e.message:String(e)}),!1}}getSPRT(t,e,i){return this.sprtAccumulators.has(t)||this.sprtAccumulators.set(t,new p(e,i)),this.sprtAccumulators.get(t)}getReceipt(t){return this.receipts[t]}updateSPRT(t){let e=t.decision==="PASS"||t.decision==="PERMIT";this.getSPRT(t.type).addEvidence(e)}},d=class extends h{persistence;constructor(t){super(),this.persistence=t;let e=t.loadAllReceipts();if(e.length>0){let i={version:"1.0.0",exportedAt:Date.now(),length:e.length,receipts:e};this.importChain(JSON.stringify(i))?a.info("Witness chain restored from SQLite",{receipts:e.length}):a.warn("Failed to restore witness chain from SQLite \u2014 starting fresh")}}appendWitness(t){let e=super.appendWitness(t);try{this.persistence.insertReceipt(e)}catch(i){a.warn("Failed to persist witness receipt to SQLite",{chainIndex:e.chainIndex,error:i instanceof Error?i.message:String(i)})}return e}};function C(r){r.exec(`
3
3
  CREATE TABLE IF NOT EXISTS witness_chain_receipts (
4
4
  id TEXT PRIMARY KEY,
5
5
  chain_index INTEGER NOT NULL,
@@ -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.9.25");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.9.26");process.exit(0)}
2
2
  function c(r,e,o){let n=new Error(r);return n.name="LLMError",n.code=e,n.provider=o?.provider,n.model=o?.model,n.retryable=o?.retryable??!1,n.retryAfterMs=o?.retryAfterMs,n.cause=o?.cause,n}function p(r){return r instanceof Error&&"code"in r&&typeof r.code=="string"}var a={"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"}}};function l(){let r=new Map;for(let[e,o]of Object.entries(a)){r.set(e,e),r.set(e.toLowerCase(),e);for(let[n,t]of Object.entries(o.providers))t&&(r.set(t,e),r.set(t.toLowerCase(),e),r.set(`${n}/${t}`,e),r.set(`${n}/${t}`.toLowerCase(),e))}return r}var i=l();function m(r,e){let o=s(r),n=a[o];if(!n)throw new Error(`Unknown model: ${r}`);let t=n.providers[e];if(!t)throw new Error(`Model '${o}' (${n.canonical}) is not available on provider '${e}'`);return t}function s(r){let e=i.get(r);if(e||(e=i.get(r.toLowerCase()),e))return e;let o=[/^anthropic\//i,/^openai\//i,/^google\//i,/^meta-llama\//i,/^mistralai\//i,/^qwen\//i];for(let n of o){let t=r.replace(n,"");if(e=i.get(t),e||(e=i.get(t.toLowerCase()),e))return e}throw new Error(`Unknown model ID: ${r}`)}function d(r){try{let e=s(r);return a[e]}catch{return}}export{c as a,p as b,m as c,s as d,d as e};
@@ -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.9.25");process.exit(0)}
2
- import{a as te,b as ne}from"./chunk-6IRQAAMQ.js";import{a as k}from"./chunk-CRTUB5NH.js";import{b as ee}from"./chunk-5DOCH2OX.js";import{b as E,d as fe}from"./chunk-5XCHNZNW.js";import{a as b,c as T}from"./chunk-SKRQF45C.js";var he={M:16,efConstruction:200,efSearch:100},P={enabled:!0,pretrainedPatterns:!0,hnswConfig:he,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},N={claudeCode:!0,preCommit:!1,ciIntegration:!1},$={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.9.25"}function Fe(i,e){return{version:M(),project:{name:i,root:e,type:"single"},learning:P,routing:_,workers:F,hooks:N,skills:$,autoTuning:O,domains:{enabled:L,disabled:[]},agents:{maxConcurrent:15,defaultTimeout:6e4}}}fe();import{readFileSync as w,existsSync as p,statSync as ye,readdirSync as ve}from"fs";import{join as u,basename as ie,extname as re,relative as V}from"path";var be=[{name:"jest",detect:i=>{let e=["jest.config.js","jest.config.ts","jest.config.mjs","jest.config.cjs"];for(let n of e)if(p(u(i,n)))return{name:"jest",version:A(i,"jest"),configFile:n,confidence:1};let t=S(i);return t?.jest?{name:"jest",version:A(i,"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:i=>{let e=["vitest.config.ts","vitest.config.js","vitest.config.mts","vite.config.ts"];for(let n of e)if(p(u(i,n)))return{name:"vitest",version:A(i,"vitest"),configFile:n,confidence:1};let t=S(i);return t?.devDependencies?.vitest||t?.dependencies?.vitest?{name:"vitest",version:t.devDependencies?.vitest,confidence:.8}:null}},{name:"mocha",detect:i=>{let e=[".mocharc.js",".mocharc.json",".mocharc.yaml",".mocharc.yml"];for(let n of e)if(p(u(i,n)))return{name:"mocha",version:A(i,"mocha"),configFile:n,confidence:1};let t=S(i);return t?.devDependencies?.mocha?{name:"mocha",version:t.devDependencies?.mocha,confidence:.8}:null}},{name:"pytest",detect:i=>{let e=["pytest.ini","pyproject.toml","setup.cfg"];for(let n of e){let r=u(i,n);if(p(r))try{let s=w(r,"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=u(i,"requirements.txt");if(p(t))try{if(w(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:i=>{let e=["playwright.config.ts","playwright.config.js"];for(let n of e)if(p(u(i,n)))return{name:"playwright",version:A(i,"@playwright/test"),configFile:n,confidence:1};let t=S(i);return t?.devDependencies?.["@playwright/test"]?{name:"playwright",version:t.devDependencies["@playwright/test"],confidence:.8}:null}},{name:"cypress",detect:i=>{let e=["cypress.config.ts","cypress.config.js","cypress.json"];for(let t of e)if(p(u(i,t)))return{name:"cypress",version:A(i,"cypress"),configFile:t,confidence:1};return p(u(i,"cypress"))?{name:"cypress",configFile:"cypress/",confidence:.9}:null}}],ke=[{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(i){let e=u(i,"package.json");if(!p(e))return null;try{return E(w(e,"utf-8"))}catch{return null}}function A(i,e){let t=S(i);if(t)return t.devDependencies?.[e]||t.dependencies?.[e]}function Q(i,e,t={}){let{maxDepth:n=10,exclude:r=["node_modules",".git","dist","build","coverage",".next","__pycache__"]}=t;function s(o,a){if(a>n)return;let l;try{l=ve(o)}catch{return}for(let g of l){if(r.includes(g))continue;let c=u(o,g),x;try{x=ye(c)}catch{continue}x.isDirectory()?s(c,a+1):x.isFile()&&e(c)}}s(i,0)}var W=class{projectRoot;constructor(e){this.projectRoot=e}async analyze(){let e=Date.now(),[t,n,r,s,o]=await Promise.all([this.detectFrameworks(),this.detectLanguages(),this.detectExistingTests(),this.analyzeComplexity(),this.measureCoverage()]);return{projectName:S(this.projectRoot)?.name||ie(this.projectRoot),projectRoot:this.projectRoot,projectType:this.detectProjectType(),frameworks:t,languages:n,existingTests:r,codeComplexity:s,coverage:o,packageManager:this.detectPackageManager(),hasTypeScript:p(u(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 be){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,r=>{let s=re(r).toLowerCase();if(s){for(let o of ke)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[r,s]of e)n.push({name:r,percentage:t>0?Math.round(s.count/t*100):0,fileCount:s.count,extensions:Array.from(s.extensions)});return n.sort((r,s)=>s.fileCount-r.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,r=>{let s=ie(r);if(n.some(a=>a.test(s))){e.totalCount++;let a=V(this.projectRoot,r).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,u(r,".."));t.add(l)}}),e.directories=Array.from(t).slice(0,10),e}async analyzeComplexity(){let e=[],t=[],n=0,r=0;Q(this.projectRoot,a=>{let l=re(a);if([".ts",".tsx",".js",".jsx",".py",".java",".go"].includes(l))try{let g=w(a,"utf-8"),c=this.calculateFileComplexity(g,l);t.push(...c.functionComplexities),c.maxComplexity>n&&(n=c.maxComplexity),r++,c.maxComplexity>10&&e.push(V(this.projectRoot,a))}catch(g){console.debug("[ProjectAnalyzer] Complexity analysis read failed:",g instanceof Error?g.message:g)}});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:r,complexFiles:e.slice(0,20),recommendation:o<5?"simple":o<15?"medium":"complex"}}calculateFileComplexity(e,t){let n=this.stripCommentsAndStrings(e,t),r=this.calculateComplexity(n);return{functionComplexities:[r],maxComplexity:r}}removeDelimitedBlocks(e,t,n){let r="",s=0;for(;s<e.length;){let o=e.indexOf(t,s);if(o===-1){r+=e.slice(s);break}r+=e.slice(s,o);let a=e.indexOf(n,o+t.length);if(a===-1)break;s=a+n.length}return r}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.9.26");process.exit(0)}
2
+ import{a as te,b as ne}from"./chunk-TQBP3YGG.js";import{a as k}from"./chunk-MXZY5IJA.js";import{b as ee}from"./chunk-QXQWQRZA.js";import{b as E,d as fe}from"./chunk-DBSEDJ7P.js";import{a as b,c as T}from"./chunk-TZ73IAF5.js";var he={M:16,efConstruction:200,efSearch:100},P={enabled:!0,pretrainedPatterns:!0,hnswConfig:he,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},N={claudeCode:!0,preCommit:!1,ciIntegration:!1},$={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.9.26"}function Fe(i,e){return{version:M(),project:{name:i,root:e,type:"single"},learning:P,routing:_,workers:F,hooks:N,skills:$,autoTuning:O,domains:{enabled:L,disabled:[]},agents:{maxConcurrent:15,defaultTimeout:6e4}}}fe();import{readFileSync as w,existsSync as p,statSync as ye,readdirSync as ve}from"fs";import{join as u,basename as ie,extname as re,relative as V}from"path";var be=[{name:"jest",detect:i=>{let e=["jest.config.js","jest.config.ts","jest.config.mjs","jest.config.cjs"];for(let n of e)if(p(u(i,n)))return{name:"jest",version:A(i,"jest"),configFile:n,confidence:1};let t=S(i);return t?.jest?{name:"jest",version:A(i,"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:i=>{let e=["vitest.config.ts","vitest.config.js","vitest.config.mts","vite.config.ts"];for(let n of e)if(p(u(i,n)))return{name:"vitest",version:A(i,"vitest"),configFile:n,confidence:1};let t=S(i);return t?.devDependencies?.vitest||t?.dependencies?.vitest?{name:"vitest",version:t.devDependencies?.vitest,confidence:.8}:null}},{name:"mocha",detect:i=>{let e=[".mocharc.js",".mocharc.json",".mocharc.yaml",".mocharc.yml"];for(let n of e)if(p(u(i,n)))return{name:"mocha",version:A(i,"mocha"),configFile:n,confidence:1};let t=S(i);return t?.devDependencies?.mocha?{name:"mocha",version:t.devDependencies?.mocha,confidence:.8}:null}},{name:"pytest",detect:i=>{let e=["pytest.ini","pyproject.toml","setup.cfg"];for(let n of e){let r=u(i,n);if(p(r))try{let s=w(r,"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=u(i,"requirements.txt");if(p(t))try{if(w(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:i=>{let e=["playwright.config.ts","playwright.config.js"];for(let n of e)if(p(u(i,n)))return{name:"playwright",version:A(i,"@playwright/test"),configFile:n,confidence:1};let t=S(i);return t?.devDependencies?.["@playwright/test"]?{name:"playwright",version:t.devDependencies["@playwright/test"],confidence:.8}:null}},{name:"cypress",detect:i=>{let e=["cypress.config.ts","cypress.config.js","cypress.json"];for(let t of e)if(p(u(i,t)))return{name:"cypress",version:A(i,"cypress"),configFile:t,confidence:1};return p(u(i,"cypress"))?{name:"cypress",configFile:"cypress/",confidence:.9}:null}}],ke=[{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(i){let e=u(i,"package.json");if(!p(e))return null;try{return E(w(e,"utf-8"))}catch{return null}}function A(i,e){let t=S(i);if(t)return t.devDependencies?.[e]||t.dependencies?.[e]}function Q(i,e,t={}){let{maxDepth:n=10,exclude:r=["node_modules",".git","dist","build","coverage",".next","__pycache__"]}=t;function s(o,a){if(a>n)return;let l;try{l=ve(o)}catch{return}for(let g of l){if(r.includes(g))continue;let c=u(o,g),x;try{x=ye(c)}catch{continue}x.isDirectory()?s(c,a+1):x.isFile()&&e(c)}}s(i,0)}var W=class{projectRoot;constructor(e){this.projectRoot=e}async analyze(){let e=Date.now(),[t,n,r,s,o]=await Promise.all([this.detectFrameworks(),this.detectLanguages(),this.detectExistingTests(),this.analyzeComplexity(),this.measureCoverage()]);return{projectName:S(this.projectRoot)?.name||ie(this.projectRoot),projectRoot:this.projectRoot,projectType:this.detectProjectType(),frameworks:t,languages:n,existingTests:r,codeComplexity:s,coverage:o,packageManager:this.detectPackageManager(),hasTypeScript:p(u(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 be){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,r=>{let s=re(r).toLowerCase();if(s){for(let o of ke)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[r,s]of e)n.push({name:r,percentage:t>0?Math.round(s.count/t*100):0,fileCount:s.count,extensions:Array.from(s.extensions)});return n.sort((r,s)=>s.fileCount-r.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,r=>{let s=ie(r);if(n.some(a=>a.test(s))){e.totalCount++;let a=V(this.projectRoot,r).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,u(r,".."));t.add(l)}}),e.directories=Array.from(t).slice(0,10),e}async analyzeComplexity(){let e=[],t=[],n=0,r=0;Q(this.projectRoot,a=>{let l=re(a);if([".ts",".tsx",".js",".jsx",".py",".java",".go"].includes(l))try{let g=w(a,"utf-8"),c=this.calculateFileComplexity(g,l);t.push(...c.functionComplexities),c.maxComplexity>n&&(n=c.maxComplexity),r++,c.maxComplexity>10&&e.push(V(this.projectRoot,a))}catch(g){console.debug("[ProjectAnalyzer] Complexity analysis read failed:",g instanceof Error?g.message:g)}});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:r,complexFiles:e.slice(0,20),recommendation:o<5?"simple":o<15?"medium":"complex"}}calculateFileComplexity(e,t){let n=this.stripCommentsAndStrings(e,t),r=this.calculateComplexity(n);return{functionComplexities:[r],maxComplexity:r}}removeDelimitedBlocks(e,t,n){let r="",s=0;for(;s<e.length;){let o=e.indexOf(t,s);if(o===-1){r+=e.slice(s);break}r+=e.slice(s,o);let a=e.indexOf(n,o+t.length);if(a===-1)break;s=a+n.length}return r}stripCommentsAndStrings(e,t){let n=e;return[".ts",".tsx",".js",".jsx",".java",".go"].includes(t)?(n=n.split(`
3
3
  `).map(r=>{let s=r.indexOf("//");return s>=0?r.slice(0,s):r}).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(r=>{let s=r.indexOf("#");return s>=0?r.slice(0,s):r}).join(`
@@ -1,6 +1,6 @@
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.9.25");process.exit(0)}
2
- import{e as x,f as C,j as y,k as R,q as F}from"./chunk-LKRGOCDO.js";import{b as I,c as k}from"./chunk-SKRQF45C.js";import{c as w}from"./chunk-3OPXTQMB.js";var P,S=w(()=>{"use strict";P={enabled:!0,headless:!0,timeout:3e4,retryAttempts:3,fallbackEnabled:!0,browserType:"chromium",viewport:{width:1280,height:720},userAgent:"",devtools:!1,slowMo:0,screenshotDir:".agentic-qe/screenshots"}});function B(i){return i instanceof o}function a(i,e="Unknown Vibium error"){return B(i)?i:i instanceof Error?new o(i.message||e,"UNKNOWN_ERROR",i):new o(typeof i=="string"?i:e,"UNKNOWN_ERROR")}var o,c,f,g,l,p,m,b,A=w(()=>{"use strict";o=class i extends Error{constructor(t,r,s){super(t);this.code=r;this.cause=s;this.name="VibiumError",Error.captureStackTrace&&Error.captureStackTrace(this,i),s?.stack&&(this.stack+=`
3
- Caused by: ${s.stack}`)}code;cause},c=class extends o{constructor(e="Vibium MCP server is unavailable",t){super(e,"VIBIUM_UNAVAILABLE",t),this.name="VibiumUnavailableError"}},f=class extends o{constructor(e="Browser operation timed out",t){super(e,"VIBIUM_TIMEOUT",t),this.name="VibiumTimeoutError"}},g=class extends o{selector;constructor(e,t){super(`Element not found: ${e}`,"ELEMENT_NOT_FOUND",t),this.name="VibiumElementNotFoundError",this.selector=e}},l=class extends o{constructor(e="Failed to connect to browser",t){super(e,"CONNECTION_ERROR",t),this.name="VibiumConnectionError"}},p=class extends o{url;statusCode;constructor(e,t,r){let s=t?`Navigation failed: ${e} (HTTP ${t})`:`Navigation failed: ${e}`;super(s,"NAVIGATION_ERROR",r),this.name="VibiumNavigationError",this.url=e,this.statusCode=t}},m=class extends o{constructor(e="Failed to capture screenshot",t){super(e,"SCREENSHOT_ERROR",t),this.name="VibiumScreenshotError"}},b=class extends o{action;selector;constructor(e,t,r){super(`Failed to ${e} element: ${t}`,"INTERACTION_ERROR",r),this.name="VibiumInteractionError",this.action=e,this.selector=t}}});import{randomUUID as _}from"crypto";async function V(){if(v!==null)return v;try{return v=(await import("./vibium-B2DDFMOQ.js")).browser,O=!0,v}catch(i){return console.warn("[Vibium] Failed to load vibium package:",i),O=!1,null}}async function T(i,e,t){let r;for(let s=1;s<=e;s++)try{return await i()}catch(n){if(r=I(n),s<e){let u=Math.min(100*Math.pow(2,s-1),2e3);await new Promise(d=>setTimeout(d,u))}}throw new o(`${t} failed after ${e} attempts`,"RETRY_EXHAUSTED",r)}async function h(i,e){let t=Date.now();try{let r=await i();return R()&&console.log(`[Vibium] ${e}: ${Date.now()-t}ms`),r}catch(r){throw R()&&console.log(`[Vibium] ${e} failed: ${Date.now()-t}ms`,r),r}}var v,O,E,N,M=w(()=>{S();A();k();F();v=null,O=!1;E=class{config;currentSession=null;lastHealthCheck=null;_initialized=!1;_available=null;vibeInstance=null;constructor(e={}){this.config={...P,...e}}async isAvailable(){if(!this.config.enabled)return!1;if(this._available!==null)return this._available;try{let e=await V();return this._available=e!==null,this._available}catch{return this._available=!1,!1}}async getHealth(){let e=new Date;if(!this.config.enabled)return{status:"unavailable",features:["fallback-only"],lastChecked:e,error:"Vibium is disabled by configuration",sessionActive:!1};try{await this.isAvailable()?this.lastHealthCheck={status:this.vibeInstance?"connected":"disconnected",version:"0.1.2",browserType:this.config.browserType,features:["browser-launch","navigation","element-interaction","screenshots","script-evaluation","accessibility-testing"],latencyMs:10,lastChecked:e,sessionActive:this.vibeInstance!==null}:this.lastHealthCheck={status:"unavailable",features:["fallback-only"],lastChecked:e,error:"Vibium package not available - install with: npm install vibium",sessionActive:!1}}catch(t){this.lastHealthCheck={status:"error",features:["fallback-only"],lastChecked:e,error:t instanceof Error?t.message:"Unknown error",sessionActive:!1}}return this.lastHealthCheck}async getSession(){return this.currentSession}async launch(e){if(!x())return{success:!1,error:new c("Browser mode is disabled by feature flags")};let t=async()=>{let r=await V();if(!r)throw new c("Vibium package not available. Install with: npm install vibium");let s=e?.headless??this.config.headless;this.vibeInstance=await r.launch({headless:s});let n={id:this.generateSessionId(),browserType:this.config.browserType,launchedAt:new Date,status:"connected",viewport:e?.viewport??this.config.viewport,headless:s};return this.currentSession=n,n};try{return{success:!0,value:y()?await T(()=>h(t,"browser_launch"),this.config.retryAttempts,"browser_launch"):await h(t,"browser_launch")}}catch(r){return{success:!1,error:a(r,"Failed to launch browser")}}}async quit(){if(!this.vibeInstance)return{success:!1,error:new l("No active browser session")};let e=async()=>{this.vibeInstance&&(await this.vibeInstance.quit(),this.vibeInstance=null),this.currentSession=null};try{return await h(e,"browser_quit"),{success:!0,value:void 0}}catch(t){return{success:!1,error:a(t,"Failed to quit browser")}}}async navigate(e){this.ensureSession();let t=async()=>{let r=Date.now();await this.vibeInstance.go(e.url);let s="";try{s=await this.vibeInstance.evaluate("document.title")}catch{s="Unknown"}let n={url:e.url,statusCode:200,title:s,durationMs:Date.now()-r,success:!0};return this.currentSession&&(this.currentSession.currentUrl=e.url),n};try{return{success:!0,value:y()?await T(()=>h(t,"page_navigate"),this.config.retryAttempts,"page_navigate"):await h(t,"page_navigate")}}catch(r){return{success:!1,error:new p(e.url,void 0,r instanceof Error?r:void 0)}}}async getPageInfo(){this.ensureSession();try{let e=await this.vibeInstance.evaluate("window.location.href"),t=await this.vibeInstance.evaluate("document.title");return{success:!0,value:{url:e,title:t,viewport:this.config.viewport,loadState:"loaded"}}}catch(e){return{success:!1,error:a(e,"Failed to get page info")}}}async goBack(){this.ensureSession();try{return await this.vibeInstance.evaluate("window.history.back()"),{success:!0,value:void 0}}catch(e){return{success:!1,error:a(e,"Failed to go back")}}}async goForward(){this.ensureSession();try{return await this.vibeInstance.evaluate("window.history.forward()"),{success:!0,value:void 0}}catch(e){return{success:!1,error:a(e,"Failed to go forward")}}}async reload(){this.ensureSession();try{return await this.vibeInstance.evaluate("window.location.reload()"),{success:!0,value:void 0}}catch(e){return{success:!1,error:a(e,"Failed to reload page")}}}async findElement(e){this.ensureSession();try{let t=await this.vibeInstance.find(e.selector,{timeout:e.timeout??this.config.timeout});return{success:!0,value:{selector:e.selector,tagName:t.info.tag,textContent:t.info.text,attributes:{},boundingBox:t.info.box,visible:!0,enabled:!0}}}catch(t){return{success:!1,error:new g(e.selector,t instanceof Error?t:void 0)}}}async findElements(e){this.ensureSession();try{let t=e.selector.replace(/\\/g,"\\\\").replace(/'/g,"\\'");return{success:!0,value:(await this.vibeInstance.evaluate(`
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.9.26");process.exit(0)}
2
+ import{e as x,f as C,j as y,k as R,q as F}from"./chunk-EFAN5HUX.js";import{b as I,c as k}from"./chunk-TZ73IAF5.js";import{c as w}from"./chunk-ARLHD5MG.js";var P,S=w(()=>{"use strict";P={enabled:!0,headless:!0,timeout:3e4,retryAttempts:3,fallbackEnabled:!0,browserType:"chromium",viewport:{width:1280,height:720},userAgent:"",devtools:!1,slowMo:0,screenshotDir:".agentic-qe/screenshots"}});function B(i){return i instanceof o}function a(i,e="Unknown Vibium error"){return B(i)?i:i instanceof Error?new o(i.message||e,"UNKNOWN_ERROR",i):new o(typeof i=="string"?i:e,"UNKNOWN_ERROR")}var o,c,f,g,l,p,m,b,A=w(()=>{"use strict";o=class i extends Error{constructor(t,r,s){super(t);this.code=r;this.cause=s;this.name="VibiumError",Error.captureStackTrace&&Error.captureStackTrace(this,i),s?.stack&&(this.stack+=`
3
+ Caused by: ${s.stack}`)}code;cause},c=class extends o{constructor(e="Vibium MCP server is unavailable",t){super(e,"VIBIUM_UNAVAILABLE",t),this.name="VibiumUnavailableError"}},f=class extends o{constructor(e="Browser operation timed out",t){super(e,"VIBIUM_TIMEOUT",t),this.name="VibiumTimeoutError"}},g=class extends o{selector;constructor(e,t){super(`Element not found: ${e}`,"ELEMENT_NOT_FOUND",t),this.name="VibiumElementNotFoundError",this.selector=e}},l=class extends o{constructor(e="Failed to connect to browser",t){super(e,"CONNECTION_ERROR",t),this.name="VibiumConnectionError"}},p=class extends o{url;statusCode;constructor(e,t,r){let s=t?`Navigation failed: ${e} (HTTP ${t})`:`Navigation failed: ${e}`;super(s,"NAVIGATION_ERROR",r),this.name="VibiumNavigationError",this.url=e,this.statusCode=t}},m=class extends o{constructor(e="Failed to capture screenshot",t){super(e,"SCREENSHOT_ERROR",t),this.name="VibiumScreenshotError"}},b=class extends o{action;selector;constructor(e,t,r){super(`Failed to ${e} element: ${t}`,"INTERACTION_ERROR",r),this.name="VibiumInteractionError",this.action=e,this.selector=t}}});import{randomUUID as _}from"crypto";async function V(){if(v!==null)return v;try{return v=(await import("./vibium-5X7QY25W.js")).browser,O=!0,v}catch(i){return console.warn("[Vibium] Failed to load vibium package:",i),O=!1,null}}async function T(i,e,t){let r;for(let s=1;s<=e;s++)try{return await i()}catch(n){if(r=I(n),s<e){let u=Math.min(100*Math.pow(2,s-1),2e3);await new Promise(d=>setTimeout(d,u))}}throw new o(`${t} failed after ${e} attempts`,"RETRY_EXHAUSTED",r)}async function h(i,e){let t=Date.now();try{let r=await i();return R()&&console.log(`[Vibium] ${e}: ${Date.now()-t}ms`),r}catch(r){throw R()&&console.log(`[Vibium] ${e} failed: ${Date.now()-t}ms`,r),r}}var v,O,E,N,M=w(()=>{S();A();k();F();v=null,O=!1;E=class{config;currentSession=null;lastHealthCheck=null;_initialized=!1;_available=null;vibeInstance=null;constructor(e={}){this.config={...P,...e}}async isAvailable(){if(!this.config.enabled)return!1;if(this._available!==null)return this._available;try{let e=await V();return this._available=e!==null,this._available}catch{return this._available=!1,!1}}async getHealth(){let e=new Date;if(!this.config.enabled)return{status:"unavailable",features:["fallback-only"],lastChecked:e,error:"Vibium is disabled by configuration",sessionActive:!1};try{await this.isAvailable()?this.lastHealthCheck={status:this.vibeInstance?"connected":"disconnected",version:"0.1.2",browserType:this.config.browserType,features:["browser-launch","navigation","element-interaction","screenshots","script-evaluation","accessibility-testing"],latencyMs:10,lastChecked:e,sessionActive:this.vibeInstance!==null}:this.lastHealthCheck={status:"unavailable",features:["fallback-only"],lastChecked:e,error:"Vibium package not available - install with: npm install vibium",sessionActive:!1}}catch(t){this.lastHealthCheck={status:"error",features:["fallback-only"],lastChecked:e,error:t instanceof Error?t.message:"Unknown error",sessionActive:!1}}return this.lastHealthCheck}async getSession(){return this.currentSession}async launch(e){if(!x())return{success:!1,error:new c("Browser mode is disabled by feature flags")};let t=async()=>{let r=await V();if(!r)throw new c("Vibium package not available. Install with: npm install vibium");let s=e?.headless??this.config.headless;this.vibeInstance=await r.launch({headless:s});let n={id:this.generateSessionId(),browserType:this.config.browserType,launchedAt:new Date,status:"connected",viewport:e?.viewport??this.config.viewport,headless:s};return this.currentSession=n,n};try{return{success:!0,value:y()?await T(()=>h(t,"browser_launch"),this.config.retryAttempts,"browser_launch"):await h(t,"browser_launch")}}catch(r){return{success:!1,error:a(r,"Failed to launch browser")}}}async quit(){if(!this.vibeInstance)return{success:!1,error:new l("No active browser session")};let e=async()=>{this.vibeInstance&&(await this.vibeInstance.quit(),this.vibeInstance=null),this.currentSession=null};try{return await h(e,"browser_quit"),{success:!0,value:void 0}}catch(t){return{success:!1,error:a(t,"Failed to quit browser")}}}async navigate(e){this.ensureSession();let t=async()=>{let r=Date.now();await this.vibeInstance.go(e.url);let s="";try{s=await this.vibeInstance.evaluate("document.title")}catch{s="Unknown"}let n={url:e.url,statusCode:200,title:s,durationMs:Date.now()-r,success:!0};return this.currentSession&&(this.currentSession.currentUrl=e.url),n};try{return{success:!0,value:y()?await T(()=>h(t,"page_navigate"),this.config.retryAttempts,"page_navigate"):await h(t,"page_navigate")}}catch(r){return{success:!1,error:new p(e.url,void 0,r instanceof Error?r:void 0)}}}async getPageInfo(){this.ensureSession();try{let e=await this.vibeInstance.evaluate("window.location.href"),t=await this.vibeInstance.evaluate("document.title");return{success:!0,value:{url:e,title:t,viewport:this.config.viewport,loadState:"loaded"}}}catch(e){return{success:!1,error:a(e,"Failed to get page info")}}}async goBack(){this.ensureSession();try{return await this.vibeInstance.evaluate("window.history.back()"),{success:!0,value:void 0}}catch(e){return{success:!1,error:a(e,"Failed to go back")}}}async goForward(){this.ensureSession();try{return await this.vibeInstance.evaluate("window.history.forward()"),{success:!0,value:void 0}}catch(e){return{success:!1,error:a(e,"Failed to go forward")}}}async reload(){this.ensureSession();try{return await this.vibeInstance.evaluate("window.location.reload()"),{success:!0,value:void 0}}catch(e){return{success:!1,error:a(e,"Failed to reload page")}}}async findElement(e){this.ensureSession();try{let t=await this.vibeInstance.find(e.selector,{timeout:e.timeout??this.config.timeout});return{success:!0,value:{selector:e.selector,tagName:t.info.tag,textContent:t.info.text,attributes:{},boundingBox:t.info.box,visible:!0,enabled:!0}}}catch(t){return{success:!1,error:new g(e.selector,t instanceof Error?t:void 0)}}}async findElements(e){this.ensureSession();try{let t=e.selector.replace(/\\/g,"\\\\").replace(/'/g,"\\'");return{success:!0,value:(await this.vibeInstance.evaluate(`
4
4
  Array.from(document.querySelectorAll('${t}'))
5
5
  .map(el => ({
6
6
  tag: el.tagName.toLowerCase(),