agentic-qe 3.12.0 → 3.12.1

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 (324) hide show
  1. package/.claude/skills/skills-manifest.json +1 -1
  2. package/CHANGELOG.md +35 -0
  3. package/assets/skills/skills-manifest.json +1 -1
  4. package/dist/cli/bundle.js +5 -5
  5. package/dist/cli/chunks/adapter-X4UEC6UJ.js +2 -0
  6. package/dist/cli/chunks/{agent-booster-wasm-IO54X6IQ.js → agent-booster-wasm-P4VYM5KK.js} +2 -2
  7. package/dist/cli/chunks/{agent-handler-A57SZUCW.js → agent-handler-PBQ7L2TO.js} +2 -2
  8. package/dist/cli/chunks/{agent-memory-branch-BX7LRFGN.js → agent-memory-branch-UPWO3X6V.js} +2 -2
  9. package/dist/cli/chunks/aqe-learning-engine-5FG7JCY7.js +2 -0
  10. package/dist/cli/chunks/{arena-Y3XTX6O7.js → arena-LEUTILZ7.js} +2 -2
  11. package/dist/cli/chunks/{arena-UTC4YY6Y.js → arena-QYTP3FG6.js} +4 -4
  12. package/dist/cli/chunks/{audit-L4RL2AOY.js → audit-TB6M2YLK.js} +3 -3
  13. package/dist/cli/chunks/base-CWPMFSZG.js +2 -0
  14. package/dist/cli/chunks/{hnswlib-node-VS6L5VUG.js → better-sqlite3-IPKCAVLS.js} +2 -2
  15. package/dist/cli/chunks/{brain-handler-OHDPI5TQ.js → brain-handler-JF3OK35F.js} +3 -3
  16. package/dist/cli/chunks/{branch-enumerator-ZRXE2CQ7.js → branch-enumerator-WEIP3DXB.js} +2 -2
  17. package/dist/cli/chunks/{browser-NT33FG76.js → browser-HY6VLXHZ.js} +2 -2
  18. package/dist/cli/chunks/browser-workflow-A77OFBVY.js +2 -0
  19. package/dist/cli/chunks/{chunk-5FR5GBUT.js → chunk-2PQ7YADF.js} +2 -2
  20. package/dist/cli/chunks/{chunk-VWJSWXHG.js → chunk-3I3Z4C5X.js} +1 -1
  21. package/dist/cli/chunks/{chunk-VMP4M5PB.js → chunk-3W2FZXFD.js} +1 -1
  22. package/dist/cli/chunks/{chunk-RQN4HWGV.js → chunk-42GFB7VX.js} +2 -2
  23. package/dist/cli/chunks/{chunk-36MPDANH.js → chunk-42PYEEYQ.js} +1 -1
  24. package/dist/cli/chunks/{chunk-MBF3Q7FQ.js → chunk-45QNHMTP.js} +1 -1
  25. package/dist/cli/chunks/{chunk-7F7U2HUH.js → chunk-4KI72C2E.js} +1 -1
  26. package/dist/cli/chunks/{chunk-7ZIVDGSN.js → chunk-4LKQZW2H.js} +1 -1
  27. package/dist/cli/chunks/{chunk-TJ6N4CCX.js → chunk-4U5MJX2H.js} +2 -2
  28. package/dist/cli/chunks/{chunk-TED4KOSK.js → chunk-55MQ2SFP.js} +2 -2
  29. package/dist/cli/chunks/{chunk-OPIWFXME.js → chunk-5H5A74U2.js} +1 -1
  30. package/dist/cli/chunks/{chunk-C6GYLCTX.js → chunk-5HMGDB7B.js} +2 -2
  31. package/dist/cli/chunks/{chunk-2UMCB7AH.js → chunk-6432JORM.js} +1 -1
  32. package/dist/cli/chunks/{chunk-KJWQ7ENF.js → chunk-6BCVKCG5.js} +2 -2
  33. package/dist/cli/chunks/{chunk-ZVPAFX4I.js → chunk-6ONUCDVL.js} +2 -2
  34. package/dist/cli/chunks/{chunk-MJPYNGZ7.js → chunk-6RX5QZMU.js} +1 -1
  35. package/dist/cli/chunks/{chunk-SCMXIBI7.js → chunk-74VIADSJ.js} +2 -2
  36. package/dist/cli/chunks/{chunk-6JNNZGI2.js → chunk-75AVUS5U.js} +1 -1
  37. package/dist/cli/chunks/{chunk-FEEMJDUF.js → chunk-774X6OJY.js} +2 -2
  38. package/dist/cli/chunks/{chunk-POKMJTD2.js → chunk-7KHIOWBN.js} +1 -1
  39. package/dist/cli/chunks/{chunk-JOBCMNTP.js → chunk-7KK6XSYK.js} +2 -2
  40. package/dist/cli/chunks/{chunk-RMFRFING.js → chunk-7N2SCRWJ.js} +1 -1
  41. package/dist/cli/chunks/{chunk-CVGXB7IX.js → chunk-AGWKCY42.js} +2 -2
  42. package/dist/cli/chunks/{chunk-5XFX25AJ.js → chunk-BAHXVVX3.js} +2 -2
  43. package/dist/cli/chunks/{chunk-7WX3MKRS.js → chunk-BALFQQB7.js} +2 -2
  44. package/dist/cli/chunks/{chunk-KZMRU7DL.js → chunk-BBNQDHGF.js} +2 -2
  45. package/dist/cli/chunks/{chunk-I6WHYRWB.js → chunk-BCBITOMT.js} +2 -2
  46. package/dist/cli/chunks/{chunk-KN5GOEYK.js → chunk-BKKJEKNT.js} +2 -2
  47. package/dist/cli/chunks/{chunk-W2OMW6UU.js → chunk-BLU7OLQZ.js} +2 -2
  48. package/dist/cli/chunks/{chunk-QJ6H2HQQ.js → chunk-BNMV5DCM.js} +1 -1
  49. package/dist/cli/chunks/{chunk-5VBPIJUZ.js → chunk-BPM7NEHS.js} +4 -4
  50. package/dist/cli/chunks/{chunk-EGH3H7QO.js → chunk-BWNMAXV7.js} +1 -1
  51. package/dist/cli/chunks/{chunk-HW62TB4T.js → chunk-BXIJY6SB.js} +1 -1
  52. package/dist/cli/chunks/{chunk-Q5YRPS4P.js → chunk-C2K4LQI5.js} +1 -1
  53. package/dist/cli/chunks/{chunk-IKVNYK7Y.js → chunk-C7HGYLNF.js} +2 -2
  54. package/dist/cli/chunks/{chunk-3B4XXFKD.js → chunk-CDVKFAYP.js} +2 -2
  55. package/dist/cli/chunks/{chunk-FI5SSLEF.js → chunk-CJTXZI37.js} +2 -2
  56. package/dist/cli/chunks/{chunk-ZWC6CM4R.js → chunk-CP4GSICY.js} +1 -1
  57. package/dist/cli/chunks/{chunk-AEX75YGI.js → chunk-CXUHD2O5.js} +2 -2
  58. package/dist/cli/chunks/{chunk-NW7G57NR.js → chunk-CYYT6YEV.js} +2 -2
  59. package/dist/cli/chunks/{chunk-MK3J7JVZ.js → chunk-D72N5V2S.js} +2 -2
  60. package/dist/cli/chunks/{chunk-KI5BP4X5.js → chunk-DQ3J7ZT6.js} +2 -2
  61. package/dist/cli/chunks/{chunk-IJUYHIKN.js → chunk-DSNFOX22.js} +2 -2
  62. package/dist/cli/chunks/{chunk-VZ67ZDB3.js → chunk-EOBZJDJR.js} +3 -3
  63. package/dist/cli/chunks/{chunk-MUV56BPK.js → chunk-FBYFDD7L.js} +2 -2
  64. package/dist/cli/chunks/{chunk-7HJHXSYT.js → chunk-FFSS3Y6W.js} +2 -2
  65. package/dist/cli/chunks/chunk-FNMEVLSN.js +2 -0
  66. package/dist/cli/chunks/{chunk-BUYPRUNY.js → chunk-GASACVTU.js} +2 -2
  67. package/dist/cli/chunks/{chunk-62RELCU6.js → chunk-GGF5FZWS.js} +1 -1
  68. package/dist/cli/chunks/{chunk-AAATFEIL.js → chunk-GLO53MUQ.js} +2 -2
  69. package/dist/cli/chunks/{chunk-EM2JIIAQ.js → chunk-GW3M7GQH.js} +2 -2
  70. package/dist/cli/chunks/{chunk-PM566XEO.js → chunk-GXMNCW2M.js} +1 -1
  71. package/dist/cli/chunks/{chunk-Y2MCIIJD.js → chunk-HDI3FD4G.js} +1 -1
  72. package/dist/cli/chunks/{chunk-NNGCUJWQ.js → chunk-HGKSU4QV.js} +2 -2
  73. package/dist/cli/chunks/{chunk-2ALNNXFF.js → chunk-HHMTQQUE.js} +2 -2
  74. package/dist/cli/chunks/{chunk-VS4GMNJK.js → chunk-HZGFER4N.js} +3 -3
  75. package/dist/cli/chunks/{chunk-RG552ROA.js → chunk-I4BZLVFE.js} +3 -3
  76. package/dist/cli/chunks/{chunk-27JCWG5J.js → chunk-IC6SOVGO.js} +2 -2
  77. package/dist/cli/chunks/{chunk-L5ZLOW3K.js → chunk-IE6FDICX.js} +2 -2
  78. package/dist/cli/chunks/{chunk-DXOMRWDC.js → chunk-IHWWZOHP.js} +1 -1
  79. package/dist/cli/chunks/{chunk-PQMLIVGV.js → chunk-J4IAMQZI.js} +2 -2
  80. package/dist/cli/chunks/{chunk-ICK3B24H.js → chunk-J6ZCULWG.js} +2 -2
  81. package/dist/cli/chunks/{chunk-WT4ZDDFM.js → chunk-JDZIBSMY.js} +1 -1
  82. package/dist/cli/chunks/{chunk-TC2JE5OK.js → chunk-JIM4VSLF.js} +3 -3
  83. package/dist/cli/chunks/{chunk-CMGYUCM7.js → chunk-JRHRC2MP.js} +1 -1
  84. package/dist/cli/chunks/{chunk-FZIHOMGY.js → chunk-JRNDFC23.js} +2 -2
  85. package/dist/cli/chunks/{chunk-DR7PCO3S.js → chunk-JWZNWVLG.js} +2 -2
  86. package/dist/cli/chunks/{chunk-335GHVJV.js → chunk-KQV5644J.js} +3 -3
  87. package/dist/cli/chunks/{chunk-HDJMD6UH.js → chunk-LAJHHR3Q.js} +1 -1
  88. package/dist/cli/chunks/{chunk-WNASEUBW.js → chunk-LF5XOYR7.js} +10 -10
  89. package/dist/cli/chunks/{chunk-4SALW7OT.js → chunk-LRWBOJ5Y.js} +2 -2
  90. package/dist/cli/chunks/{chunk-BGRJZH5Q.js → chunk-LZ6TJ7XL.js} +2 -2
  91. package/dist/cli/chunks/{chunk-BB4OVXWF.js → chunk-M5P5WNXA.js} +1 -1
  92. package/dist/cli/chunks/{chunk-DQDFACYW.js → chunk-MCUILJ33.js} +1 -1
  93. package/dist/cli/chunks/{chunk-2AR4B3DI.js → chunk-MIAY35K6.js} +2 -2
  94. package/dist/cli/chunks/{chunk-JYXSVSH2.js → chunk-N3PSRG6F.js} +2 -2
  95. package/dist/cli/chunks/{chunk-SPEUF7ZL.js → chunk-NEXJUTHF.js} +2 -2
  96. package/dist/cli/chunks/{chunk-PT3FTGKZ.js → chunk-NHRBKOYD.js} +2 -2
  97. package/dist/cli/chunks/{chunk-JYX7AZHE.js → chunk-NK2Z6FGF.js} +2 -2
  98. package/dist/cli/chunks/{chunk-TJEJ4UVX.js → chunk-NOCPO55P.js} +2 -2
  99. package/dist/cli/chunks/{chunk-6X3RJBA3.js → chunk-NTMN2ZJY.js} +2 -2
  100. package/dist/cli/chunks/{chunk-KZ37VHMJ.js → chunk-NVXSM7UO.js} +2 -2
  101. package/dist/cli/chunks/{chunk-K5SN66B4.js → chunk-O65OPAZH.js} +2 -2
  102. package/dist/cli/chunks/{chunk-UGJQJSPB.js → chunk-OEXSBR72.js} +1 -1
  103. package/dist/cli/chunks/{chunk-O3C5RRDQ.js → chunk-OJORNYN3.js} +3 -3
  104. package/dist/cli/chunks/{chunk-4GU656WM.js → chunk-ONSNNY6J.js} +1 -1
  105. package/dist/cli/chunks/{chunk-XEYW3V5I.js → chunk-OXVAGR64.js} +2 -2
  106. package/dist/cli/chunks/{chunk-IDLNLSQI.js → chunk-P7G5LGUE.js} +2 -2
  107. package/dist/cli/chunks/{chunk-NLHISTL2.js → chunk-PDS5P5QD.js} +2 -2
  108. package/dist/cli/chunks/{chunk-SSXAW3ER.js → chunk-PQ4NSXZM.js} +2 -2
  109. package/dist/cli/chunks/{chunk-DTOE3NYW.js → chunk-PRA73XZY.js} +12 -12
  110. package/dist/cli/chunks/{chunk-64M3FFM4.js → chunk-PZ3Q34OT.js} +2 -2
  111. package/dist/cli/chunks/{chunk-GCF42L7M.js → chunk-PZZDAECU.js} +3 -3
  112. package/dist/cli/chunks/{chunk-G6RKUEGL.js → chunk-QJXUK54J.js} +2 -2
  113. package/dist/cli/chunks/{chunk-WJYTLRA5.js → chunk-QOAI6ETC.js} +3 -3
  114. package/dist/cli/chunks/{chunk-CC5G3K4X.js → chunk-QORWBION.js} +2 -2
  115. package/dist/cli/chunks/{chunk-GGMQOEZZ.js → chunk-QXZOUETY.js} +2 -2
  116. package/dist/cli/chunks/{chunk-TO5PQSDD.js → chunk-QZBPXJ5C.js} +2 -2
  117. package/dist/cli/chunks/{chunk-YKOTOCO6.js → chunk-R4A6PY5D.js} +2 -2
  118. package/dist/cli/chunks/{chunk-ESDGCTC4.js → chunk-R7XEACKR.js} +1 -1
  119. package/dist/cli/chunks/{chunk-BBC526PL.js → chunk-RAS7WRN5.js} +2 -2
  120. package/dist/cli/chunks/{chunk-G6LR7FK7.js → chunk-REJGZP27.js} +2 -2
  121. package/dist/cli/chunks/{chunk-KDLYTJ5C.js → chunk-RIASOMB2.js} +2 -2
  122. package/dist/cli/chunks/{chunk-OHSVDMF7.js → chunk-RJ7TU2MP.js} +1 -1
  123. package/dist/cli/chunks/{chunk-CSEEGX5T.js → chunk-S42RFOZJ.js} +2 -2
  124. package/dist/cli/chunks/{chunk-BA6U7NSR.js → chunk-SFQFBLWQ.js} +1 -1
  125. package/dist/cli/chunks/{chunk-BZPF6GTL.js → chunk-SHKOPOPD.js} +1 -1
  126. package/dist/cli/chunks/{chunk-HAEUPIKW.js → chunk-TGIKKD43.js} +2 -2
  127. package/dist/cli/chunks/{chunk-UVVKFBF7.js → chunk-TMPRR3FZ.js} +2 -2
  128. package/dist/cli/chunks/{chunk-FU5RNEXV.js → chunk-U55X2ZUM.js} +2 -2
  129. package/dist/cli/chunks/{chunk-3AFNXU45.js → chunk-U5ITD7ZD.js} +1 -1
  130. package/dist/cli/chunks/{chunk-RHC7TFPU.js → chunk-UBPJQKYS.js} +2 -2
  131. package/dist/cli/chunks/{chunk-VA7TEOPM.js → chunk-UBWSYDO5.js} +1 -1
  132. package/dist/cli/chunks/chunk-UEC53US3.js +316 -0
  133. package/dist/cli/chunks/{chunk-CHO54B34.js → chunk-UGPBL7LX.js} +2 -2
  134. package/dist/cli/chunks/{chunk-TR5GOGH3.js → chunk-UKF4V7LE.js} +5 -5
  135. package/dist/cli/chunks/{chunk-V2MD5EDD.js → chunk-UR655D4K.js} +2 -2
  136. package/dist/cli/chunks/{chunk-2KHDGC7N.js → chunk-USTUWUCE.js} +2 -2
  137. package/dist/cli/chunks/{chunk-P52YORQG.js → chunk-UZXDYT6O.js} +2 -2
  138. package/dist/cli/chunks/{chunk-72VZGAMJ.js → chunk-VFRWLSQO.js} +1 -1
  139. package/dist/cli/chunks/{chunk-USB44IHJ.js → chunk-VHJCQBD2.js} +2 -2
  140. package/dist/cli/chunks/{chunk-FKPUPQQT.js → chunk-VTFYY4SH.js} +2 -2
  141. package/dist/cli/chunks/{chunk-RZDNCTOA.js → chunk-W52R3G22.js} +2 -2
  142. package/dist/cli/chunks/{chunk-FZRU73M4.js → chunk-WBDV4V3H.js} +2 -2
  143. package/dist/cli/chunks/{chunk-RYUSZ43T.js → chunk-WPEGG6DX.js} +1 -1
  144. package/dist/cli/chunks/{chunk-ZT2WHCVM.js → chunk-WPG5LXR7.js} +2 -2
  145. package/dist/cli/chunks/{chunk-UUOXV3NS.js → chunk-X2CEX4KC.js} +10 -10
  146. package/dist/cli/chunks/{chunk-EZE2HRQB.js → chunk-X2K3BTI4.js} +2 -2
  147. package/dist/cli/chunks/{chunk-C4SZSPXY.js → chunk-XDRAU3W6.js} +2 -2
  148. package/dist/cli/chunks/{chunk-FOPS6DRZ.js → chunk-XJTGLG7G.js} +1 -1
  149. package/dist/cli/chunks/{chunk-Z3W3R4CW.js → chunk-XS6BIOPQ.js} +2 -2
  150. package/dist/cli/chunks/{chunk-G5JQLUUO.js → chunk-XTAXSKPC.js} +2 -2
  151. package/dist/cli/chunks/{chunk-MUAHFGIX.js → chunk-XYV6YUWS.js} +2 -2
  152. package/dist/cli/chunks/{chunk-5YGESYBC.js → chunk-YGB3MT3R.js} +1 -1
  153. package/dist/cli/chunks/{chunk-LMJUQWR7.js → chunk-YNXQMJGJ.js} +1 -1
  154. package/dist/cli/chunks/{chunk-XIFPIVZI.js → chunk-ZCDGLNJ7.js} +2 -2
  155. package/dist/cli/chunks/{chunk-W766S4SK.js → chunk-ZNITDSWL.js} +1 -1
  156. package/dist/cli/chunks/{ci-RJH5LAL3.js → ci-IU5HVUL5.js} +2 -2
  157. package/dist/cli/chunks/{ci-output-62SGMGB2.js → ci-output-CLI4A43F.js} +2 -2
  158. package/dist/cli/chunks/{circuit-breaker-QXTS5ZAW.js → circuit-breaker-ZR5OFMW7.js} +2 -2
  159. package/dist/cli/chunks/{claude-flow-setup-BBCCT5WV.js → claude-flow-setup-UBMA6ZHJ.js} +2 -2
  160. package/dist/cli/chunks/client-KKCFGD7R.js +2 -0
  161. package/dist/cli/chunks/{cline-installer-IZCUJJ3I.js → cline-installer-EWYELOBI.js} +2 -2
  162. package/dist/cli/chunks/{code-AWNVOZ7S.js → code-YSPF4MXN.js} +2 -2
  163. package/dist/cli/chunks/{code-index-extractor-MX65BKMI.js → code-index-extractor-WW5OKSTN.js} +2 -2
  164. package/dist/cli/chunks/{codex-installer-EQT6JVLM.js → codex-installer-GLADK5PY.js} +2 -2
  165. package/dist/cli/chunks/{completions-WOJAM45W.js → completions-2KTWZ3AK.js} +2 -2
  166. package/dist/cli/chunks/{complexity-analyzer-3DJB7V3K.js → complexity-analyzer-KMX4OWKB.js} +2 -2
  167. package/dist/cli/chunks/{continuedev-installer-P4KWUTCJ.js → continuedev-installer-4FHU4OEJ.js} +2 -2
  168. package/dist/cli/chunks/{copilot-installer-FFZWTMWQ.js → copilot-installer-AKR4WE7B.js} +2 -2
  169. package/dist/cli/chunks/core-handlers-KRSSJEO5.js +2 -0
  170. package/dist/cli/chunks/{cost-tracker-CYBOV3NI.js → cost-tracker-BUJ6WEWY.js} +2 -2
  171. package/dist/cli/chunks/{coverage-GTZJBSC4.js → coverage-OB6HVQS4.js} +3 -3
  172. package/dist/cli/chunks/cross-domain-router-27QGWU27.js +2 -0
  173. package/dist/cli/chunks/{cursor-installer-WZIVXGGB.js → cursor-installer-3AOE4O3Q.js} +2 -2
  174. package/dist/cli/chunks/{daemon-MSFN2LXY.js → daemon-4RAL5URG.js} +3 -3
  175. package/dist/cli/chunks/{daemon-JWMHEJEN.js → daemon-JGSPLYGO.js} +4 -4
  176. package/dist/cli/chunks/{dag-attention-scheduler-4TWOTTQE.js → dag-attention-scheduler-DSBTHIMH.js} +2 -2
  177. package/dist/cli/chunks/{detect-YZ6AGQPB.js → detect-6CVW2VUQ.js} +2 -2
  178. package/dist/cli/chunks/{dist-node-3EM2XH54.js → dist-node-EWPKBTYA.js} +2 -2
  179. package/dist/cli/chunks/{domain-handler-4XU5BINU.js → domain-handler-HLVIJU25.js} +2 -2
  180. package/dist/cli/chunks/{domain-transfer-HUFC7I52.js → domain-transfer-7Y3BR3YU.js} +2 -2
  181. package/dist/cli/chunks/dream-M6K47Q4H.js +2 -0
  182. package/dist/cli/chunks/{embed-and-insert-pattern-J5ZFM6YX.js → embed-and-insert-pattern-ZMJ3263X.js} +2 -2
  183. package/dist/cli/chunks/{eval-XYOA3EH2.js → eval-73XW2WJD.js} +2 -2
  184. package/dist/cli/chunks/{experience-capture-middleware-E3RYQB6Z.js → experience-capture-middleware-OGJ3JOSQ.js} +3 -3
  185. package/dist/cli/chunks/{fast-paths-DKIYN2YS.js → fast-paths-5XCY3Y6U.js} +2 -2
  186. package/dist/cli/chunks/{feature-flags-ZB63Z7N5.js → feature-flags-R5V2FRJR.js} +2 -2
  187. package/dist/cli/chunks/{feature-flags-S2RNZATS.js → feature-flags-VULQI6KY.js} +2 -2
  188. package/dist/cli/chunks/{file-discovery-USJJLYQU.js → file-discovery-HW33C3HC.js} +2 -2
  189. package/dist/cli/chunks/{fleet-4MUPHSF5.js → fleet-NH3XR5OY.js} +3 -3
  190. package/dist/cli/chunks/{gnn-wrapper-PYOQZKX6.js → gnn-wrapper-L3XMLPTG.js} +2 -2
  191. package/dist/cli/chunks/{heartbeat-handler-HLO5XCG7.js → heartbeat-handler-TIQFBT4D.js} +4 -4
  192. package/dist/cli/chunks/heartbeat-scheduler-URXBF5RW.js +2 -0
  193. package/dist/cli/chunks/hnsw-adapter-WWAGM6HK.js +2 -0
  194. package/dist/cli/chunks/hnsw-index-UFV2HSZE.js +2 -0
  195. package/dist/cli/chunks/{hnsw-legacy-bridge-FZEH2KLM.js → hnsw-legacy-bridge-YL2SUIPA.js} +2 -2
  196. package/dist/cli/chunks/{better-sqlite3-LRDXKYOJ.js → hnswlib-node-62RTSHAY.js} +2 -2
  197. package/dist/cli/chunks/{hooks-R2757K57.js → hooks-UR2ZF54G.js} +10 -10
  198. package/dist/cli/chunks/hybrid-router-3U6Q6OTL.js +2 -0
  199. package/dist/cli/chunks/{hypergraph-engine-EAV3GJ5D.js → hypergraph-engine-NX45AOPY.js} +2 -2
  200. package/dist/cli/chunks/{hypergraph-handler-5ERXAVGH.js → hypergraph-handler-LUM4YI4K.js} +3 -3
  201. package/dist/cli/chunks/impact-analyzer-EUEX6ZRO.js +2 -0
  202. package/dist/cli/chunks/{init-handler-RXUSEMG7.js → init-handler-YTKKNTVV.js} +6 -6
  203. package/dist/cli/chunks/init-wizard-POKY2LRY.js +2 -0
  204. package/dist/cli/chunks/kernel-HPAONLZY.js +2 -0
  205. package/dist/cli/chunks/{kilocode-installer-ZUBVBHGT.js → kilocode-installer-ZW7DVH7T.js} +2 -2
  206. package/dist/cli/chunks/{kiro-installer-TRTRQDGL.js → kiro-installer-IA7INW4N.js} +2 -2
  207. package/dist/cli/chunks/knowledge-graph-2WCUFG63.js +2 -0
  208. package/dist/cli/chunks/{learning-UYXWAU5D.js → learning-4AZ5PGTT.js} +3 -3
  209. package/dist/cli/chunks/{llm-router-TB5OJPEV.js → llm-router-WQ4E3AOP.js} +4 -4
  210. package/dist/cli/chunks/llm-router-service-D5VMG6SD.js +2 -0
  211. package/dist/cli/chunks/{load-ELPSUIPV.js → load-4FAH7CZO.js} +2 -2
  212. package/dist/cli/chunks/load-test-DHG26REU.js +2 -0
  213. package/dist/cli/chunks/{mcp-UX7TK3XV.js → mcp-KLLHI6DG.js} +2 -2
  214. package/dist/cli/chunks/{memory-W3LG6H6N.js → memory-Q5HLIUC6.js} +5 -5
  215. package/dist/cli/chunks/memory-backend-GLWQ4DAL.js +2 -0
  216. package/dist/cli/chunks/{memory-handlers-BNXAYS2P.js → memory-handlers-P72I4VV4.js} +2 -2
  217. package/dist/cli/chunks/{multi-model-executor-227LWZRY.js → multi-model-executor-ABI73AFV.js} +2 -2
  218. package/dist/cli/chunks/{opencode-installer-F4WKVWDL.js → opencode-installer-KRPQ6JOJ.js} +2 -2
  219. package/dist/cli/chunks/{orchestrator-V4DBMGK6.js → orchestrator-SUPEONRG.js} +18 -18
  220. package/dist/cli/chunks/pattern-null-store-Y2YFTE3V.js +2 -0
  221. package/dist/cli/chunks/{pattern-usage-recorder-BY3HEWSU.js → pattern-usage-recorder-R4GKK6RZ.js} +2 -2
  222. package/dist/cli/chunks/{pipeline-3F5RIESX.js → pipeline-LCUETNGD.js} +2 -2
  223. package/dist/cli/chunks/{platform-KCGXTZO3.js → platform-WJDIB4X3.js} +2 -2
  224. package/dist/cli/chunks/{plugin-2H552KOV.js → plugin-2X5NY2RF.js} +2 -2
  225. package/dist/cli/chunks/{prime-radiant-advanced-wasm-EFKVL7VN.js → prime-radiant-advanced-wasm-3T665QC6.js} +2 -2
  226. package/dist/cli/chunks/protocol-executor-HNT67NN5.js +2 -0
  227. package/dist/cli/chunks/{protocol-handler-ELGYV7D2.js → protocol-handler-JTXRF7GU.js} +2 -2
  228. package/dist/cli/chunks/{prove-AYJCQYNI.js → prove-BFPWWPOC.js} +2 -2
  229. package/dist/cli/chunks/provider-manager-5YGPZIEZ.js +2 -0
  230. package/dist/cli/chunks/qe-reasoning-bank-Z5UGOA3F.js +2 -0
  231. package/dist/cli/chunks/{quality-HH7L5A7V.js → quality-F7UZU4RN.js} +2 -2
  232. package/dist/cli/chunks/{quality-gate-NAQLXE4C.js → quality-gate-R5L4UZIX.js} +3 -3
  233. package/dist/cli/chunks/queen-coordinator-P5LU5NWI.js +2 -0
  234. package/dist/cli/chunks/{real-embeddings-IO3F4ZFR.js → real-embeddings-LZD6HTQF.js} +2 -2
  235. package/dist/cli/chunks/{roocode-installer-X4TU5HO4.js → roocode-installer-6TTG7VSH.js} +2 -2
  236. package/dist/cli/chunks/router-CRGHUAVR.js +2 -0
  237. package/dist/cli/chunks/routing-feedback-BVX5ZBCF.js +2 -0
  238. package/dist/cli/chunks/{routing-handler-ZJKGDDMT.js → routing-handler-SW442GK7.js} +2 -2
  239. package/dist/cli/chunks/{ruvector-commands-NXCSUBN2.js → ruvector-commands-CLFGKXMW.js} +2 -2
  240. package/dist/cli/chunks/{rvf-dual-writer-JMA74SKP.js → rvf-dual-writer-EVPPXXXS.js} +2 -2
  241. package/dist/cli/chunks/{rvf-migration-adapter-BNTGH2KU.js → rvf-migration-adapter-NOHDIRIP.js} +2 -2
  242. package/dist/cli/chunks/{rvf-migration-coordinator-7T2HHUOH.js → rvf-migration-coordinator-BYJ3M7WZ.js} +2 -2
  243. package/dist/cli/chunks/rvf-native-adapter-FZJSQOJM.js +2 -0
  244. package/dist/cli/chunks/safe-db-USYNEOC6.js +2 -0
  245. package/dist/cli/chunks/schedule-KCRCQ3PS.js +2 -0
  246. package/dist/cli/chunks/scheduler-CX3UHI4U.js +2 -0
  247. package/dist/cli/chunks/{security-XSK2QHB3.js → security-IXDKBPSG.js} +3 -3
  248. package/dist/cli/chunks/{shared-rvf-adapter-WLRKI7RY.js → shared-rvf-adapter-VCOK3OVD.js} +2 -2
  249. package/dist/cli/chunks/{shared-rvf-dual-writer-SZW3J7ZK.js → shared-rvf-dual-writer-FFKBKYNL.js} +2 -2
  250. package/dist/cli/chunks/sqlite-persistence-K23C4TFH.js +2 -0
  251. package/dist/cli/chunks/{status-handler-HGCKYJX2.js → status-handler-M5W64S5U.js} +2 -2
  252. package/dist/cli/chunks/{structural-health-4SJCFX63.js → structural-health-55X6BTLT.js} +2 -2
  253. package/dist/cli/chunks/{sync-ATR4DUSA.js → sync-BUGDXW3Y.js} +2 -2
  254. package/dist/cli/chunks/{sync-7WAVNZGL.js → sync-NUG67HGK.js} +2 -2
  255. package/dist/cli/chunks/{task-handler-O6REL34Y.js → task-handler-T6ZKXV4S.js} +2 -2
  256. package/dist/cli/chunks/{task-handlers-WFV2ZYWW.js → task-handlers-H63TB2UI.js} +3 -3
  257. package/dist/cli/chunks/{test-4LXUVHEU.js → test-VEK76SBT.js} +4 -4
  258. package/dist/cli/chunks/{test-scheduling-OTN3DMKY.js → test-scheduling-QZM6PNZH.js} +3 -3
  259. package/dist/cli/chunks/{token-bootstrap-VA7T4P42.js → token-bootstrap-W5IAMJW4.js} +2 -2
  260. package/dist/cli/chunks/{token-usage-TLT6OXXR.js → token-usage-OBY6UEUR.js} +2 -2
  261. package/dist/cli/chunks/{transformers-JI7LZRQ3.js → transformers-EFNY2MRX.js} +2 -2
  262. package/dist/cli/chunks/{tree-sitter-wasm-parser-QNIMHB4K.js → tree-sitter-wasm-parser-EU2S5NVM.js} +2 -2
  263. package/dist/cli/chunks/{types-DJNWOAC6.js → types-3DYRKX23.js} +2 -2
  264. package/dist/cli/chunks/unified-memory-NCDBQLLF.js +2 -0
  265. package/dist/cli/chunks/unified-memory-hnsw-T7NSGQ2H.js +2 -0
  266. package/dist/cli/chunks/unified-persistence-XUAYDCMM.js +2 -0
  267. package/dist/cli/chunks/{upgrade-VEW4FL23.js → upgrade-H5V53FRF.js} +2 -2
  268. package/dist/cli/chunks/{validate-O3P6PF7B.js → validate-IL22VB5I.js} +2 -2
  269. package/dist/cli/chunks/{validate-swarm-M2HXHZVC.js → validate-swarm-WZKECK3W.js} +2 -2
  270. package/dist/cli/chunks/{vibium-GOU55LUO.js → vibium-KKM23OTQ.js} +2 -2
  271. package/dist/cli/chunks/visual-security-3TUC4GPP.js +2 -0
  272. package/dist/cli/chunks/{web-tree-sitter-MXOI4GH3.js → web-tree-sitter-NJM5YBOY.js} +2 -2
  273. package/dist/cli/chunks/{windsurf-installer-6GKT53IH.js → windsurf-installer-SLP43TVT.js} +2 -2
  274. package/dist/cli/chunks/witness-chain-QLOKUZXC.js +2 -0
  275. package/dist/cli/chunks/{witness-chain-OXGQGL26.js → witness-chain-XBEPT4XD.js} +2 -2
  276. package/dist/cli/chunks/{witness-key-manager-PGFSQXUJ.js → witness-key-manager-DAAMNYOW.js} +2 -2
  277. package/dist/cli/chunks/{workflow-ENBWRMBA.js → workflow-SZOOU6D3.js} +4 -4
  278. package/dist/cli/chunks/workflow-orchestrator-6JAYTZ7L.js +2 -0
  279. package/dist/cli/chunks/{wrappers-MHLNYANQ.js → wrappers-I2CBKWGF.js} +2 -2
  280. package/dist/init/init-wizard-hooks.js +11 -25
  281. package/dist/init/phases/07-hooks.js +15 -25
  282. package/dist/init/settings-merge.d.ts +44 -0
  283. package/dist/init/settings-merge.js +119 -4
  284. package/dist/mcp/bundle.js +1 -1
  285. package/package.json +1 -1
  286. package/dist/cli/chunks/adapter-6IWRIHF3.js +0 -2
  287. package/dist/cli/chunks/aqe-learning-engine-FSF5U67K.js +0 -2
  288. package/dist/cli/chunks/base-2CKCJU3O.js +0 -2
  289. package/dist/cli/chunks/browser-workflow-UGYJE64S.js +0 -2
  290. package/dist/cli/chunks/chunk-2AOOIAW3.js +0 -316
  291. package/dist/cli/chunks/chunk-MDT3LIXS.js +0 -2
  292. package/dist/cli/chunks/client-E2XUBCLK.js +0 -2
  293. package/dist/cli/chunks/core-handlers-46Z5VOO6.js +0 -2
  294. package/dist/cli/chunks/cross-domain-router-SXQ3HFRY.js +0 -2
  295. package/dist/cli/chunks/dream-R6MQQQ3N.js +0 -2
  296. package/dist/cli/chunks/heartbeat-scheduler-OSDPJT6A.js +0 -2
  297. package/dist/cli/chunks/hnsw-adapter-KMGSHBIN.js +0 -2
  298. package/dist/cli/chunks/hnsw-index-IMFRAOPE.js +0 -2
  299. package/dist/cli/chunks/hybrid-router-57QSWSWC.js +0 -2
  300. package/dist/cli/chunks/impact-analyzer-OC4MPBGA.js +0 -2
  301. package/dist/cli/chunks/init-wizard-CDBRL4PO.js +0 -2
  302. package/dist/cli/chunks/kernel-CQ7R3AAV.js +0 -2
  303. package/dist/cli/chunks/knowledge-graph-UXNH7RY4.js +0 -2
  304. package/dist/cli/chunks/llm-router-service-UV34YXBE.js +0 -2
  305. package/dist/cli/chunks/load-test-2VEN3PQZ.js +0 -2
  306. package/dist/cli/chunks/memory-backend-TZL5U6F3.js +0 -2
  307. package/dist/cli/chunks/pattern-null-store-KLX2RNHM.js +0 -2
  308. package/dist/cli/chunks/protocol-executor-5HJKW6MC.js +0 -2
  309. package/dist/cli/chunks/provider-manager-TRZSBXD3.js +0 -2
  310. package/dist/cli/chunks/qe-reasoning-bank-RCEYSLVV.js +0 -2
  311. package/dist/cli/chunks/queen-coordinator-6JFZD54W.js +0 -2
  312. package/dist/cli/chunks/router-KRLC46NS.js +0 -2
  313. package/dist/cli/chunks/routing-feedback-WW26H6SA.js +0 -2
  314. package/dist/cli/chunks/rvf-native-adapter-OVQKPQUH.js +0 -2
  315. package/dist/cli/chunks/safe-db-UQOCQIH2.js +0 -2
  316. package/dist/cli/chunks/schedule-EUX7ZQUK.js +0 -2
  317. package/dist/cli/chunks/scheduler-MALHQKNR.js +0 -2
  318. package/dist/cli/chunks/sqlite-persistence-OBCLRP4L.js +0 -2
  319. package/dist/cli/chunks/unified-memory-A5BS3LGX.js +0 -2
  320. package/dist/cli/chunks/unified-memory-hnsw-WJLJO5MY.js +0 -2
  321. package/dist/cli/chunks/unified-persistence-CFC2BKI5.js +0 -2
  322. package/dist/cli/chunks/visual-security-VPB6KVYJ.js +0 -2
  323. package/dist/cli/chunks/witness-chain-ZZAUAXDY.js +0 -2
  324. package/dist/cli/chunks/workflow-orchestrator-S4LBFTYD.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.12.0");process.exit(0)}
2
- import{b as y}from"./chunk-EGH3H7QO.js";import{c as u,d as p,f as k,j as h}from"./chunk-DXOMRWDC.js";import"./chunk-3AFNXU45.js";import{Command as F}from"commander";import e from"chalk";function U($,d,T){return new F("test").description("Test generation, execution, scheduling, and load testing").argument("<action>","Action (generate|execute|schedule|load)").argument("[target]","Target file or directory").option("-f, --framework <framework>","Test framework","vitest").option("-t, --type <type>","Test type (unit|integration|e2e)","unit").option("-F, --format <format>","Output format (text|json|junit|markdown)","text").option("-o, --output <path>","Write output to file").option("--git-ref <ref>","Git ref for schedule action (e.g., main, HEAD~3)").option("--no-git-aware","Disable git-aware test selection (schedule action)").option("--no-flaky","Disable flaky test tracking (schedule action)").option("--agents <count>","Target agent count for load action","10").option("--profile <profile>","Workload profile for load action (light|medium|heavy)","medium").option("--duration <ms>","Duration in ms for load action","30000").option("--real","Use real agents instead of mock (load action, requires fleet_init)").action(async(m,f,s)=>{if(await T())try{if(m==="generate"){console.log(e.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.12.1");process.exit(0)}
2
+ import{b as y}from"./chunk-BWNMAXV7.js";import{c as u,d as p,f as k,j as h}from"./chunk-IHWWZOHP.js";import"./chunk-U5ITD7ZD.js";import{Command as F}from"commander";import e from"chalk";function U($,d,T){return new F("test").description("Test generation, execution, scheduling, and load testing").argument("<action>","Action (generate|execute|schedule|load)").argument("[target]","Target file or directory").option("-f, --framework <framework>","Test framework","vitest").option("-t, --type <type>","Test type (unit|integration|e2e)","unit").option("-F, --format <format>","Output format (text|json|junit|markdown)","text").option("-o, --output <path>","Write output to file").option("--git-ref <ref>","Git ref for schedule action (e.g., main, HEAD~3)").option("--no-git-aware","Disable git-aware test selection (schedule action)").option("--no-flaky","Disable flaky test tracking (schedule action)").option("--agents <count>","Target agent count for load action","10").option("--profile <profile>","Workload profile for load action (light|medium|heavy)","medium").option("--duration <ms>","Duration in ms for load action","30000").option("--real","Use real agents instead of mock (load action, requires fleet_init)").action(async(m,f,s)=>{if(await T())try{if(m==="generate"){console.log(e.blue(`
3
3
  Generating tests for ${f||"current directory"}...
4
4
  `));let l=await $.kernel.getDomainAPIAsync("test-generation");if(!l){console.log(e.red("Test generation domain not available"));return}let i=await import("path"),g=i.resolve(f||"."),a=y(g,{includeTests:!1});if(a.length===0){console.log(e.yellow("No source files found"));return}console.log(e.gray(` Found ${a.length} source files
5
5
  `));let n=await l.generateTests({sourceFiles:a,testType:s.type,framework:s.framework,coverageTarget:80});if(n.success&&n.value){let t=n.value,c=s.format;if(c==="json")u(p(t),s.output);else if(c==="markdown"){let r=`# Test Generation Report
@@ -20,12 +20,12 @@ import{b as y}from"./chunk-EGH3H7QO.js";import{c as u,d as p,f as k,j as h}from"
20
20
  `));let n=await l.runTests({testFiles:a,parallel:!0,retryCount:2});if(n.success&&n.value){let t=n.value,c=s.format;if(c==="json")u(p(t),s.output);else if(c==="junit")u(k(t),s.output);else if(c==="markdown")u(h(t),s.output);else{let o=t.passed+t.failed+t.skipped;console.log(e.green("Test run complete")),console.log(`
21
21
  Results:`),console.log(` Total: ${e.white(o)}`),console.log(` Passed: ${e.green(t.passed)}`),console.log(` Failed: ${e.red(t.failed)}`),console.log(` Skipped: ${e.yellow(t.skipped)}`),console.log(` Duration: ${e.cyan(t.duration+"ms")}`)}t.failed>0&&await d(1);let r=t.passed+t.failed+t.skipped;r>0&&t.skipped/r>.2&&await d(2)}else console.log(e.red(`Failed: ${n.error?.message||"Unknown error"}`))}else if(m==="schedule"){let l=s.format;l==="text"&&console.log(e.blue(`
22
22
  Running test schedule pipeline...
23
- `));let{TestScheduleTool:i}=await import("./schedule-EUX7ZQUK.js"),a=await new i().invoke({cwd:f||process.cwd(),gitRef:s.gitRef,useGitAware:s.gitAware!==!1,trackFlaky:s.flaky!==!1});if(a.success&&a.data){let n=a.data;if(l==="json")u(p(n),s.output);else{console.log(e.green(` Schedule complete
23
+ `));let{TestScheduleTool:i}=await import("./schedule-KCRCQ3PS.js"),a=await new i().invoke({cwd:f||process.cwd(),gitRef:s.gitRef,useGitAware:s.gitAware!==!1,trackFlaky:s.flaky!==!1});if(a.success&&a.data){let n=a.data;if(l==="json")u(p(n),s.output);else{console.log(e.green(` Schedule complete
24
24
  `)),console.log(` Phases: ${e.white(n.phases.length)}`);for(let t of n.phases){let c=t.failed===0?e.green:e.red;console.log(` ${e.cyan(t.phaseName)}: ${c(`${t.passed}/${t.totalTests} passed`)} (${t.durationMs}ms)`)}console.log(`
25
25
  Git-aware: ${n.gitAware.enabled?e.green(`yes (${n.gitAware.selectedTests} selected)`):e.gray("disabled")}`),console.log(` Duration: ${e.cyan(n.totalDuration+"ms")}`),console.log(`
26
26
  ${n.summary}`)}}else console.log(e.red(`Failed: ${a.error||"Unknown error"}`))}else if(m==="load"){let l=s.format,i=parseInt(s.agents,10)||10,g=parseInt(s.duration,10)||3e4,a=s.profile,n=!s.real;l==="text"&&console.log(e.blue(`
27
27
  Running load test: ${i} agents, ${a} profile, ${g}ms${n?" (mock)":" (real)"}...
28
- `));let{LoadTestTool:t}=await import("./load-test-2VEN3PQZ.js"),r=await new t().invoke({targetAgents:i,profile:a,durationMs:g,mockMode:n});if(r.success&&r.data){let o=r.data;if(l==="json")u(p(o),s.output);else{let w=o.passed?e.green:e.red;console.log(w(` Load test ${o.passed?"PASSED":"FAILED"}
28
+ `));let{LoadTestTool:t}=await import("./load-test-DHG26REU.js"),r=await new t().invoke({targetAgents:i,profile:a,durationMs:g,mockMode:n});if(r.success&&r.data){let o=r.data;if(l==="json")u(p(o),s.output);else{let w=o.passed?e.green:e.red;console.log(w(` Load test ${o.passed?"PASSED":"FAILED"}
29
29
  `)),console.log(` Profile: ${e.cyan(o.profile)} (${o.mockMode?"mock":"real"})`),console.log(` Agents: ${e.white(o.targetAgents)}`),console.log(` Duration: ${e.cyan(o.duration+"ms")}`),console.log(` Bottlenecks: ${o.bottleneckCount>0?e.red(o.bottleneckCount):e.green("none")}`),o.report.hasCritical&&console.log(e.red(" CRITICAL bottlenecks detected!")),console.log(`
30
30
  ${o.summary}`)}o.passed||await d(1)}else console.log(e.red(`Failed: ${r.error||"Unknown error"}`))}else console.log(e.red(`
31
31
  Unknown action: ${m}. Use: generate, execute, schedule, or load
@@ -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.12.0");process.exit(0)}
2
- import{a as B,b as L}from"./chunk-VWJSWXHG.js";import{b as R,d as $}from"./chunk-K5SN66B4.js";import"./chunk-3AFNXU45.js";var f=[{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 b=class{constructor(e,t={phases:f,failFast:!0,retryFailedPhases:!1,maxRetries:1}){this.executor=e;this.config=t}executor;config;state="idle";currentPhaseIndex=0;results=[];startTime;endTime;abortController;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;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.results.push(t),this.currentPhaseIndex++,this.config.onPhaseComplete?.(t),!t.success&&this.config.failFast){this.state="failed";break}}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.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.executePhaseWithRetry(t)}pause(){this.state==="running"&&(this.state="paused")}resume(){this.state==="paused"&&(this.state="running")}async abort(){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++)try{if(t=await this.executor.execute(e),t.success||!this.config.retryFailedPhases)return t}catch(a){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 _(n,e){return new b(n,{phases:f,failFast:!0,retryFailedPhases:!1,maxRetries:1,...e})}function V(n,e){return n.passRate>=e.minPassRate&&n.flakyRatio<=e.maxFlakyRatio&&n.coverage>=e.minCoverage}$();import{spawn as j}from"child_process";var m=class{constructor(e={}){this.config=e}config;currentProcess=null;isAborted=!1;async execute(e,t){this.isAborted=!1;let s=Date.now();try{let r=this.buildArgs(e,t),a=await this.runVitest(r,e.timeoutMs),i=Date.now();return this.parseResult(e,a,i-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(){this.isAborted=!0,this.currentProcess&&(this.currentProcess.kill("SIGTERM"),this.currentProcess=null)}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{stdout:s,exitCode:r}=await this.runCommand(this.config.vitestPath||"npx",e,t);try{let a=s.indexOf("{"),i=s.lastIndexOf("}");if(a===-1||i===-1)throw new Error("No JSON output from Vitest");let o=s.slice(a,i+1);return R(o)}catch{return{numTotalTestSuites:0,numPassedTestSuites:0,numFailedTestSuites:0,numTotalTests:0,numPassedTests:0,numFailedTests:0,numPendingTests:0,success:r===0,startTime:Date.now(),testResults:[]}}}runCommand(e,t,s){return new Promise((r,a)=>{let i="",o="",l=process.platform==="win32"&&e==="npx"?"npx.cmd":e;this.currentProcess=j(l,t,{cwd:this.config.cwd||process.cwd(),env:{...process.env,...this.config.env},shell:!1});let c=setTimeout(()=>{this.currentProcess?.kill("SIGTERM"),a(new Error(`Test execution timed out after ${s}ms`))},s);this.currentProcess.stdout?.on("data",u=>{i+=u.toString()}),this.currentProcess.stderr?.on("data",u=>{o+=u.toString()}),this.currentProcess.on("close",u=>{clearTimeout(c),this.currentProcess=null,this.isAborted?a(new Error("Test execution aborted")):r({stdout:i,stderr:o,exitCode:u??1})}),this.currentProcess.on("error",u=>{clearTimeout(c),this.currentProcess=null,a(u)})})}async parseResult(e,t,s){let r=[];for(let p of t.testResults)for(let h of p.assertionResults){let y={file:p.name,name:h.title,suite:h.ancestorTitles.join(" > "),passed:h.status==="passed",durationMs:h.duration||0,retries:0,error:h.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.12.1");process.exit(0)}
2
+ import{a as B,b as L}from"./chunk-3I3Z4C5X.js";import{b as R,d as $}from"./chunk-O65OPAZH.js";import"./chunk-U5ITD7ZD.js";var f=[{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 b=class{constructor(e,t={phases:f,failFast:!0,retryFailedPhases:!1,maxRetries:1}){this.executor=e;this.config=t}executor;config;state="idle";currentPhaseIndex=0;results=[];startTime;endTime;abortController;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;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.results.push(t),this.currentPhaseIndex++,this.config.onPhaseComplete?.(t),!t.success&&this.config.failFast){this.state="failed";break}}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.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.executePhaseWithRetry(t)}pause(){this.state==="running"&&(this.state="paused")}resume(){this.state==="paused"&&(this.state="running")}async abort(){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++)try{if(t=await this.executor.execute(e),t.success||!this.config.retryFailedPhases)return t}catch(a){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 _(n,e){return new b(n,{phases:f,failFast:!0,retryFailedPhases:!1,maxRetries:1,...e})}function V(n,e){return n.passRate>=e.minPassRate&&n.flakyRatio<=e.maxFlakyRatio&&n.coverage>=e.minCoverage}$();import{spawn as j}from"child_process";var m=class{constructor(e={}){this.config=e}config;currentProcess=null;isAborted=!1;async execute(e,t){this.isAborted=!1;let s=Date.now();try{let r=this.buildArgs(e,t),a=await this.runVitest(r,e.timeoutMs),i=Date.now();return this.parseResult(e,a,i-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(){this.isAborted=!0,this.currentProcess&&(this.currentProcess.kill("SIGTERM"),this.currentProcess=null)}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{stdout:s,exitCode:r}=await this.runCommand(this.config.vitestPath||"npx",e,t);try{let a=s.indexOf("{"),i=s.lastIndexOf("}");if(a===-1||i===-1)throw new Error("No JSON output from Vitest");let o=s.slice(a,i+1);return R(o)}catch{return{numTotalTestSuites:0,numPassedTestSuites:0,numFailedTestSuites:0,numTotalTests:0,numPassedTests:0,numFailedTests:0,numPendingTests:0,success:r===0,startTime:Date.now(),testResults:[]}}}runCommand(e,t,s){return new Promise((r,a)=>{let i="",o="",l=process.platform==="win32"&&e==="npx"?"npx.cmd":e;this.currentProcess=j(l,t,{cwd:this.config.cwd||process.cwd(),env:{...process.env,...this.config.env},shell:!1});let c=setTimeout(()=>{this.currentProcess?.kill("SIGTERM"),a(new Error(`Test execution timed out after ${s}ms`))},s);this.currentProcess.stdout?.on("data",u=>{i+=u.toString()}),this.currentProcess.stderr?.on("data",u=>{o+=u.toString()}),this.currentProcess.on("close",u=>{clearTimeout(c),this.currentProcess=null,this.isAborted?a(new Error("Test execution aborted")):r({stdout:i,stderr:o,exitCode:u??1})}),this.currentProcess.on("error",u=>{clearTimeout(c),this.currentProcess=null,a(u)})})}async parseResult(e,t,s){let r=[];for(let p of t.testResults)for(let h of p.assertionResults){let y={file:p.name,name:h.title,suite:h.ancestorTitles.join(" > "),passed:h.status==="passed",durationMs:h.duration||0,retries:0,error:h.failureMessages.join(`
3
3
  `)||void 0};r.push(y)}let a=this.config.flakyTracker;a&&a.recordResults(r);let i=t.numTotalTests,o=t.numPassedTests,l=t.numFailedTests,c=t.numPendingTests,u=i>0?o/i:0,g=[],T=0;if(a){g=a.analyze().flakyTests.map(d=>d.testId);let h=new Set(r.map(d=>`${d.file}:${d.suite}:${d.name}`)),y=g.filter(d=>h.has(d));T=i>0?y.length/i:0}let P=await this.getCoverageFromReport(),w=u>=e.thresholds.minPassRate&&T<=e.thresholds.maxFlakyRatio&&P>=e.thresholds.minCoverage;return{phaseId:e.id,phaseName:e.name,success:w,passRate:u,flakyRatio:T,coverage:P,durationMs:s,totalTests:i,passed:o,failed:l,skipped:c,testResults:r,flakyTests:g}}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(R(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 z(n){return new m(n)}import{spawn as Q}from"child_process";import{resolve as W,dirname as J,basename as M}from"path";var Y=[{sourcePattern:/^src\/(.+)\.ts$/,toTestPaths:(n,e)=>{let t=n[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:(n,e)=>{let t=n[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:(n,e)=>[e]},{sourcePattern:/^(vitest\.config|jest\.config|tsconfig|package\.json)/,toTestPaths:()=>["**/*.test.ts","**/*.spec.ts"]}],v=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.mappingRules=e.mappingRules||Y,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:i}=await this.mapChangesToTests(t);return{changedFiles:t,selectedTests:[...new Set(s)],mappings:r,runAllTests:a,runAllReason:i}}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,...i]=r.split(" "),o=i.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"&&i[1]||o,changeType:l,previousPath:c})}return s}async getMergeBase(e="main"){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 i=e.filter(l=>l.changeType!=="deleted"||this.config.includeDeletedFileTests).map(l=>l.path);if(i.length===0)return{selectedTests:[],mappings:[],runAllTests:!1};let o=await this.impactAnalyzer.getImpactedTests(i);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(M(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=M(e,".ts").replace(/\.(tsx?|jsx?)$/,""),s=J(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=W(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="",i=Q("git",e,{cwd:this.cwd});i.stdout.on("data",o=>{r+=o.toString()}),i.stderr.on("data",o=>{a+=o.toString()}),i.on("close",o=>{o===0?t(r):s(new Error(`git ${e.join(" ")} failed: ${a}`))}),i.on("error",s)})}};function F(n){return new v(n)}async function q(n,e,t){let r=await F({impactAnalyzer:n,baseRef:e,cwd:t}).selectAffectedTests();return r.runAllTests?[]:r.selectedTests}$();var K={minRunsForFlakiness:5,flakinessThreshold:.1,maxRecentErrors:5,historyRetentionDays:30},A=class{records=new Map;config;constructor(e){this.config={...K,...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),i=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:i,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 i of e)i.lastFlaky&&(i.lastFlaky.getTime()>s?r++:a++);return r>a*1.5?"degrading":a>r*1.5?"improving":"stable"}};function S(n){return new A(n)}async function D(n,e){let t=S({...e,historyPath:n});try{let r=await(await import("fs/promises")).readFile(n,"utf-8"),a=R(r);t.importHistory(a)}catch(s){console.debug("[FlakyTracker] History load failed, starting fresh:",s instanceof Error?s.message:s)}return t}async function G(n,e){let t=await import("fs/promises"),s=n.exportHistory();await t.writeFile(e,JSON.stringify(s,null,2))}var X={enableAnnotations:!0,enableSummary:!0,enableOutputs:!0,maxAnnotations:10,includeFlakyWarnings:!0,includeCoverage:!0};function H(){let n=process.env;return n.GITHUB_ACTIONS==="true"?{isCI:!0,provider:"github-actions",branch:n.GITHUB_HEAD_REF||n.GITHUB_REF_NAME,commitSha:n.GITHUB_SHA,prNumber:n.GITHUB_EVENT_NAME==="pull_request"&&parseInt(n.GITHUB_REF?.split("/")[2]||"",10)||void 0,baseBranch:n.GITHUB_BASE_REF,buildUrl:`${n.GITHUB_SERVER_URL}/${n.GITHUB_REPOSITORY}/actions/runs/${n.GITHUB_RUN_ID}`}:n.GITLAB_CI==="true"?{isCI:!0,provider:"gitlab-ci",branch:n.CI_COMMIT_REF_NAME,commitSha:n.CI_COMMIT_SHA,prNumber:n.CI_MERGE_REQUEST_IID?parseInt(n.CI_MERGE_REQUEST_IID,10):void 0,baseBranch:n.CI_MERGE_REQUEST_TARGET_BRANCH_NAME,buildUrl:n.CI_JOB_URL}:n.JENKINS_URL?{isCI:!0,provider:"jenkins",branch:n.GIT_BRANCH||n.BRANCH_NAME,commitSha:n.GIT_COMMIT,prNumber:n.CHANGE_ID?parseInt(n.CHANGE_ID,10):void 0,baseBranch:n.CHANGE_TARGET,buildUrl:n.BUILD_URL}:n.CIRCLECI==="true"?{isCI:!0,provider:"circleci",branch:n.CIRCLE_BRANCH,commitSha:n.CIRCLE_SHA1,prNumber:n.CIRCLE_PULL_REQUEST?parseInt(n.CIRCLE_PULL_REQUEST.split("/").pop()||"",10):void 0,buildUrl:n.CIRCLE_BUILD_URL}:n.CI==="true"||n.CI==="1"?{isCI:!0,provider:"unknown"}:{isCI:!1}}var C=class{config;constructor(e){this.config={...X,...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,i])=>`${a}=${i}`).join(`
5
5
  `);await s.appendFile(process.env.GITHUB_OUTPUT,r+`
@@ -12,4 +12,4 @@ import{a as B,b as L}from"./chunk-VWJSWXHG.js";import{b as R,d as $}from"./chunk
12
12
  `);for(let i of r.slice(0,20))t.push(`#### ${i.suite} > ${i.name}`),t.push(`- **File**: \`${i.file}\``),i.error&&(t.push("```"),t.push(i.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(i=>i.flakyTests);if(a.length>0&&this.config.includeFlakyWarnings){t.push(`### \u26A0\uFE0F Flaky Tests
14
14
  `);for(let i of a.slice(0,10))t.push(`- \`${i}\``);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),i=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((i*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 x(n){return new C(n)}async function Z(n,e){await x(e).writeOutput(n)}var E=class n{constructor(e,t,s,r,a,i){this.config=e;this.selector=t,this.executor=s,this.scheduler=r,this.flakyTracker=a,this.reporter=i,this.ciEnvironment=H()}config;selector;executor;scheduler;flakyTracker;reporter;ciEnvironment;static async create(e){let t=e.flakyHistoryPath?await D(e.flakyHistoryPath,e.flakyTracker):S(e.flakyTracker),s=new m({...e.vitest,cwd:e.cwd,flakyTracker:t}),{ImpactAnalyzerService:r}=await import("./impact-analyzer-OC4MPBGA.js"),a=new r(e.memory),i=F({cwd:e.cwd,baseRef:e.baseRef,impactAnalyzer:a}),o=_(s,{...e.scheduler,phases:e.phases&&e.phases.length>0?e.phases:f}),l=x(e.reporter);return new n(e,i,s,o,t,l)}async run(){let e=Date.now(),t=[],s=this.config.runAllTests??!1,r=performance.now();if(!s){let p=await this.selector.selectAffectedTests();p.runAllTests?(s=!0,console.log(`[TestSchedulingPipeline] Running all tests: ${p.runAllReason}`)):p.selectedTests.length===0?(console.log("[TestSchedulingPipeline] No affected tests found, running all"),s=!0):(t=p.selectedTests,console.log(`[TestSchedulingPipeline] Selected ${t.length} affected tests`))}let a=performance.now()-r;if(this.config.useDAGAttention&&t.length>0)try{let{isDAGAttentionEnabled:p}=await import("./feature-flags-S2RNZATS.js");if(p()){let{createDAGAttentionScheduler:h}=await import("./dag-attention-scheduler-4TWOTTQE.js"),y=h(),d=t.map(k=>({id:k,name:k,estimatedDuration:1e3,dependencies:[],priority:1,tags:[]})),N=y.schedule(d),I=[];for(let k of N.phases)I.push(...k.tests.map(O=>O.id));I.length>0&&(t=I)}}catch(p){process.env.DEBUG&&console.debug("[Pipeline] DAG attention scheduling skipped:",p instanceof Error?p.message:p)}let i=performance.now(),o;s?o=await this.scheduler.run():o=await this.runWithSelectedTests(t);let l=performance.now()-i,c=performance.now(),u=this.flakyTracker.analyze();this.config.flakyHistoryPath&&await G(this.flakyTracker,this.config.flakyHistoryPath);let g=performance.now()-c,T=performance.now();this.ciEnvironment.isCI&&await this.reporter.writeOutput(o);let P=performance.now()-T,w=Date.now()-e;return{phaseResults:o,selectedTests:t,ranAllTests:s,flakyAnalysis:u,ciEnvironment:this.ciEnvironment,totalDurationMs:w,stepLatencies:{selectionMs:a,executionMs:l,analysisMs:g,reportingMs:P}}}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(i=>r.testPatterns.some(o=>o.startsWith("!")?!1:this.patternToRegex(o).test(i)));if(a.length>0){let i=await this.executor.execute(r,a);t.push(i)}}return t}patternToRegex(e){let t=e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*/g,".*").replace(/\*/g,"[^/]*");return new RegExp(t)}};async function U(n){return E.create(n)}async function ee(n){return(await U(n)).run()}export{B as DAGAttentionScheduler,f as DEFAULT_TEST_PHASES,A as FlakyTestTracker,v as GitAwareTestSelector,C as GitHubActionsReporter,b as PhaseScheduler,E as TestSchedulingPipeline,m as VitestPhaseExecutor,V as checkQualityThresholds,L as createDAGAttentionScheduler,S as createFlakyTracker,x as createGitHubActionsReporter,_ as createPhaseScheduler,U as createTestPipeline,F as createTestSelector,z as createVitestExecutor,H as detectCIEnvironment,q as getAffectedTests,D as loadFlakyTracker,Z as reportToGitHubActions,ee as runTestPipeline,G 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),i=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((i*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 x(n){return new C(n)}async function Z(n,e){await x(e).writeOutput(n)}var E=class n{constructor(e,t,s,r,a,i){this.config=e;this.selector=t,this.executor=s,this.scheduler=r,this.flakyTracker=a,this.reporter=i,this.ciEnvironment=H()}config;selector;executor;scheduler;flakyTracker;reporter;ciEnvironment;static async create(e){let t=e.flakyHistoryPath?await D(e.flakyHistoryPath,e.flakyTracker):S(e.flakyTracker),s=new m({...e.vitest,cwd:e.cwd,flakyTracker:t}),{ImpactAnalyzerService:r}=await import("./impact-analyzer-EUEX6ZRO.js"),a=new r(e.memory),i=F({cwd:e.cwd,baseRef:e.baseRef,impactAnalyzer:a}),o=_(s,{...e.scheduler,phases:e.phases&&e.phases.length>0?e.phases:f}),l=x(e.reporter);return new n(e,i,s,o,t,l)}async run(){let e=Date.now(),t=[],s=this.config.runAllTests??!1,r=performance.now();if(!s){let p=await this.selector.selectAffectedTests();p.runAllTests?(s=!0,console.log(`[TestSchedulingPipeline] Running all tests: ${p.runAllReason}`)):p.selectedTests.length===0?(console.log("[TestSchedulingPipeline] No affected tests found, running all"),s=!0):(t=p.selectedTests,console.log(`[TestSchedulingPipeline] Selected ${t.length} affected tests`))}let a=performance.now()-r;if(this.config.useDAGAttention&&t.length>0)try{let{isDAGAttentionEnabled:p}=await import("./feature-flags-VULQI6KY.js");if(p()){let{createDAGAttentionScheduler:h}=await import("./dag-attention-scheduler-DSBTHIMH.js"),y=h(),d=t.map(k=>({id:k,name:k,estimatedDuration:1e3,dependencies:[],priority:1,tags:[]})),N=y.schedule(d),I=[];for(let k of N.phases)I.push(...k.tests.map(O=>O.id));I.length>0&&(t=I)}}catch(p){process.env.DEBUG&&console.debug("[Pipeline] DAG attention scheduling skipped:",p instanceof Error?p.message:p)}let i=performance.now(),o;s?o=await this.scheduler.run():o=await this.runWithSelectedTests(t);let l=performance.now()-i,c=performance.now(),u=this.flakyTracker.analyze();this.config.flakyHistoryPath&&await G(this.flakyTracker,this.config.flakyHistoryPath);let g=performance.now()-c,T=performance.now();this.ciEnvironment.isCI&&await this.reporter.writeOutput(o);let P=performance.now()-T,w=Date.now()-e;return{phaseResults:o,selectedTests:t,ranAllTests:s,flakyAnalysis:u,ciEnvironment:this.ciEnvironment,totalDurationMs:w,stepLatencies:{selectionMs:a,executionMs:l,analysisMs:g,reportingMs:P}}}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(i=>r.testPatterns.some(o=>o.startsWith("!")?!1:this.patternToRegex(o).test(i)));if(a.length>0){let i=await this.executor.execute(r,a);t.push(i)}}return t}patternToRegex(e){let t=e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*/g,".*").replace(/\*/g,"[^/]*");return new RegExp(t)}};async function U(n){return E.create(n)}async function ee(n){return(await U(n)).run()}export{B as DAGAttentionScheduler,f as DEFAULT_TEST_PHASES,A as FlakyTestTracker,v as GitAwareTestSelector,C as GitHubActionsReporter,b as PhaseScheduler,E as TestSchedulingPipeline,m as VitestPhaseExecutor,V as checkQualityThresholds,L as createDAGAttentionScheduler,S as createFlakyTracker,x as createGitHubActionsReporter,_ as createPhaseScheduler,U as createTestPipeline,F as createTestSelector,z as createVitestExecutor,H as detectCIEnvironment,q as getAffectedTests,D as loadFlakyTracker,Z as reportToGitHubActions,ee as runTestPipeline,G as saveFlakyTracker};
@@ -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.12.0");process.exit(0)}
2
- import{b as k}from"./chunk-KZ37VHMJ.js";import{b as l,c as f}from"./chunk-JYXSVSH2.js";import"./chunk-4SALW7OT.js";import{b as r}from"./chunk-NLHISTL2.js";import"./chunk-5VBPIJUZ.js";import"./chunk-VMP4M5PB.js";import"./chunk-WT4ZDDFM.js";import"./chunk-FI5SSLEF.js";import"./chunk-C4SZSPXY.js";import"./chunk-SSXAW3ER.js";import"./chunk-MDT3LIXS.js";import"./chunk-TJEJ4UVX.js";import"./chunk-L5ZLOW3K.js";import"./chunk-K5SN66B4.js";import"./chunk-PT3FTGKZ.js";import"./chunk-GGMQOEZZ.js";import"./chunk-W2OMW6UU.js";import"./chunk-7ZIVDGSN.js";import"./chunk-RHC7TFPU.js";import"./chunk-6JNNZGI2.js";import"./chunk-TJ6N4CCX.js";import"./chunk-UVVKFBF7.js";import"./chunk-YKOTOCO6.js";import"./chunk-FZIHOMGY.js";import"./chunk-KJWQ7ENF.js";import"./chunk-V2MD5EDD.js";import"./chunk-64M3FFM4.js";import"./chunk-AEX75YGI.js";import"./chunk-27JCWG5J.js";import"./chunk-2KHDGC7N.js";import"./chunk-3AFNXU45.js";import*as s from"path";import*as a from"fs";var u={enableOptimization:!0,enablePersistence:!0,storagePath:process.env.AQE_STORAGE_PATH??".agentic-qe",autoSaveIntervalMs:6e4,verbose:process.env.AQE_VERBOSE==="true"},i=!1,n=null,p=!1;async function b(t){if(i)return;let e={...u,...t};if(e.verbose&&console.log("[TokenBootstrap] Initializing token tracking..."),e.enablePersistence){let o=s.resolve(e.storagePath);a.existsSync(o)||a.mkdirSync(o,{recursive:!0})}if(e.enableOptimization)try{n=(await k(!0)).backend,await f(n,{enabled:!0,verbose:e.verbose}),e.verbose&&(console.log("[TokenBootstrap] TokenOptimizerService initialized"),console.log(`[TokenBootstrap] isEnabled() = ${l.isEnabled()}`))}catch(o){console.error("[TokenBootstrap] Failed to initialize TokenOptimizerService:",o)}if(e.enablePersistence){let o=s.join(e.storagePath,"token-metrics.json");r.configurePersistence({filePath:o,autoSaveIntervalMs:e.autoSaveIntervalMs});try{let c=await r.load();e.verbose&&console.log(`[TokenBootstrap] Loaded existing metrics: ${c}`)}catch{e.verbose&&console.log("[TokenBootstrap] No existing metrics to load")}r.startAutoSave(),e.verbose&&console.log(`[TokenBootstrap] Persistence configured: ${o}`)}p||(d(e.verbose),p=!0),i=!0,e.verbose&&console.log("[TokenBootstrap] Token tracking initialized successfully")}async function g(t=!1){if(i){if(t&&console.log("[TokenBootstrap] Shutting down token tracking..."),r.stopAutoSave(),r.hasUnsavedChanges())try{await r.save(),t&&console.log("[TokenBootstrap] Metrics saved successfully")}catch(e){console.error("[TokenBootstrap] Failed to save metrics:",e)}if(n){try{await n.dispose()}catch(e){console.debug("[TokenBootstrap] Memory backend disposal error:",e instanceof Error?e.message:e)}n=null}i=!1}}function B(){return i}function h(){return n}function d(t){let e=async o=>{t&&console.log(`[TokenBootstrap] Received ${o}, saving metrics...`),await g(t)};process.on("beforeExit",()=>e("beforeExit"))}export{b as bootstrapTokenTracking,h as getTokenMemoryBackend,B as isTokenTrackingInitialized,g as shutdownTokenTracking};
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.12.1");process.exit(0)}
2
+ import{b as k}from"./chunk-NVXSM7UO.js";import{b as l,c as f}from"./chunk-N3PSRG6F.js";import"./chunk-LRWBOJ5Y.js";import{b as r}from"./chunk-PDS5P5QD.js";import"./chunk-BPM7NEHS.js";import"./chunk-3W2FZXFD.js";import"./chunk-JDZIBSMY.js";import"./chunk-CJTXZI37.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-NHRBKOYD.js";import"./chunk-QXZOUETY.js";import"./chunk-BLU7OLQZ.js";import"./chunk-4LKQZW2H.js";import"./chunk-UBPJQKYS.js";import"./chunk-75AVUS5U.js";import"./chunk-4U5MJX2H.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.js";import*as s from"path";import*as a from"fs";var u={enableOptimization:!0,enablePersistence:!0,storagePath:process.env.AQE_STORAGE_PATH??".agentic-qe",autoSaveIntervalMs:6e4,verbose:process.env.AQE_VERBOSE==="true"},i=!1,n=null,p=!1;async function b(t){if(i)return;let e={...u,...t};if(e.verbose&&console.log("[TokenBootstrap] Initializing token tracking..."),e.enablePersistence){let o=s.resolve(e.storagePath);a.existsSync(o)||a.mkdirSync(o,{recursive:!0})}if(e.enableOptimization)try{n=(await k(!0)).backend,await f(n,{enabled:!0,verbose:e.verbose}),e.verbose&&(console.log("[TokenBootstrap] TokenOptimizerService initialized"),console.log(`[TokenBootstrap] isEnabled() = ${l.isEnabled()}`))}catch(o){console.error("[TokenBootstrap] Failed to initialize TokenOptimizerService:",o)}if(e.enablePersistence){let o=s.join(e.storagePath,"token-metrics.json");r.configurePersistence({filePath:o,autoSaveIntervalMs:e.autoSaveIntervalMs});try{let c=await r.load();e.verbose&&console.log(`[TokenBootstrap] Loaded existing metrics: ${c}`)}catch{e.verbose&&console.log("[TokenBootstrap] No existing metrics to load")}r.startAutoSave(),e.verbose&&console.log(`[TokenBootstrap] Persistence configured: ${o}`)}p||(d(e.verbose),p=!0),i=!0,e.verbose&&console.log("[TokenBootstrap] Token tracking initialized successfully")}async function g(t=!1){if(i){if(t&&console.log("[TokenBootstrap] Shutting down token tracking..."),r.stopAutoSave(),r.hasUnsavedChanges())try{await r.save(),t&&console.log("[TokenBootstrap] Metrics saved successfully")}catch(e){console.error("[TokenBootstrap] Failed to save metrics:",e)}if(n){try{await n.dispose()}catch(e){console.debug("[TokenBootstrap] Memory backend disposal error:",e instanceof Error?e.message:e)}n=null}i=!1}}function B(){return i}function h(){return n}function d(t){let e=async o=>{t&&console.log(`[TokenBootstrap] Received ${o}, saving metrics...`),await g(t)};process.on("beforeExit",()=>e("beforeExit"))}export{b as bootstrapTokenTracking,h as getTokenMemoryBackend,B as isTokenTrackingInitialized,g 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.12.0");process.exit(0)}
2
- import{a as S,b as f}from"./chunk-JYXSVSH2.js";import{a as k,b as u}from"./chunk-NLHISTL2.js";import"./chunk-5VBPIJUZ.js";import"./chunk-VMP4M5PB.js";import"./chunk-WT4ZDDFM.js";import"./chunk-FI5SSLEF.js";import"./chunk-C4SZSPXY.js";import"./chunk-SSXAW3ER.js";import"./chunk-MDT3LIXS.js";import"./chunk-TJEJ4UVX.js";import"./chunk-L5ZLOW3K.js";import"./chunk-K5SN66B4.js";import"./chunk-PT3FTGKZ.js";import"./chunk-GGMQOEZZ.js";import"./chunk-W2OMW6UU.js";import"./chunk-7ZIVDGSN.js";import{a as y,c as h}from"./chunk-RHC7TFPU.js";import"./chunk-6JNNZGI2.js";import"./chunk-UVVKFBF7.js";import"./chunk-YKOTOCO6.js";import"./chunk-FZIHOMGY.js";import"./chunk-KJWQ7ENF.js";import"./chunk-V2MD5EDD.js";import"./chunk-64M3FFM4.js";import"./chunk-AEX75YGI.js";import"./chunk-27JCWG5J.js";import"./chunk-2KHDGC7N.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{a as S,b as f}from"./chunk-N3PSRG6F.js";import{a as k,b as u}from"./chunk-PDS5P5QD.js";import"./chunk-BPM7NEHS.js";import"./chunk-3W2FZXFD.js";import"./chunk-JDZIBSMY.js";import"./chunk-CJTXZI37.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-NHRBKOYD.js";import"./chunk-QXZOUETY.js";import"./chunk-BLU7OLQZ.js";import"./chunk-4LKQZW2H.js";import{a as y,c as h}from"./chunk-UBPJQKYS.js";import"./chunk-75AVUS5U.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o}from"./chunk-W766S4SK.js";import"./chunk-3AFNXU45.js";export{i as DotProductAttention,h as FlashAttention,k as HyperbolicAttention,l as LinearAttention,m as MoEAttention,j as MultiHeadAttention,b as RuvectorLayer,n as SonaEngine,c as TensorCompress,a as default,d as differentiableSearch,f as getCompressionLevel,e as hierarchicalForward,g as init,o 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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o}from"./chunk-ZNITDSWL.js";import"./chunk-U5ITD7ZD.js";export{i as DotProductAttention,h as FlashAttention,k as HyperbolicAttention,l as LinearAttention,m as MoEAttention,j as MultiHeadAttention,b as RuvectorLayer,n as SonaEngine,c as TensorCompress,a as default,d as differentiableSearch,f as getCompressionLevel,e as hierarchicalForward,g as init,o 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.12.0");process.exit(0)}
2
- import{a,b,c,d,e}from"./chunk-NNGCUJWQ.js";import"./chunk-TJEJ4UVX.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e}from"./chunk-HGKSU4QV.js";import"./chunk-NOCPO55P.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{a,b,c,d,e,f,g}from"./chunk-MJPYNGZ7.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e,f,g}from"./chunk-6RX5QZMU.js";import"./chunk-U5ITD7ZD.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.12.1");process.exit(0)}
2
+ import{a,b,e as h,f as i,g as j,h as k,i as l,j as m,k as n,m as o}from"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import{a as f,b as g}from"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-BLU7OLQZ.js";import"./chunk-UBPJQKYS.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import{a as c,d,e}from"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e,f}from"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e}from"./chunk-GW3M7GQH.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-BLU7OLQZ.js";import"./chunk-UBPJQKYS.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{S as m,b as c}from"./chunk-2KHDGC7N.js";import"./chunk-3AFNXU45.js";m();import{Command as f}from"commander";import n from"chalk";import{createRequire as u}from"node:module";import{platform as p,arch as v}from"node:os";var y=[{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-node",role:"Sublinear PageRank on the pattern citation graph",fallback:"TypeScript power iteration \u2014 O(n\xB7m) (practical cap \u2248 50K nodes)",affectsFlags:["useSublinearSolver"],required:!1},{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 b(){let r=u(import.meta.url);return o=>{try{return r(o),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a:new Error(String(a))}}}}function N(r,o){return r.map(a=>{let s=o(a.packageName);if(s.ok)return{...a,status:"loaded"};let t=E(s.error),e=a.required?"required-missing":"missing";return{...a,status:e,loadError:s.error.message}})}function E(r){return r.code==="MODULE_NOT_FOUND"}var R={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 S(r){let o=[];for(let[a,s]of Object.entries(R)){let t=r[a];t!==void 0&&o.push({envVar:a,value:t,flagName:s})}return o}function k(r){let o=[],a=new Map(r.natives.map(e=>[e.packageName,e]));for(let e of r.natives)e.status==="required-missing"&&o.push({severity:"error",message:`Required dependency missing: ${e.packageName} \u2014 ${e.role}`,action:`npm install ${e.packageName}`});for(let e of r.natives)e.status==="missing"&&!e.required&&o.push({severity:"warn",message:`Optional native missing: ${e.packageName} \u2014 falls back to ${e.fallback}`,action:`npm install ${e.packageName}`});let s={...r.flags};for(let e of r.envOverrides){let i=r.natives.filter(d=>d.affectsFlags.includes(e.flagName)),l=i.some(d=>d.status==="loaded");if((e.value==="true"||e.value==="1")&&i.length>0&&!l){let d=i.map(g=>g.packageName).join(", ");o.push({severity:"warn",message:`${e.envVar}=${e.value} requests flag ${e.flagName}=true, but required native(s) not loaded: ${d}. The flag will silently fall back.`,action:i[0]?`npm install ${i[0].packageName}`:void 0})}}return r.natives.filter(e=>!e.required&&e.status==="missing").length===0&&r.natives.every(e=>e.status!=="required-missing")&&o.push({severity:"info",message:"All recommended native bindings are loaded \u2014 no action required."}),o}function q(r){let o=N(y,r.probe),a=S(r.env),s=k({natives:o,flags:r.flags,envOverrides:a}),t=o.filter(l=>!l.required&&l.status==="loaded").length,e=o.filter(l=>!l.required&&l.status==="missing").length,i=o.filter(l=>l.required).every(l=>l.status==="loaded");return{aqeVersion:r.aqeVersion,platform:{os:p(),arch:v(),node:process.version},natives:o,flags:r.flags,envOverrides:a,recommendations:s,summary:{requiredOk:i,optionalMissingCount:e,optionalLoadedCount:t}}}function h(r,o){return r.summary.requiredOk?o&&r.summary.optionalMissingCount>0?1:0:2}function O(r){let o=[],a=(e="")=>o.push(e);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(r.aqeVersion)}`),a(` Platform: ${n.cyan(`${r.platform.os} ${r.platform.arch}`)}`),a(` Node: ${n.cyan(r.platform.node)}`),a(""),a(n.blue(" Native bindings:"));for(let e of r.natives){let i=$(e.status);a(` ${i} ${n.bold(e.packageName.padEnd(28))} ${n.gray(e.role)}`),e.status!=="loaded"&&e.loadError&&a(` ${n.gray(e.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.12.1");process.exit(0)}
2
+ import{S as m,b as c}from"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.js";m();import{Command as f}from"commander";import n from"chalk";import{createRequire as u}from"node:module";import{platform as p,arch as v}from"node:os";var y=[{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-node",role:"Sublinear PageRank on the pattern citation graph",fallback:"TypeScript power iteration \u2014 O(n\xB7m) (practical cap \u2248 50K nodes)",affectsFlags:["useSublinearSolver"],required:!1},{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 b(){let r=u(import.meta.url);return o=>{try{return r(o),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a:new Error(String(a))}}}}function N(r,o){return r.map(a=>{let s=o(a.packageName);if(s.ok)return{...a,status:"loaded"};let t=E(s.error),e=a.required?"required-missing":"missing";return{...a,status:e,loadError:s.error.message}})}function E(r){return r.code==="MODULE_NOT_FOUND"}var R={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 S(r){let o=[];for(let[a,s]of Object.entries(R)){let t=r[a];t!==void 0&&o.push({envVar:a,value:t,flagName:s})}return o}function k(r){let o=[],a=new Map(r.natives.map(e=>[e.packageName,e]));for(let e of r.natives)e.status==="required-missing"&&o.push({severity:"error",message:`Required dependency missing: ${e.packageName} \u2014 ${e.role}`,action:`npm install ${e.packageName}`});for(let e of r.natives)e.status==="missing"&&!e.required&&o.push({severity:"warn",message:`Optional native missing: ${e.packageName} \u2014 falls back to ${e.fallback}`,action:`npm install ${e.packageName}`});let s={...r.flags};for(let e of r.envOverrides){let i=r.natives.filter(d=>d.affectsFlags.includes(e.flagName)),l=i.some(d=>d.status==="loaded");if((e.value==="true"||e.value==="1")&&i.length>0&&!l){let d=i.map(g=>g.packageName).join(", ");o.push({severity:"warn",message:`${e.envVar}=${e.value} requests flag ${e.flagName}=true, but required native(s) not loaded: ${d}. The flag will silently fall back.`,action:i[0]?`npm install ${i[0].packageName}`:void 0})}}return r.natives.filter(e=>!e.required&&e.status==="missing").length===0&&r.natives.every(e=>e.status!=="required-missing")&&o.push({severity:"info",message:"All recommended native bindings are loaded \u2014 no action required."}),o}function q(r){let o=N(y,r.probe),a=S(r.env),s=k({natives:o,flags:r.flags,envOverrides:a}),t=o.filter(l=>!l.required&&l.status==="loaded").length,e=o.filter(l=>!l.required&&l.status==="missing").length,i=o.filter(l=>l.required).every(l=>l.status==="loaded");return{aqeVersion:r.aqeVersion,platform:{os:p(),arch:v(),node:process.version},natives:o,flags:r.flags,envOverrides:a,recommendations:s,summary:{requiredOk:i,optionalMissingCount:e,optionalLoadedCount:t}}}function h(r,o){return r.summary.requiredOk?o&&r.summary.optionalMissingCount>0?1:0:2}function O(r){let o=[],a=(e="")=>o.push(e);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(r.aqeVersion)}`),a(` Platform: ${n.cyan(`${r.platform.os} ${r.platform.arch}`)}`),a(` Node: ${n.cyan(r.platform.node)}`),a(""),a(n.blue(" Native bindings:"));for(let e of r.natives){let i=$(e.status);a(` ${i} ${n.bold(e.packageName.padEnd(28))} ${n.gray(e.role)}`),e.status!=="loaded"&&e.loadError&&a(` ${n.gray(e.loadError.split(`
3
3
  `)[0])}`)}a(""),a(n.blue(" Flag state (after env overrides):"));let s=Object.entries(r.flags);for(let[e,i]of s){let l=i?n.green("on "):n.yellow("off");a(` ${l} ${e}`)}if(r.envOverrides.length>0){a(""),a(n.blue(" Env overrides in effect:"));for(let e of r.envOverrides)a(` ${n.cyan(e.envVar)}=${n.cyan(e.value)} ${n.gray(`\u2192 ${e.flagName}`)}`)}if(a(""),a(n.blue(" Recommendations:")),r.recommendations.length===0)a(n.gray(" (none)"));else for(let e of r.recommendations){let i=F(e.severity);a(` ${i} ${e.message}`),e.action&&a(` ${n.gray("\u2192")} ${n.cyan(e.action)}`)}a("");let t=r.summary.requiredOk?n.green("OK"):n.red("FAIL");return a(` Summary: required ${t} optional loaded ${n.cyan(r.summary.optionalLoadedCount)} / ${n.cyan(r.summary.optionalLoadedCount+r.summary.optionalMissingCount)}`),a(""),o.join(`
4
4
  `)}function $(r){switch(r){case"loaded":return n.green("\u2713");case"missing":return n.yellow("\u2026");case"required-missing":return n.red("\u2717")}}function F(r){switch(r){case"info":return n.green("\u2713");case"warn":return n.yellow("!");case"error":return n.red("\u2717")}}function U(r){return new f("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 s=A(),t=c(),e=q({aqeVersion:s,probe:b(),env:process.env,flags:{useRVFPatternStore:t.useRVFPatternStore,useSublinearSolver:t.useSublinearSolver,useNativeHNSW:t.useNativeHNSW,useGraphMAEEmbeddings:t.useGraphMAEEmbeddings,useQEFlashAttention:t.useQEFlashAttention}});a.json?process.stdout.write(JSON.stringify(e,null,2)+`
5
5
  `):process.stdout.write(O(e)),await r(h(e,a.strict===!0))})}function A(){try{return u(import.meta.url)("../../../package.json").version??"unknown"}catch{return"unknown"}}export{y as NATIVE_CATALOG,k as buildRecommendations,q as buildReport,b as createDefaultLoadProbe,U as createUpgradeCommand,N as detectNatives,h as exitCodeFor,S as readEnvOverrides,O 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.12.0");process.exit(0)}
2
- import{e as V}from"./chunk-C6GYLCTX.js";import"./chunk-3B4XXFKD.js";import{a as P}from"./chunk-BGRJZH5Q.js";import"./chunk-BZPF6GTL.js";import"./chunk-MDT3LIXS.js";import"./chunk-TJEJ4UVX.js";import{b as v,d as F}from"./chunk-K5SN66B4.js";import"./chunk-RHC7TFPU.js";import"./chunk-KJWQ7ENF.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{e as V}from"./chunk-5HMGDB7B.js";import"./chunk-CDVKFAYP.js";import{a as P}from"./chunk-LZ6TJ7XL.js";import"./chunk-SHKOPOPD.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import{b as v,d as F}from"./chunk-O65OPAZH.js";import"./chunk-UBPJQKYS.js";import"./chunk-6BCVKCG5.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{a as i,b as k,c as d,d as p}from"./chunk-C6GYLCTX.js";import"./chunk-3B4XXFKD.js";import{a as v}from"./chunk-TO5PQSDD.js";import{a as h}from"./chunk-BGRJZH5Q.js";import"./chunk-7F7U2HUH.js";import"./chunk-BZPF6GTL.js";import"./chunk-2ALNNXFF.js";import"./chunk-ZWC6CM4R.js";import"./chunk-KN5GOEYK.js";import"./chunk-5YGESYBC.js";import"./chunk-VMP4M5PB.js";import"./chunk-Z3W3R4CW.js";import"./chunk-VZ67ZDB3.js";import"./chunk-C4SZSPXY.js";import"./chunk-SSXAW3ER.js";import"./chunk-MDT3LIXS.js";import"./chunk-TJEJ4UVX.js";import"./chunk-L5ZLOW3K.js";import"./chunk-K5SN66B4.js";import"./chunk-BB4OVXWF.js";import"./chunk-W2OMW6UU.js";import"./chunk-7ZIVDGSN.js";import"./chunk-RHC7TFPU.js";import"./chunk-6JNNZGI2.js";import"./chunk-UVVKFBF7.js";import"./chunk-YKOTOCO6.js";import"./chunk-FZIHOMGY.js";import"./chunk-KJWQ7ENF.js";import"./chunk-V2MD5EDD.js";import"./chunk-64M3FFM4.js";import"./chunk-AEX75YGI.js";import"./chunk-27JCWG5J.js";import"./chunk-2KHDGC7N.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{a as i,b as k,c as d,d as p}from"./chunk-5HMGDB7B.js";import"./chunk-CDVKFAYP.js";import{a as v}from"./chunk-QZBPXJ5C.js";import{a as h}from"./chunk-LZ6TJ7XL.js";import"./chunk-4KI72C2E.js";import"./chunk-SHKOPOPD.js";import"./chunk-HHMTQQUE.js";import"./chunk-CP4GSICY.js";import"./chunk-BKKJEKNT.js";import"./chunk-YGB3MT3R.js";import"./chunk-3W2FZXFD.js";import"./chunk-XS6BIOPQ.js";import"./chunk-EOBZJDJR.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-M5P5WNXA.js";import"./chunk-BLU7OLQZ.js";import"./chunk-4LKQZW2H.js";import"./chunk-UBPJQKYS.js";import"./chunk-75AVUS5U.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{c as t}from"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{c as t}from"./chunk-U5ITD7ZD.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.12.1");process.exit(0)}
2
+ import{a}from"./chunk-FFSS3Y6W.js";import"./chunk-BALFQQB7.js";import"./chunk-LRWBOJ5Y.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-BLU7OLQZ.js";import"./chunk-UBPJQKYS.js";import"./chunk-75AVUS5U.js";import"./chunk-4U5MJX2H.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{b as u}from"./chunk-HW62TB4T.js";import{a as f,c as d}from"./chunk-RHC7TFPU.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{b as u}from"./chunk-BXIJY6SB.js";import{a as f,c as d}from"./chunk-UBPJQKYS.js";import"./chunk-U5ITD7ZD.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
  ---
@@ -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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e,f,g,h,i}from"./chunk-CYYT6YEV.js";import"./chunk-OXVAGR64.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-BLU7OLQZ.js";import"./chunk-UBPJQKYS.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import{a,b,c,d,e,f,g}from"./chunk-KN5GOEYK.js";import"./chunk-MDT3LIXS.js";import"./chunk-TJEJ4UVX.js";import"./chunk-2KHDGC7N.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{a,b,c,d,e,f,g}from"./chunk-BKKJEKNT.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.js";export{c as PersistentWitnessChain,a as SPRTAccumulator,b as WitnessChain,f as createPersistentWitnessChain,e as createWitnessChain,d as createWitnessChainSQLitePersistence,g as isWitnessChainFeatureEnabled};
@@ -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.12.0");process.exit(0)}
2
- import{a,b,c}from"./chunk-XEYW3V5I.js";import"./chunk-L5ZLOW3K.js";import"./chunk-3AFNXU45.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.12.1");process.exit(0)}
2
+ import{a,b,c}from"./chunk-OXVAGR64.js";import"./chunk-IE6FDICX.js";import"./chunk-U5ITD7ZD.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.12.0");process.exit(0)}
2
- import"./chunk-EZE2HRQB.js";import{b as $}from"./chunk-MBF3Q7FQ.js";import{d as R}from"./chunk-SPEUF7ZL.js";import{b as k,c as C,d as b}from"./chunk-JYX7AZHE.js";import{c as W}from"./chunk-K5SN66B4.js";import"./chunk-7ZIVDGSN.js";import"./chunk-RHC7TFPU.js";import"./chunk-3AFNXU45.js";import{Command as O}from"commander";import o from"chalk";function P(d,a){let m=d.indexOf("=");return m>0&&(a[d.substring(0,m)]=d.substring(m+1)),a}function x(d,a,m){let y=new O("workflow").description("Manage QE workflows and pipelines (ADR-041)");return y.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(t,l)=>{if(!await m())return;let e=await import("fs"),c=(await import("path")).resolve(t);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.12.1");process.exit(0)}
2
+ import"./chunk-X2K3BTI4.js";import{b as $}from"./chunk-45QNHMTP.js";import{d as R}from"./chunk-NEXJUTHF.js";import{b as k,c as C,d as b}from"./chunk-NK2Z6FGF.js";import{c as W}from"./chunk-O65OPAZH.js";import"./chunk-4LKQZW2H.js";import"./chunk-UBPJQKYS.js";import"./chunk-U5ITD7ZD.js";import{Command as O}from"commander";import o from"chalk";function P(d,a){let m=d.indexOf("=");return m>0&&(a[d.substring(0,m)]=d.substring(m+1)),a}function x(d,a,m){let y=new O("workflow").description("Manage QE workflows and pipelines (ADR-041)");return y.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(t,l)=>{if(!await m())return;let e=await import("fs"),c=(await import("path")).resolve(t);try{console.log(o.blue(`
3
3
  Running workflow from: ${t}
4
4
  `));let s=k(c);if(!s.success||!s.workflow){console.log(o.red("Failed to parse pipeline:"));for(let w of s.errors)console.log(o.red(` ${w}`));await a(1)}let r={...W(l.params,"params")};if(s.pipeline){for(let w of s.pipeline.stages)if(w.params)for(let[S,h]of Object.entries(w.params))r[S]=h}if(!d.workflowOrchestrator.getWorkflow(s.workflow.id)){let w=d.workflowOrchestrator.registerWorkflow(s.workflow);w.success||(console.log(o.red(`Failed to register workflow: ${w.error.message}`)),await a(1))}let n=await d.workflowOrchestrator.executeWorkflow(s.workflow.id,r);if(!n.success){console.log(o.red(`Failed to start workflow: ${n.error.message}`)),await a(1);return}let p=n.value;if(console.log(o.cyan(` Execution ID: ${p}`)),console.log(o.gray(` Workflow: ${s.workflow.name}`)),console.log(o.gray(` Stages: ${s.workflow.steps.length}`)),console.log(""),l.watch){console.log(o.blue(`Workflow Progress:
5
5
  `));let w,S=Date.now();for(;;){let g=d.workflowOrchestrator.getWorkflowStatus(p);if(!g)break;if(!w||w.progress!==g.progress||w.status!==g.status||JSON.stringify(w.currentSteps)!==JSON.stringify(g.currentSteps)){process.stdout.write("\r\x1B[K");let v="\u2588".repeat(Math.floor(g.progress/5))+"\u2591".repeat(20-Math.floor(g.progress/5)),D=g.status==="completed"?o.green:g.status==="failed"?o.red:g.status==="running"?o.yellow:o.gray;console.log(` [${v}] ${g.progress}% - ${D(g.status)}`),g.currentSteps.length>0&&l.verbose&&console.log(o.gray(` Running: ${g.currentSteps.join(", ")}`)),w=g}if(g.status==="completed"||g.status==="failed"||g.status==="cancelled")break;await new Promise(v=>setTimeout(v,500))}let h=d.workflowOrchestrator.getWorkflowStatus(p);if(h){console.log("");let g=h.duration||Date.now()-S;h.status==="completed"?(console.log(o.green("Workflow completed successfully")),console.log(o.gray(` Duration: ${$(g)}`)),console.log(o.gray(` Completed: ${h.completedSteps.length} stages`)),h.skippedSteps.length>0&&console.log(o.yellow(` Skipped: ${h.skippedSteps.length} stages`))):h.status==="failed"?(console.log(o.red("Workflow failed")),console.log(o.red(` Error: ${h.error}`)),console.log(o.gray(` Failed stages: ${h.failedSteps.join(", ")}`))):console.log(o.yellow(`Workflow ${h.status}`))}}else console.log(o.green("Workflow execution started")),console.log(o.gray(` Use 'aqe workflow status ${p}' to check progress`));console.log(""),await a(0)}catch(s){console.error(o.red(`
@@ -35,10 +35,10 @@ Workflow cancelled: ${t}
35
35
  `)):console.log(o.red(`
36
36
  Failed to cancel workflow: ${l.error.message}
37
37
  `)),await a(l.success?0:1)}catch(l){console.error(o.red(`
38
- Failed to cancel workflow:`),l),await a(1)}}),y.command("browser-list").description("List available browser workflow templates").action(async()=>{try{let{BrowserWorkflowTool:t}=await import("./browser-workflow-UGYJE64S.js"),e=await new t().invoke({});if(e.success&&e.data){console.log(o.blue(`
38
+ Failed to cancel workflow:`),l),await a(1)}}),y.command("browser-list").description("List available browser workflow templates").action(async()=>{try{let{BrowserWorkflowTool:t}=await import("./browser-workflow-A77OFBVY.js"),e=await new t().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 a(0)}catch(t){console.error(o.red(`
41
- Failed:`),t),await a(1)}}),y.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)",P,{}).option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(t,l)=>{try{let{BrowserWorkflowTool:e}=await import("./browser-workflow-UGYJE64S.js"),{writeOutput:u,toJSON:c}=await import("./ci-output-62SGMGB2.js"),s=new e,f={variables:l.var||{}};if(l.yaml)f.workflowYaml=l.yaml;else if(t)if(t.endsWith(".yaml")||t.endsWith(".yml")){let i=await import("fs"),p=(await import("path")).resolve(t);i.existsSync(p)||(console.log(o.red(`
41
+ Failed:`),t),await a(1)}}),y.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)",P,{}).option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(t,l)=>{try{let{BrowserWorkflowTool:e}=await import("./browser-workflow-A77OFBVY.js"),{writeOutput:u,toJSON:c}=await import("./ci-output-CLI4A43F.js"),s=new e,f={variables:l.var||{}};if(l.yaml)f.workflowYaml=l.yaml;else if(t)if(t.endsWith(".yaml")||t.endsWith(".yml")){let i=await import("fs"),p=(await import("path")).resolve(t);i.existsSync(p)||(console.log(o.red(`
42
42
  File not found: ${p}
43
43
  `)),await a(1)),f.workflowYaml=i.readFileSync(p,"utf-8")}else f.templateName=t;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.12.1");process.exit(0)}
2
+ import{a,b,c,d}from"./chunk-BCBITOMT.js";import"./chunk-REJGZP27.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-BLU7OLQZ.js";import"./chunk-4LKQZW2H.js";import"./chunk-UBPJQKYS.js";import"./chunk-75AVUS5U.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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.12.0");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-ZT2WHCVM.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-ZVPAFX4I.js";import"./chunk-C4SZSPXY.js";import"./chunk-SSXAW3ER.js";import"./chunk-MDT3LIXS.js";import"./chunk-TJEJ4UVX.js";import"./chunk-L5ZLOW3K.js";import"./chunk-K5SN66B4.js";import"./chunk-W2OMW6UU.js";import"./chunk-RHC7TFPU.js";import"./chunk-UVVKFBF7.js";import"./chunk-YKOTOCO6.js";import"./chunk-FZIHOMGY.js";import"./chunk-KJWQ7ENF.js";import"./chunk-V2MD5EDD.js";import"./chunk-64M3FFM4.js";import"./chunk-AEX75YGI.js";import"./chunk-27JCWG5J.js";import"./chunk-2KHDGC7N.js";import"./chunk-3AFNXU45.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.12.1");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-WPG5LXR7.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-6ONUCDVL.js";import"./chunk-XDRAU3W6.js";import"./chunk-PQ4NSXZM.js";import"./chunk-FNMEVLSN.js";import"./chunk-NOCPO55P.js";import"./chunk-IE6FDICX.js";import"./chunk-O65OPAZH.js";import"./chunk-BLU7OLQZ.js";import"./chunk-UBPJQKYS.js";import"./chunk-TMPRR3FZ.js";import"./chunk-R4A6PY5D.js";import"./chunk-JRNDFC23.js";import"./chunk-6BCVKCG5.js";import"./chunk-UR655D4K.js";import"./chunk-PZ3Q34OT.js";import"./chunk-CXUHD2O5.js";import"./chunk-IC6SOVGO.js";import"./chunk-USTUWUCE.js";import"./chunk-U5ITD7ZD.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};
@@ -12,7 +12,7 @@
12
12
  import { existsSync, mkdirSync, writeFileSync, readFileSync, copyFileSync } from 'fs';
13
13
  import { join, dirname } from 'path';
14
14
  import { safeJsonParse } from '../shared/safe-json.js';
15
- import { mergeHooksSmart, generateAqeEnvVars, generateV3SettingsSections, } from './settings-merge.js';
15
+ import { mergeHooksSmart, generateAqeEnvVars, generateV3SettingsSections, applyV3Sections, mergeAqeEnv, backupSettingsFile, } from './settings-merge.js';
16
16
  // ============================================================================
17
17
  // Hook Configuration
18
18
  // ============================================================================
@@ -183,31 +183,15 @@ export async function configureHooks(projectRoot, config) {
183
183
  // Smart merge: replace old AQE hooks, keep user hooks, add new AQE hooks
184
184
  const existingHooks = settings.hooks || {};
185
185
  settings.hooks = mergeHooksSmart(existingHooks, aqeHooks);
186
- // Set full AQE environment variables
187
- const existingEnv = settings.env || {};
188
- settings.env = {
189
- ...existingEnv,
190
- ...generateAqeEnvVars(config),
191
- };
192
- // Apply v3 settings sections
193
- // Permissions are union-merged to preserve user entries (#362)
186
+ // Add AQE environment variables without clobbering any value the user already
187
+ // set including AQE_-prefixed overrides (only missing keys are added).
188
+ const existingEnv = settings.env;
189
+ settings.env = mergeAqeEnv(existingEnv, generateAqeEnvVars(config));
190
+ // Apply v3 settings sections non-destructively: permissions union-merged,
191
+ // statusLine / includeCoAuthoredBy preserved when user-set, AQE-owned
192
+ // sections deep-merged so user additions survive (#362 follow-up).
194
193
  const v3Sections = generateV3SettingsSections(config, projectRoot);
195
- for (const [key, value] of Object.entries(v3Sections)) {
196
- if (key === '_aqePermissions') {
197
- // Union-merge: add AQE entries without removing user-added permissions
198
- const existingPerms = settings.permissions || {};
199
- const existingAllow = existingPerms.allow || [];
200
- const aqeEntries = value;
201
- const merged = [...new Set([...existingAllow, ...aqeEntries])];
202
- settings.permissions = {
203
- ...existingPerms,
204
- allow: merged,
205
- };
206
- }
207
- else {
208
- settings[key] = value;
209
- }
210
- }
194
+ applyV3Sections(settings, v3Sections);
211
195
  // Enable MCP servers (deduplicate, replace old 'aqe' with 'agentic-qe')
212
196
  let existingMcp = settings.enabledMcpjsonServers || [];
213
197
  existingMcp = existingMcp.filter(s => s !== 'aqe');
@@ -215,6 +199,8 @@ export async function configureHooks(projectRoot, config) {
215
199
  existingMcp.push('agentic-qe');
216
200
  }
217
201
  settings.enabledMcpjsonServers = existingMcp;
202
+ // Back up the pristine original settings.json before writing (like CLAUDE.md)
203
+ backupSettingsFile(settingsPath);
218
204
  writeFileSync(settingsPath, JSON.stringify(settings, null, 2), 'utf-8');
219
205
  // Install cross-phase memory hooks configuration
220
206
  await installCrossPhaseMemoryHooks(projectRoot);
@@ -13,7 +13,7 @@ import { fileURLToPath } from 'url';
13
13
  import { safeJsonParse } from '../../shared/safe-json.js';
14
14
  const __filename = fileURLToPath(import.meta.url);
15
15
  const __dirname = dirname(__filename);
16
- import { isAqeHookEntry, mergeHooksSmart, generateAqeEnvVars, generateV3SettingsSections, } from '../settings-merge.js';
16
+ import { isAqeHookEntry, mergeHooksSmart, generateAqeEnvVars, generateV3SettingsSections, applyV3Sections, mergeAqeEnv, backupSettingsFile, } from '../settings-merge.js';
17
17
  import { BasePhase, } from './phase-interface.js';
18
18
  /**
19
19
  * Hooks phase - configures Claude Code hooks
@@ -76,31 +76,16 @@ export class HooksPhase extends BasePhase {
76
76
  }
77
77
  // Smart merge: remove old AQE hooks, keep user hooks, add new AQE hooks
78
78
  settings.hooks = mergeHooksSmart(existingHooks, aqeHooks);
79
- // Set full AQE environment variables
80
- const existingEnv = settings.env || {};
81
- settings.env = {
82
- ...existingEnv,
83
- ...generateAqeEnvVars(config),
84
- };
85
- // Apply v3 settings sections (statusLine, v3Configuration, v3Learning, etc.)
86
- // Permissions are union-merged to preserve user entries (#362)
79
+ // Add AQE environment variables without clobbering any value the user
80
+ // already set including AQE_-prefixed overrides (only missing keys added).
81
+ const existingEnv = settings.env;
82
+ settings.env = mergeAqeEnv(existingEnv, generateAqeEnvVars(config));
83
+ // Apply v3 settings sections non-destructively:
84
+ // - permissions union-merged (preserve user entries, #362)
85
+ // - statusLine / includeCoAuthoredBy preserved when user-set (#362 follow-up)
86
+ // - AQE-owned sections deep-merged so user additions survive
87
87
  const v3Sections = generateV3SettingsSections(config, projectRoot);
88
- for (const [key, value] of Object.entries(v3Sections)) {
89
- if (key === '_aqePermissions') {
90
- // Union-merge: add AQE entries without removing user-added permissions
91
- const existingPerms = settings.permissions || {};
92
- const existingAllow = existingPerms.allow || [];
93
- const aqeEntries = value;
94
- const merged = [...new Set([...existingAllow, ...aqeEntries])];
95
- settings.permissions = {
96
- ...existingPerms,
97
- allow: merged,
98
- };
99
- }
100
- else {
101
- settings[key] = value;
102
- }
103
- }
88
+ applyV3Sections(settings, v3Sections);
104
89
  // Enable MCP servers (deduplicate, replace old 'aqe' with 'agentic-qe')
105
90
  let existingMcp = settings.enabledMcpjsonServers || [];
106
91
  // Remove legacy 'aqe' entry if present (renamed to 'agentic-qe')
@@ -109,6 +94,11 @@ export class HooksPhase extends BasePhase {
109
94
  existingMcp.push('agentic-qe');
110
95
  }
111
96
  settings.enabledMcpjsonServers = existingMcp;
97
+ // Back up the pristine original settings.json before writing (like CLAUDE.md)
98
+ const backupPath = backupSettingsFile(settingsPath);
99
+ if (backupPath) {
100
+ context.services.log(` Backup created: ${backupPath}`);
101
+ }
112
102
  // Write settings
113
103
  writeFileSync(settingsPath, JSON.stringify(settings, null, 2), 'utf-8');
114
104
  // Write README and install hook assets (bridge script, cross-phase memory)