agentic-qe 3.14.4 → 3.14.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. package/.claude/skills/skills-manifest.json +1 -1
  2. package/CHANGELOG.md +93 -0
  3. package/assets/skills/skills-manifest.json +1 -1
  4. package/dist/audit/witness-chain.d.ts +1 -1
  5. package/dist/audit/witness-chain.js +29 -22
  6. package/dist/cli/bundle.js +13 -10
  7. package/dist/cli/chunks/adapter-IYC62SXA.js +2 -0
  8. package/dist/cli/chunks/{agent-booster-wasm-5PC7D2FW.js → agent-booster-wasm-EDNKP3SP.js} +2 -2
  9. package/dist/cli/chunks/{agent-handler-RDNTK4CA.js → agent-handler-V6CZ7Q6S.js} +2 -2
  10. package/dist/cli/chunks/{agent-memory-branch-NAAMBWIR.js → agent-memory-branch-ZMD6ULC3.js} +2 -2
  11. package/dist/cli/chunks/aqe-learning-engine-LLOU2IXD.js +2 -0
  12. package/dist/cli/chunks/{arena-HXTWJ5YY.js → arena-4UPAEHFT.js} +4 -4
  13. package/dist/cli/chunks/{arena-KXFHRWX4.js → arena-QLSBESC7.js} +2 -2
  14. package/dist/cli/chunks/{audit-YSGA7UWT.js → audit-CVZQMF55.js} +3 -3
  15. package/dist/cli/chunks/base-P3Z4IKCT.js +2 -0
  16. package/dist/cli/chunks/{better-sqlite3-UICJZIDG.js → better-sqlite3-4DSBPDRH.js} +2 -2
  17. package/dist/cli/chunks/brain-handler-GBY4EZ4P.js +94 -0
  18. package/dist/cli/chunks/{branch-enumerator-SS7UNVIA.js → branch-enumerator-XYBVXCNO.js} +2 -2
  19. package/dist/cli/chunks/{browser-77GI6KBE.js → browser-32F6MREU.js} +2 -2
  20. package/dist/cli/chunks/browser-workflow-YYHQQ25X.js +2 -0
  21. package/dist/cli/chunks/{chunk-FGYMFUE2.js → chunk-2JGEZHWY.js} +2 -2
  22. package/dist/cli/chunks/{chunk-MOBNBMFW.js → chunk-2KJQ2UQE.js} +1 -1
  23. package/dist/cli/chunks/{chunk-C2WU3533.js → chunk-2OMLTYQK.js} +1 -1
  24. package/dist/cli/chunks/{chunk-CU46J64M.js → chunk-37TUN44F.js} +2 -2
  25. package/dist/cli/chunks/{chunk-Z3RHREWF.js → chunk-3DDXWYMO.js} +1 -1
  26. package/dist/cli/chunks/{chunk-Q5DO24IJ.js → chunk-3EZ5DR2R.js} +3 -3
  27. package/dist/cli/chunks/{chunk-WLG5AJ4N.js → chunk-3KDL6QDK.js} +2 -2
  28. package/dist/cli/chunks/{chunk-MTZH7AHC.js → chunk-3VIXOHMS.js} +1 -1
  29. package/dist/cli/chunks/{chunk-ISDMD6EU.js → chunk-3YUB5HER.js} +96 -96
  30. package/dist/cli/chunks/{chunk-CDKG6EI7.js → chunk-4FWTLJEP.js} +2 -2
  31. package/dist/cli/chunks/{chunk-HDSAM2RE.js → chunk-52L77RMG.js} +2 -2
  32. package/dist/cli/chunks/{chunk-MEGDYJPV.js → chunk-5D36YHS3.js} +4 -4
  33. package/dist/cli/chunks/{chunk-T6BVLVI5.js → chunk-5WOSWNDN.js} +1 -1
  34. package/dist/cli/chunks/{chunk-M2JBBZQB.js → chunk-67YV75XP.js} +2 -2
  35. package/dist/cli/chunks/{chunk-KHFNNVJA.js → chunk-6A44AOGN.js} +2 -2
  36. package/dist/cli/chunks/{chunk-IPR4QP3H.js → chunk-6CR4VQBQ.js} +2 -2
  37. package/dist/cli/chunks/{chunk-XRT2WRMS.js → chunk-6ITZZIQX.js} +2 -2
  38. package/dist/cli/chunks/{chunk-4OYFXLBK.js → chunk-6LKDHEBY.js} +2 -2
  39. package/dist/cli/chunks/{chunk-FLYOJOKN.js → chunk-6TU7FEMD.js} +1 -1
  40. package/dist/cli/chunks/{chunk-6QYNWR7U.js → chunk-6VAZAHQG.js} +2 -2
  41. package/dist/cli/chunks/{chunk-TWAWHOP7.js → chunk-73EI4C2E.js} +2 -2
  42. package/dist/cli/chunks/{chunk-5R3QL7WN.js → chunk-75QJ5HWE.js} +2 -2
  43. package/dist/cli/chunks/{chunk-Y3MW3YBC.js → chunk-7CD7PBHY.js} +2 -2
  44. package/dist/cli/chunks/chunk-7DETTOPZ.js +14 -0
  45. package/dist/cli/chunks/{chunk-KSKEF7LZ.js → chunk-7JZJJA7U.js} +3 -3
  46. package/dist/cli/chunks/{chunk-AIHDEEJO.js → chunk-7VFY7TUR.js} +2 -2
  47. package/dist/cli/chunks/chunk-7X7JYWT4.js +27 -0
  48. package/dist/cli/chunks/chunk-AF4XKLXO.js +2 -0
  49. package/dist/cli/chunks/{chunk-6KJABXAR.js → chunk-AFEDJ3RU.js} +2 -2
  50. package/dist/cli/chunks/{chunk-5SJHQ2CO.js → chunk-AMMQOV35.js} +2 -2
  51. package/dist/cli/chunks/{chunk-6VRA2QGL.js → chunk-BHFR2EXL.js} +1 -1
  52. package/dist/cli/chunks/{chunk-ZBAKA4YB.js → chunk-BJPL6THQ.js} +1 -1
  53. package/dist/cli/chunks/{chunk-DOTK76IJ.js → chunk-BXVAVFGU.js} +2 -2
  54. package/dist/cli/chunks/{chunk-MNW6QGNJ.js → chunk-BYG36QC5.js} +2 -2
  55. package/dist/cli/chunks/chunk-C3HQL6S4.js +2 -0
  56. package/dist/cli/chunks/{chunk-PZJOPURC.js → chunk-C3Z4VVHP.js} +5 -5
  57. package/dist/cli/chunks/{chunk-OULHKEVH.js → chunk-CPC7FN52.js} +2 -2
  58. package/dist/cli/chunks/{chunk-BFP7KO7P.js → chunk-CVMNJSCB.js} +2 -2
  59. package/dist/cli/chunks/{chunk-AUXFKCQL.js → chunk-CYE2TJFV.js} +2 -2
  60. package/dist/cli/chunks/{chunk-7D777LTF.js → chunk-CZO4BJG5.js} +2 -2
  61. package/dist/cli/chunks/{chunk-VD6QRULW.js → chunk-D6OUCB2H.js} +2 -2
  62. package/dist/cli/chunks/{chunk-6UWGMOND.js → chunk-DDCIYOGT.js} +2 -2
  63. package/dist/cli/chunks/{chunk-STJCATGN.js → chunk-DKUBQQFG.js} +2 -2
  64. package/dist/cli/chunks/{chunk-M4WJKGVK.js → chunk-DLF5BOJD.js} +1 -1
  65. package/dist/cli/chunks/{chunk-DA5K5754.js → chunk-DO6EI5KB.js} +1 -1
  66. package/dist/cli/chunks/{chunk-BDESSCVR.js → chunk-DPBRWP4J.js} +3 -3
  67. package/dist/cli/chunks/{chunk-HV2J7KKQ.js → chunk-E3W6XQ57.js} +2 -2
  68. package/dist/cli/chunks/{chunk-MDWCE7YW.js → chunk-E4AZXCT5.js} +1 -1
  69. package/dist/cli/chunks/{chunk-F3SBRQC6.js → chunk-E4EYPYR3.js} +2 -2
  70. package/dist/cli/chunks/{chunk-55RWDRJD.js → chunk-EFV4ADMO.js} +4 -4
  71. package/dist/cli/chunks/{chunk-5YPYDPBJ.js → chunk-ELBZON4V.js} +2 -2
  72. package/dist/cli/chunks/{chunk-PO3IXGMQ.js → chunk-EOR2UT72.js} +2 -2
  73. package/dist/cli/chunks/{chunk-EDJ3O7RH.js → chunk-F34OAHOM.js} +2 -2
  74. package/dist/cli/chunks/{chunk-XRYF6JV7.js → chunk-FUNGTIF2.js} +2 -2
  75. package/dist/cli/chunks/{chunk-EKQ673SA.js → chunk-G3L5L6YQ.js} +1 -1
  76. package/dist/cli/chunks/{chunk-NJBGXDQ7.js → chunk-G3W6BMVJ.js} +1 -1
  77. package/dist/cli/chunks/{chunk-CIZ5JPDC.js → chunk-GTKCGPJZ.js} +3 -3
  78. package/dist/cli/chunks/{chunk-QGIU2WRL.js → chunk-HBCGYMQU.js} +1 -1
  79. package/dist/cli/chunks/{chunk-V3QLFNA2.js → chunk-HSVKZ5KI.js} +4 -4
  80. package/dist/cli/chunks/{chunk-BGE6FOLM.js → chunk-HVU64GP5.js} +2 -2
  81. package/dist/cli/chunks/chunk-HVXJC3OC.js +2 -0
  82. package/dist/cli/chunks/{chunk-MIQTXNBG.js → chunk-HYEJJJY3.js} +1 -1
  83. package/dist/cli/chunks/{chunk-CLTMDCSE.js → chunk-I2NENQ44.js} +2 -2
  84. package/dist/cli/chunks/{chunk-SGYJ4NFZ.js → chunk-I6X3EGJI.js} +1 -1
  85. package/dist/cli/chunks/{chunk-BOARZKU3.js → chunk-IGBEJ4UJ.js} +2 -2
  86. package/dist/cli/chunks/{chunk-FWGOHAAB.js → chunk-IIAR5S7Q.js} +2 -2
  87. package/dist/cli/chunks/{chunk-DHJPWQBR.js → chunk-IJHCIXJC.js} +2 -2
  88. package/dist/cli/chunks/{chunk-UEM7ZF5K.js → chunk-IUDWEOLX.js} +2 -2
  89. package/dist/cli/chunks/chunk-IUHB5GVS.js +3 -0
  90. package/dist/cli/chunks/{chunk-M5QUBZY6.js → chunk-IYTLXUBO.js} +2 -2
  91. package/dist/cli/chunks/chunk-J27F4NSB.js +2 -0
  92. package/dist/cli/chunks/{chunk-G6T45OIC.js → chunk-J5UNP6W3.js} +2 -2
  93. package/dist/cli/chunks/{chunk-3UPAMMCB.js → chunk-JES6R5KP.js} +1 -1
  94. package/dist/cli/chunks/{chunk-ZBQY5GLF.js → chunk-JROVR6YS.js} +2 -2
  95. package/dist/cli/chunks/chunk-JSZ663MU.js +2 -0
  96. package/dist/cli/chunks/{chunk-PFR4G3DJ.js → chunk-JVQBWYHW.js} +2 -2
  97. package/dist/cli/chunks/{chunk-JBNEE5UH.js → chunk-K27SU3RE.js} +2 -2
  98. package/dist/cli/chunks/{chunk-JZ3ORVZ3.js → chunk-K7NJHFLZ.js} +3 -3
  99. package/dist/cli/chunks/{chunk-3VOQRIQM.js → chunk-KEY43ANX.js} +2 -2
  100. package/dist/cli/chunks/chunk-KIP6WZGV.js +13 -0
  101. package/dist/cli/chunks/{chunk-UDHKLT4C.js → chunk-KKHYJF5U.js} +1 -1
  102. package/dist/cli/chunks/{chunk-ZNEMGX5O.js → chunk-KLTP5IDB.js} +1 -1
  103. package/dist/cli/chunks/{chunk-ONII3572.js → chunk-KO4FNAUR.js} +3 -3
  104. package/dist/cli/chunks/{chunk-TSRSV3LD.js → chunk-KYA5LARK.js} +1 -1
  105. package/dist/cli/chunks/{chunk-2JW3BCGG.js → chunk-LSUILON7.js} +1 -1
  106. package/dist/cli/chunks/chunk-LULD4JV2.js +15 -0
  107. package/dist/cli/chunks/{chunk-FRH6VAUS.js → chunk-M23ZOZVY.js} +1 -1
  108. package/dist/cli/chunks/{chunk-R5NE6B2M.js → chunk-M5AEL7IS.js} +2 -2
  109. package/dist/cli/chunks/chunk-MI5Q55DG.js +65 -0
  110. package/dist/cli/chunks/chunk-N7H767TP.js +4 -0
  111. package/dist/cli/chunks/{chunk-RJCYCLZV.js → chunk-NQI7FWCS.js} +2 -2
  112. package/dist/cli/chunks/{chunk-CXQPR5MY.js → chunk-NRE4NAVA.js} +1 -1
  113. package/dist/cli/chunks/{chunk-ODKLFVYC.js → chunk-NU7UTXMP.js} +2 -2
  114. package/dist/cli/chunks/{chunk-MVPCNSPY.js → chunk-NVYBM3R4.js} +2 -2
  115. package/dist/cli/chunks/{chunk-MVNP7GIR.js → chunk-O3JTQ7N4.js} +1 -1
  116. package/dist/cli/chunks/{chunk-6CQN24ZK.js → chunk-OEIQTWQP.js} +1 -1
  117. package/dist/cli/chunks/{chunk-U5K45TFH.js → chunk-PSPKSUF6.js} +1 -1
  118. package/dist/cli/chunks/{chunk-CDHQFHRP.js → chunk-QIRL6B3C.js} +2 -2
  119. package/dist/cli/chunks/{chunk-OSLYSG3B.js → chunk-QRCIZFNK.js} +2 -2
  120. package/dist/cli/chunks/{chunk-BOZZYWCR.js → chunk-QWUXCG2L.js} +1 -1
  121. package/dist/cli/chunks/{chunk-HIYXCDEP.js → chunk-QYOGD2VW.js} +1 -1
  122. package/dist/cli/chunks/{chunk-A4FYONNU.js → chunk-QZMUXJHZ.js} +2 -2
  123. package/dist/cli/chunks/{chunk-3TW5W5LX.js → chunk-R6IU3EWP.js} +2 -2
  124. package/dist/cli/chunks/{chunk-3X3DJZJJ.js → chunk-R74ZKREV.js} +1 -1
  125. package/dist/cli/chunks/{chunk-HIVA55CJ.js → chunk-RD2VGOUH.js} +1 -1
  126. package/dist/cli/chunks/{chunk-TPGED2IF.js → chunk-RD6TEZ64.js} +2 -2
  127. package/dist/cli/chunks/{chunk-4MHXCAG2.js → chunk-RGGK6VZ7.js} +1 -1
  128. package/dist/cli/chunks/{chunk-UGVHCMUN.js → chunk-RIZVC4XY.js} +3 -3
  129. package/dist/cli/chunks/{chunk-R4VL6E65.js → chunk-RKOUXVZZ.js} +2 -2
  130. package/dist/cli/chunks/{chunk-IFCLB7FJ.js → chunk-RP2ZKPYV.js} +1 -1
  131. package/dist/cli/chunks/{chunk-34WO57CW.js → chunk-SQF6HRXR.js} +1 -1
  132. package/dist/cli/chunks/{chunk-YNXS6CGV.js → chunk-SQKW3B6B.js} +1 -1
  133. package/dist/cli/chunks/{chunk-TDZ53WO2.js → chunk-SX4JLSLV.js} +2 -2
  134. package/dist/cli/chunks/{chunk-PAWXJ73E.js → chunk-TUSSPKRM.js} +1 -1
  135. package/dist/cli/chunks/{chunk-DFZCKIGY.js → chunk-TY5WC3FT.js} +3 -3
  136. package/dist/cli/chunks/{chunk-J6GNQS62.js → chunk-UDHVCKGA.js} +2 -2
  137. package/dist/cli/chunks/{chunk-CIKSHTEQ.js → chunk-UJWAWIRV.js} +4 -4
  138. package/dist/cli/chunks/{chunk-XJ7QNVI5.js → chunk-UKGXWW64.js} +3 -3
  139. package/dist/cli/chunks/{chunk-64PFWE2F.js → chunk-UMGFMKDW.js} +2 -2
  140. package/dist/cli/chunks/{chunk-DPFRKBOG.js → chunk-URVHZPWY.js} +2 -2
  141. package/dist/cli/chunks/{chunk-MCUJEZT6.js → chunk-UTBYJ4RF.js} +2 -2
  142. package/dist/cli/chunks/{chunk-HUWNIPZ5.js → chunk-VD5IO5EO.js} +1 -1
  143. package/dist/cli/chunks/{chunk-7ZIOFPL3.js → chunk-VTOVWHEM.js} +2 -2
  144. package/dist/cli/chunks/{chunk-SRKETSFF.js → chunk-W2XCZU62.js} +1 -1
  145. package/dist/cli/chunks/{chunk-CNG6GQEZ.js → chunk-WJHWH5D2.js} +2 -2
  146. package/dist/cli/chunks/{chunk-ZJ26AQA5.js → chunk-WJTSY5MC.js} +1 -1
  147. package/dist/cli/chunks/{chunk-OCWWP5PL.js → chunk-WK7B4B6Y.js} +2 -2
  148. package/dist/cli/chunks/{chunk-KPA7MZ6C.js → chunk-WLXK2KNU.js} +2 -2
  149. package/dist/cli/chunks/{chunk-ZBJ4XOOV.js → chunk-WOIGKU2N.js} +4 -4
  150. package/dist/cli/chunks/{chunk-ZZDIMOOV.js → chunk-WX6RRIGW.js} +2 -2
  151. package/dist/cli/chunks/{chunk-STM3UDNO.js → chunk-XEZIIQYJ.js} +2 -2
  152. package/dist/cli/chunks/{chunk-3QHGWY7T.js → chunk-XFPPERA2.js} +2 -2
  153. package/dist/cli/chunks/{chunk-VIHTL3U2.js → chunk-XLAUGSW7.js} +2 -2
  154. package/dist/cli/chunks/{chunk-XC7DYDSY.js → chunk-XQSIRBKT.js} +2 -2
  155. package/dist/cli/chunks/{chunk-GPLQ6DOK.js → chunk-XUR2M2WB.js} +2 -2
  156. package/dist/cli/chunks/{chunk-KCZR45PA.js → chunk-XZSMZHM2.js} +2 -2
  157. package/dist/cli/chunks/{chunk-ZNPKDCZR.js → chunk-Y5L3ES4L.js} +2 -2
  158. package/dist/cli/chunks/{chunk-W7BWUTVV.js → chunk-YDFL445W.js} +2 -2
  159. package/dist/cli/chunks/{chunk-AWWNB2T7.js → chunk-YQGPQBCX.js} +2 -2
  160. package/dist/cli/chunks/{chunk-DAEFDCJ4.js → chunk-YXP6BKGS.js} +17 -17
  161. package/dist/cli/chunks/{chunk-OBAP2TXZ.js → chunk-ZBABIZ2D.js} +2 -2
  162. package/dist/cli/chunks/{chunk-CSU5NYOX.js → chunk-ZCWERUYB.js} +4 -4
  163. package/dist/cli/chunks/{ci-464KPQNP.js → ci-RACDAJMR.js} +2 -2
  164. package/dist/cli/chunks/{ci-output-I7FX2RSO.js → ci-output-EHRSZBKG.js} +2 -2
  165. package/dist/cli/chunks/{circuit-breaker-3FW237WW.js → circuit-breaker-GBV7M5XG.js} +2 -2
  166. package/dist/cli/chunks/{claude-flow-setup-6JKMBPGU.js → claude-flow-setup-5LVJOFKP.js} +2 -2
  167. package/dist/cli/chunks/client-HUVFA5PF.js +2 -0
  168. package/dist/cli/chunks/{cline-installer-UWFHT6VY.js → cline-installer-W4NMXJSG.js} +2 -2
  169. package/dist/cli/chunks/{code-KQSUT3FS.js → code-JWXJMYXB.js} +3 -3
  170. package/dist/cli/chunks/{code-index-extractor-PABBNUSC.js → code-index-extractor-RVI2IFTM.js} +2 -2
  171. package/dist/cli/chunks/codex-installer-3BORJINH.js +14 -0
  172. package/dist/cli/chunks/{completions-7RWHAUAR.js → completions-A55NCTAO.js} +2 -2
  173. package/dist/cli/chunks/{complexity-analyzer-XPOAF33E.js → complexity-analyzer-JCXHGGLY.js} +2 -2
  174. package/dist/cli/chunks/{continuedev-installer-V4F2FIZP.js → continuedev-installer-PUVFMGYW.js} +2 -2
  175. package/dist/cli/chunks/{copilot-installer-JMICURQB.js → copilot-installer-4DCMYWHB.js} +2 -2
  176. package/dist/cli/chunks/core-handlers-UEXO3VAA.js +2 -0
  177. package/dist/cli/chunks/{cost-tracker-5OFHEYFJ.js → cost-tracker-5TV2GGKY.js} +2 -2
  178. package/dist/cli/chunks/{coverage-QKN57JDS.js → coverage-NNWM7TX3.js} +3 -3
  179. package/dist/cli/chunks/cross-domain-router-ODU5IZD6.js +2 -0
  180. package/dist/cli/chunks/{cursor-installer-GBJ7YXSM.js → cursor-installer-4NCHGJGK.js} +2 -2
  181. package/dist/cli/chunks/{daemon-IAVSO6HK.js → daemon-QIKCXKWO.js} +4 -4
  182. package/dist/cli/chunks/{daemon-GKP7CMEK.js → daemon-T4JO4IXP.js} +3 -3
  183. package/dist/cli/chunks/{dag-attention-scheduler-S225TCI7.js → dag-attention-scheduler-RPAAIDAD.js} +2 -2
  184. package/dist/cli/chunks/{detect-IUYH422U.js → detect-SBEEVDSN.js} +2 -2
  185. package/dist/cli/chunks/{dist-node-2YRE6A7C.js → dist-node-ZHI6NCSU.js} +2 -2
  186. package/dist/cli/chunks/{domain-handler-PL2TZC6H.js → domain-handler-LBC3GJ7Z.js} +2 -2
  187. package/dist/cli/chunks/{domain-plugins-HCGLXKIT.js → domain-plugins-H6IZ5USZ.js} +2 -2
  188. package/dist/cli/chunks/{domain-transfer-KQJRUPXA.js → domain-transfer-JZA5TMW3.js} +2 -2
  189. package/dist/cli/chunks/dream-HE3OX42F.js +2 -0
  190. package/dist/cli/chunks/embed-and-insert-pattern-AHTR7CRU.js +3 -0
  191. package/dist/cli/chunks/{eval-WCK7KNFN.js → eval-DZU2KISM.js} +2 -2
  192. package/dist/cli/chunks/{experience-capture-middleware-2MSQWSAR.js → experience-capture-middleware-5IQCWKSL.js} +4 -4
  193. package/dist/cli/chunks/{fast-paths-VYOSIBKF.js → fast-paths-2KLDUWCY.js} +2 -2
  194. package/dist/cli/chunks/{feature-flags-UJRHFBRX.js → feature-flags-7AC3XDZA.js} +2 -2
  195. package/dist/cli/chunks/{feature-flags-WCFUKHNQ.js → feature-flags-N6UAEZY4.js} +2 -2
  196. package/dist/cli/chunks/{file-discovery-JDGL4ZWS.js → file-discovery-5SDIW4V2.js} +2 -2
  197. package/dist/cli/chunks/{fleet-ROXVMZ2F.js → fleet-ZIQCAZ2Y.js} +3 -3
  198. package/dist/cli/chunks/{gnn-wrapper-NIO4ZCO3.js → gnn-wrapper-DUMBZJEV.js} +2 -2
  199. package/dist/cli/chunks/{heartbeat-handler-PI42WD3C.js → heartbeat-handler-6HVM6ZMR.js} +4 -4
  200. package/dist/cli/chunks/heartbeat-scheduler-QUIFGGLX.js +2 -0
  201. package/dist/cli/chunks/hnsw-adapter-42KB37KP.js +2 -0
  202. package/dist/cli/chunks/hnsw-index-T2PGO77J.js +2 -0
  203. package/dist/cli/chunks/{hnsw-legacy-bridge-YLC7SPK2.js → hnsw-legacy-bridge-5DRL5FLX.js} +2 -2
  204. package/dist/cli/chunks/{hnswlib-node-LG6OS3B7.js → hnswlib-node-GW67GTCL.js} +2 -2
  205. package/dist/cli/chunks/{hooks-WVALP5GX.js → hooks-QHH6FVO4.js} +10 -10
  206. package/dist/cli/chunks/hybrid-backend-FRNWYRKH.js +2 -0
  207. package/dist/cli/chunks/{hypergraph-engine-GJEMW3EG.js → hypergraph-engine-7XDCCVG2.js} +2 -2
  208. package/dist/cli/chunks/{hypergraph-handler-BLF6LXEV.js → hypergraph-handler-QHF7NOU5.js} +3 -3
  209. package/dist/cli/chunks/impact-analyzer-A5QYOYBR.js +2 -0
  210. package/dist/cli/chunks/{init-handler-K25RWRYY.js → init-handler-5UIVOM7K.js} +6 -6
  211. package/dist/cli/chunks/init-wizard-XBU674YH.js +2 -0
  212. package/dist/cli/chunks/kernel-DV5MTNZD.js +2 -0
  213. package/dist/cli/chunks/{kilocode-installer-BXN6WZ7G.js → kilocode-installer-TGGV6K5Q.js} +2 -2
  214. package/dist/cli/chunks/{kiro-installer-PM362DLN.js → kiro-installer-4XYBHZWW.js} +2 -2
  215. package/dist/cli/chunks/knowledge-graph-4ACGVJQK.js +2 -0
  216. package/dist/cli/chunks/{learning-CPERDDRG.js → learning-STE5W6BS.js} +3 -3
  217. package/dist/cli/chunks/{llm-router-GOAV5FPI.js → llm-router-NKF7J3RI.js} +4 -4
  218. package/dist/cli/chunks/llm-router-service-PSMASERT.js +2 -0
  219. package/dist/cli/chunks/{load-2BG6SHAK.js → load-B2T77UJQ.js} +2 -2
  220. package/dist/cli/chunks/load-test-MRUO2VPF.js +2 -0
  221. package/dist/cli/chunks/mcp-JGSFCEMH.js +2 -0
  222. package/dist/cli/chunks/{memory-4NHBYT6S.js → memory-WRFZKG56.js} +6 -6
  223. package/dist/cli/chunks/memory-backend-2MPGI6JW.js +2 -0
  224. package/dist/cli/chunks/memory-handlers-XT4HMITB.js +2 -0
  225. package/dist/cli/chunks/{multi-model-executor-KCWSGCDT.js → multi-model-executor-26Q5BSVG.js} +2 -2
  226. package/dist/cli/chunks/{opencode-installer-ATZLLK74.js → opencode-installer-J36EMQU7.js} +2 -2
  227. package/dist/cli/chunks/{orchestrator-RKB7XJRG.js → orchestrator-D5IFV65I.js} +18 -18
  228. package/dist/cli/chunks/pattern-null-store-TGWUL237.js +2 -0
  229. package/dist/cli/chunks/{pattern-usage-recorder-7VE4XDAI.js → pattern-usage-recorder-BVMTWI3E.js} +2 -2
  230. package/dist/cli/chunks/{pipeline-LQZSNDD2.js → pipeline-OWAHDUAQ.js} +2 -2
  231. package/dist/cli/chunks/platform-ANGBFWBV.js +2 -0
  232. package/dist/cli/chunks/{plugin-EJ6K2MGU.js → plugin-OO7ON2YW.js} +2 -2
  233. package/dist/cli/chunks/{prime-radiant-advanced-wasm-OIHTKJMN.js → prime-radiant-advanced-wasm-HFG3BXWU.js} +2 -2
  234. package/dist/cli/chunks/project-root-LNOYVTYY.js +2 -0
  235. package/dist/cli/chunks/protocol-executor-GEVH5KD6.js +2 -0
  236. package/dist/cli/chunks/{protocol-handler-NRBROAU7.js → protocol-handler-CE3Q6LY4.js} +2 -2
  237. package/dist/cli/chunks/{prove-EJOGEGD3.js → prove-7XPN53PY.js} +2 -2
  238. package/dist/cli/chunks/qe-reasoning-bank-DJ2JL6QB.js +2 -0
  239. package/dist/cli/chunks/{quality-E55UC73D.js → quality-TT23JRFX.js} +2 -2
  240. package/dist/cli/chunks/{quality-gate-OIQATNT3.js → quality-gate-PPPRP255.js} +3 -3
  241. package/dist/cli/chunks/queen-coordinator-F7E3AS26.js +2 -0
  242. package/dist/cli/chunks/real-embeddings-EYNZIFJE.js +2 -0
  243. package/dist/cli/chunks/{ref-validation-OPO6J7OL.js → ref-validation-QQR64ZXD.js} +2 -2
  244. package/dist/cli/chunks/{roocode-installer-ODY5KRWU.js → roocode-installer-UIGS7ZJD.js} +2 -2
  245. package/dist/cli/chunks/router-OZH3QSAU.js +2 -0
  246. package/dist/cli/chunks/routing-feedback-J2E3ADZB.js +2 -0
  247. package/dist/cli/chunks/{routing-handler-KQM6VWLC.js → routing-handler-6AENUIRG.js} +2 -2
  248. package/dist/cli/chunks/{ruvector-commands-U2GVV6PF.js → ruvector-commands-5AWMEV34.js} +2 -2
  249. package/dist/cli/chunks/rvf-dual-writer-HK525Y5Y.js +2 -0
  250. package/dist/cli/chunks/rvf-migration-adapter-Q7FB3BKR.js +2 -0
  251. package/dist/cli/chunks/rvf-migration-coordinator-NWRJ7C22.js +2 -0
  252. package/dist/cli/chunks/rvf-native-adapter-5ZRCGUI6.js +2 -0
  253. package/dist/cli/chunks/{rvf-store-integrity-KMIHD3LP.js → rvf-store-integrity-ISKRP563.js} +2 -2
  254. package/dist/cli/chunks/safe-db-3OYEPVEH.js +2 -0
  255. package/dist/cli/chunks/schedule-AG4C2EIQ.js +2 -0
  256. package/dist/cli/chunks/scheduler-SQS2CZFZ.js +2 -0
  257. package/dist/cli/chunks/{security-P5NM353C.js → security-325A7FMB.js} +3 -3
  258. package/dist/cli/chunks/{shared-rvf-adapter-LVIUOO4S.js → shared-rvf-adapter-NFL6QSZ6.js} +2 -2
  259. package/dist/cli/chunks/{shared-rvf-dual-writer-2CSG7C4W.js → shared-rvf-dual-writer-THFDYS2Z.js} +2 -2
  260. package/dist/cli/chunks/sqlite-persistence-MAKDFSHC.js +2 -0
  261. package/dist/cli/chunks/standalone-memory-UD4MJ6GZ.js +2 -0
  262. package/dist/cli/chunks/{status-handler-6TU6O37R.js → status-handler-CPFTN4XL.js} +2 -2
  263. package/dist/cli/chunks/{structural-health-KBIJSTXJ.js → structural-health-2MG2IVBL.js} +2 -2
  264. package/dist/cli/chunks/{sync-LNHI5SB7.js → sync-EE4VVKOW.js} +2 -2
  265. package/dist/cli/chunks/{sync-UHOX6RJW.js → sync-MBTW5XBF.js} +2 -2
  266. package/dist/cli/chunks/task-handler-7H5OYJG4.js +54 -0
  267. package/dist/cli/chunks/task-handlers-NH4GJHCJ.js +9 -0
  268. package/dist/cli/chunks/{test-DHAAI3DU.js → test-MPHGT4T6.js} +4 -4
  269. package/dist/cli/chunks/{test-scheduling-XDBZ3QC2.js → test-scheduling-CHQ4ZLLJ.js} +3 -3
  270. package/dist/cli/chunks/token-bootstrap-SSDCYEKK.js +2 -0
  271. package/dist/cli/chunks/{token-usage-Q2YG5YQN.js → token-usage-EBXUJNRB.js} +2 -2
  272. package/dist/cli/chunks/{transformers-F5UQTQCY.js → transformers-ZEKS2OJZ.js} +2 -2
  273. package/dist/cli/chunks/{tree-sitter-wasm-parser-DEGOHS6F.js → tree-sitter-wasm-parser-J6ZMAK37.js} +2 -2
  274. package/dist/cli/chunks/{types-JQ7EQO5Q.js → types-KYAA5VLV.js} +2 -2
  275. package/dist/cli/chunks/unified-memory-DDWMC435.js +2 -0
  276. package/dist/cli/chunks/unified-memory-hnsw-4JA7SGBK.js +2 -0
  277. package/dist/cli/chunks/unified-persistence-F6OSNTXY.js +2 -0
  278. package/dist/cli/chunks/{upgrade-TJRVGHGD.js → upgrade-UJBJ5AYM.js} +2 -2
  279. package/dist/cli/chunks/{validate-BWPCVHBN.js → validate-RUV6YMWS.js} +2 -2
  280. package/dist/cli/chunks/{validate-swarm-QVVKCQLP.js → validate-swarm-IVEVMGVM.js} +2 -2
  281. package/dist/cli/chunks/{vibium-ZFATIWHO.js → vibium-HOGMFJ2Z.js} +2 -2
  282. package/dist/cli/chunks/visual-security-25SMBIYT.js +2 -0
  283. package/dist/cli/chunks/{web-tree-sitter-KPLY7ONR.js → web-tree-sitter-AVWA6HKE.js} +2 -2
  284. package/dist/cli/chunks/{windsurf-installer-H7XM7ISA.js → windsurf-installer-DAH7HI2W.js} +2 -2
  285. package/dist/cli/chunks/{witness-chain-RRN6NDCH.js → witness-chain-PJOQPFUX.js} +2 -2
  286. package/dist/cli/chunks/witness-chain-ZW6KKUZU.js +2 -0
  287. package/dist/cli/chunks/{witness-key-manager-DFRL42GE.js → witness-key-manager-JSTBMG43.js} +2 -2
  288. package/dist/cli/chunks/{workflow-2ZQO6WYI.js → workflow-TWOIA6LZ.js} +4 -4
  289. package/dist/cli/chunks/workflow-orchestrator-UKSIDM7Q.js +2 -0
  290. package/dist/cli/chunks/{wrappers-SUS6XEJD.js → wrappers-UR7BLXKV.js} +2 -2
  291. package/dist/cli/commands/mcp.js +6 -0
  292. package/dist/cli/commands/memory.d.ts +1 -1
  293. package/dist/cli/commands/memory.js +8 -8
  294. package/dist/cli/commands/platform.js +15 -2
  295. package/dist/cli/commands/upgrade.d.ts +3 -3
  296. package/dist/cli/commands/upgrade.js +3 -3
  297. package/dist/cli/handlers/init-handler.d.ts +10 -0
  298. package/dist/cli/handlers/task-handler.js +24 -3
  299. package/dist/cli/helpers/standalone-memory.d.ts +12 -0
  300. package/dist/cli/helpers/standalone-memory.js +46 -0
  301. package/dist/cli/index.js +37 -41
  302. package/dist/cli/log-gate.d.ts +66 -0
  303. package/dist/cli/log-gate.js +170 -0
  304. package/dist/init/codex-installer.js +18 -6
  305. package/dist/init/orchestrator.js +1 -0
  306. package/dist/init/phases/09-assets.d.ts +10 -0
  307. package/dist/init/phases/09-assets.js +3 -0
  308. package/dist/init/token-bootstrap.d.ts +1 -1
  309. package/dist/init/token-bootstrap.js +12 -2
  310. package/dist/init/types.d.ts +10 -0
  311. package/dist/integrations/ruvector/brain-exporter.js +17 -0
  312. package/dist/integrations/ruvector/brain-import-audit.d.ts +20 -0
  313. package/dist/integrations/ruvector/brain-import-audit.js +22 -0
  314. package/dist/integrations/ruvector/brain-rvf-exporter.js +16 -0
  315. package/dist/integrations/ruvector/brain-shared.js +1 -1
  316. package/dist/integrations/ruvector/rvf-dual-writer.js +6 -1
  317. package/dist/kernel/hybrid-backend.d.ts +6 -0
  318. package/dist/kernel/hybrid-backend.js +18 -0
  319. package/dist/kernel/kernel.js +9 -14
  320. package/dist/kernel/project-root.d.ts +1 -1
  321. package/dist/kernel/project-root.js +24 -3
  322. package/dist/learning/embedder-identity-store.js +4 -3
  323. package/dist/learning/pattern-store.js +5 -1
  324. package/dist/learning/real-embeddings.d.ts +8 -0
  325. package/dist/learning/real-embeddings.js +16 -0
  326. package/dist/learning/rvf-pattern-store.js +10 -3
  327. package/dist/mcp/bundle.js +442 -442
  328. package/dist/mcp/entry.js +2 -0
  329. package/dist/mcp/handlers/memory-handlers.d.ts +6 -1
  330. package/dist/mcp/handlers/memory-handlers.js +44 -22
  331. package/dist/mcp/handlers/task-handlers.js +14 -1
  332. package/dist/mcp/protocol-server.js +1 -0
  333. package/dist/mcp/services/session-store.js +5 -1
  334. package/dist/plugins/cache.d.ts +2 -0
  335. package/dist/plugins/cache.js +15 -2
  336. package/dist/plugins/lifecycle.js +15 -2
  337. package/dist/plugins/manifest.js +7 -5
  338. package/dist/plugins/resolver.d.ts +13 -22
  339. package/dist/plugins/resolver.js +169 -61
  340. package/dist/plugins/version-policy.d.ts +13 -0
  341. package/dist/plugins/version-policy.js +18 -0
  342. package/dist/shared/types/index.d.ts +6 -0
  343. package/dist/shared/types/index.js +8 -0
  344. package/package.json +2 -1
  345. package/dist/cli/chunks/adapter-TNNNJRDG.js +0 -2
  346. package/dist/cli/chunks/aqe-learning-engine-5ZRMYJLB.js +0 -2
  347. package/dist/cli/chunks/base-KWZHOPSH.js +0 -2
  348. package/dist/cli/chunks/brain-handler-ET6YAP4B.js +0 -90
  349. package/dist/cli/chunks/browser-workflow-2FZTKDUL.js +0 -2
  350. package/dist/cli/chunks/chunk-33YYYWBQ.js +0 -4
  351. package/dist/cli/chunks/chunk-5Z6XZV7K.js +0 -65
  352. package/dist/cli/chunks/chunk-6J62K3SW.js +0 -2
  353. package/dist/cli/chunks/chunk-6TPKK7LD.js +0 -15
  354. package/dist/cli/chunks/chunk-DEYLEDJN.js +0 -27
  355. package/dist/cli/chunks/chunk-KGT36Z42.js +0 -14
  356. package/dist/cli/chunks/chunk-NA7B2QYB.js +0 -2
  357. package/dist/cli/chunks/chunk-NDPFGIMJ.js +0 -13
  358. package/dist/cli/chunks/chunk-PEPFCPES.js +0 -2
  359. package/dist/cli/chunks/chunk-TT23RRB7.js +0 -2
  360. package/dist/cli/chunks/chunk-XWMZ6D6N.js +0 -2
  361. package/dist/cli/chunks/client-7E4LM2WW.js +0 -2
  362. package/dist/cli/chunks/codex-installer-CQ24DTP5.js +0 -14
  363. package/dist/cli/chunks/core-handlers-IFG3757P.js +0 -2
  364. package/dist/cli/chunks/cross-domain-router-EK7W4PGP.js +0 -2
  365. package/dist/cli/chunks/dream-NFSCSLY7.js +0 -2
  366. package/dist/cli/chunks/embed-and-insert-pattern-ZPAG7235.js +0 -3
  367. package/dist/cli/chunks/heartbeat-scheduler-ZATCDJDK.js +0 -2
  368. package/dist/cli/chunks/hnsw-adapter-WXQABRCA.js +0 -2
  369. package/dist/cli/chunks/hnsw-index-TPSWLEA5.js +0 -2
  370. package/dist/cli/chunks/impact-analyzer-HNIU45P5.js +0 -2
  371. package/dist/cli/chunks/init-wizard-JUIPBMHG.js +0 -2
  372. package/dist/cli/chunks/kernel-5BOZQ754.js +0 -2
  373. package/dist/cli/chunks/knowledge-graph-EWDAENWM.js +0 -2
  374. package/dist/cli/chunks/llm-router-service-3YT7JGBS.js +0 -2
  375. package/dist/cli/chunks/load-test-BP2CPLIV.js +0 -2
  376. package/dist/cli/chunks/mcp-5TTB37DC.js +0 -2
  377. package/dist/cli/chunks/memory-backend-4PYQBPRM.js +0 -2
  378. package/dist/cli/chunks/memory-handlers-2B27NITS.js +0 -2
  379. package/dist/cli/chunks/pattern-null-store-OYOQOV2O.js +0 -2
  380. package/dist/cli/chunks/platform-OD5H5U6G.js +0 -2
  381. package/dist/cli/chunks/protocol-executor-3ATJTXWG.js +0 -2
  382. package/dist/cli/chunks/qe-reasoning-bank-LLMYZT4X.js +0 -2
  383. package/dist/cli/chunks/queen-coordinator-RN7L6KG5.js +0 -2
  384. package/dist/cli/chunks/real-embeddings-FPFFNOSZ.js +0 -2
  385. package/dist/cli/chunks/router-MDHITQ2V.js +0 -2
  386. package/dist/cli/chunks/routing-feedback-5XLNJ3Y3.js +0 -2
  387. package/dist/cli/chunks/rvf-dual-writer-JBW4O3II.js +0 -2
  388. package/dist/cli/chunks/rvf-migration-adapter-BPPQL4XJ.js +0 -2
  389. package/dist/cli/chunks/rvf-migration-coordinator-V2GHCJKN.js +0 -2
  390. package/dist/cli/chunks/rvf-native-adapter-S4562CG5.js +0 -2
  391. package/dist/cli/chunks/safe-db-FIRHSXVF.js +0 -2
  392. package/dist/cli/chunks/schedule-RVXFB4HK.js +0 -2
  393. package/dist/cli/chunks/scheduler-IKKAMAOO.js +0 -2
  394. package/dist/cli/chunks/sqlite-persistence-SQ3HCUQ7.js +0 -2
  395. package/dist/cli/chunks/task-handler-AVDHMLGI.js +0 -49
  396. package/dist/cli/chunks/task-handlers-KYK4VTRA.js +0 -9
  397. package/dist/cli/chunks/token-bootstrap-GUTTLPZX.js +0 -2
  398. package/dist/cli/chunks/unified-memory-CXHLHB5I.js +0 -2
  399. package/dist/cli/chunks/unified-memory-hnsw-I7WAE54M.js +0 -2
  400. package/dist/cli/chunks/unified-persistence-6CPF65WI.js +0 -2
  401. package/dist/cli/chunks/visual-security-GNPHME5H.js +0 -2
  402. package/dist/cli/chunks/witness-chain-VT4UHHBR.js +0 -2
  403. package/dist/cli/chunks/workflow-orchestrator-DB3HIECD.js +0 -2
@@ -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.14.4");process.exit(0)}
2
- import{b as N,c as L}from"./chunk-MIQTXNBG.js";import{a as j,b as z}from"./chunk-MTZH7AHC.js";import{b as _}from"./chunk-HIVA55CJ.js";import{b as v,d as U}from"./chunk-DHJPWQBR.js";import"./chunk-TT23RRB7.js";var R=[{id:"unit",name:"Unit Tests",testTypes:["unit"],testPatterns:["**/*.test.ts","**/*.spec.ts","!**/*.integration.*","!**/*.e2e.*"],thresholds:{minPassRate:.99,maxFlakyRatio:.01,minCoverage:.8},parallelism:8,timeoutMs:6e4,failFast:!0},{id:"integration",name:"Integration Tests",testTypes:["integration","contract"],testPatterns:["**/*.integration.test.ts","**/*.integration.spec.ts"],thresholds:{minPassRate:.95,maxFlakyRatio:.05,minCoverage:.7},parallelism:4,timeoutMs:3e5,failFast:!1},{id:"e2e",name:"E2E Tests",testTypes:["e2e","visual"],testPatterns:["**/*.e2e.test.ts","**/*.e2e.spec.ts"],thresholds:{minPassRate:.9,maxFlakyRatio:.1,minCoverage:.5},parallelism:2,timeoutMs:6e5,failFast:!1}];var w=class{constructor(e,t={phases:R,failFast:!0,retryFailedPhases:!1,maxRetries:1}){this.executor=e;this.config=t}executor;config;state="idle";currentPhaseIndex=0;results=[];startTime;endTime;abortController;abortRequested=!1;async run(){if(this.state==="running")throw new Error("Scheduler is already running");this.state="running",this.currentPhaseIndex=0,this.results=[],this.startTime=new Date,this.abortController=new AbortController,this.abortRequested=!1;try{for(let e of this.config.phases){if(this.state==="paused"&&await this.waitForResume(),this.abortController.signal.aborted)break;let t=await this.executePhaseWithRetry(e);if(this.abortRequested)throw new Error("Phase aborted");if(this.results.push(t),this.currentPhaseIndex++,this.config.onPhaseComplete?.(t),!t.success&&this.config.failFast){this.state="failed";break}}if(this.abortRequested)throw new Error("Phase aborted");return this.endTime=new Date,this.state=this.results.every(e=>e.success)?"completed":"failed",this.config.onAllComplete?.(this.results),this.results}catch(e){throw this.abortRequested||(this.state="failed"),this.endTime=new Date,e}}async runPhase(e){let t=this.config.phases.find(s=>s.id===e);if(!t)throw new Error(`Phase not found: ${e}`);return this.abortRequested=!1,this.executePhaseWithRetry(t)}pause(){this.state==="running"&&(this.state="paused")}resume(){this.state==="paused"&&(this.state="running")}async abort(){this.abortRequested=!0,this.abortController?.abort(),await this.executor.abort(),this.state="idle"}getStats(){let e=this.startTime&&this.endTime?this.endTime.getTime()-this.startTime.getTime():this.startTime?Date.now()-this.startTime.getTime():void 0;return{state:this.state,currentPhaseIndex:this.currentPhaseIndex,totalPhases:this.config.phases.length,completedPhases:this.results.filter(t=>t.success).length,failedPhases:this.results.filter(t=>!t.success).length,results:[...this.results],startTime:this.startTime,endTime:this.endTime,durationMs:e}}async isReady(){return this.executor.isReady()}async executePhaseWithRetry(e){let t,s=this.config.retryFailedPhases?this.config.maxRetries:1;for(let r=1;r<=s;r++){if(this.abortRequested)throw new Error("Phase aborted");try{if(t=await this.executor.execute(e),this.abortRequested)throw new Error("Phase aborted");if(t.success||!this.config.retryFailedPhases)return t}catch(a){if(this.abortRequested)throw new Error("Phase aborted");if(this.config.onError?.(a,e),r===s)return this.createErrorResult(e,a)}}return t}createErrorResult(e,t){return{phaseId:e.id,phaseName:e.name,success:!1,passRate:0,flakyRatio:0,coverage:0,durationMs:0,totalTests:0,passed:0,failed:0,skipped:0,testResults:[],flakyTests:[],error:t.message}}waitForResume(){return new Promise(e=>{let t=()=>{this.state!=="paused"?e():setTimeout(t,100)};t()})}};function D(i,e){return new w(i,{phases:R,failFast:!0,retryFailedPhases:!1,maxRetries:1,...e})}function J(i,e){return i.passRate>=e.minPassRate&&i.flakyRatio<=e.maxFlakyRatio&&i.coverage>=e.minCoverage}U();import{execFile as q,spawn as Q}from"child_process";var P=class{constructor(e={}){this.config=e}config;currentCommand=null;async execute(e,t){let s=Date.now();try{let r=this.buildArgs(e,t),a=await this.runVitest(r,e.timeoutMs),n=Date.now();return this.parseResult(e,a,n-s)}catch(r){let a=Date.now();return this.createErrorResult(e,r,a-s)}}async isReady(){try{return(await this.runCommand("npx",["vitest","--version"],5e3)).exitCode===0}catch{return!1}}getName(){return"vitest-executor"}async abort(){await this.currentCommand?.terminate(new Error("Test execution aborted"))}buildArgs(e,t){let s=["vitest","run","--reporter=json"];if(t&&t.length>0)s.push(...t);else for(let r of e.testPatterns)r.startsWith("!")?s.push("--exclude",r.slice(1)):s.push(r);return e.parallelism>0&&(s.push("--pool","threads"),s.push("--poolOptions.threads.maxThreads",String(e.parallelism))),e.failFast&&s.push("--bail","1"),s.push("--coverage"),s.push("--coverage.reporter",this.config.coverageReporter||"json"),this.config.coverageDir&&s.push("--coverage.reportsDirectory",this.config.coverageDir),this.config.extraArgs&&s.push(...this.config.extraArgs),s}async runVitest(e,t){let s=L(),r,a,n;try{let c=await this.runCommand(this.config.vitestPath||"npx",[...e,...s.args],t);a=c.exitCode,n=c.stderr;let u=s.read(c.stdout);if(u===void 0)throw new Error("The current Vitest JSON report is missing for this phase.");r=u}finally{s.cleanup()}let o;try{let c=r.indexOf("{"),u=r.lastIndexOf("}");if(c===-1||u===-1)throw new Error("No JSON output from Vitest");let f=r.slice(c,u+1);o=v(f)}catch{return{numTotalTestSuites:0,numPassedTestSuites:0,numFailedTestSuites:0,numTotalTests:0,numPassedTests:0,numFailedTests:0,numPendingTests:0,success:a===0,startTime:Date.now(),testResults:[]}}let l=N("vitest","phase",a,{passed:o.numPassedTests,failed:o.numFailedTests,skipped:o.numPendingTests},n,o);if(l)throw l;return o}runCommand(e,t,s){if(this.currentCommand)return Promise.reject(new Error("Test executor already has an active process"));let r=process.platform==="win32"&&e==="npx"?"npx.cmd":e,a=Q(r,t,{cwd:this.config.cwd||process.cwd(),env:{...process.env,...this.config.env},shell:!1,detached:process.platform!=="win32"}),n=()=>{if(a.pid)try{process.kill(-a.pid,"SIGKILL")}catch{}};process.platform!=="win32"&&process.once("exit",n);let o="",l="",c=1,u,f,m,T,k=new Promise((p,g)=>{T=g});a.stdout?.on("data",p=>{o+=p.toString()}),a.stderr?.on("data",p=>{l+=p.toString()});let h=new Promise((p,g)=>{a.once("close",b=>{c=b??1,p()}),a.once("error",g)}),d={terminate:p=>(u??=p,m??=this.terminateProcessTree(a,h).catch(g=>{throw f=g,T(g),g}),m)};this.currentCommand=d;let y=setTimeout(()=>{d.terminate(new Error(`Test execution timed out after ${s}ms`)).catch(()=>{})},s);return(async()=>{try{if(await Promise.race([h,k]),m&&await m,u)throw u;return{stdout:o,stderr:l,exitCode:c}}finally{clearTimeout(y),process.platform!=="win32"&&process.removeListener("exit",n),this.currentCommand===d&&!f&&(this.currentCommand=null)}})()}async terminateProcessTree(e,t){let s=e.pid;if(!s){await t;return}if(process.platform==="win32"){await new Promise((n,o)=>{q("taskkill",["/PID",String(s),"/T","/F"],{timeout:2e3},l=>{l?o(l):n()})}),await this.waitForClose(t,2e3);return}this.signalGroup(s,"SIGTERM");let r=this.config.terminationGraceMs,a=r!==void 0&&Number.isFinite(r)?Math.max(0,Math.min(r,3e4)):1e3;if(!await this.waitForGroupExit(s,a)&&(this.signalGroup(s,"SIGKILL"),!await this.waitForGroupExit(s,2e3)))throw new Error(`Test process group ${s} survived SIGKILL`);await this.waitForClose(t,2e3)}signalGroup(e,t){try{if(!process.kill(-e,t))throw new Error(`Failed to send ${t} to test process group ${e}`)}catch(s){if(s.code!=="ESRCH")throw s}}async waitForGroupExit(e,t){let s=Date.now()+t;for(;;){try{process.kill(-e,0)}catch(r){if(r.code==="ESRCH")return!0;throw r}if(Date.now()>=s)return!1;await new Promise(r=>setTimeout(r,25))}}async waitForClose(e,t){await new Promise((s,r)=>{let a=setTimeout(()=>r(new Error("Test process did not close after termination")),t);e.then(()=>{clearTimeout(a),s()},n=>{clearTimeout(a),r(n)})})}async parseResult(e,t,s){let r=[];for(let h of t.testResults)for(let d of h.assertionResults){let y={file:h.name,name:d.title,suite:d.ancestorTitles.join(" > "),passed:d.status==="passed",durationMs:d.duration||0,retries:0,error:d.failureMessages.join(`
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.14.5");process.exit(0)}
2
+ import{b as N,c as L}from"./chunk-HYEJJJY3.js";import{a as j,b as z}from"./chunk-3VIXOHMS.js";import{b as _}from"./chunk-RD2VGOUH.js";import{b as v,d as U}from"./chunk-IJHCIXJC.js";import"./chunk-JSZ663MU.js";var R=[{id:"unit",name:"Unit Tests",testTypes:["unit"],testPatterns:["**/*.test.ts","**/*.spec.ts","!**/*.integration.*","!**/*.e2e.*"],thresholds:{minPassRate:.99,maxFlakyRatio:.01,minCoverage:.8},parallelism:8,timeoutMs:6e4,failFast:!0},{id:"integration",name:"Integration Tests",testTypes:["integration","contract"],testPatterns:["**/*.integration.test.ts","**/*.integration.spec.ts"],thresholds:{minPassRate:.95,maxFlakyRatio:.05,minCoverage:.7},parallelism:4,timeoutMs:3e5,failFast:!1},{id:"e2e",name:"E2E Tests",testTypes:["e2e","visual"],testPatterns:["**/*.e2e.test.ts","**/*.e2e.spec.ts"],thresholds:{minPassRate:.9,maxFlakyRatio:.1,minCoverage:.5},parallelism:2,timeoutMs:6e5,failFast:!1}];var w=class{constructor(e,t={phases:R,failFast:!0,retryFailedPhases:!1,maxRetries:1}){this.executor=e;this.config=t}executor;config;state="idle";currentPhaseIndex=0;results=[];startTime;endTime;abortController;abortRequested=!1;async run(){if(this.state==="running")throw new Error("Scheduler is already running");this.state="running",this.currentPhaseIndex=0,this.results=[],this.startTime=new Date,this.abortController=new AbortController,this.abortRequested=!1;try{for(let e of this.config.phases){if(this.state==="paused"&&await this.waitForResume(),this.abortController.signal.aborted)break;let t=await this.executePhaseWithRetry(e);if(this.abortRequested)throw new Error("Phase aborted");if(this.results.push(t),this.currentPhaseIndex++,this.config.onPhaseComplete?.(t),!t.success&&this.config.failFast){this.state="failed";break}}if(this.abortRequested)throw new Error("Phase aborted");return this.endTime=new Date,this.state=this.results.every(e=>e.success)?"completed":"failed",this.config.onAllComplete?.(this.results),this.results}catch(e){throw this.abortRequested||(this.state="failed"),this.endTime=new Date,e}}async runPhase(e){let t=this.config.phases.find(s=>s.id===e);if(!t)throw new Error(`Phase not found: ${e}`);return this.abortRequested=!1,this.executePhaseWithRetry(t)}pause(){this.state==="running"&&(this.state="paused")}resume(){this.state==="paused"&&(this.state="running")}async abort(){this.abortRequested=!0,this.abortController?.abort(),await this.executor.abort(),this.state="idle"}getStats(){let e=this.startTime&&this.endTime?this.endTime.getTime()-this.startTime.getTime():this.startTime?Date.now()-this.startTime.getTime():void 0;return{state:this.state,currentPhaseIndex:this.currentPhaseIndex,totalPhases:this.config.phases.length,completedPhases:this.results.filter(t=>t.success).length,failedPhases:this.results.filter(t=>!t.success).length,results:[...this.results],startTime:this.startTime,endTime:this.endTime,durationMs:e}}async isReady(){return this.executor.isReady()}async executePhaseWithRetry(e){let t,s=this.config.retryFailedPhases?this.config.maxRetries:1;for(let r=1;r<=s;r++){if(this.abortRequested)throw new Error("Phase aborted");try{if(t=await this.executor.execute(e),this.abortRequested)throw new Error("Phase aborted");if(t.success||!this.config.retryFailedPhases)return t}catch(a){if(this.abortRequested)throw new Error("Phase aborted");if(this.config.onError?.(a,e),r===s)return this.createErrorResult(e,a)}}return t}createErrorResult(e,t){return{phaseId:e.id,phaseName:e.name,success:!1,passRate:0,flakyRatio:0,coverage:0,durationMs:0,totalTests:0,passed:0,failed:0,skipped:0,testResults:[],flakyTests:[],error:t.message}}waitForResume(){return new Promise(e=>{let t=()=>{this.state!=="paused"?e():setTimeout(t,100)};t()})}};function D(i,e){return new w(i,{phases:R,failFast:!0,retryFailedPhases:!1,maxRetries:1,...e})}function J(i,e){return i.passRate>=e.minPassRate&&i.flakyRatio<=e.maxFlakyRatio&&i.coverage>=e.minCoverage}U();import{execFile as q,spawn as Q}from"child_process";var P=class{constructor(e={}){this.config=e}config;currentCommand=null;async execute(e,t){let s=Date.now();try{let r=this.buildArgs(e,t),a=await this.runVitest(r,e.timeoutMs),n=Date.now();return this.parseResult(e,a,n-s)}catch(r){let a=Date.now();return this.createErrorResult(e,r,a-s)}}async isReady(){try{return(await this.runCommand("npx",["vitest","--version"],5e3)).exitCode===0}catch{return!1}}getName(){return"vitest-executor"}async abort(){await this.currentCommand?.terminate(new Error("Test execution aborted"))}buildArgs(e,t){let s=["vitest","run","--reporter=json"];if(t&&t.length>0)s.push(...t);else for(let r of e.testPatterns)r.startsWith("!")?s.push("--exclude",r.slice(1)):s.push(r);return e.parallelism>0&&(s.push("--pool","threads"),s.push("--poolOptions.threads.maxThreads",String(e.parallelism))),e.failFast&&s.push("--bail","1"),s.push("--coverage"),s.push("--coverage.reporter",this.config.coverageReporter||"json"),this.config.coverageDir&&s.push("--coverage.reportsDirectory",this.config.coverageDir),this.config.extraArgs&&s.push(...this.config.extraArgs),s}async runVitest(e,t){let s=L(),r,a,n;try{let c=await this.runCommand(this.config.vitestPath||"npx",[...e,...s.args],t);a=c.exitCode,n=c.stderr;let u=s.read(c.stdout);if(u===void 0)throw new Error("The current Vitest JSON report is missing for this phase.");r=u}finally{s.cleanup()}let o;try{let c=r.indexOf("{"),u=r.lastIndexOf("}");if(c===-1||u===-1)throw new Error("No JSON output from Vitest");let f=r.slice(c,u+1);o=v(f)}catch{return{numTotalTestSuites:0,numPassedTestSuites:0,numFailedTestSuites:0,numTotalTests:0,numPassedTests:0,numFailedTests:0,numPendingTests:0,success:a===0,startTime:Date.now(),testResults:[]}}let l=N("vitest","phase",a,{passed:o.numPassedTests,failed:o.numFailedTests,skipped:o.numPendingTests},n,o);if(l)throw l;return o}runCommand(e,t,s){if(this.currentCommand)return Promise.reject(new Error("Test executor already has an active process"));let r=process.platform==="win32"&&e==="npx"?"npx.cmd":e,a=Q(r,t,{cwd:this.config.cwd||process.cwd(),env:{...process.env,...this.config.env},shell:!1,detached:process.platform!=="win32"}),n=()=>{if(a.pid)try{process.kill(-a.pid,"SIGKILL")}catch{}};process.platform!=="win32"&&process.once("exit",n);let o="",l="",c=1,u,f,m,T,k=new Promise((p,g)=>{T=g});a.stdout?.on("data",p=>{o+=p.toString()}),a.stderr?.on("data",p=>{l+=p.toString()});let h=new Promise((p,g)=>{a.once("close",b=>{c=b??1,p()}),a.once("error",g)}),d={terminate:p=>(u??=p,m??=this.terminateProcessTree(a,h).catch(g=>{throw f=g,T(g),g}),m)};this.currentCommand=d;let y=setTimeout(()=>{d.terminate(new Error(`Test execution timed out after ${s}ms`)).catch(()=>{})},s);return(async()=>{try{if(await Promise.race([h,k]),m&&await m,u)throw u;return{stdout:o,stderr:l,exitCode:c}}finally{clearTimeout(y),process.platform!=="win32"&&process.removeListener("exit",n),this.currentCommand===d&&!f&&(this.currentCommand=null)}})()}async terminateProcessTree(e,t){let s=e.pid;if(!s){await t;return}if(process.platform==="win32"){await new Promise((n,o)=>{q("taskkill",["/PID",String(s),"/T","/F"],{timeout:2e3},l=>{l?o(l):n()})}),await this.waitForClose(t,2e3);return}this.signalGroup(s,"SIGTERM");let r=this.config.terminationGraceMs,a=r!==void 0&&Number.isFinite(r)?Math.max(0,Math.min(r,3e4)):1e3;if(!await this.waitForGroupExit(s,a)&&(this.signalGroup(s,"SIGKILL"),!await this.waitForGroupExit(s,2e3)))throw new Error(`Test process group ${s} survived SIGKILL`);await this.waitForClose(t,2e3)}signalGroup(e,t){try{if(!process.kill(-e,t))throw new Error(`Failed to send ${t} to test process group ${e}`)}catch(s){if(s.code!=="ESRCH")throw s}}async waitForGroupExit(e,t){let s=Date.now()+t;for(;;){try{process.kill(-e,0)}catch(r){if(r.code==="ESRCH")return!0;throw r}if(Date.now()>=s)return!1;await new Promise(r=>setTimeout(r,25))}}async waitForClose(e,t){await new Promise((s,r)=>{let a=setTimeout(()=>r(new Error("Test process did not close after termination")),t);e.then(()=>{clearTimeout(a),s()},n=>{clearTimeout(a),r(n)})})}async parseResult(e,t,s){let r=[];for(let h of t.testResults)for(let d of h.assertionResults){let y={file:h.name,name:d.title,suite:d.ancestorTitles.join(" > "),passed:d.status==="passed",durationMs:d.duration||0,retries:0,error:d.failureMessages.join(`
3
3
  `)||void 0};r.push(y)}let a=this.config.flakyTracker;a&&a.recordResults(r);let n=t.numTotalTests,o=t.numPassedTests,l=t.numFailedTests,c=t.numPendingTests,u=n>0?o/n:0,f=[],m=0;if(a){f=a.analyze().flakyTests.map(p=>p.testId);let d=new Set(r.map(p=>`${p.file}:${p.suite}:${p.name}`)),y=f.filter(p=>d.has(p));m=n>0?y.length/n:0}let T=await this.getCoverageFromReport(),k=u>=e.thresholds.minPassRate&&m<=e.thresholds.maxFlakyRatio&&T>=e.thresholds.minCoverage;return{phaseId:e.id,phaseName:e.name,success:k,passRate:u,flakyRatio:m,coverage:T,durationMs:s,totalTests:n,passed:o,failed:l,skipped:c,testResults:r,flakyTests:f}}async getCoverageFromReport(){try{let e=await import("fs/promises"),t=await import("path"),s=this.config.coverageDir||"coverage",r=t.join(this.config.cwd||process.cwd(),s,"coverage-summary.json"),a=await e.readFile(r,"utf-8");return(v(a).total?.lines?.pct??0)/100}catch{return 0}}createErrorResult(e,t,s){return{phaseId:e.id,phaseName:e.name,success:!1,passRate:0,flakyRatio:0,coverage:0,durationMs:s,totalTests:0,passed:0,failed:0,skipped:0,testResults:[],flakyTests:[],error:t.message}}};function W(i){return new P(i)}import{spawn as K}from"child_process";import{resolve as Y,dirname as X,basename as O}from"path";var Z=[{sourcePattern:/^src\/(.+)\.ts$/,toTestPaths:(i,e)=>{let t=i[1];return[`tests/unit/${t}.test.ts`,`tests/unit/${t}.spec.ts`,`tests/${t}.test.ts`,`tests/${t}.spec.ts`,`src/${t}.test.ts`,`src/${t}.spec.ts`]}},{sourcePattern:/^src\/(.+)\/index\.ts$/,toTestPaths:(i,e)=>{let t=i[1];return[`tests/unit/${t}.test.ts`,`tests/unit/${t}/index.test.ts`,`tests/unit/${t}.spec.ts`]}},{sourcePattern:/\.(test|spec)\.(ts|tsx|js|jsx)$/,toTestPaths:(i,e)=>[e]},{sourcePattern:/^(vitest\.config|jest\.config|tsconfig|package\.json)/,toTestPaths:()=>["**/*.test.ts","**/*.spec.ts"]}],A=class{constructor(e){this.config=e;if(!e.impactAnalyzer)throw new Error("GitAwareTestSelector requires impactAnalyzer. Use ImpactAnalyzerService from code-intelligence domain. NO FALLBACK TO PATTERN MATCHING - use real dependency analysis.");this.cwd=e.cwd||process.cwd(),this.baseRef=e.baseRef||"HEAD~1",_(this.baseRef,"base ref"),this.mappingRules=e.mappingRules||Z,this.impactAnalyzer=e.impactAnalyzer}config;cwd;baseRef;mappingRules;impactAnalyzer;async selectAffectedTests(){try{let e=await this.getChangedFiles();if(e.length===0)return{changedFiles:[],selectedTests:[],mappings:[],runAllTests:!1};let{selectedTests:t,mappings:s,runAllTests:r,runAllReason:a}=await this.mapChangesToTests(e);return{changedFiles:e,selectedTests:[...new Set(t)],mappings:s,runAllTests:r,runAllReason:a}}catch(e){return{changedFiles:[],selectedTests:[],mappings:[],runAllTests:!0,runAllReason:`Git error: ${e.message}`}}}async selectTestsForFiles(e){let t=e.map(o=>({path:o,changeType:"modified"})),{selectedTests:s,mappings:r,runAllTests:a,runAllReason:n}=await this.mapChangesToTests(t);return{changedFiles:t,selectedTests:[...new Set(s)],mappings:r,runAllTests:a,runAllReason:n}}async getChangedFiles(){let t=(await this.git(["diff","--name-status",this.baseRef,"HEAD"])).trim().split(`
4
4
  `).filter(Boolean),s=[];for(let r of t){let[a,...n]=r.split(" "),o=n.join(" "),l,c;switch(a[0]){case"A":l="added";break;case"M":l="modified";break;case"D":l="deleted";break;case"R":l="renamed",c=o;break;default:l="modified"}s.push({path:l==="renamed"&&n[1]||o,changeType:l,previousPath:c})}return s}async getMergeBase(e="main"){_(e,"target branch");try{return(await this.git(["merge-base","HEAD",e])).trim()}catch{return(await this.git(["merge-base","HEAD","master"])).trim()}}async mapChangesToTests(e){let t=[],s=[],a;for(let l of e)if(this.isConfigFile(l.path))return{selectedTests:[],mappings:[],runAllTests:!0,runAllReason:`Config file changed: ${l.path}`};let n=e.filter(l=>l.changeType!=="deleted"||this.config.includeDeletedFileTests).map(l=>l.path);if(n.length===0)return{selectedTests:[],mappings:[],runAllTests:!1};let o=await this.impactAnalyzer.getImpactedTests(n);if(!o.success){let l=o,c=l.error instanceof Error?l.error.message:String(l.error);return{selectedTests:[],mappings:[],runAllTests:!0,runAllReason:`Impact analysis failed: ${c}`}}if(o.value.length===0)return{selectedTests:[],mappings:[],runAllTests:!1};t.push(...o.value);for(let l of e){if(l.changeType==="deleted"&&!this.config.includeDeletedFileTests)continue;let c=o.value.filter(u=>u.includes(O(l.path,".ts").replace(/\.(tsx?|jsx?)$/,"")));c.length>0&&s.push({sourceFile:l.path,testFiles:c,confidence:.95})}return{selectedTests:t,mappings:s,runAllTests:!1,runAllReason:a}}isConfigFile(e){return/^(vitest\.config|jest\.config|tsconfig|package\.json)/.test(e)}async findTestsHeuristically(e){let t=O(e,".ts").replace(/\.(tsx?|jsx?)$/,""),s=X(e),r=[`${s}/${t}.test.ts`,`${s}/${t}.spec.ts`,`${s}/__tests__/${t}.test.ts`,`tests/${s}/${t}.test.ts`,`tests/unit/${s.replace("src/","")}/${t}.test.ts`];return this.filterExistingFiles(r)}async filterExistingFiles(e){let t=await import("fs/promises"),s=[];for(let r of e)try{let a=Y(this.cwd,r);await t.access(a),s.push(r)}catch(a){console.debug("[TestSelector] File access check failed:",a instanceof Error?a.message:a)}return s}git(e){return new Promise((t,s)=>{let r="",a="",n=K("git",e,{cwd:this.cwd});n.stdout.on("data",o=>{r+=o.toString()}),n.stderr.on("data",o=>{a+=o.toString()}),n.on("close",o=>{o===0?t(r):s(new Error(`git ${e.join(" ")} failed: ${a}`))}),n.on("error",s)})}};function C(i){return new A(i)}async function ee(i,e,t){let r=await C({impactAnalyzer:i,baseRef:e,cwd:t}).selectAffectedTests();return r.runAllTests?[]:r.selectedTests}U();var te={minRunsForFlakiness:5,flakinessThreshold:.1,maxRecentErrors:5,historyRetentionDays:30},S=class{records=new Map;config;constructor(e){this.config={...te,...e}}recordResult(e){let t=this.getTestId(e),s=this.getOrCreateRecord(t,e);s.totalRuns++,s.lastRun=new Date,e.passed?s.passCount++:(s.failCount++,e.error&&(s.recentErrors=[e.error,...s.recentErrors.slice(0,this.config.maxRecentErrors-1)])),e.retries>0&&e.passed&&(s.flakyCount++,s.lastFlaky=new Date),s.flakinessScore=this.calculateFlakiness(s)}recordResults(e){for(let t of e)this.recordResult(t)}getRecord(e){return this.records.get(e)}getFlakyTests(){return Array.from(this.records.values()).filter(e=>e.totalRuns>=this.config.minRunsForFlakiness&&e.flakinessScore>=this.config.flakinessThreshold)}isFlaky(e){let t=this.records.get(e);return t?t.totalRuns>=this.config.minRunsForFlakiness&&t.flakinessScore>=this.config.flakinessThreshold:!1}analyze(){let e=Array.from(this.records.values()),t=e.filter(l=>l.totalRuns>=this.config.minRunsForFlakiness&&l.flakinessScore>=this.config.flakinessThreshold),s=e.filter(l=>l.totalRuns>=this.config.minRunsForFlakiness&&l.flakyCount>0&&l.flakinessScore<this.config.flakinessThreshold),r=e.filter(l=>l.totalRuns<this.config.minRunsForFlakiness),a=e.filter(l=>l.totalRuns>=this.config.minRunsForFlakiness),n=a.length>0?t.length/a.length:0,o=this.calculateTrend(t);return{totalTests:e.length,flakyTests:t.sort((l,c)=>c.flakinessScore-l.flakinessScore),stabilizedTests:s,insufficientData:r,overallFlakiness:n,trend:o}}getQuarantineList(e=.3){return Array.from(this.records.values()).filter(t=>t.flakinessScore>=e).map(t=>t.testId)}pruneHistory(){let e=new Date;e.setDate(e.getDate()-this.config.historyRetentionDays);let t=0;for(let[s,r]of this.records)r.lastRun<e&&(this.records.delete(s),t++);return t}exportHistory(){return Array.from(this.records.values())}importHistory(e){for(let t of e){let s={...t,lastRun:new Date(t.lastRun),lastFlaky:t.lastFlaky?new Date(t.lastFlaky):void 0};this.records.set(t.testId,s)}}reset(){this.records.clear()}getTestId(e){return`${e.file}:${e.suite}:${e.name}`}getOrCreateRecord(e,t){let s=this.records.get(e);return s||(s={testId:e,file:t.file,name:t.name,totalRuns:0,passCount:0,failCount:0,flakyCount:0,flakinessScore:0,lastRun:new Date,recentErrors:[]},this.records.set(e,s)),s}calculateFlakiness(e){if(e.totalRuns<this.config.minRunsForFlakiness)return 0;let t=e.flakyCount/e.totalRuns,s=e.passCount/e.totalRuns,r=s>0&&s<1?Math.min(s,1-s)*2:0;return Math.min(1,t*3+r)}calculateTrend(e){if(e.length===0)return"stable";let s=Date.now()-10080*60*1e3,r=0,a=0;for(let n of e)n.lastFlaky&&(n.lastFlaky.getTime()>s?r++:a++);return r>a*1.5?"degrading":a>r*1.5?"improving":"stable"}};function x(i){return new S(i)}async function H(i,e){let t=x({...e,historyPath:i});try{let r=await(await import("fs/promises")).readFile(i,"utf-8"),a=v(r);t.importHistory(a)}catch(s){console.debug("[FlakyTracker] History load failed, starting fresh:",s instanceof Error?s.message:s)}return t}async function $(i,e){let t=await import("fs/promises"),s=i.exportHistory();await t.writeFile(e,JSON.stringify(s,null,2))}var se={enableAnnotations:!0,enableSummary:!0,enableOutputs:!0,maxAnnotations:10,includeFlakyWarnings:!0,includeCoverage:!0};function M(){let i=process.env;return i.GITHUB_ACTIONS==="true"?{isCI:!0,provider:"github-actions",branch:i.GITHUB_HEAD_REF||i.GITHUB_REF_NAME,commitSha:i.GITHUB_SHA,prNumber:i.GITHUB_EVENT_NAME==="pull_request"&&parseInt(i.GITHUB_REF?.split("/")[2]||"",10)||void 0,baseBranch:i.GITHUB_BASE_REF,buildUrl:`${i.GITHUB_SERVER_URL}/${i.GITHUB_REPOSITORY}/actions/runs/${i.GITHUB_RUN_ID}`}:i.GITLAB_CI==="true"?{isCI:!0,provider:"gitlab-ci",branch:i.CI_COMMIT_REF_NAME,commitSha:i.CI_COMMIT_SHA,prNumber:i.CI_MERGE_REQUEST_IID?parseInt(i.CI_MERGE_REQUEST_IID,10):void 0,baseBranch:i.CI_MERGE_REQUEST_TARGET_BRANCH_NAME,buildUrl:i.CI_JOB_URL}:i.JENKINS_URL?{isCI:!0,provider:"jenkins",branch:i.GIT_BRANCH||i.BRANCH_NAME,commitSha:i.GIT_COMMIT,prNumber:i.CHANGE_ID?parseInt(i.CHANGE_ID,10):void 0,baseBranch:i.CHANGE_TARGET,buildUrl:i.BUILD_URL}:i.CIRCLECI==="true"?{isCI:!0,provider:"circleci",branch:i.CIRCLE_BRANCH,commitSha:i.CIRCLE_SHA1,prNumber:i.CIRCLE_PULL_REQUEST?parseInt(i.CIRCLE_PULL_REQUEST.split("/").pop()||"",10):void 0,buildUrl:i.CIRCLE_BUILD_URL}:i.CI==="true"||i.CI==="1"?{isCI:!0,provider:"unknown"}:{isCI:!1}}var E=class{config;constructor(e){this.config={...se,...e}}generateOutput(e){let t=this.config.enableAnnotations?this.generateAnnotations(e):[],s=this.config.enableSummary?this.generateSummary(e):"",r=this.config.enableOutputs?this.generateOutputs(e):{};return{summary:s,annotations:t,outputs:r}}async writeOutput(e){let t=this.generateOutput(e),s=await import("fs/promises");for(let r of t.annotations)this.writeAnnotation(r);if(t.summary&&process.env.GITHUB_STEP_SUMMARY&&await s.appendFile(process.env.GITHUB_STEP_SUMMARY,t.summary),process.env.GITHUB_OUTPUT){let r=Object.entries(t.outputs).map(([a,n])=>`${a}=${n}`).join(`
5
5
  `);await s.appendFile(process.env.GITHUB_OUTPUT,r+`
@@ -12,4 +12,4 @@ import{b as N,c as L}from"./chunk-MIQTXNBG.js";import{a as j,b as z}from"./chunk
12
12
  `);for(let n of r.slice(0,20))t.push(`#### ${n.suite} > ${n.name}`),t.push(`- **File**: \`${n.file}\``),n.error&&(t.push("```"),t.push(n.error.slice(0,500)),t.push("```")),t.push("");r.length>20&&t.push(`_... and ${r.length-20} more failures_`),t.push(`</details>
13
13
  `)}let a=e.flatMap(n=>n.flakyTests);if(a.length>0&&this.config.includeFlakyWarnings){t.push(`### \u26A0\uFE0F Flaky Tests
14
14
  `);for(let n of a.slice(0,10))t.push(`- \`${n}\``);t.push("")}return t.join(`
15
- `)}generateOutputs(e){let t=e.reduce((o,l)=>o+l.totalTests,0),s=e.reduce((o,l)=>o+l.passed,0),r=e.reduce((o,l)=>o+l.failed,0),a=e.every(o=>o.success),n=e.length>0?e.reduce((o,l)=>o+l.coverage,0)/e.length:0;return{test_result:a?"success":"failure",total_tests:String(t),passed_tests:String(s),failed_tests:String(r),coverage_percent:String((n*100).toFixed(1)),phases_completed:String(e.length),phases_passed:String(e.filter(o=>o.success).length),has_flaky_tests:String(e.some(o=>o.flakyTests.length>0))}}writeAnnotation(e){let t=[`file=${e.file}`,`line=${e.line}`,`title=${e.title}`].join(",");console.log(`::${e.level} ${t}::${e.message}`)}extractLineNumber(e){if(!e)return;let t=e.match(/:(\d+):\d+/);return t?parseInt(t[1],10):void 0}formatDuration(e){return e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${(e/6e4).toFixed(1)}m`}generateCoverageBar(e){let t=Math.round(e*10),s=10-t;return"\u2588".repeat(t)+"\u2591".repeat(s)}};function I(i){return new E(i)}async function re(i,e){await I(e).writeOutput(i)}var G=class i{constructor(e,t,s,r,a,n){this.config=e;this.selector=t,this.executor=s,this.scheduler=r,this.flakyTracker=a,this.reporter=n,this.ciEnvironment=M()}config;selector;executor;scheduler;flakyTracker;reporter;ciEnvironment;static async create(e){let t=e.flakyHistoryPath?await H(e.flakyHistoryPath,e.flakyTracker):x(e.flakyTracker),s=new P({...e.vitest,cwd:e.cwd,flakyTracker:t}),{ImpactAnalyzerService:r}=await import("./impact-analyzer-HNIU45P5.js"),a=new r(e.memory),n=C({cwd:e.cwd,baseRef:e.baseRef,impactAnalyzer:a}),o=D(s,{...e.scheduler,phases:e.phases&&e.phases.length>0?e.phases:R}),l=I(e.reporter);return new i(e,n,s,o,t,l)}async run(){let e=Date.now(),t=[],s=this.config.runAllTests??!1,r=performance.now();if(!s){let h=await this.selector.selectAffectedTests();h.runAllTests?(s=!0,console.log(`[TestSchedulingPipeline] Running all tests: ${h.runAllReason}`)):h.selectedTests.length===0?(console.log("[TestSchedulingPipeline] No affected tests found, running all"),s=!0):(t=h.selectedTests,console.log(`[TestSchedulingPipeline] Selected ${t.length} affected tests`))}let a=performance.now()-r;if(this.config.useDAGAttention&&t.length>0)try{let{isDAGAttentionEnabled:h}=await import("./feature-flags-UJRHFBRX.js");if(h()){let{createDAGAttentionScheduler:d}=await import("./dag-attention-scheduler-S225TCI7.js"),y=d(),p=t.map(F=>({id:F,name:F,estimatedDuration:1e3,dependencies:[],priority:1,tags:[]})),g=y.schedule(p),b=[];for(let F of g.phases)b.push(...F.tests.map(V=>V.id));b.length>0&&(t=b)}}catch(h){process.env.DEBUG&&console.debug("[Pipeline] DAG attention scheduling skipped:",h instanceof Error?h.message:h)}let n=performance.now(),o;s?o=await this.scheduler.run():o=await this.runWithSelectedTests(t);let l=performance.now()-n,c=performance.now(),u=this.flakyTracker.analyze();this.config.flakyHistoryPath&&await $(this.flakyTracker,this.config.flakyHistoryPath);let f=performance.now()-c,m=performance.now();this.ciEnvironment.isCI&&await this.reporter.writeOutput(o);let T=performance.now()-m,k=Date.now()-e;return{phaseResults:o,selectedTests:t,ranAllTests:s,flakyAnalysis:u,ciEnvironment:this.ciEnvironment,totalDurationMs:k,stepLatencies:{selectionMs:a,executionMs:l,analysisMs:f,reportingMs:T}}}async runPhase(e){return this.scheduler.runPhase(e)}getFlakyTracker(){return this.flakyTracker}getSelector(){return this.selector}getStats(){return this.scheduler.getStats()}async abort(){await this.scheduler.abort()}async runWithSelectedTests(e){let t=[],s=this.config.phases??[];for(let r of s){let a=e.filter(n=>r.testPatterns.some(o=>o.startsWith("!")?!1:this.patternToRegex(o).test(n)));if(a.length>0){let n=await this.executor.execute(r,a);t.push(n)}}return t}patternToRegex(e){let t=e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*/g,".*").replace(/\*/g,"[^/]*");return new RegExp(t)}};async function B(i){return G.create(i)}async function ne(i){return(await B(i)).run()}export{j as DAGAttentionScheduler,R as DEFAULT_TEST_PHASES,S as FlakyTestTracker,A as GitAwareTestSelector,E as GitHubActionsReporter,w as PhaseScheduler,G as TestSchedulingPipeline,P as VitestPhaseExecutor,J as checkQualityThresholds,z as createDAGAttentionScheduler,x as createFlakyTracker,I as createGitHubActionsReporter,D as createPhaseScheduler,B as createTestPipeline,C as createTestSelector,W as createVitestExecutor,M as detectCIEnvironment,ee as getAffectedTests,H as loadFlakyTracker,re as reportToGitHubActions,ne as runTestPipeline,$ as saveFlakyTracker};
15
+ `)}generateOutputs(e){let t=e.reduce((o,l)=>o+l.totalTests,0),s=e.reduce((o,l)=>o+l.passed,0),r=e.reduce((o,l)=>o+l.failed,0),a=e.every(o=>o.success),n=e.length>0?e.reduce((o,l)=>o+l.coverage,0)/e.length:0;return{test_result:a?"success":"failure",total_tests:String(t),passed_tests:String(s),failed_tests:String(r),coverage_percent:String((n*100).toFixed(1)),phases_completed:String(e.length),phases_passed:String(e.filter(o=>o.success).length),has_flaky_tests:String(e.some(o=>o.flakyTests.length>0))}}writeAnnotation(e){let t=[`file=${e.file}`,`line=${e.line}`,`title=${e.title}`].join(",");console.log(`::${e.level} ${t}::${e.message}`)}extractLineNumber(e){if(!e)return;let t=e.match(/:(\d+):\d+/);return t?parseInt(t[1],10):void 0}formatDuration(e){return e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${(e/6e4).toFixed(1)}m`}generateCoverageBar(e){let t=Math.round(e*10),s=10-t;return"\u2588".repeat(t)+"\u2591".repeat(s)}};function I(i){return new E(i)}async function re(i,e){await I(e).writeOutput(i)}var G=class i{constructor(e,t,s,r,a,n){this.config=e;this.selector=t,this.executor=s,this.scheduler=r,this.flakyTracker=a,this.reporter=n,this.ciEnvironment=M()}config;selector;executor;scheduler;flakyTracker;reporter;ciEnvironment;static async create(e){let t=e.flakyHistoryPath?await H(e.flakyHistoryPath,e.flakyTracker):x(e.flakyTracker),s=new P({...e.vitest,cwd:e.cwd,flakyTracker:t}),{ImpactAnalyzerService:r}=await import("./impact-analyzer-A5QYOYBR.js"),a=new r(e.memory),n=C({cwd:e.cwd,baseRef:e.baseRef,impactAnalyzer:a}),o=D(s,{...e.scheduler,phases:e.phases&&e.phases.length>0?e.phases:R}),l=I(e.reporter);return new i(e,n,s,o,t,l)}async run(){let e=Date.now(),t=[],s=this.config.runAllTests??!1,r=performance.now();if(!s){let h=await this.selector.selectAffectedTests();h.runAllTests?(s=!0,console.log(`[TestSchedulingPipeline] Running all tests: ${h.runAllReason}`)):h.selectedTests.length===0?(console.log("[TestSchedulingPipeline] No affected tests found, running all"),s=!0):(t=h.selectedTests,console.log(`[TestSchedulingPipeline] Selected ${t.length} affected tests`))}let a=performance.now()-r;if(this.config.useDAGAttention&&t.length>0)try{let{isDAGAttentionEnabled:h}=await import("./feature-flags-7AC3XDZA.js");if(h()){let{createDAGAttentionScheduler:d}=await import("./dag-attention-scheduler-RPAAIDAD.js"),y=d(),p=t.map(F=>({id:F,name:F,estimatedDuration:1e3,dependencies:[],priority:1,tags:[]})),g=y.schedule(p),b=[];for(let F of g.phases)b.push(...F.tests.map(V=>V.id));b.length>0&&(t=b)}}catch(h){process.env.DEBUG&&console.debug("[Pipeline] DAG attention scheduling skipped:",h instanceof Error?h.message:h)}let n=performance.now(),o;s?o=await this.scheduler.run():o=await this.runWithSelectedTests(t);let l=performance.now()-n,c=performance.now(),u=this.flakyTracker.analyze();this.config.flakyHistoryPath&&await $(this.flakyTracker,this.config.flakyHistoryPath);let f=performance.now()-c,m=performance.now();this.ciEnvironment.isCI&&await this.reporter.writeOutput(o);let T=performance.now()-m,k=Date.now()-e;return{phaseResults:o,selectedTests:t,ranAllTests:s,flakyAnalysis:u,ciEnvironment:this.ciEnvironment,totalDurationMs:k,stepLatencies:{selectionMs:a,executionMs:l,analysisMs:f,reportingMs:T}}}async runPhase(e){return this.scheduler.runPhase(e)}getFlakyTracker(){return this.flakyTracker}getSelector(){return this.selector}getStats(){return this.scheduler.getStats()}async abort(){await this.scheduler.abort()}async runWithSelectedTests(e){let t=[],s=this.config.phases??[];for(let r of s){let a=e.filter(n=>r.testPatterns.some(o=>o.startsWith("!")?!1:this.patternToRegex(o).test(n)));if(a.length>0){let n=await this.executor.execute(r,a);t.push(n)}}return t}patternToRegex(e){let t=e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*/g,".*").replace(/\*/g,"[^/]*");return new RegExp(t)}};async function B(i){return G.create(i)}async function ne(i){return(await B(i)).run()}export{j as DAGAttentionScheduler,R as DEFAULT_TEST_PHASES,S as FlakyTestTracker,A as GitAwareTestSelector,E as GitHubActionsReporter,w as PhaseScheduler,G as TestSchedulingPipeline,P as VitestPhaseExecutor,J as checkQualityThresholds,z as createDAGAttentionScheduler,x as createFlakyTracker,I as createGitHubActionsReporter,D as createPhaseScheduler,B as createTestPipeline,C as createTestSelector,W as createVitestExecutor,M as detectCIEnvironment,ee as getAffectedTests,H as loadFlakyTracker,re as reportToGitHubActions,ne as runTestPipeline,$ as saveFlakyTracker};
@@ -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.14.5");process.exit(0)}
2
+ import{b as g}from"./chunk-NVYBM3R4.js";import{b as p,c as k}from"./chunk-WK7B4B6Y.js";import"./chunk-MI5Q55DG.js";import"./chunk-5WOSWNDN.js";import"./chunk-WJTSY5MC.js";import{b as n}from"./chunk-2JGEZHWY.js";import"./chunk-ZBABIZ2D.js";import"./chunk-SX4JLSLV.js";import"./chunk-HBCGYMQU.js";import"./chunk-6CR4VQBQ.js";import"./chunk-LULD4JV2.js";import"./chunk-KIP6WZGV.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import{b as l,c as d}from"./chunk-C3HQL6S4.js";import"./chunk-XEZIIQYJ.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-7VFY7TUR.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";import*as s from"path";import*as c from"fs";d();var m={enableOptimization:!0,enablePersistence:!0,storagePath:".agentic-qe",autoSaveIntervalMs:6e4,verbose:process.env.AQE_VERBOSE==="true"},a=!1,i=null,u=!1;async function P(t){if(a)return;let o=process.env.AQE_STORAGE_PATH,e={...m,...t,storagePath:t?.storagePath??(o?s.resolve(l(),o):s.join(l(),".agentic-qe"))};if(e.verbose&&console.log("[TokenBootstrap] Initializing token tracking..."),e.enablePersistence){let r=s.resolve(e.storagePath);c.existsSync(r)||c.mkdirSync(r,{recursive:!0})}if(e.enableOptimization)try{i=(await g(!0)).backend,await k(i,{enabled:!0,verbose:e.verbose}),e.verbose&&(console.log("[TokenBootstrap] TokenOptimizerService initialized"),console.log(`[TokenBootstrap] isEnabled() = ${p.isEnabled()}`))}catch(r){console.error("[TokenBootstrap] Failed to initialize TokenOptimizerService:",r)}if(e.enablePersistence){let r=s.join(e.storagePath,"token-metrics.json");n.configurePersistence({filePath:r,autoSaveIntervalMs:e.autoSaveIntervalMs});try{let f=await n.load();e.verbose&&console.log(`[TokenBootstrap] Loaded existing metrics: ${f}`)}catch{e.verbose&&console.log("[TokenBootstrap] No existing metrics to load")}n.startAutoSave(),e.verbose&&console.log(`[TokenBootstrap] Persistence configured: ${r}`)}u||(T(e.verbose),u=!0),a=!0,e.verbose&&console.log("[TokenBootstrap] Token tracking initialized successfully")}async function v(t=!1){if(a){if(t&&console.log("[TokenBootstrap] Shutting down token tracking..."),n.stopAutoSave(),n.hasUnsavedChanges())try{await n.save(),t&&console.log("[TokenBootstrap] Metrics saved successfully")}catch(o){console.error("[TokenBootstrap] Failed to save metrics:",o)}if(i){try{await i.dispose()}catch(o){console.debug("[TokenBootstrap] Memory backend disposal error:",o instanceof Error?o.message:o)}i=null}a=!1}}function S(){return a}function z(){return i}function T(t){let o=async e=>{t&&console.log(`[TokenBootstrap] Received ${e}, saving metrics...`),await v(t)};process.on("beforeExit",()=>o("beforeExit"))}export{P as bootstrapTokenTracking,z as getTokenMemoryBackend,S as isTokenTrackingInitialized,v as shutdownTokenTracking};
@@ -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.14.4");process.exit(0)}
2
- import{a as S,b as f}from"./chunk-OCWWP5PL.js";import{a as k,b as u}from"./chunk-FGYMFUE2.js";import"./chunk-5Z6XZV7K.js";import"./chunk-T6BVLVI5.js";import"./chunk-ZJ26AQA5.js";import"./chunk-OBAP2TXZ.js";import"./chunk-IPR4QP3H.js";import"./chunk-NDPFGIMJ.js";import"./chunk-55RWDRJD.js";import"./chunk-R4VL6E65.js";import"./chunk-RJCYCLZV.js";import"./chunk-NA7B2QYB.js";import"./chunk-Y3MW3YBC.js";import"./chunk-PEPFCPES.js";import"./chunk-DHJPWQBR.js";import"./chunk-TDZ53WO2.js";import"./chunk-QGIU2WRL.js";import"./chunk-STM3UDNO.js";import{a as y,c as h}from"./chunk-G6T45OIC.js";import"./chunk-SRKETSFF.js";import"./chunk-BGE6FOLM.js";import"./chunk-5YPYDPBJ.js";import"./chunk-HDSAM2RE.js";import"./chunk-KCZR45PA.js";import"./chunk-BFP7KO7P.js";import"./chunk-ODKLFVYC.js";import"./chunk-VD6QRULW.js";import"./chunk-KHFNNVJA.js";import"./chunk-CNG6GQEZ.js";import"./chunk-TT23RRB7.js";import{Command as v}from"commander";import e from"chalk";h();import*as p from"fs";function _(){return new v("token-usage").description("View and analyze token consumption metrics (ADR-042)").option("-p, --period <period>","Time period: 1h, 24h, 7d, 30d","24h").option("-a, --by-agent","Group usage by agent").option("-d, --by-domain","Group usage by domain").option("-r, --recommendations","Show optimization recommendations").option("-e, --export <file>","Export to CSV file").option("--dashboard","Show compact token budget dashboard summary").option("--cache-stats","Show session operation cache statistics (Imp-15)").option("--json","Output as JSON").option("-v, --verbose","Show detailed output").action(async n=>{await w(n)})}async function w(o){let n=R(o.period);try{o.cacheStats?await x(o):o.dashboard?console.log(k()):o.byAgent?await U(n,o):o.byDomain?await A(n,o):o.recommendations?await C(n,o):o.export?await E(n,o.export,o):await O(n,o)}catch(s){console.error(e.red(`Error: ${y(s)}`)),process.exit(1)}}async function O(o,n){let s=u.getSessionSummary(o);if(n.json){console.log(JSON.stringify($(s),null,2));return}console.log(e.bold.cyan(`
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.14.5");process.exit(0)}
2
+ import{a as S,b as f}from"./chunk-WK7B4B6Y.js";import"./chunk-MI5Q55DG.js";import"./chunk-5WOSWNDN.js";import"./chunk-WJTSY5MC.js";import{a as k,b as u}from"./chunk-2JGEZHWY.js";import"./chunk-ZBABIZ2D.js";import"./chunk-SX4JLSLV.js";import"./chunk-HBCGYMQU.js";import"./chunk-6CR4VQBQ.js";import"./chunk-KIP6WZGV.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-XEZIIQYJ.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import{a as y,c as h}from"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";import{Command as v}from"commander";import e from"chalk";h();import*as p from"fs";function _(){return new v("token-usage").description("View and analyze token consumption metrics (ADR-042)").option("-p, --period <period>","Time period: 1h, 24h, 7d, 30d","24h").option("-a, --by-agent","Group usage by agent").option("-d, --by-domain","Group usage by domain").option("-r, --recommendations","Show optimization recommendations").option("-e, --export <file>","Export to CSV file").option("--dashboard","Show compact token budget dashboard summary").option("--cache-stats","Show session operation cache statistics (Imp-15)").option("--json","Output as JSON").option("-v, --verbose","Show detailed output").action(async n=>{await w(n)})}async function w(o){let n=R(o.period);try{o.cacheStats?await x(o):o.dashboard?console.log(k()):o.byAgent?await U(n,o):o.byDomain?await A(n,o):o.recommendations?await C(n,o):o.export?await E(n,o.export,o):await O(n,o)}catch(s){console.error(e.red(`Error: ${y(s)}`)),process.exit(1)}}async function O(o,n){let s=u.getSessionSummary(o);if(n.json){console.log(JSON.stringify($(s),null,2));return}console.log(e.bold.cyan(`
3
3
  \u{1F4CA} Token Usage Summary
4
4
  `)),console.log(e.gray(`Period: ${o}`)),console.log(e.gray(`Session: ${s.sessionId}
5
5
  `)),console.log(e.bold("Total Usage:")),console.log(` Input tokens: ${l(s.totalUsage.inputTokens)}`),console.log(` Output tokens: ${l(s.totalUsage.outputTokens)}`),console.log(` Total tokens: ${l(s.totalUsage.totalTokens)}`),s.totalUsage.estimatedCostUsd!==void 0&&console.log(` Estimated cost: ${T(s.totalUsage.estimatedCostUsd)}`),console.log(e.bold(`
@@ -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.14.4");process.exit(0)}
2
- import"./chunk-TT23RRB7.js";import{createRequire as t}from"module";var o=t(import.meta.url),e=o("@huggingface/transformers"),n=e,{RuvectorLayer:i,TensorCompress:a,differentiableSearch:c,hierarchicalForward:s,getCompressionLevel:l,init:p,FlashAttention:m,DotProductAttention:u,MultiHeadAttention:d,HyperbolicAttention:f,LinearAttention:A,MoEAttention:g,SonaEngine:h,pipeline:_}=e||{};export{u as DotProductAttention,m as FlashAttention,f as HyperbolicAttention,A as LinearAttention,g as MoEAttention,d as MultiHeadAttention,i as RuvectorLayer,h as SonaEngine,a as TensorCompress,n as default,c as differentiableSearch,l as getCompressionLevel,s as hierarchicalForward,p as init,_ as pipeline};
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.14.5");process.exit(0)}
2
+ import"./chunk-JSZ663MU.js";import{createRequire as t}from"module";var o=t(import.meta.url),e=o("@huggingface/transformers"),n=e,{RuvectorLayer:i,TensorCompress:a,differentiableSearch:c,hierarchicalForward:s,getCompressionLevel:l,init:p,FlashAttention:m,DotProductAttention:u,MultiHeadAttention:d,HyperbolicAttention:f,LinearAttention:A,MoEAttention:g,SonaEngine:h,pipeline:_}=e||{};export{u as DotProductAttention,m as FlashAttention,f as HyperbolicAttention,A as LinearAttention,g as MoEAttention,d as MultiHeadAttention,i as RuvectorLayer,h as SonaEngine,a as TensorCompress,n as default,c as differentiableSearch,l as getCompressionLevel,s as hierarchicalForward,p as init,_ as pipeline};
@@ -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.14.4");process.exit(0)}
2
- import{a,b,c,d,e}from"./chunk-R5NE6B2M.js";import"./chunk-Y3MW3YBC.js";import"./chunk-TT23RRB7.js";export{a as TreeSitterWASMParser,e as _resetWasmState,b as createWasmParsers,c as isWasmAvailable,d as loadWasmGrammar};
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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e}from"./chunk-M5AEL7IS.js";import"./chunk-7CD7PBHY.js";import"./chunk-JSZ663MU.js";export{a as TreeSitterWASMParser,e as _resetWasmState,b as createWasmParsers,c as isWasmAvailable,d as loadWasmGrammar};
@@ -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.14.4");process.exit(0)}
2
- import{a,b,c,d,e,f,g}from"./chunk-A4FYONNU.js";import"./chunk-3TW5W5LX.js";import"./chunk-TT23RRB7.js";export{e as BudgetExceededError,f as ComplexityAnalysisError,b as DEFAULT_BUDGET_CONFIG,c as DEFAULT_ROUTER_CONFIG,d as ModelRouterError,g as RoutingTimeoutError,a as TIER_METADATA};
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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e,f,g}from"./chunk-QZMUXJHZ.js";import"./chunk-R6IU3EWP.js";import"./chunk-JSZ663MU.js";export{e as BudgetExceededError,f as ComplexityAnalysisError,b as DEFAULT_BUDGET_CONFIG,c as DEFAULT_ROUTER_CONFIG,d as ModelRouterError,g as RoutingTimeoutError,a as TIER_METADATA};
@@ -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.14.5");process.exit(0)}
2
+ import{a,b,g as h,h as i,i as j,j as k,k as l,l as m,m as n,o}from"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import{a as f,b as g}from"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import{a as c,d,e}from"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";o();export{a as ALLOWED_TABLE_NAMES,c as BinaryHeap,i as DEFAULT_UNIFIED_MEMORY_CONFIG,d as UnifiedHnswIndex,k as UnifiedMemoryManager,f as clearProjectRootCache,e as createHnswIndex,g as findProjectRoot,h as getDefaultDbPath,j as getResolvedDefaultConfig,l as getUnifiedMemory,m as initializeUnifiedMemory,n as resetUnifiedMemory,b as validateTableName};
@@ -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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e,f}from"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";f();export{a as BinaryHeap,b as InMemoryHNSWIndex,c as RuvectorFlatIndex,d as UnifiedHnswIndex,e as createHnswIndex};
@@ -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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e}from"./chunk-CZO4BJG5.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{a as DEFAULT_UNIFIED_CONFIG,b as UnifiedPersistenceManager,c as getUnifiedPersistence,d as initializeUnifiedPersistence,e as resetUnifiedPersistence};
@@ -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.14.4");process.exit(0)}
2
- import{S as v,b as g}from"./chunk-CNG6GQEZ.js";import"./chunk-TT23RRB7.js";v();import{Command as p}from"commander";import n from"chalk";import{createRequire as m}from"node:module";import{platform as y,arch as b}from"node:os";var N=[{packageName:"better-sqlite3",role:"SQLite storage (required \u2014 memory.db, patterns, audit)",fallback:"n/a \u2014 required",affectsFlags:[],required:!0},{packageName:"web-tree-sitter",role:"Tree-sitter WASM parser runtime (required \u2014 code intelligence)",fallback:"n/a \u2014 required",affectsFlags:[],required:!0},{packageName:"hnswlib-node",role:"Canonical HNSW vector index (default since ADR-090)",fallback:"ProgressiveHnswBackend (JS) \u2014 correct but slower on large codebases",affectsFlags:["useNativeHNSW"],required:!1},{packageName:"@ruvector/rvf-node",role:"Persistent HNSW pattern store + RVF brain export format",fallback:"SQLite-backed HNSW + JSONL brain export",affectsFlags:["useRVFPatternStore"],required:!1},{packageName:"@ruvector/solver",role:"Async native weighted PageRank on the pattern citation graph",fallback:"TypeScript power iteration \u2014 O(iterations \xD7 (nodes + edges)); no hard size limit",affectsFlags:["useSublinearSolver"],required:!1,availability:"unpublished"},{packageName:"@ruvector/attention",role:"Flash Attention with SIMD acceleration",fallback:"Plain attention \u2014 2.5\u20137\xD7 slower on large sequences",affectsFlags:["useQEFlashAttention"],required:!1},{packageName:"@ruvector/gnn",role:"GraphMAE native acceleration",fallback:"TypeScript GraphMAE \u2014 correct but slower",affectsFlags:["useGraphMAEEmbeddings"],required:!1}];function E(){let e=m(import.meta.url);return o=>{try{return e(o),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a:new Error(String(a))}}}}function R(e,o){return e.map(a=>{let i=o(a.packageName);if(i.ok)return{...a,status:"loaded"};if(a.availability==="unpublished")return{...a,status:"unavailable",loadError:i.error.message};let s=S(i.error),t=a.required?"required-missing":"missing";return{...a,status:t,loadError:i.error.message}})}function S(e){return e.code==="MODULE_NOT_FOUND"}var k={RUVECTOR_USE_RVF_PATTERN_STORE:"useRVFPatternStore",RUVECTOR_USE_SUBLINEAR_SOLVER:"useSublinearSolver",RUVECTOR_USE_NATIVE_HNSW:"useNativeHNSW",RUVECTOR_USE_GNN_INDEX:"useQEGNNIndex",RUVECTOR_USE_FLASH_ATTENTION:"useQEFlashAttention",RUVECTOR_USE_GRAPH_MAE_EMBEDDINGS:"useGraphMAEEmbeddings"};function h(e){let o=[];for(let[a,i]of Object.entries(k)){let s=e[a];s!==void 0&&o.push({envVar:a,value:s,flagName:i})}return o}function q(e){let o=[],a=new Map(e.natives.map(r=>[r.packageName,r]));for(let r of e.natives)r.status==="required-missing"&&o.push({severity:"error",message:`Required dependency missing: ${r.packageName} \u2014 ${r.role}`,action:`npm install ${r.packageName}`});for(let r of e.natives)r.status==="missing"&&!r.required&&o.push({severity:"warn",message:`Optional native missing: ${r.packageName} \u2014 falls back to ${r.fallback}`,action:`npm install ${r.packageName}`});for(let r of e.natives)r.status==="unavailable"&&o.push({severity:"info",message:`Optional native unavailable on npm: ${r.packageName} \u2014 using ${r.fallback}. No install action is currently available.`});let i={...e.flags};for(let r of e.envOverrides){let d=e.natives.filter(u=>u.affectsFlags.includes(r.flagName)),l=d.some(u=>u.status==="loaded"),c=d.find(u=>u.status==="missing");if((r.value==="true"||r.value==="1")&&d.length>0&&!l){let u=d.map(f=>f.packageName).join(", ");o.push({severity:"warn",message:`${r.envVar}=${r.value} requests flag ${r.flagName}=true, but required native(s) not loaded: ${u}. The flag will silently fall back.`,action:c?`npm install ${c.packageName}`:void 0})}}let s=e.natives.filter(r=>!r.required&&r.status==="missing"),t=e.natives.filter(r=>!r.required&&r.status==="unavailable");return s.length===0&&t.length===0&&e.natives.every(r=>r.status!=="required-missing")&&o.push({severity:"info",message:"All recommended native bindings are loaded \u2014 no action required."}),o}function O(e){let o=R(N,e.probe),a=h(e.env),i=q({natives:o,flags:e.flags,envOverrides:a}),s=o.filter(l=>!l.required&&l.status==="loaded").length,t=o.filter(l=>!l.required&&l.status==="missing").length,r=o.filter(l=>!l.required&&l.status==="unavailable").length,d=o.filter(l=>l.required).every(l=>l.status==="loaded");return{aqeVersion:e.aqeVersion,platform:{os:y(),arch:b(),node:process.version},natives:o,flags:e.flags,envOverrides:a,recommendations:i,summary:{requiredOk:d,optionalMissingCount:t,optionalLoadedCount:s,optionalUnavailableCount:r}}}function $(e,o){return e.summary.requiredOk?o&&e.summary.optionalMissingCount>0?1:0:2}function A(e){let o=[],a=(t="")=>o.push(t);a(""),a(n.bold.blue(" aqe upgrade \u2014 native binding report")),a(n.gray(" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500")),a(""),a(` AQE: ${n.cyan(e.aqeVersion)}`),a(` Platform: ${n.cyan(`${e.platform.os} ${e.platform.arch}`)}`),a(` Node: ${n.cyan(e.platform.node)}`),a(""),a(n.blue(" Native bindings:"));for(let t of e.natives){let r=F(t.status);a(` ${r} ${n.bold(t.packageName.padEnd(28))} ${n.gray(t.role)}`),t.status!=="loaded"&&t.loadError&&a(` ${n.gray(t.loadError.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.14.5");process.exit(0)}
2
+ import{S as v,b as g}from"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";v();import{Command as p}from"commander";import n from"chalk";import{createRequire as m}from"node:module";import{platform as y,arch as b}from"node:os";var N=[{packageName:"better-sqlite3",role:"SQLite storage (required \u2014 memory.db, patterns, audit)",fallback:"n/a \u2014 required",affectsFlags:[],required:!0},{packageName:"web-tree-sitter",role:"Tree-sitter WASM parser runtime (required \u2014 code intelligence)",fallback:"n/a \u2014 required",affectsFlags:[],required:!0},{packageName:"hnswlib-node",role:"Canonical HNSW vector index (default since ADR-090)",fallback:"ProgressiveHnswBackend (JS) \u2014 correct but slower on large codebases",affectsFlags:["useNativeHNSW"],required:!1},{packageName:"@ruvector/rvf-node",role:"Persistent HNSW pattern store + RVF brain export format",fallback:"SQLite-backed HNSW + JSONL brain export",affectsFlags:["useRVFPatternStore"],required:!1},{packageName:"@ruvector/solver",role:"Async native weighted PageRank on the pattern citation graph",fallback:"TypeScript power iteration \u2014 O(iterations \xD7 (nodes + edges)); no hard size limit",affectsFlags:["useSublinearSolver"],required:!1,availability:"unpublished"},{packageName:"@ruvector/attention",role:"Flash Attention with SIMD acceleration",fallback:"Plain attention \u2014 2.5\u20137\xD7 slower on large sequences",affectsFlags:["useQEFlashAttention"],required:!1},{packageName:"@ruvector/gnn",role:"GraphMAE native acceleration",fallback:"TypeScript GraphMAE \u2014 correct but slower",affectsFlags:["useGraphMAEEmbeddings"],required:!1}];function E(){let e=m(import.meta.url);return o=>{try{return e(o),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a:new Error(String(a))}}}}function R(e,o){return e.map(a=>{let i=o(a.packageName);if(i.ok)return{...a,status:"loaded"};if(a.availability==="unpublished")return{...a,status:"unavailable",loadError:i.error.message};let s=S(i.error),t=a.required?"required-missing":"missing";return{...a,status:t,loadError:i.error.message}})}function S(e){return e.code==="MODULE_NOT_FOUND"}var k={RUVECTOR_USE_RVF_PATTERN_STORE:"useRVFPatternStore",RUVECTOR_USE_SUBLINEAR_SOLVER:"useSublinearSolver",RUVECTOR_USE_NATIVE_HNSW:"useNativeHNSW",RUVECTOR_USE_GNN_INDEX:"useQEGNNIndex",RUVECTOR_USE_FLASH_ATTENTION:"useQEFlashAttention",RUVECTOR_USE_GRAPH_MAE_EMBEDDINGS:"useGraphMAEEmbeddings"};function h(e){let o=[];for(let[a,i]of Object.entries(k)){let s=e[a];s!==void 0&&o.push({envVar:a,value:s,flagName:i})}return o}function q(e){let o=[],a=new Map(e.natives.map(r=>[r.packageName,r]));for(let r of e.natives)r.status==="required-missing"&&o.push({severity:"error",message:`Required dependency missing: ${r.packageName} \u2014 ${r.role}`,action:`npm install ${r.packageName}`});for(let r of e.natives)r.status==="missing"&&!r.required&&o.push({severity:"warn",message:`Optional native missing: ${r.packageName} \u2014 falls back to ${r.fallback}`,action:`npm install ${r.packageName}`});for(let r of e.natives)r.status==="unavailable"&&o.push({severity:"info",message:`Optional native unavailable on npm: ${r.packageName} \u2014 using ${r.fallback}. No install action is currently available.`});let i={...e.flags};for(let r of e.envOverrides){let d=e.natives.filter(u=>u.affectsFlags.includes(r.flagName)),l=d.some(u=>u.status==="loaded"),c=d.find(u=>u.status==="missing");if((r.value==="true"||r.value==="1")&&d.length>0&&!l){let u=d.map(f=>f.packageName).join(", ");o.push({severity:"warn",message:`${r.envVar}=${r.value} requests flag ${r.flagName}=true, but required native(s) not loaded: ${u}. The flag will silently fall back.`,action:c?`npm install ${c.packageName}`:void 0})}}let s=e.natives.filter(r=>!r.required&&r.status==="missing"),t=e.natives.filter(r=>!r.required&&r.status==="unavailable");return s.length===0&&t.length===0&&e.natives.every(r=>r.status!=="required-missing")&&o.push({severity:"info",message:"All recommended native bindings are loaded \u2014 no action required."}),o}function O(e){let o=R(N,e.probe),a=h(e.env),i=q({natives:o,flags:e.flags,envOverrides:a}),s=o.filter(l=>!l.required&&l.status==="loaded").length,t=o.filter(l=>!l.required&&l.status==="missing").length,r=o.filter(l=>!l.required&&l.status==="unavailable").length,d=o.filter(l=>l.required).every(l=>l.status==="loaded");return{aqeVersion:e.aqeVersion,platform:{os:y(),arch:b(),node:process.version},natives:o,flags:e.flags,envOverrides:a,recommendations:i,summary:{requiredOk:d,optionalMissingCount:t,optionalLoadedCount:s,optionalUnavailableCount:r}}}function $(e,o){return e.summary.requiredOk?o&&e.summary.optionalMissingCount>0?1:0:2}function A(e){let o=[],a=(t="")=>o.push(t);a(""),a(n.bold.blue(" aqe upgrade \u2014 native binding report")),a(n.gray(" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500")),a(""),a(` AQE: ${n.cyan(e.aqeVersion)}`),a(` Platform: ${n.cyan(`${e.platform.os} ${e.platform.arch}`)}`),a(` Node: ${n.cyan(e.platform.node)}`),a(""),a(n.blue(" Native bindings:"));for(let t of e.natives){let r=F(t.status);a(` ${r} ${n.bold(t.packageName.padEnd(28))} ${n.gray(t.role)}`),t.status!=="loaded"&&t.loadError&&a(` ${n.gray(t.loadError.split(`
3
3
  `)[0])}`)}a(""),a(n.blue(" Flag state (after env overrides):"));let i=Object.entries(e.flags);for(let[t,r]of i){let d=r?n.green("on "):n.yellow("off");a(` ${d} ${t}`)}if(e.envOverrides.length>0){a(""),a(n.blue(" Env overrides in effect:"));for(let t of e.envOverrides)a(` ${n.cyan(t.envVar)}=${n.cyan(t.value)} ${n.gray(`\u2192 ${t.flagName}`)}`)}if(a(""),a(n.blue(" Recommendations:")),e.recommendations.length===0)a(n.gray(" (none)"));else for(let t of e.recommendations){let r=C(t.severity);a(` ${r} ${t.message}`),t.action&&a(` ${n.gray("\u2192")} ${n.cyan(t.action)}`)}a("");let s=e.summary.requiredOk?n.green("OK"):n.red("FAIL");return a(` Summary: required ${s} optional loaded ${n.cyan(e.summary.optionalLoadedCount)} / ${n.cyan(e.summary.optionalLoadedCount+e.summary.optionalMissingCount+e.summary.optionalUnavailableCount)} (${n.cyan(e.summary.optionalUnavailableCount)} unavailable)`),a(""),o.join(`
4
4
  `)}function F(e){switch(e){case"loaded":return n.green("\u2713");case"missing":return n.yellow("\u2026");case"unavailable":return n.gray("\u2013");case"required-missing":return n.red("\u2717")}}function C(e){switch(e){case"info":return n.green("\u2713");case"warn":return n.yellow("!");case"error":return n.red("\u2717")}}function M(e){return new p("upgrade").description("Detect optional native bindings and recommend install / flag changes (read-only)").option("--json","Emit the report as JSON to stdout",!1).option("--strict","Exit non-zero if any recommended optional native is missing",!1).action(async a=>{let i=V(),s=g(),t=O({aqeVersion:i,probe:E(),env:process.env,flags:{useRVFPatternStore:s.useRVFPatternStore,useSublinearSolver:s.useSublinearSolver,useNativeHNSW:s.useNativeHNSW,useGraphMAEEmbeddings:s.useGraphMAEEmbeddings,useQEFlashAttention:s.useQEFlashAttention}});a.json?process.stdout.write(JSON.stringify(t,null,2)+`
5
5
  `):process.stdout.write(A(t)),await e($(t,a.strict===!0))})}function V(){try{return m(import.meta.url)("../../../package.json").version??"unknown"}catch{return"unknown"}}export{N as NATIVE_CATALOG,q as buildRecommendations,O as buildReport,E as createDefaultLoadProbe,M as createUpgradeCommand,R as detectNatives,$ as exitCodeFor,h as readEnvOverrides,A as renderReportHuman};
@@ -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.14.4");process.exit(0)}
2
- import{e as V}from"./chunk-6UWGMOND.js";import"./chunk-KPA7MZ6C.js";import{a as P}from"./chunk-UEM7ZF5K.js";import"./chunk-JZ3ORVZ3.js";import"./chunk-FGYMFUE2.js";import"./chunk-DOTK76IJ.js";import"./chunk-ZBQY5GLF.js";import"./chunk-ZZDIMOOV.js";import"./chunk-F3SBRQC6.js";import"./chunk-3TW5W5LX.js";import"./chunk-MOBNBMFW.js";import"./chunk-55RWDRJD.js";import"./chunk-R4VL6E65.js";import"./chunk-RJCYCLZV.js";import"./chunk-NA7B2QYB.js";import"./chunk-Y3MW3YBC.js";import"./chunk-PEPFCPES.js";import{b as v,d as F}from"./chunk-DHJPWQBR.js";import"./chunk-G6T45OIC.js";import"./chunk-BGE6FOLM.js";import"./chunk-5YPYDPBJ.js";import"./chunk-HDSAM2RE.js";import"./chunk-KCZR45PA.js";import"./chunk-BFP7KO7P.js";import"./chunk-ODKLFVYC.js";import"./chunk-VD6QRULW.js";import"./chunk-KHFNNVJA.js";import"./chunk-CNG6GQEZ.js";import"./chunk-TT23RRB7.js";F();import{Command as M}from"commander";import{readFileSync as A,writeFileSync as S,existsSync as C,readdirSync as O,statSync as B}from"fs";import{join as b,resolve as j,basename as I}from"path";import e from"chalk";function R(i){let n=j(i);if(!C(n))throw new Error(`Input path not found: ${n}`);if(B(n).isDirectory()){let r=[],t=O(n).filter(o=>o.endsWith(".json")).map(o=>b(n,o));for(let o of t)try{let u=v(A(o,"utf-8"));if($(u))r.push(u);else if(Array.isArray(u))for(let d of u)$(d)&&r.push(d)}catch{console.warn(e.yellow(`Warning: Could not parse ${I(o)}`))}return r}else{let r=v(A(n,"utf-8"));if($(r))return[r];if(Array.isArray(r))return r.filter($);throw new Error("Invalid input format. Expected ParallelValidationRunResult or array of results.")}}function $(i){return typeof i=="object"&&i!==null&&"runId"in i&&"model"in i&&"outcomes"in i&&Array.isArray(i.outcomes)}function D(){return P({storeQEPattern:async()=>{},searchQEPatterns:async()=>({success:!0,value:[]}),addFact:async()=>({success:!0,value:void 0}),query:async()=>({success:!0,value:{results:[],confidence:0}}),getStats:()=>({totalPatterns:0,totalFacts:0,indexHealth:1,lastCompaction:new Date})})}function T(){let i=process.cwd(),n=[b(i,".claude/skills/trust-tier-manifest.json"),b(i,".claude/skills/skills-manifest.json")];for(let g of n)if(C(g))return g;return b(i,".claude/skills/trust-tier-manifest.json")}function L(i,n,g){let r=g.format||"markdown";if(r==="markdown"||r==="both"){let t=n.generateMarkdownReport(i);if(g.output){let o=r==="both"?g.output.replace(/\.\w+$/,".md"):g.output;S(o,t),console.log(e.green(`Markdown report written to: ${o}`))}else console.log(`
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.14.5");process.exit(0)}
2
+ import{e as V}from"./chunk-DDCIYOGT.js";import"./chunk-WLXK2KNU.js";import{a as P}from"./chunk-IUDWEOLX.js";import"./chunk-2KJQ2UQE.js";import"./chunk-K7NJHFLZ.js";import"./chunk-2JGEZHWY.js";import"./chunk-BXVAVFGU.js";import"./chunk-JROVR6YS.js";import"./chunk-WX6RRIGW.js";import"./chunk-E4EYPYR3.js";import"./chunk-R6IU3EWP.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import{b as v,d as F}from"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";F();import{Command as M}from"commander";import{readFileSync as A,writeFileSync as S,existsSync as C,readdirSync as O,statSync as B}from"fs";import{join as b,resolve as j,basename as I}from"path";import e from"chalk";function R(i){let n=j(i);if(!C(n))throw new Error(`Input path not found: ${n}`);if(B(n).isDirectory()){let r=[],t=O(n).filter(o=>o.endsWith(".json")).map(o=>b(n,o));for(let o of t)try{let u=v(A(o,"utf-8"));if($(u))r.push(u);else if(Array.isArray(u))for(let d of u)$(d)&&r.push(d)}catch{console.warn(e.yellow(`Warning: Could not parse ${I(o)}`))}return r}else{let r=v(A(n,"utf-8"));if($(r))return[r];if(Array.isArray(r))return r.filter($);throw new Error("Invalid input format. Expected ParallelValidationRunResult or array of results.")}}function $(i){return typeof i=="object"&&i!==null&&"runId"in i&&"model"in i&&"outcomes"in i&&Array.isArray(i.outcomes)}function D(){return P({storeQEPattern:async()=>{},searchQEPatterns:async()=>({success:!0,value:[]}),addFact:async()=>({success:!0,value:void 0}),query:async()=>({success:!0,value:{results:[],confidence:0}}),getStats:()=>({totalPatterns:0,totalFacts:0,indexHealth:1,lastCompaction:new Date})})}function T(){let i=process.cwd(),n=[b(i,".claude/skills/trust-tier-manifest.json"),b(i,".claude/skills/skills-manifest.json")];for(let g of n)if(C(g))return g;return b(i,".claude/skills/trust-tier-manifest.json")}function L(i,n,g){let r=g.format||"markdown";if(r==="markdown"||r==="both"){let t=n.generateMarkdownReport(i);if(g.output){let o=r==="both"?g.output.replace(/\.\w+$/,".md"):g.output;S(o,t),console.log(e.green(`Markdown report written to: ${o}`))}else console.log(`
3
3
  `+t)}if(r==="json"||r==="both"){let t=n.generateJsonReport(i);if(g.output){let o=r==="both"?g.output.replace(/\.\w+$/,".json"):g.output;S(o,t),console.log(e.green(`JSON report written to: ${o}`))}else console.log(`
4
4
  `+t)}}function W(i,n,g){let r=new M("skill").description("Skill validation and reporting (ADR-056)");return r.command("report").description("Generate aggregated report from validation results").requiredOption("-i, --input <path>","Input file or directory containing validation results").option("-o, --output <path>","Output file path (default: stdout)").option("-f, --format <format>","Output format: markdown, json, or both","markdown").option("-b, --baseline <path>","Baseline directory for regression detection").option("--detect-regressions","Enable regression detection against historical data").option("--update-manifest","Update trust tier manifest with new pass rates").option("-t, --threshold <number>","Regression threshold (0-1)",parseFloat).option("-v, --verbose","Verbose output").action(async t=>{try{t.verbose&&(console.log(e.blue(`
5
5
  Validation Result Aggregator`)),console.log(e.gray(`ADR-056 Phase 5
@@ -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.14.4");process.exit(0)}
2
- import{a as i,b as k,c as d,d as p}from"./chunk-6UWGMOND.js";import"./chunk-KPA7MZ6C.js";import{a as v}from"./chunk-Q5DO24IJ.js";import{a as h}from"./chunk-UEM7ZF5K.js";import"./chunk-HIYXCDEP.js";import"./chunk-JZ3ORVZ3.js";import"./chunk-FGYMFUE2.js";import"./chunk-DOTK76IJ.js";import"./chunk-ZBQY5GLF.js";import"./chunk-ZZDIMOOV.js";import"./chunk-F3SBRQC6.js";import"./chunk-3TW5W5LX.js";import"./chunk-MOBNBMFW.js";import"./chunk-CDHQFHRP.js";import"./chunk-6VRA2QGL.js";import"./chunk-CIZ5JPDC.js";import"./chunk-IFCLB7FJ.js";import"./chunk-T6BVLVI5.js";import"./chunk-MCUJEZT6.js";import"./chunk-NDPFGIMJ.js";import"./chunk-55RWDRJD.js";import"./chunk-R4VL6E65.js";import"./chunk-RJCYCLZV.js";import"./chunk-NA7B2QYB.js";import"./chunk-Y3MW3YBC.js";import"./chunk-PEPFCPES.js";import"./chunk-DHJPWQBR.js";import"./chunk-BOZZYWCR.js";import"./chunk-STM3UDNO.js";import"./chunk-G6T45OIC.js";import"./chunk-SRKETSFF.js";import"./chunk-BGE6FOLM.js";import"./chunk-5YPYDPBJ.js";import"./chunk-HDSAM2RE.js";import"./chunk-KCZR45PA.js";import"./chunk-BFP7KO7P.js";import"./chunk-ODKLFVYC.js";import"./chunk-VD6QRULW.js";import"./chunk-KHFNNVJA.js";import"./chunk-CNG6GQEZ.js";import"./chunk-TT23RRB7.js";import{Command as x}from"commander";import o from"chalk";function j(e,t,n){let c=new x("validate").description("Validation commands for skills and agents");return c.command("swarm").description("Validate skills in parallel using Claude Flow swarms (ADR-056)").option("-s, --skills <skills>",'Comma-separated list of skills to validate, or "all" for P0 skills',"all").option("-m, --models <models>","Comma-separated list of models to validate against",p.join(",")).option("-t, --topology <topology>","Swarm topology: hierarchical or mesh","hierarchical").option("--max-concurrent <number>","Maximum concurrent skill validations",String(i.maxConcurrentSkills)).option("--max-models <number>","Maximum concurrent models per skill",String(i.maxConcurrentModels)).option("--timeout <ms>","Timeout per validation in milliseconds",String(i.timeout)).option("--no-retry","Disable retries on failure").option("-v, --verbose","Show detailed output").option("--json","Output results as JSON").action(async l=>{if(await n())try{console.log(o.blue(`
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.14.5");process.exit(0)}
2
+ import{a as i,b as k,c as d,d as p}from"./chunk-DDCIYOGT.js";import"./chunk-WLXK2KNU.js";import{a as v}from"./chunk-3EZ5DR2R.js";import{a as h}from"./chunk-IUDWEOLX.js";import"./chunk-QYOGD2VW.js";import"./chunk-2KJQ2UQE.js";import"./chunk-QIRL6B3C.js";import"./chunk-BHFR2EXL.js";import"./chunk-RP2ZKPYV.js";import"./chunk-5WOSWNDN.js";import"./chunk-K7NJHFLZ.js";import"./chunk-2JGEZHWY.js";import"./chunk-BXVAVFGU.js";import"./chunk-JROVR6YS.js";import"./chunk-WX6RRIGW.js";import"./chunk-E4EYPYR3.js";import"./chunk-R6IU3EWP.js";import"./chunk-GTKCGPJZ.js";import"./chunk-UTBYJ4RF.js";import"./chunk-KIP6WZGV.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-QWUXCG2L.js";import"./chunk-XEZIIQYJ.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";import{Command as x}from"commander";import o from"chalk";function j(e,t,n){let c=new x("validate").description("Validation commands for skills and agents");return c.command("swarm").description("Validate skills in parallel using Claude Flow swarms (ADR-056)").option("-s, --skills <skills>",'Comma-separated list of skills to validate, or "all" for P0 skills',"all").option("-m, --models <models>","Comma-separated list of models to validate against",p.join(",")).option("-t, --topology <topology>","Swarm topology: hierarchical or mesh","hierarchical").option("--max-concurrent <number>","Maximum concurrent skill validations",String(i.maxConcurrentSkills)).option("--max-models <number>","Maximum concurrent models per skill",String(i.maxConcurrentModels)).option("--timeout <ms>","Timeout per validation in milliseconds",String(i.timeout)).option("--no-retry","Disable retries on failure").option("-v, --verbose","Show detailed output").option("--json","Output results as JSON").action(async l=>{if(await n())try{console.log(o.blue(`
3
3
  Swarm Skill Validation
4
4
  `));let r=l.skills==="all"?[...d]:l.skills.split(",").map(y=>y.trim()),u=l.models.split(",").map(y=>y.trim()),g=P(l.topology),a={topology:g,maxConcurrentSkills:parseInt(l.maxConcurrent,10)||i.maxConcurrentSkills,maxConcurrentModels:parseInt(l.maxModels,10)||i.maxConcurrentModels,timeout:parseInt(l.timeout,10)||i.timeout,continueOnFailure:!0,retry:l.retry!==!1?i.retry:void 0};l.verbose&&(console.log(o.gray("Configuration:")),console.log(o.gray(` Topology: ${a.topology}`)),console.log(o.gray(` Skills: ${r.length}`)),console.log(o.gray(` Models: ${u.length}`)),console.log(o.gray(` Max Concurrent Skills: ${a.maxConcurrentSkills}`)),console.log(o.gray(` Max Concurrent Models: ${a.maxConcurrentModels}`)),console.log(o.gray(` Timeout: ${a.timeout}ms`)),console.log(o.gray(` Retry: ${a.retry?"enabled":"disabled"}`)),console.log("")),console.log(o.cyan(` Skills: ${r.join(", ")}`)),console.log(o.cyan(` Models: ${u.join(", ")}`)),console.log(o.cyan(` Topology: ${g}`)),console.log("");let m=await R(e),f=h(m),C=k(a,f),$=Date.now();console.log(o.yellow(` Starting parallel validation...
5
5
  `));let b=await C.validateSkillsParallel(r,u),s=C.getSummary(b),w=Date.now()-$;l.json?T(s):D(s,l.verbose),console.log(o.blue(`
@@ -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.14.4");process.exit(0)}
2
- import{c as t}from"./chunk-TT23RRB7.js";import{createRequire as o}from"module";var i,e,a,c,l,p,s,m,u,d,A,f,h,_,b,v,L,n=t(()=>{i=o(import.meta.url),e=i("vibium"),a=e,{RuvectorLayer:c,TensorCompress:l,differentiableSearch:p,hierarchicalForward:s,getCompressionLevel:m,init:u,FlashAttention:d,DotProductAttention:A,MultiHeadAttention:f,HyperbolicAttention:h,LinearAttention:_,MoEAttention:b,SonaEngine:v,pipeline:L}=e||{}});n();export{A as DotProductAttention,d as FlashAttention,h as HyperbolicAttention,_ as LinearAttention,b as MoEAttention,f as MultiHeadAttention,c as RuvectorLayer,v as SonaEngine,l as TensorCompress,a as default,p as differentiableSearch,m as getCompressionLevel,s as hierarchicalForward,u as init,L as pipeline};
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.14.5");process.exit(0)}
2
+ import{b as t}from"./chunk-JSZ663MU.js";import{createRequire as o}from"module";var i,e,a,c,l,p,s,m,u,d,A,f,h,_,b,v,L,n=t(()=>{i=o(import.meta.url),e=i("vibium"),a=e,{RuvectorLayer:c,TensorCompress:l,differentiableSearch:p,hierarchicalForward:s,getCompressionLevel:m,init:u,FlashAttention:d,DotProductAttention:A,MultiHeadAttention:f,HyperbolicAttention:h,LinearAttention:_,MoEAttention:b,SonaEngine:v,pipeline:L}=e||{}});n();export{A as DotProductAttention,d as FlashAttention,h as HyperbolicAttention,_ as LinearAttention,b as MoEAttention,f as MultiHeadAttention,c as RuvectorLayer,v as SonaEngine,l as TensorCompress,a as default,p as differentiableSearch,m as getCompressionLevel,s as hierarchicalForward,u as init,L as pipeline};
@@ -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.14.5");process.exit(0)}
2
+ import{a}from"./chunk-FUNGTIF2.js";import"./chunk-YDFL445W.js";import"./chunk-LULD4JV2.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-7VFY7TUR.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{a as VisualSecurityTool};
@@ -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.14.4");process.exit(0)}
2
- import"./chunk-TT23RRB7.js";import{createRequire as t}from"module";var o=t(import.meta.url),e=o("web-tree-sitter"),i=e,{RuvectorLayer:n,TensorCompress:a,differentiableSearch:c,hierarchicalForward:s,getCompressionLevel:l,init:p,FlashAttention:m,DotProductAttention:u,MultiHeadAttention:d,HyperbolicAttention:A,LinearAttention:f,MoEAttention:h,SonaEngine:_,pipeline:b}=e||{};export{u as DotProductAttention,m as FlashAttention,A as HyperbolicAttention,f as LinearAttention,h as MoEAttention,d as MultiHeadAttention,n as RuvectorLayer,_ as SonaEngine,a as TensorCompress,i as default,c as differentiableSearch,l as getCompressionLevel,s as hierarchicalForward,p as init,b as pipeline};
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.14.5");process.exit(0)}
2
+ import"./chunk-JSZ663MU.js";import{createRequire as t}from"module";var o=t(import.meta.url),e=o("web-tree-sitter"),i=e,{RuvectorLayer:n,TensorCompress:a,differentiableSearch:c,hierarchicalForward:s,getCompressionLevel:l,init:p,FlashAttention:m,DotProductAttention:u,MultiHeadAttention:d,HyperbolicAttention:A,LinearAttention:f,MoEAttention:h,SonaEngine:_,pipeline:b}=e||{};export{u as DotProductAttention,m as FlashAttention,A as HyperbolicAttention,f as LinearAttention,h as MoEAttention,d as MultiHeadAttention,n as RuvectorLayer,_ as SonaEngine,a as TensorCompress,i as default,c as differentiableSearch,l as getCompressionLevel,s as hierarchicalForward,p as init,b as pipeline};
@@ -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.14.4");process.exit(0)}
2
- import{b as u}from"./chunk-2JW3BCGG.js";import{a as f,c as d}from"./chunk-G6T45OIC.js";import"./chunk-TT23RRB7.js";d();import{existsSync as i,mkdirSync as h,readFileSync as g,writeFileSync as a}from"fs";import{join as p,dirname as v}from"path";var c=class{projectRoot;overwrite;options;generator;constructor(e){this.projectRoot=e.projectRoot,this.overwrite=e.overwrite??!1,this.options=e,this.generator=u()}async install(){let e={success:!0,mcpConfigured:!1,rulesInstalled:!1,errors:[],configPath:"",rulesPath:""};try{let t=this.generator.generateMcpConfig("windsurf",{memoryBackend:this.options.memoryBackend}),r=p(this.projectRoot,t.path);if(e.configPath=r,!i(r)||this.overwrite){let o=v(r);if(i(o)||h(o,{recursive:!0}),i(r)&&this.overwrite){let m=this.mergeExistingConfig(r,t.content);a(r,m)}else a(r,t.content);e.mcpConfigured=!0}let s=this.generator.generateBehavioralRules("windsurf"),n=p(this.projectRoot,s.path);if(e.rulesPath=n,!i(n)||this.overwrite){if(i(n)&&this.overwrite){let o=this.mergeExistingRules(n,s.content);a(n,o)}else a(n,s.content);e.rulesInstalled=!0}}catch(t){e.success=!1,e.errors.push(`Windsurf installation failed: ${f(t)}`)}return e}mergeExistingConfig(e,t){try{let r=JSON.parse(g(e,"utf-8")),s=JSON.parse(t);return r.mcpServers||(r.mcpServers={}),Object.assign(r.mcpServers,s.mcpServers),JSON.stringify(r,null,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.14.5");process.exit(0)}
2
+ import{b as u}from"./chunk-LSUILON7.js";import{a as f,c as d}from"./chunk-J5UNP6W3.js";import"./chunk-JSZ663MU.js";d();import{existsSync as i,mkdirSync as h,readFileSync as g,writeFileSync as a}from"fs";import{join as p,dirname as v}from"path";var c=class{projectRoot;overwrite;options;generator;constructor(e){this.projectRoot=e.projectRoot,this.overwrite=e.overwrite??!1,this.options=e,this.generator=u()}async install(){let e={success:!0,mcpConfigured:!1,rulesInstalled:!1,errors:[],configPath:"",rulesPath:""};try{let t=this.generator.generateMcpConfig("windsurf",{memoryBackend:this.options.memoryBackend}),r=p(this.projectRoot,t.path);if(e.configPath=r,!i(r)||this.overwrite){let o=v(r);if(i(o)||h(o,{recursive:!0}),i(r)&&this.overwrite){let m=this.mergeExistingConfig(r,t.content);a(r,m)}else a(r,t.content);e.mcpConfigured=!0}let s=this.generator.generateBehavioralRules("windsurf"),n=p(this.projectRoot,s.path);if(e.rulesPath=n,!i(n)||this.overwrite){if(i(n)&&this.overwrite){let o=this.mergeExistingRules(n,s.content);a(n,o)}else a(n,s.content);e.rulesInstalled=!0}}catch(t){e.success=!1,e.errors.push(`Windsurf installation failed: ${f(t)}`)}return e}mergeExistingConfig(e,t){try{let r=JSON.parse(g(e,"utf-8")),s=JSON.parse(t);return r.mcpServers||(r.mcpServers={}),Object.assign(r.mcpServers,s.mcpServers),JSON.stringify(r,null,2)+`
3
3
  `}catch{return t}}mergeExistingRules(e,t){try{let r=g(e,"utf-8");return r.includes("Agentic QE")||r.includes("fleet_init")?r:r.trimEnd()+`
4
4
 
5
5
  ---
@@ -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.14.4");process.exit(0)}
2
- import{a,b,c,d,e,f,g}from"./chunk-CIZ5JPDC.js";import"./chunk-NA7B2QYB.js";import"./chunk-Y3MW3YBC.js";import"./chunk-CNG6GQEZ.js";import"./chunk-TT23RRB7.js";export{c as PersistentWitnessChain,a as SPRTAccumulator,b as WitnessChain,f as createPersistentWitnessChain,e as createWitnessChain,d as createWitnessChainSQLitePersistence,g as isWitnessChainFeatureEnabled};
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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e,f,g}from"./chunk-GTKCGPJZ.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{c as PersistentWitnessChain,a as SPRTAccumulator,b as WitnessChain,f as createPersistentWitnessChain,e as createWitnessChain,d as createWitnessChainSQLitePersistence,g as isWitnessChainFeatureEnabled};
@@ -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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e,f,g,h,i}from"./chunk-7X7JYWT4.js";import"./chunk-RD6TEZ64.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{a as GENESIS_PREV_HASH,f as WitnessChain,i as _resetWitnessChainForTests,h as createWitnessChain,g as getWitnessChain,d as hashWith,e as serializeEntry,b as sha256,c as shake256};
@@ -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.14.4");process.exit(0)}
2
- import{a,b,c}from"./chunk-TPGED2IF.js";import"./chunk-PEPFCPES.js";import"./chunk-TT23RRB7.js";export{a as WitnessKeyManager,c as _resetDefaultWitnessKeyManagerForTests,b as getDefaultWitnessKeyManager};
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.14.5");process.exit(0)}
2
+ import{a,b,c}from"./chunk-RD6TEZ64.js";import"./chunk-C3HQL6S4.js";import"./chunk-JSZ663MU.js";export{a as WitnessKeyManager,c as _resetDefaultWitnessKeyManagerForTests,b as getDefaultWitnessKeyManager};
@@ -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.14.4");process.exit(0)}
2
- import"./chunk-TWAWHOP7.js";import{b as $}from"./chunk-3X3DJZJJ.js";import{d as C}from"./chunk-GPLQ6DOK.js";import{b as k,c as W,d as v}from"./chunk-OSLYSG3B.js";import{c as b}from"./chunk-DHJPWQBR.js";import"./chunk-STM3UDNO.js";import"./chunk-G6T45OIC.js";import"./chunk-TT23RRB7.js";import{Command as D}from"commander";import o from"chalk";function O(w,i){let h=w.indexOf("=");return h>0&&(i[w.substring(0,h)]=w.substring(h+1)),i}function V(w,i,h){let m=new D("workflow").description("Manage QE workflows and pipelines (ADR-041)");return m.command("run <file>").description("Execute a QE pipeline from YAML file").option("-w, --watch","Watch execution progress").option("-v, --verbose","Show detailed output").option("--params <json>","Additional parameters as JSON","{}").action(async(n,t)=>{if(!await h())return;let u=(await import("path")).resolve(n);try{console.log(o.blue(`
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.14.5");process.exit(0)}
2
+ import"./chunk-73EI4C2E.js";import{b as $}from"./chunk-R74ZKREV.js";import{d as C}from"./chunk-XUR2M2WB.js";import{b as k,c as W,d as v}from"./chunk-QRCIZFNK.js";import{c as b}from"./chunk-IJHCIXJC.js";import"./chunk-XEZIIQYJ.js";import"./chunk-J5UNP6W3.js";import"./chunk-JSZ663MU.js";import{Command as D}from"commander";import o from"chalk";function O(w,i){let h=w.indexOf("=");return h>0&&(i[w.substring(0,h)]=w.substring(h+1)),i}function V(w,i,h){let m=new D("workflow").description("Manage QE workflows and pipelines (ADR-041)");return m.command("run <file>").description("Execute a QE pipeline from YAML file").option("-w, --watch","Watch execution progress").option("-v, --verbose","Show detailed output").option("--params <json>","Additional parameters as JSON","{}").action(async(n,t)=>{if(!await h())return;let u=(await import("path")).resolve(n);try{console.log(o.blue(`
3
3
  Running workflow from: ${n}
4
4
  `));let l=k(u);if(!l.success||!l.workflow){console.log(o.red("Failed to parse pipeline:"));for(let g of l.errors)console.log(o.red(` ${g}`));await i(1)}let f={...b(t.params,"params")};if(l.pipeline){for(let g of l.pipeline.stages)if(g.params)for(let[y,p]of Object.entries(g.params))f[y]=p}if(!w.workflowOrchestrator.getWorkflow(l.workflow.id)){let g=w.workflowOrchestrator.registerWorkflow(l.workflow);g.success||(console.log(o.red(`Failed to register workflow: ${g.error.message}`)),await i(1))}let c=await w.workflowOrchestrator.executeWorkflow(l.workflow.id,f);if(!c.success){console.log(o.red(`Failed to start workflow: ${c.error.message}`)),await i(1);return}let a=c.value;if(console.log(o.cyan(` Execution ID: ${a}`)),console.log(o.gray(` Workflow: ${l.workflow.name}`)),console.log(o.gray(` Stages: ${l.workflow.steps.length}`)),console.log(""),t.watch){console.log(o.blue(`Workflow Progress:
5
5
  `));let g,y=Date.now();for(;;){let d=w.workflowOrchestrator.getWorkflowStatus(a);if(!d)break;if(!g||g.progress!==d.progress||g.status!==d.status||JSON.stringify(g.currentSteps)!==JSON.stringify(d.currentSteps)){process.stdout.write("\r\x1B[K");let S="\u2588".repeat(Math.floor(d.progress/5))+"\u2591".repeat(20-Math.floor(d.progress/5)),R=d.status==="completed"?o.green:d.status==="failed"?o.red:d.status==="running"?o.yellow:o.gray;console.log(` [${S}] ${d.progress}% - ${R(d.status)}`),d.currentSteps.length>0&&t.verbose&&console.log(o.gray(` Running: ${d.currentSteps.join(", ")}`)),g=d}if(d.status==="completed"||d.status==="failed"||d.status==="cancelled")break;await new Promise(S=>setTimeout(S,500))}let p=w.workflowOrchestrator.getWorkflowStatus(a);if(p){console.log("");let d=p.duration||Date.now()-y;p.status==="completed"?(console.log(o.green("Workflow completed successfully")),console.log(o.gray(` Duration: ${$(d)}`)),console.log(o.gray(` Completed: ${p.completedSteps.length} stages`)),p.skippedSteps.length>0&&console.log(o.yellow(` Skipped: ${p.skippedSteps.length} stages`))):p.status==="failed"?(console.log(o.red("Workflow failed")),console.log(o.red(` Error: ${p.error}`)),console.log(o.gray(` Failed stages: ${p.failedSteps.join(", ")}`))):console.log(o.yellow(`Workflow ${p.status}`))}console.log(""),await i(p?.status==="completed"?0:1);return}else console.log(o.green("Workflow execution started")),console.log(o.gray(` Use 'aqe workflow status ${a}' to check progress`));console.log(""),await i(0)}catch(l){console.error(o.red(`
@@ -35,10 +35,10 @@ Workflow cancelled: ${n}
35
35
  `)):console.log(o.red(`
36
36
  Failed to cancel workflow: ${t.error.message}
37
37
  `)),await i(t.success?0:1)}catch(t){console.error(o.red(`
38
- Failed to cancel workflow:`),t),await i(1)}}),m.command("browser-list").description("List available browser workflow templates").action(async()=>{try{let{BrowserWorkflowTool:n}=await import("./browser-workflow-2FZTKDUL.js"),e=await new n().invoke({});if(e.success&&e.data){console.log(o.blue(`
38
+ Failed to cancel workflow:`),t),await i(1)}}),m.command("browser-list").description("List available browser workflow templates").action(async()=>{try{let{BrowserWorkflowTool:n}=await import("./browser-workflow-YYHQQ25X.js"),e=await new n().invoke({});if(e.success&&e.data){console.log(o.blue(`
39
39
  Browser Workflow Templates:
40
40
  `));for(let u of e.data.availableTemplates)console.log(` ${o.cyan(u)}`);console.log("")}else console.log(o.red(`Failed: ${e.error||"Unknown error"}`));await i(0)}catch(n){console.error(o.red(`
41
- Failed:`),n),await i(1)}}),m.command("browser-load [template]").description("Load and validate a browser workflow template or inline YAML").option("--yaml <yaml>","Inline YAML workflow definition").option("-v, --var <key=value>","Variable override (repeatable)",O,{}).option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(n,t)=>{try{let{BrowserWorkflowTool:e}=await import("./browser-workflow-2FZTKDUL.js"),{writeOutput:u,toJSON:l}=await import("./ci-output-I7FX2RSO.js"),s=new e,f={variables:t.var||{}};if(t.yaml)f.workflowYaml=t.yaml;else if(n)if(n.endsWith(".yaml")||n.endsWith(".yml")){let c=await import("fs"),g=(await import("path")).resolve(n);c.existsSync(g)||(console.log(o.red(`
41
+ Failed:`),n),await i(1)}}),m.command("browser-load [template]").description("Load and validate a browser workflow template or inline YAML").option("--yaml <yaml>","Inline YAML workflow definition").option("-v, --var <key=value>","Variable override (repeatable)",O,{}).option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(n,t)=>{try{let{BrowserWorkflowTool:e}=await import("./browser-workflow-YYHQQ25X.js"),{writeOutput:u,toJSON:l}=await import("./ci-output-EHRSZBKG.js"),s=new e,f={variables:t.var||{}};if(t.yaml)f.workflowYaml=t.yaml;else if(n)if(n.endsWith(".yaml")||n.endsWith(".yml")){let c=await import("fs"),g=(await import("path")).resolve(n);c.existsSync(g)||(console.log(o.red(`
42
42
  File not found: ${g}
43
43
  `)),await i(1)),f.workflowYaml=c.readFileSync(g,"utf-8")}else f.templateName=n;else console.log(o.red(`
44
44
  Provide a template name or --yaml. Use "workflow browser-list" to see templates.
@@ -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.14.5");process.exit(0)}
2
+ import{a,b,c,d}from"./chunk-4FWTLJEP.js";import"./chunk-CYE2TJFV.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-XEZIIQYJ.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-W2XCZU62.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{b as DEFAULT_WORKFLOW_CONFIG,a as WorkflowEvents,c as WorkflowOrchestrator,d as createWorkflowOrchestrator};
@@ -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.14.4");process.exit(0)}
2
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v as L,w as M,x as N}from"./chunk-3QHGWY7T.js";import{a as v,b as w,c as x,d as y,e as z,f as A,g as B,h as C,i as D,j as E,k as F,l as G,m as H,n as I,o as J,p as K}from"./chunk-M2JBBZQB.js";import"./chunk-55RWDRJD.js";import"./chunk-R4VL6E65.js";import"./chunk-RJCYCLZV.js";import"./chunk-NA7B2QYB.js";import"./chunk-Y3MW3YBC.js";import"./chunk-PEPFCPES.js";import"./chunk-DHJPWQBR.js";import"./chunk-G6T45OIC.js";import"./chunk-BGE6FOLM.js";import"./chunk-5YPYDPBJ.js";import"./chunk-HDSAM2RE.js";import"./chunk-KCZR45PA.js";import"./chunk-BFP7KO7P.js";import"./chunk-ODKLFVYC.js";import"./chunk-VD6QRULW.js";import"./chunk-KHFNNVJA.js";import"./chunk-CNG6GQEZ.js";import"./chunk-TT23RRB7.js";export{z as GNNLayerFactory,i as QEFlashAttention,x as QEGNNEmbeddingIndex,y as QEGNNIndexFactory,a as QESONA,e as QE_FLASH_ATTENTION_CONFIG,g as QE_PERFORMANCE_TARGETS,f as QE_SONA_CONFIG,A as TensorCompressionFactory,u as batchComputeAttention,K as batchDifferentiableSearch,M as checkRuvectorPackagesAvailable,c as createDomainQESONA,j as createQEFlashAttention,b as createQESONA,D as getDifferentiableSearch,F as getGetCompressionLevel,E as getHierarchicalForward,G as getInit,h as getOptimalBlockConfig,k as getQEFlashAttentionConfig,n as getRuvectorDotProductAttention,m as getRuvectorFlashAttention,p as getRuvectorHyperbolicAttention,B as getRuvectorLayer,q as getRuvectorLinearAttention,r as getRuvectorMoEAttention,o as getRuvectorMultiHeadAttention,L as getRuvectorPackageVersions,C as getTensorCompress,l as getWorkloadTypes,N as initAllRuvectorPackages,w as initGNN,d as isAttentionAvailable,v as isGNNAvailable,s as toFloat32Array,H as toFloat32ArrayGNN,J as toIEmbedding,t as toNumberArrayAttn,I as toNumberArrayGNN};
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.14.5");process.exit(0)}
2
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v as L,w as M,x as N}from"./chunk-XFPPERA2.js";import{a as v,b as w,c as x,d as y,e as z,f as A,g as B,h as C,i as D,j as E,k as F,l as G,m as H,n as I,o as J,p as K}from"./chunk-67YV75XP.js";import"./chunk-EFV4ADMO.js";import"./chunk-RKOUXVZZ.js";import"./chunk-IJHCIXJC.js";import"./chunk-NQI7FWCS.js";import"./chunk-C3HQL6S4.js";import"./chunk-J27F4NSB.js";import"./chunk-7CD7PBHY.js";import"./chunk-J5UNP6W3.js";import"./chunk-HVU64GP5.js";import"./chunk-ELBZON4V.js";import"./chunk-52L77RMG.js";import"./chunk-XZSMZHM2.js";import"./chunk-CVMNJSCB.js";import"./chunk-NU7UTXMP.js";import"./chunk-D6OUCB2H.js";import"./chunk-6A44AOGN.js";import"./chunk-WJHWH5D2.js";import"./chunk-JSZ663MU.js";export{z as GNNLayerFactory,i as QEFlashAttention,x as QEGNNEmbeddingIndex,y as QEGNNIndexFactory,a as QESONA,e as QE_FLASH_ATTENTION_CONFIG,g as QE_PERFORMANCE_TARGETS,f as QE_SONA_CONFIG,A as TensorCompressionFactory,u as batchComputeAttention,K as batchDifferentiableSearch,M as checkRuvectorPackagesAvailable,c as createDomainQESONA,j as createQEFlashAttention,b as createQESONA,D as getDifferentiableSearch,F as getGetCompressionLevel,E as getHierarchicalForward,G as getInit,h as getOptimalBlockConfig,k as getQEFlashAttentionConfig,n as getRuvectorDotProductAttention,m as getRuvectorFlashAttention,p as getRuvectorHyperbolicAttention,B as getRuvectorLayer,q as getRuvectorLinearAttention,r as getRuvectorMoEAttention,o as getRuvectorMultiHeadAttention,L as getRuvectorPackageVersions,C as getTensorCompress,l as getWorkloadTypes,N as initAllRuvectorPackages,w as initGNN,d as isAttentionAvailable,v as isGNNAvailable,s as toFloat32Array,H as toFloat32ArrayGNN,J as toIEmbedding,t as toNumberArrayAttn,I as toNumberArrayGNN};
@@ -13,6 +13,8 @@ import { join, dirname } from 'path';
13
13
  import { existsSync } from 'fs';
14
14
  import { fileURLToPath, pathToFileURL } from 'url';
15
15
  import { findPackageRoot } from '../../init/find-package-root.js';
16
+ import { resolveCliLogLevel, setCliLogLevel } from '../log-gate.js';
17
+ import { LogLevel } from '../../logging/index.js';
16
18
  /**
17
19
  * Create the MCP command
18
20
  */
@@ -28,6 +30,10 @@ export function createMcpCommand() {
28
30
  if (options.verbose) {
29
31
  process.env.AQE_VERBOSE = 'true';
30
32
  }
33
+ // The server runs in this process under the CLI log gate. Keep its
34
+ // historical INFO default (diagnostics go to stderr, never the stdio
35
+ // protocol stream) unless AQE_LOG_LEVEL / LOG_LEVEL say otherwise.
36
+ setCliLogLevel(resolveCliLogLevel(process.env, LogLevel.INFO));
31
37
  // Find the MCP entry point
32
38
  const entryPath = findMcpEntry();
33
39
  if (!entryPath) {
@@ -7,5 +7,5 @@
7
7
  */
8
8
  import { Command } from 'commander';
9
9
  import type { CLIContext } from '../handlers/interfaces.js';
10
- export declare function createMemoryCommand(context: CLIContext, cleanupAndExit: (code: number) => Promise<never>, ensureInitialized: () => Promise<boolean>): Command;
10
+ export declare function createMemoryCommand(context: CLIContext, cleanupAndExit: (code: number) => Promise<never>, ensureMemoryReady: () => Promise<boolean>): Command;
11
11
  //# sourceMappingURL=memory.d.ts.map
@@ -8,7 +8,7 @@
8
8
  import { Command } from 'commander';
9
9
  import chalk from 'chalk';
10
10
  import { toErrorMessage } from '../../shared/error-utils.js';
11
- export function createMemoryCommand(context, cleanupAndExit, ensureInitialized) {
11
+ export function createMemoryCommand(context, cleanupAndExit, ensureMemoryReady) {
12
12
  const memory = new Command('memory')
13
13
  .description('Memory store, retrieve, search, and delete operations')
14
14
  .addHelpText('after', `
@@ -47,7 +47,7 @@ Examples:
47
47
  .option('--ttl <seconds>', 'Time-to-live in seconds')
48
48
  .option('--json', 'Output as JSON')
49
49
  .action(async (options) => {
50
- if (!await ensureInitialized())
50
+ if (!await ensureMemoryReady())
51
51
  return;
52
52
  try {
53
53
  const { handleMemoryStore } = await import('../../mcp/handlers/memory-handlers.js');
@@ -91,7 +91,7 @@ Examples:
91
91
  .option('--include-metadata', 'Include metadata in response')
92
92
  .option('--json', 'Output as JSON')
93
93
  .action(async (options) => {
94
- if (!await ensureInitialized())
94
+ if (!await ensureMemoryReady())
95
95
  return;
96
96
  try {
97
97
  const { handleMemoryRetrieve } = await import('../../mcp/handlers/memory-handlers.js');
@@ -141,7 +141,7 @@ Examples:
141
141
  console.error(chalk.red(' Either --pattern or --query is required'));
142
142
  await cleanupAndExit(1);
143
143
  }
144
- if (!await ensureInitialized())
144
+ if (!await ensureMemoryReady())
145
145
  return;
146
146
  try {
147
147
  const { handleMemoryQuery } = await import('../../mcp/handlers/memory-handlers.js');
@@ -186,7 +186,7 @@ Examples:
186
186
  .option('--limit <n>', 'Maximum results', '50')
187
187
  .option('--json', 'Output as JSON')
188
188
  .action(async (options) => {
189
- if (!await ensureInitialized())
189
+ if (!await ensureMemoryReady())
190
190
  return;
191
191
  try {
192
192
  const { handleMemoryQuery } = await import('../../mcp/handlers/memory-handlers.js');
@@ -225,7 +225,7 @@ Examples:
225
225
  .option('--namespace <ns>', 'Namespace', 'default')
226
226
  .option('--json', 'Output as JSON')
227
227
  .action(async (options) => {
228
- if (!await ensureInitialized())
228
+ if (!await ensureMemoryReady())
229
229
  return;
230
230
  try {
231
231
  const { handleMemoryDelete } = await import('../../mcp/handlers/memory-handlers.js');
@@ -264,7 +264,7 @@ Examples:
264
264
  .requiredOption('--content <json>', 'JSON content to share')
265
265
  .option('--json', 'Output as JSON')
266
266
  .action(async (options) => {
267
- if (!await ensureInitialized())
267
+ if (!await ensureMemoryReady())
268
268
  return;
269
269
  try {
270
270
  const { handleMemoryShare } = await import('../../mcp/handlers/memory-handlers.js');
@@ -307,7 +307,7 @@ Examples:
307
307
  .description('Show memory usage statistics')
308
308
  .option('--json', 'Output as JSON')
309
309
  .action(async (options) => {
310
- if (!await ensureInitialized())
310
+ if (!await ensureMemoryReady())
311
311
  return;
312
312
  try {
313
313
  const { handleMemoryUsage } = await import('../../mcp/handlers/memory-handlers.js');
@@ -18,6 +18,17 @@ import { toErrorMessage } from '../../shared/error-utils.js';
18
18
  // Helpers
19
19
  // ============================================================================
20
20
  const VALID_PLATFORM_IDS = Object.keys(PLATFORM_REGISTRY);
21
+ // Literal import paths let esbuild include every installer in the shipped CLI.
22
+ const PLATFORM_INSTALLERS = {
23
+ copilot: () => import('../../init/copilot-installer.js'),
24
+ cursor: () => import('../../init/cursor-installer.js'),
25
+ cline: () => import('../../init/cline-installer.js'),
26
+ kilocode: () => import('../../init/kilocode-installer.js'),
27
+ roocode: () => import('../../init/roocode-installer.js'),
28
+ codex: () => import('../../init/codex-installer.js'),
29
+ windsurf: () => import('../../init/windsurf-installer.js'),
30
+ continuedev: () => import('../../init/continuedev-installer.js'),
31
+ };
21
32
  function isValidPlatformId(name) {
22
33
  return VALID_PLATFORM_IDS.includes(name);
23
34
  }
@@ -205,8 +216,8 @@ export function createPlatformCommand() {
205
216
  console.log(chalk.gray(' ─────────────────────────────────'));
206
217
  console.log('');
207
218
  try {
208
- // Dynamic import of the installer
209
- const installerModule = await import(`../../init/${name}-installer.js`);
219
+ // Load the selected installer from a statically declared import.
220
+ const installerModule = await PLATFORM_INSTALLERS[name]();
210
221
  // Resolve the factory function name: create<Name>Installer
211
222
  const factoryName = `create${name.charAt(0).toUpperCase()}${name.slice(1).replace(/([a-z])([A-Z])/g, '$1$2')}Installer`;
212
223
  // Find the factory function (try common naming patterns)
@@ -267,10 +278,12 @@ export function createPlatformCommand() {
267
278
  console.log(chalk.red(` ${err}`));
268
279
  }
269
280
  }
281
+ process.exit(1);
270
282
  }
271
283
  }
272
284
  catch (error) {
273
285
  console.log(chalk.red(` Failed to set up ${platform.name}: ${toErrorMessage(error)}`));
286
+ process.exit(1);
274
287
  }
275
288
  console.log('');
276
289
  });
@@ -2,9 +2,9 @@
2
2
  * `aqe upgrade` — read-only advisory
3
3
  *
4
4
  * Detects which optional native bindings load on this platform and prints a
5
- * report with recommendations. Does NOT modify feature flags, env vars, or
6
- * config files — it only tells the user what they'd gain by installing the
7
- * missing optional deps.
5
+ * report with recommendations. It reports the effective runtime flags after
6
+ * CLI startup applies environment overrides, but does not persist changes to
7
+ * environment variables or config files.
8
8
  *
9
9
  * Related: issue #383 item 2.
10
10
  */
@@ -2,9 +2,9 @@
2
2
  * `aqe upgrade` — read-only advisory
3
3
  *
4
4
  * Detects which optional native bindings load on this platform and prints a
5
- * report with recommendations. Does NOT modify feature flags, env vars, or
6
- * config files — it only tells the user what they'd gain by installing the
7
- * missing optional deps.
5
+ * report with recommendations. It reports the effective runtime flags after
6
+ * CLI startup applies environment overrides, but does not persist changes to
7
+ * environment variables or config files.
8
8
  *
9
9
  * Related: issue #383 item 2.
10
10
  */