agentic-qe 3.15.16 → 3.15.17

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 (415) hide show
  1. package/.claude/skills/skills-manifest.json +1 -1
  2. package/CHANGELOG.md +78 -0
  3. package/assets/skills/skills-manifest.json +1 -1
  4. package/dist/cli/bundle.js +6 -6
  5. package/dist/cli/chunks/adapter-OMILP6KH.js +2 -0
  6. package/dist/cli/chunks/{agent-booster-wasm-45NWEKVS.js → agent-booster-wasm-6BUOFQZA.js} +2 -2
  7. package/dist/cli/chunks/{agent-handler-LVHMYFEF.js → agent-handler-HPDK3JI3.js} +2 -2
  8. package/dist/cli/chunks/{agent-memory-branch-YDWOJFEQ.js → agent-memory-branch-5QKUTWK5.js} +2 -2
  9. package/dist/cli/chunks/aqe-learning-engine-OXH5CCOS.js +2 -0
  10. package/dist/cli/chunks/{arena-CZKHXDDS.js → arena-7OKPMNHD.js} +2 -2
  11. package/dist/cli/chunks/{arena-ELDZH3CZ.js → arena-HZ35LESR.js} +4 -4
  12. package/dist/cli/chunks/{audit-5MT4T47Z.js → audit-XI575SVK.js} +3 -3
  13. package/dist/cli/chunks/base-MAK2BLTG.js +2 -0
  14. package/dist/cli/chunks/{better-sqlite3-6TGYPC2B.js → better-sqlite3-YO5X7ZJS.js} +2 -2
  15. package/dist/cli/chunks/{brain-handler-HQWZFO52.js → brain-handler-GCQZFZGQ.js} +3 -3
  16. package/dist/cli/chunks/{branch-enumerator-WVILM4SO.js → branch-enumerator-N6G44UU2.js} +2 -2
  17. package/dist/cli/chunks/{browser-RX5ALU3H.js → browser-EVKPTLOI.js} +2 -2
  18. package/dist/cli/chunks/browser-workflow-IR3VF2TL.js +2 -0
  19. package/dist/cli/chunks/{chunk-F742SZAX.js → chunk-2EQK7B5L.js} +2 -2
  20. package/dist/cli/chunks/{chunk-5NNNEWLS.js → chunk-2PCEMDIX.js} +67 -65
  21. package/dist/cli/chunks/{chunk-FBDVGRSC.js → chunk-2UUZCQSD.js} +7 -7
  22. package/dist/cli/chunks/{chunk-AG2EWGXS.js → chunk-2YWYW7NU.js} +2 -2
  23. package/dist/cli/chunks/{chunk-4LQFBY5L.js → chunk-45223KK6.js} +3 -3
  24. package/dist/cli/chunks/chunk-4EJLHNER.js +12 -0
  25. package/dist/cli/chunks/{chunk-KQYJ4VQ5.js → chunk-4L6WX5KC.js} +1 -1
  26. package/dist/cli/chunks/{chunk-KVF4NXGQ.js → chunk-4NKZU2JZ.js} +2 -2
  27. package/dist/cli/chunks/{chunk-YRAX7SFJ.js → chunk-4UKTIQDT.js} +2 -2
  28. package/dist/cli/chunks/{chunk-YTHTQPWR.js → chunk-4YM45Z5B.js} +1 -1
  29. package/dist/cli/chunks/{chunk-XIIQ5QTT.js → chunk-5FSPELOG.js} +2 -2
  30. package/dist/cli/chunks/{chunk-LKTTUHLF.js → chunk-5WATBVU6.js} +2 -2
  31. package/dist/cli/chunks/{chunk-SR52XP5F.js → chunk-5WYZVSL2.js} +1 -1
  32. package/dist/cli/chunks/{chunk-GQ6TUIKY.js → chunk-6LSZCEW2.js} +1 -1
  33. package/dist/cli/chunks/{chunk-NDJ7P2EP.js → chunk-6V6BD6PH.js} +1 -1
  34. package/dist/cli/chunks/{chunk-63GMRQ25.js → chunk-74MDUIAZ.js} +1 -1
  35. package/dist/cli/chunks/{chunk-4D4DENG6.js → chunk-776K4ZLE.js} +2 -2
  36. package/dist/cli/chunks/{chunk-ZJH5MU2I.js → chunk-7BSOO3CY.js} +2 -2
  37. package/dist/cli/chunks/{chunk-IOQ6ZQ5W.js → chunk-7SNSI4VY.js} +1 -1
  38. package/dist/cli/chunks/{chunk-LRSX2FJM.js → chunk-A4BVDYIL.js} +1 -1
  39. package/dist/cli/chunks/{chunk-SASBO5Y5.js → chunk-AGCS5GSO.js} +2 -2
  40. package/dist/cli/chunks/{chunk-GAHNO6JJ.js → chunk-AVHYJ3XP.js} +2 -2
  41. package/dist/cli/chunks/{chunk-CGGUM2YJ.js → chunk-BE7ZHM34.js} +2 -2
  42. package/dist/cli/chunks/{chunk-7TE5ONQQ.js → chunk-BHQ2DLJU.js} +1 -1
  43. package/dist/cli/chunks/{chunk-IESR7TNB.js → chunk-BKHEQIRZ.js} +2 -2
  44. package/dist/cli/chunks/{chunk-J4ELZNLY.js → chunk-BSIWI4ES.js} +2 -2
  45. package/dist/cli/chunks/{chunk-NVEWF4JV.js → chunk-C7QLLMYI.js} +1 -1
  46. package/dist/cli/chunks/{chunk-V5NHZV7S.js → chunk-CMN7PU2H.js} +2 -2
  47. package/dist/cli/chunks/{chunk-PPUZWYUG.js → chunk-COTQ44YO.js} +2 -2
  48. package/dist/cli/chunks/{chunk-5V3TI2LG.js → chunk-CQER6IJ5.js} +1 -1
  49. package/dist/cli/chunks/{chunk-SI6DPU5D.js → chunk-CVPXHDQU.js} +1 -1
  50. package/dist/cli/chunks/{chunk-6ZBXSOX6.js → chunk-CVYPMGUM.js} +2 -2
  51. package/dist/cli/chunks/{chunk-DXD6K2ZP.js → chunk-CXCMATZ6.js} +2 -2
  52. package/dist/cli/chunks/{chunk-PF7RBAYL.js → chunk-D75GLKEL.js} +2 -2
  53. package/dist/cli/chunks/chunk-DCDSN67A.js +2 -0
  54. package/dist/cli/chunks/{chunk-MAFQV4U4.js → chunk-DHKSPOUQ.js} +2 -2
  55. package/dist/cli/chunks/{chunk-RJIEG3NA.js → chunk-DJDVD6RM.js} +2 -2
  56. package/dist/cli/chunks/{chunk-GFWHUQSF.js → chunk-DNVRTJKB.js} +2 -2
  57. package/dist/cli/chunks/{chunk-G5RHFBAY.js → chunk-DS5IFRY6.js} +2 -2
  58. package/dist/cli/chunks/{chunk-BEKDKVQT.js → chunk-E7XIMOKW.js} +2 -2
  59. package/dist/cli/chunks/{chunk-5JZRZI4S.js → chunk-ECKHDHR2.js} +2 -2
  60. package/dist/cli/chunks/chunk-EPVPXHL7.js +2 -0
  61. package/dist/cli/chunks/{chunk-HVRRLYX6.js → chunk-ERYADKMZ.js} +2 -2
  62. package/dist/cli/chunks/{chunk-SUDMM5SO.js → chunk-EUWG2JG4.js} +2 -2
  63. package/dist/cli/chunks/{chunk-VSIKHWZ4.js → chunk-FAQ24UHB.js} +3 -3
  64. package/dist/cli/chunks/{chunk-YNMJEDN5.js → chunk-FBBPRVNF.js} +2 -2
  65. package/dist/cli/chunks/{chunk-72XSEQMW.js → chunk-FBSBXCZS.js} +2 -2
  66. package/dist/cli/chunks/{chunk-J7I6PABJ.js → chunk-G2X3OLMN.js} +2 -2
  67. package/dist/cli/chunks/{chunk-YU2BDRSD.js → chunk-GG7PMTHD.js} +1 -1
  68. package/dist/cli/chunks/{chunk-HLUXXCHF.js → chunk-GN6OE3JT.js} +1 -1
  69. package/dist/cli/chunks/{chunk-AGRV5B3T.js → chunk-GPPTRKEM.js} +2 -2
  70. package/dist/cli/chunks/{chunk-ZQ2XW3IP.js → chunk-H2LHWZRE.js} +2 -2
  71. package/dist/cli/chunks/{chunk-6DPYNAOK.js → chunk-HAQJFUAQ.js} +2 -2
  72. package/dist/cli/chunks/{chunk-SSUAAX3F.js → chunk-HD6W6PHV.js} +2 -2
  73. package/dist/cli/chunks/{chunk-L2DWPVNJ.js → chunk-HFZD5KLR.js} +1 -1
  74. package/dist/cli/chunks/{chunk-QVDCVD5D.js → chunk-HRUHHHVR.js} +2 -2
  75. package/dist/cli/chunks/{chunk-PINSJCM3.js → chunk-HVT7RMGV.js} +1 -1
  76. package/dist/cli/chunks/chunk-HWQPMUSN.js +2 -0
  77. package/dist/cli/chunks/{chunk-4NFQLP6R.js → chunk-HZ5O7G2P.js} +1 -1
  78. package/dist/cli/chunks/{chunk-C6D5AHBO.js → chunk-IHQGNDMX.js} +2 -2
  79. package/dist/cli/chunks/{chunk-QQWBWEJS.js → chunk-IJSROBM6.js} +3 -3
  80. package/dist/cli/chunks/{chunk-OCV2XEWQ.js → chunk-IJZFJPHS.js} +2 -2
  81. package/dist/cli/chunks/{chunk-N7HL5PHH.js → chunk-IKB3M7OF.js} +1 -1
  82. package/dist/cli/chunks/{chunk-24OX5TQJ.js → chunk-INI3Q4CN.js} +1 -1
  83. package/dist/cli/chunks/{chunk-SJ6Y4725.js → chunk-IOWEBPXJ.js} +2 -2
  84. package/dist/cli/chunks/{chunk-VXFLJNCA.js → chunk-IQL6XRF5.js} +2 -2
  85. package/dist/cli/chunks/{chunk-WP4RETKG.js → chunk-IRHXGCQR.js} +2 -2
  86. package/dist/cli/chunks/{chunk-63ZKI4PX.js → chunk-J3QFJI2Y.js} +2 -2
  87. package/dist/cli/chunks/{chunk-UHEOGZLX.js → chunk-J6QRNQJF.js} +5 -5
  88. package/dist/cli/chunks/{chunk-KNSRL6NO.js → chunk-J7Q5TXFZ.js} +2 -2
  89. package/dist/cli/chunks/{chunk-L6QSTQME.js → chunk-JHKKIJT2.js} +2 -2
  90. package/dist/cli/chunks/{chunk-VMDFFTCK.js → chunk-JI33PMPZ.js} +1 -1
  91. package/dist/cli/chunks/{chunk-E3D4GPLP.js → chunk-JRIJM4LE.js} +3 -3
  92. package/dist/cli/chunks/{chunk-XIQW7EFL.js → chunk-JVWZAE2H.js} +2 -2
  93. package/dist/cli/chunks/{chunk-YPBSUGMI.js → chunk-K7WAI662.js} +1 -1
  94. package/dist/cli/chunks/{chunk-RV74I3YO.js → chunk-KB34MTFZ.js} +2 -2
  95. package/dist/cli/chunks/{chunk-MI5MFHRA.js → chunk-KPIPVSIP.js} +2 -2
  96. package/dist/cli/chunks/{chunk-Y4PFUMOU.js → chunk-KR2TAAF6.js} +1 -1
  97. package/dist/cli/chunks/{chunk-W5HQUIML.js → chunk-KT2QCXO6.js} +2 -2
  98. package/dist/cli/chunks/{chunk-SSYAQZXA.js → chunk-KTORRIX3.js} +2 -2
  99. package/dist/cli/chunks/{chunk-CRPIYUTJ.js → chunk-LCWEQRZI.js} +2 -2
  100. package/dist/cli/chunks/{chunk-NO3IV5Q5.js → chunk-LG5PPJT7.js} +1 -1
  101. package/dist/cli/chunks/{chunk-5VZL4UVN.js → chunk-LIF6UWHV.js} +2 -2
  102. package/dist/cli/chunks/{chunk-32BPDLRZ.js → chunk-LN7NKE3N.js} +2 -2
  103. package/dist/cli/chunks/{chunk-ZB3LEFYG.js → chunk-LOLSZG5J.js} +2 -2
  104. package/dist/cli/chunks/{chunk-6XXZDV2C.js → chunk-LOMT4UC2.js} +2 -2
  105. package/dist/cli/chunks/{chunk-JDIYMZCQ.js → chunk-LRKLATSH.js} +2 -2
  106. package/dist/cli/chunks/{chunk-5SPCGMBB.js → chunk-LRY6UIRI.js} +2 -2
  107. package/dist/cli/chunks/{chunk-5PBLPQ5T.js → chunk-LV7UIK4Q.js} +2 -2
  108. package/dist/cli/chunks/{chunk-FDDC72IA.js → chunk-M2YI5YUR.js} +2 -2
  109. package/dist/cli/chunks/{chunk-D6COXLYE.js → chunk-MCXW3DKE.js} +2 -2
  110. package/dist/cli/chunks/{chunk-J442IZLE.js → chunk-MGZ6XZHU.js} +1 -1
  111. package/dist/cli/chunks/{chunk-TIUKLYAI.js → chunk-MLMD3I75.js} +1 -1
  112. package/dist/cli/chunks/{chunk-PHT5N7SC.js → chunk-MVVVGQJ6.js} +2 -2
  113. package/dist/cli/chunks/{chunk-525CFDUE.js → chunk-ND72UDVH.js} +2 -2
  114. package/dist/cli/chunks/{chunk-XWUWX7BV.js → chunk-NE3LRUNC.js} +4 -4
  115. package/dist/cli/chunks/{chunk-DTMAS2GB.js → chunk-NKUHMA4T.js} +2 -2
  116. package/dist/cli/chunks/{chunk-QPEOLAAS.js → chunk-NQFDJ6BT.js} +1 -1
  117. package/dist/cli/chunks/{chunk-MO55CVMT.js → chunk-NZJVDOUN.js} +14 -14
  118. package/dist/cli/chunks/{chunk-NZU4ACBZ.js → chunk-O7VJ3VKD.js} +2 -2
  119. package/dist/cli/chunks/{chunk-32GN3JKR.js → chunk-OJIUIEI4.js} +1 -1
  120. package/dist/cli/chunks/{chunk-UNGBRZDK.js → chunk-OO2M2QUV.js} +3 -3
  121. package/dist/cli/chunks/{chunk-CJSHWQXP.js → chunk-ORQ2YBRR.js} +2 -2
  122. package/dist/cli/chunks/chunk-OWIQR6N2.js +4 -0
  123. package/dist/cli/chunks/{chunk-NAEWCFQT.js → chunk-OWIZBZLN.js} +2 -2
  124. package/dist/cli/chunks/{chunk-24QHCVX6.js → chunk-P3D7SEHW.js} +1 -1
  125. package/dist/cli/chunks/{chunk-YLMNVLDK.js → chunk-P4OB6WDJ.js} +1 -1
  126. package/dist/cli/chunks/{chunk-PEQDY4BO.js → chunk-PCL5JRKN.js} +2 -2
  127. package/dist/cli/chunks/{chunk-IUBJVHNB.js → chunk-PIWGKGWP.js} +2 -2
  128. package/dist/cli/chunks/{chunk-GJYHWYXR.js → chunk-PK34KJH7.js} +2 -2
  129. package/dist/cli/chunks/{chunk-5B5QPCNU.js → chunk-POPSZDI2.js} +4 -4
  130. package/dist/cli/chunks/{chunk-HCH4Y6XX.js → chunk-Q6F3DYZN.js} +2 -2
  131. package/dist/cli/chunks/{chunk-SHKOCGNK.js → chunk-QJSSUBO3.js} +2 -2
  132. package/dist/cli/chunks/{chunk-DVYHMDFR.js → chunk-QN7HP2UW.js} +421 -418
  133. package/dist/cli/chunks/{chunk-ZFL436FN.js → chunk-QSQNXBD2.js} +2 -2
  134. package/dist/cli/chunks/{chunk-TVGI32MB.js → chunk-QTQDX4TZ.js} +3 -3
  135. package/dist/cli/chunks/{chunk-EK7OLYOZ.js → chunk-R3KBOQ3O.js} +2 -2
  136. package/dist/cli/chunks/{chunk-LE4QJREF.js → chunk-REY52O7J.js} +1 -1
  137. package/dist/cli/chunks/{chunk-LQLPB2T6.js → chunk-RKCN4B26.js} +2 -2
  138. package/dist/cli/chunks/{chunk-ZR2TKVXQ.js → chunk-S3DT5TPR.js} +2 -2
  139. package/dist/cli/chunks/{chunk-6ICX3FEG.js → chunk-S3TBOKAZ.js} +22 -22
  140. package/dist/cli/chunks/{chunk-JHQCRRJI.js → chunk-SAEECT23.js} +2 -2
  141. package/dist/cli/chunks/{chunk-VWPM27GU.js → chunk-SAZ4PJBR.js} +2 -2
  142. package/dist/cli/chunks/{chunk-KPRCB5LT.js → chunk-SFITYZLV.js} +2 -2
  143. package/dist/cli/chunks/{chunk-5LAVKGLH.js → chunk-SRBCBVSI.js} +2 -2
  144. package/dist/cli/chunks/{chunk-O5W3FIO6.js → chunk-SUAZ5Z47.js} +2 -2
  145. package/dist/cli/chunks/{chunk-KU2AUFGX.js → chunk-TDZ6N43D.js} +2 -2
  146. package/dist/cli/chunks/{chunk-YAPLJR7K.js → chunk-TIVKDIF7.js} +2 -2
  147. package/dist/cli/chunks/{chunk-U2A7NHZA.js → chunk-TM75GAXG.js} +2 -2
  148. package/dist/cli/chunks/{chunk-A5GBXCP5.js → chunk-TWBZONKT.js} +2 -2
  149. package/dist/cli/chunks/{chunk-I7MQIM2U.js → chunk-U4S74IIZ.js} +1 -1
  150. package/dist/cli/chunks/{chunk-3HD7E6HN.js → chunk-U5SMBJ6F.js} +2 -2
  151. package/dist/cli/chunks/{chunk-JQ3DYUMS.js → chunk-UHJVZEQA.js} +2 -2
  152. package/dist/cli/chunks/{chunk-C5FP5GW3.js → chunk-UOVCTK5L.js} +2 -2
  153. package/dist/cli/chunks/{chunk-HJ6ZGVTB.js → chunk-VDEKVIP5.js} +2 -2
  154. package/dist/cli/chunks/{chunk-KXCLACFG.js → chunk-VITV7AEC.js} +2 -2
  155. package/dist/cli/chunks/{chunk-P3EYRILV.js → chunk-VKREKVFI.js} +2 -2
  156. package/dist/cli/chunks/{chunk-2H4XH6FT.js → chunk-VLTDW7XJ.js} +2 -2
  157. package/dist/cli/chunks/{chunk-MD43XRX5.js → chunk-VQFV2IPV.js} +1 -1
  158. package/dist/cli/chunks/{chunk-67Z5R7RJ.js → chunk-VYPVU3JF.js} +2 -2
  159. package/dist/cli/chunks/{chunk-SDLWKRVL.js → chunk-WAOEQA3W.js} +2 -2
  160. package/dist/cli/chunks/{chunk-IOYG4VFL.js → chunk-WBDWHHKP.js} +2 -2
  161. package/dist/cli/chunks/{chunk-ASEOFRIG.js → chunk-WX4PO65Q.js} +2 -2
  162. package/dist/cli/chunks/chunk-X2DWHGCC.js +6 -0
  163. package/dist/cli/chunks/{chunk-CEYSYSK5.js → chunk-X5QD76IU.js} +2 -2
  164. package/dist/cli/chunks/{chunk-GSKMOPL7.js → chunk-XBTGEYED.js} +2 -2
  165. package/dist/cli/chunks/{chunk-FL64OUBA.js → chunk-XEMCHGAJ.js} +2 -2
  166. package/dist/cli/chunks/{chunk-2YZ4G6NW.js → chunk-XEYFZLIT.js} +1 -1
  167. package/dist/cli/chunks/{chunk-EA4YQVKS.js → chunk-XFTX3KLE.js} +1 -1
  168. package/dist/cli/chunks/{chunk-HGWXF45W.js → chunk-XPTCQKVE.js} +1 -1
  169. package/dist/cli/chunks/{chunk-CAKMOVZ6.js → chunk-YAJOBZE5.js} +2 -2
  170. package/dist/cli/chunks/{chunk-NQXXI77K.js → chunk-YCVLKU6H.js} +2 -2
  171. package/dist/cli/chunks/{chunk-AR67RJPY.js → chunk-YD2C6EPN.js} +2 -2
  172. package/dist/cli/chunks/{chunk-S75SOOZL.js → chunk-YKRLUTK7.js} +2 -2
  173. package/dist/cli/chunks/{chunk-IOKYCMTJ.js → chunk-YMUY3TES.js} +2 -2
  174. package/dist/cli/chunks/{chunk-5QO3R3TU.js → chunk-YR5QBUHZ.js} +2 -2
  175. package/dist/cli/chunks/{chunk-AJMJNQMP.js → chunk-Z7SKUC6P.js} +1 -1
  176. package/dist/cli/chunks/{chunk-KITOPKRG.js → chunk-ZAQMRFBB.js} +2 -2
  177. package/dist/cli/chunks/{chunk-AAMLQ2LF.js → chunk-ZC3KDNJW.js} +3 -3
  178. package/dist/cli/chunks/{chunk-VJCIEHEF.js → chunk-ZGV7L4MW.js} +1 -1
  179. package/dist/cli/chunks/{chunk-BY5OF7OH.js → chunk-ZN35XSKF.js} +2 -2
  180. package/dist/cli/chunks/{chunk-KKU2QGSJ.js → chunk-ZNXM6WVL.js} +2 -2
  181. package/dist/cli/chunks/{chunk-FLNAW7C4.js → chunk-ZP5AWQRO.js} +2 -2
  182. package/dist/cli/chunks/{chunk-IHRXZZQM.js → chunk-ZTP3DQ5M.js} +1 -1
  183. package/dist/cli/chunks/{chunk-OAEE6JWQ.js → chunk-ZVMSSCTH.js} +2 -2
  184. package/dist/cli/chunks/{chunk-M7WJCTG3.js → chunk-ZWUF27P4.js} +2 -2
  185. package/dist/cli/chunks/{ci-MFUR4CWV.js → ci-3RTTTS2D.js} +2 -2
  186. package/dist/cli/chunks/{ci-config-PNDLQ6XV.js → ci-config-XRUR3I4K.js} +2 -2
  187. package/dist/cli/chunks/{ci-output-PFZ4M7NC.js → ci-output-E5IAMU2U.js} +2 -2
  188. package/dist/cli/chunks/{circuit-breaker-5HH6NLZN.js → circuit-breaker-SHR2P44P.js} +2 -2
  189. package/dist/cli/chunks/{claude-flow-setup-QCKYLGLC.js → claude-flow-setup-ZDDILFMF.js} +2 -2
  190. package/dist/cli/chunks/client-NO5FOWT4.js +2 -0
  191. package/dist/cli/chunks/{cline-installer-EASVPFXR.js → cline-installer-BGYVUM6G.js} +2 -2
  192. package/dist/cli/chunks/{code-UJXDVYRK.js → code-PJ4MC3MC.js} +3 -3
  193. package/dist/cli/chunks/{code-index-extractor-BZJ3UDP4.js → code-index-extractor-IW2P22YG.js} +2 -2
  194. package/dist/cli/chunks/{codex-installer-XSQZUVOZ.js → codex-installer-A7WZ6OGL.js} +2 -2
  195. package/dist/cli/chunks/{completions-OWOOJFI2.js → completions-KS23WD5J.js} +2 -2
  196. package/dist/cli/chunks/{complexity-analyzer-KP5TOHDT.js → complexity-analyzer-Q7GLSR2E.js} +2 -2
  197. package/dist/cli/chunks/{continuedev-installer-IFKQXLHM.js → continuedev-installer-SK55BFW2.js} +2 -2
  198. package/dist/cli/chunks/copilot-installer-3N5J3WTM.js +3 -0
  199. package/dist/cli/chunks/core-handlers-JNAZPXE2.js +2 -0
  200. package/dist/cli/chunks/{cost-tracker-MMDDNKZB.js → cost-tracker-NENVSO4A.js} +2 -2
  201. package/dist/cli/chunks/{coverage-LUH2B7NT.js → coverage-5L7UQWDH.js} +3 -3
  202. package/dist/cli/chunks/cross-domain-router-HEBM767Z.js +2 -0
  203. package/dist/cli/chunks/{cursor-installer-4YLM5GWM.js → cursor-installer-XXBO2ZE6.js} +2 -2
  204. package/dist/cli/chunks/{daemon-MZKVM4CJ.js → daemon-CDCQU3LR.js} +3 -3
  205. package/dist/cli/chunks/{daemon-CAVZ7OFV.js → daemon-JEBJGEUK.js} +4 -4
  206. package/dist/cli/chunks/{dag-attention-scheduler-X4CYW665.js → dag-attention-scheduler-HOMMF7FA.js} +2 -2
  207. package/dist/cli/chunks/{detect-7BM2XINO.js → detect-FXCOUG6X.js} +2 -2
  208. package/dist/cli/chunks/{dist-node-Y5APLEYB.js → dist-node-GXQ7FMTY.js} +2 -2
  209. package/dist/cli/chunks/{domain-handler-X3ZRJNAH.js → domain-handler-TI3JBAPC.js} +2 -2
  210. package/dist/cli/chunks/{domain-plugins-2UW5KQJB.js → domain-plugins-R7LTUM32.js} +2 -2
  211. package/dist/cli/chunks/{domain-transfer-35W4CIBV.js → domain-transfer-LBIAFHIQ.js} +2 -2
  212. package/dist/cli/chunks/dream-GQDCEJMS.js +2 -0
  213. package/dist/cli/chunks/embed-and-insert-pattern-33KLHDD5.js +3 -0
  214. package/dist/cli/chunks/{embedding-space-SBM2MZD2.js → embedding-space-HHLWTBF5.js} +2 -2
  215. package/dist/cli/chunks/{eval-4QA2SROK.js → eval-KDOZMAXJ.js} +2 -2
  216. package/dist/cli/chunks/{experience-capture-middleware-Z6BF6KYM.js → experience-capture-middleware-X45PECQN.js} +3 -3
  217. package/dist/cli/chunks/{fast-paths-FIORX6GN.js → fast-paths-462V6UUB.js} +2 -2
  218. package/dist/cli/chunks/{feature-flags-ZOO7LMIC.js → feature-flags-G66OT3AS.js} +2 -2
  219. package/dist/cli/chunks/{feature-flags-6LYI2T4G.js → feature-flags-NIRQ4YDM.js} +2 -2
  220. package/dist/cli/chunks/file-discovery-33USPLB5.js +2 -0
  221. package/dist/cli/chunks/{fleet-7WF53H4F.js → fleet-PXWGB7CU.js} +3 -3
  222. package/dist/cli/chunks/{gnn-wrapper-KJ6B7BRM.js → gnn-wrapper-7MUW3M5M.js} +2 -2
  223. package/dist/cli/chunks/{heartbeat-handler-DEKKMOVW.js → heartbeat-handler-5237PB35.js} +4 -4
  224. package/dist/cli/chunks/heartbeat-scheduler-LIXLC5IH.js +2 -0
  225. package/dist/cli/chunks/hnsw-adapter-62D5UH27.js +2 -0
  226. package/dist/cli/chunks/hnsw-index-GSGUMQQC.js +2 -0
  227. package/dist/cli/chunks/{hnsw-legacy-bridge-L27WS27N.js → hnsw-legacy-bridge-OSQPW7JP.js} +2 -2
  228. package/dist/cli/chunks/{hnswlib-node-4YOQC6L4.js → hnswlib-node-GX6WG2GB.js} +2 -2
  229. package/dist/cli/chunks/{hooks-TAOKV4EJ.js → hooks-GUWHL7VC.js} +10 -10
  230. package/dist/cli/chunks/hybrid-backend-FRWP4BOY.js +2 -0
  231. package/dist/cli/chunks/{hypergraph-engine-BODRJLHL.js → hypergraph-engine-SRWLLCU3.js} +2 -2
  232. package/dist/cli/chunks/{hypergraph-handler-RKMYJNTU.js → hypergraph-handler-AVOPRHHO.js} +3 -3
  233. package/dist/cli/chunks/impact-analyzer-7KF3AQXV.js +2 -0
  234. package/dist/cli/chunks/{init-guard-MXHSLSB2.js → init-guard-P4N6EVZS.js} +2 -2
  235. package/dist/cli/chunks/{init-handler-HUE57IFW.js → init-handler-LRGWOJMD.js} +6 -6
  236. package/dist/cli/chunks/init-wizard-XWWAXY25.js +2 -0
  237. package/dist/cli/chunks/kernel-ZEJPNDBW.js +2 -0
  238. package/dist/cli/chunks/{kilocode-installer-S333IKYQ.js → kilocode-installer-7R2EPOQ6.js} +2 -2
  239. package/dist/cli/chunks/{kiro-installer-WM5DLQWC.js → kiro-installer-QNM7DPOB.js} +2 -2
  240. package/dist/cli/chunks/knowledge-graph-RRZQS7KY.js +2 -0
  241. package/dist/cli/chunks/{learning-LNHMQLH5.js → learning-7OIZBPXZ.js} +3 -3
  242. package/dist/cli/chunks/{llm-router-EWFXYZZR.js → llm-router-SIDXES23.js} +4 -4
  243. package/dist/cli/chunks/llm-router-service-3OSW67LC.js +2 -0
  244. package/dist/cli/chunks/{load-FGYGWVDK.js → load-EI2E2C3S.js} +2 -2
  245. package/dist/cli/chunks/load-test-7TRIH2WJ.js +2 -0
  246. package/dist/cli/chunks/{mcp-2FHNAAOM.js → mcp-IOE5WOCS.js} +2 -2
  247. package/dist/cli/chunks/{memory-DZMQ73AB.js → memory-DLYGJAP7.js} +5 -5
  248. package/dist/cli/chunks/memory-backend-G7ZW6Q2B.js +2 -0
  249. package/dist/cli/chunks/memory-handlers-TPF3KCO5.js +2 -0
  250. package/dist/cli/chunks/{multi-model-executor-6F2UAEUW.js → multi-model-executor-WHH4YCHM.js} +2 -2
  251. package/dist/cli/chunks/{opencode-installer-XY3BGOTZ.js → opencode-installer-63FDZAMS.js} +2 -2
  252. package/dist/cli/chunks/{orchestrator-B4CNKUOS.js → orchestrator-3LA776KK.js} +5 -5
  253. package/dist/cli/chunks/pattern-null-store-OU3ZC3NR.js +2 -0
  254. package/dist/cli/chunks/{pattern-usage-recorder-R4GUFNMD.js → pattern-usage-recorder-NW54QUGI.js} +2 -2
  255. package/dist/cli/chunks/{pipeline-FG5RKVRO.js → pipeline-P3TYX6J6.js} +2 -2
  256. package/dist/cli/chunks/{platform-3BT4KEVJ.js → platform-FNA2WLI6.js} +2 -2
  257. package/dist/cli/chunks/{plugin-WI4RIN7O.js → plugin-NJS7BC2S.js} +2 -2
  258. package/dist/cli/chunks/{prime-radiant-advanced-wasm-7ECDNQFS.js → prime-radiant-advanced-wasm-NIAVL2OT.js} +2 -2
  259. package/dist/cli/chunks/project-root-GMOFJEKD.js +2 -0
  260. package/dist/cli/chunks/protocol-executor-AD345XRO.js +2 -0
  261. package/dist/cli/chunks/{protocol-handler-WNODKPGW.js → protocol-handler-JU5C4JHY.js} +2 -2
  262. package/dist/cli/chunks/{prove-5RHAEPYZ.js → prove-35VOSLYP.js} +2 -2
  263. package/dist/cli/chunks/qe-reasoning-bank-NLTP26RC.js +2 -0
  264. package/dist/cli/chunks/{quality-WPHR7BGQ.js → quality-ET74X7HN.js} +2 -2
  265. package/dist/cli/chunks/{quality-gate-4RKTEZMX.js → quality-gate-FEDQISNB.js} +3 -3
  266. package/dist/cli/chunks/queen-coordinator-2TB4FWS6.js +2 -0
  267. package/dist/cli/chunks/real-embeddings-II6CXTCI.js +2 -0
  268. package/dist/cli/chunks/{ref-validation-TPAWHOHH.js → ref-validation-DTBPYCEB.js} +2 -2
  269. package/dist/cli/chunks/{roocode-installer-7AVHFNDI.js → roocode-installer-LYQEMR4J.js} +2 -2
  270. package/dist/cli/chunks/router-PLM3MWME.js +2 -0
  271. package/dist/cli/chunks/routing-feedback-I7VOX2HU.js +2 -0
  272. package/dist/cli/chunks/{routing-handler-YKEDVJSH.js → routing-handler-DJOJFPII.js} +2 -2
  273. package/dist/cli/chunks/{ruvector-commands-JUAMM354.js → ruvector-commands-VXYGJDPW.js} +2 -2
  274. package/dist/cli/chunks/rvf-dual-writer-GQZHFWO2.js +2 -0
  275. package/dist/cli/chunks/rvf-migration-adapter-3TVKBCAM.js +2 -0
  276. package/dist/cli/chunks/rvf-migration-coordinator-XUHKLMT6.js +2 -0
  277. package/dist/cli/chunks/rvf-native-adapter-5GUTYOWS.js +2 -0
  278. package/dist/cli/chunks/{rvf-store-integrity-VJDUIRTX.js → rvf-store-integrity-GA2ZYOEG.js} +2 -2
  279. package/dist/cli/chunks/safe-db-RZPQGLGQ.js +2 -0
  280. package/dist/cli/chunks/schedule-G7JMQDUX.js +2 -0
  281. package/dist/cli/chunks/scheduler-4SEGPCKD.js +2 -0
  282. package/dist/cli/chunks/{security-ORDN3RD2.js → security-MM6YOECX.js} +3 -3
  283. package/dist/cli/chunks/{shared-rvf-adapter-CF4BCIO7.js → shared-rvf-adapter-6AHPA3V5.js} +2 -2
  284. package/dist/cli/chunks/{shared-rvf-dual-writer-C32UBR6D.js → shared-rvf-dual-writer-EYAVY2GZ.js} +2 -2
  285. package/dist/cli/chunks/sqlite-persistence-IVE4SQXR.js +2 -0
  286. package/dist/cli/chunks/{standalone-memory-OXRJYZXN.js → standalone-memory-A3PLB4CZ.js} +2 -2
  287. package/dist/cli/chunks/{status-handler-BCX5D4HY.js → status-handler-OSSFAP4Z.js} +2 -2
  288. package/dist/cli/chunks/{structural-health-LFG7RUU6.js → structural-health-PGY5XUNO.js} +2 -2
  289. package/dist/cli/chunks/{sync-YJEE2K2L.js → sync-CWEHYGNN.js} +2 -2
  290. package/dist/cli/chunks/sync-PM6D7EQF.js +2 -0
  291. package/dist/cli/chunks/{task-handler-6LXKPTXJ.js → task-handler-LHMQ75W4.js} +2 -2
  292. package/dist/cli/chunks/{task-handlers-CILP36I7.js → task-handlers-S2TX5FTR.js} +3 -3
  293. package/dist/cli/chunks/test-4EGZZ6NJ.js +34 -0
  294. package/dist/cli/chunks/test-runner-process-72YACW6M.js +2 -0
  295. package/dist/cli/chunks/{test-scheduling-ISI2O4Q5.js → test-scheduling-YJQHH3XE.js} +3 -3
  296. package/dist/cli/chunks/{token-bootstrap-VUELSBOS.js → token-bootstrap-DJNETMVW.js} +2 -2
  297. package/dist/cli/chunks/{token-usage-XOC5KG7S.js → token-usage-WPNOJR6H.js} +2 -2
  298. package/dist/cli/chunks/{transformers-LSLQAARK.js → transformers-4MRPXCPU.js} +2 -2
  299. package/dist/cli/chunks/tree-sitter-wasm-parser-UVWSDXFR.js +2 -0
  300. package/dist/cli/chunks/{types-5BLCGLCR.js → types-6P5FB4EB.js} +2 -2
  301. package/dist/cli/chunks/unified-memory-2VMGSGQL.js +2 -0
  302. package/dist/cli/chunks/unified-memory-hnsw-3KULVD3N.js +2 -0
  303. package/dist/cli/chunks/unified-persistence-QCSLU2SV.js +2 -0
  304. package/dist/cli/chunks/{upgrade-RQJYLK3J.js → upgrade-4ICTN63Y.js} +2 -2
  305. package/dist/cli/chunks/{validate-QBHWXXCK.js → validate-HQF5GZ7L.js} +2 -2
  306. package/dist/cli/chunks/{validate-swarm-IKXBKFB5.js → validate-swarm-45JYG7VW.js} +2 -2
  307. package/dist/cli/chunks/visual-security-ZYP2KPH7.js +2 -0
  308. package/dist/cli/chunks/{web-tree-sitter-ZF6FIE5R.js → web-tree-sitter-UOTWZLNH.js} +2 -2
  309. package/dist/cli/chunks/{windsurf-installer-HQGDZT5D.js → windsurf-installer-WDWSBXGN.js} +2 -2
  310. package/dist/cli/chunks/witness-chain-5QRT7EMX.js +2 -0
  311. package/dist/cli/chunks/{witness-chain-DCHCAMSQ.js → witness-chain-DOYMNPC7.js} +2 -2
  312. package/dist/cli/chunks/{witness-chain-repair-PUX2NFDL.js → witness-chain-repair-CUF2AFQB.js} +2 -2
  313. package/dist/cli/chunks/{witness-chain-verifier-PX2OQ6XT.js → witness-chain-verifier-JB42X62J.js} +2 -2
  314. package/dist/cli/chunks/{witness-key-manager-RXYQNFJB.js → witness-key-manager-LXXO6L2G.js} +2 -2
  315. package/dist/cli/chunks/{workflow-FBKCA4H6.js → workflow-6ARK47NF.js} +4 -4
  316. package/dist/cli/chunks/workflow-orchestrator-RYDDWIXN.js +2 -0
  317. package/dist/cli/chunks/{wrappers-TWSKBTWD.js → wrappers-CYQBOMPL.js} +2 -2
  318. package/dist/cli/commands/test.js +26 -4
  319. package/dist/coordination/handlers/test-execution-handlers.js +64 -20
  320. package/dist/domains/code-intelligence/services/semantic-analyzer.d.ts +8 -3
  321. package/dist/domains/code-intelligence/services/semantic-analyzer.js +39 -25
  322. package/dist/domains/code-intelligence/services/text-relevance.d.ts +32 -0
  323. package/dist/domains/code-intelligence/services/text-relevance.js +63 -0
  324. package/dist/domains/test-execution/coordinator.d.ts +3 -1
  325. package/dist/domains/test-execution/coordinator.js +13 -4
  326. package/dist/domains/test-execution/interfaces.d.ts +5 -0
  327. package/dist/domains/test-execution/plugin.js +2 -0
  328. package/dist/domains/test-execution/services/flaky-detector.d.ts +9 -1
  329. package/dist/domains/test-execution/services/flaky-detector.js +26 -8
  330. package/dist/domains/test-execution/services/retry-handler.d.ts +7 -1
  331. package/dist/domains/test-execution/services/retry-handler.js +44 -5
  332. package/dist/domains/test-execution/services/runner-test-cases.d.ts +2 -0
  333. package/dist/domains/test-execution/services/runner-test-cases.js +7 -3
  334. package/dist/domains/test-execution/services/test-executor.d.ts +5 -1
  335. package/dist/domains/test-execution/services/test-executor.js +79 -15
  336. package/dist/init/copilot-installer.d.ts +6 -0
  337. package/dist/init/copilot-installer.js +37 -17
  338. package/dist/init/platform-config-generator.d.ts +10 -0
  339. package/dist/init/platform-config-generator.js +26 -1
  340. package/dist/kernel/unified-memory.d.ts +8 -0
  341. package/dist/kernel/unified-memory.js +13 -0
  342. package/dist/learning/embedder-endpoint-client.d.ts +45 -0
  343. package/dist/learning/embedder-endpoint-client.js +98 -3
  344. package/dist/learning/embedding-space-registry.d.ts +75 -0
  345. package/dist/learning/embedding-space-registry.js +142 -0
  346. package/dist/learning/real-embeddings.d.ts +3 -0
  347. package/dist/learning/real-embeddings.js +49 -11
  348. package/dist/mcp/bundle.js +564 -555
  349. package/dist/mcp/protocol-server.js +1 -1
  350. package/dist/shared/embeddings/index.d.ts +2 -2
  351. package/dist/shared/embeddings/index.js +1 -1
  352. package/dist/shared/embeddings/nomic-embedder.d.ts +8 -2
  353. package/dist/shared/embeddings/nomic-embedder.js +19 -11
  354. package/dist/shared/embeddings/ollama-client.d.ts +28 -2
  355. package/dist/shared/embeddings/ollama-client.js +84 -22
  356. package/dist/shared/embeddings/types.d.ts +15 -0
  357. package/dist/shared/embeddings/types.js +4 -0
  358. package/dist/shared/pytest-junit-report.d.ts +93 -0
  359. package/dist/shared/pytest-junit-report.js +241 -0
  360. package/dist/shared/test-runner-project.d.ts +51 -1
  361. package/dist/shared/test-runner-project.js +140 -25
  362. package/package.json +1 -1
  363. package/dist/cli/chunks/adapter-6CQ2PIP5.js +0 -2
  364. package/dist/cli/chunks/aqe-learning-engine-73RR52VS.js +0 -2
  365. package/dist/cli/chunks/base-SMCMMVGP.js +0 -2
  366. package/dist/cli/chunks/browser-workflow-A2MEZ66K.js +0 -2
  367. package/dist/cli/chunks/chunk-EGYE5UPQ.js +0 -2
  368. package/dist/cli/chunks/chunk-KL7OKSU2.js +0 -4
  369. package/dist/cli/chunks/chunk-M4FRQ4TE.js +0 -12
  370. package/dist/cli/chunks/chunk-UE5ZOZR2.js +0 -2
  371. package/dist/cli/chunks/client-MHQRTZM4.js +0 -2
  372. package/dist/cli/chunks/copilot-installer-IGJ6KGQY.js +0 -3
  373. package/dist/cli/chunks/core-handlers-UAK3LLJE.js +0 -2
  374. package/dist/cli/chunks/cross-domain-router-WTRZQPNQ.js +0 -2
  375. package/dist/cli/chunks/dream-EJY24JN6.js +0 -2
  376. package/dist/cli/chunks/embed-and-insert-pattern-COG4C7ZI.js +0 -3
  377. package/dist/cli/chunks/file-discovery-UZSFSS4V.js +0 -2
  378. package/dist/cli/chunks/heartbeat-scheduler-NVR356I7.js +0 -2
  379. package/dist/cli/chunks/hnsw-adapter-LFMPLUJU.js +0 -2
  380. package/dist/cli/chunks/hnsw-index-POCPMVJH.js +0 -2
  381. package/dist/cli/chunks/hybrid-backend-4STAO7CV.js +0 -2
  382. package/dist/cli/chunks/impact-analyzer-3VIIISBQ.js +0 -2
  383. package/dist/cli/chunks/init-wizard-PL6QN6RQ.js +0 -2
  384. package/dist/cli/chunks/kernel-CCDWT7KS.js +0 -2
  385. package/dist/cli/chunks/knowledge-graph-KFOMEN3H.js +0 -2
  386. package/dist/cli/chunks/llm-router-service-7NBE2EX6.js +0 -2
  387. package/dist/cli/chunks/load-test-UNZUWY3F.js +0 -2
  388. package/dist/cli/chunks/memory-backend-DFGKWA2Q.js +0 -2
  389. package/dist/cli/chunks/memory-handlers-MP426XRJ.js +0 -2
  390. package/dist/cli/chunks/pattern-null-store-SSVF5TE5.js +0 -2
  391. package/dist/cli/chunks/project-root-BEANNYWU.js +0 -2
  392. package/dist/cli/chunks/protocol-executor-FQVIHXZ7.js +0 -2
  393. package/dist/cli/chunks/qe-reasoning-bank-5TFYSE24.js +0 -2
  394. package/dist/cli/chunks/queen-coordinator-Y2OUL7IN.js +0 -2
  395. package/dist/cli/chunks/real-embeddings-OXLYU7JW.js +0 -2
  396. package/dist/cli/chunks/router-EP34O3KB.js +0 -2
  397. package/dist/cli/chunks/routing-feedback-FJCRKXNG.js +0 -2
  398. package/dist/cli/chunks/rvf-dual-writer-ILITJSFG.js +0 -2
  399. package/dist/cli/chunks/rvf-migration-adapter-XF6W4C2N.js +0 -2
  400. package/dist/cli/chunks/rvf-migration-coordinator-CMKG56AR.js +0 -2
  401. package/dist/cli/chunks/rvf-native-adapter-7YFW6S4Y.js +0 -2
  402. package/dist/cli/chunks/safe-db-TCAU4FUT.js +0 -2
  403. package/dist/cli/chunks/schedule-NB5KV435.js +0 -2
  404. package/dist/cli/chunks/scheduler-JKXGKVK6.js +0 -2
  405. package/dist/cli/chunks/sqlite-persistence-IXCNZRTW.js +0 -2
  406. package/dist/cli/chunks/sync-OSF7C2NL.js +0 -2
  407. package/dist/cli/chunks/test-SD457QJ6.js +0 -34
  408. package/dist/cli/chunks/test-runner-process-VKD65QQU.js +0 -2
  409. package/dist/cli/chunks/tree-sitter-wasm-parser-YAIPHRIL.js +0 -2
  410. package/dist/cli/chunks/unified-memory-GI76TXFV.js +0 -2
  411. package/dist/cli/chunks/unified-memory-hnsw-GXJ5BTZO.js +0 -2
  412. package/dist/cli/chunks/unified-persistence-OP7FDQPD.js +0 -2
  413. package/dist/cli/chunks/visual-security-GZ2MOKWB.js +0 -2
  414. package/dist/cli/chunks/witness-chain-P3XXXA62.js +0 -2
  415. package/dist/cli/chunks/workflow-orchestrator-P2APAJAA.js +0 -2
@@ -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.15.17");process.exit(0)}
2
+ import{a as m,b as p}from"./chunk-ZNXM6WVL.js";import"./chunk-4EJLHNER.js";import"./chunk-LRKLATSH.js";import"./chunk-CXCMATZ6.js";import"./chunk-ZP5AWQRO.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-Z7SKUC6P.js";var v={sampleSize:50,windowDurationMs:6048e5,compactionThreshold:.3,scoreTolerance:.05},l=class{config;db=null;rvfStore=null;history=[];constructor(t){this.config={...v,...t}}setSqliteDb(t){this.db=t}setRvfStore(t){this.rvfStore=t}runCheck(){let t={timestamp:Date.now(),samplesChecked:0,divergences:0,divergenceRate:0,details:[],deadSpaceRatio:null,compactionTriggered:!1};if(!this.db||!this.rvfStore)return this.history.push(t),t;let e=this.getSampleIds(this.config.sampleSize);if(t.samplesChecked=e.length,e.length===0)return this.history.push(t),t;for(let a of e){let n=this.getSqliteEmbedding(a);if(!n){t.divergences++,t.details.push({patternId:a,issue:"missing-in-sqlite"});continue}try{let i=this.rvfStore.search(n,1);i.length===0?(t.divergences++,t.details.push({patternId:a,issue:"missing-in-rvf"})):i[0].id!==a&&i[0].score<.99&&(t.divergences++,t.details.push({patternId:a,issue:"score-mismatch",rvfScore:i[0].score}))}catch{t.divergences++,t.details.push({patternId:a,issue:"missing-in-rvf"})}}t.divergenceRate=t.samplesChecked>0?t.divergences/t.samplesChecked:0;try{let n=this.rvfStore.status().deadSpaceRatio;t.deadSpaceRatio=n??null,n!=null&&n>this.config.compactionThreshold&&(this.triggerCompaction(),t.compactionTriggered=!0)}catch{}return this.history.push(t),this.pruneHistory(),t}getRollingDivergenceRate(){let t=Date.now()-this.config.windowDurationMs,e=this.history.filter(i=>i.timestamp>=t);if(e.length===0)return 0;let a=e.reduce((i,r)=>i+r.samplesChecked,0),n=e.reduce((i,r)=>i+r.divergences,0);return a>0?n/a:0}getCheckCount(){let t=Date.now()-this.config.windowDurationMs;return this.history.filter(e=>e.timestamp>=t).length}getHistory(){let t=Date.now()-this.config.windowDurationMs;return this.history.filter(e=>e.timestamp>=t)}getSampleIds(t){if(!this.db)return[];try{return this.db.prepare("SELECT pattern_id FROM qe_pattern_embeddings ORDER BY RANDOM() LIMIT ?").all(t).map(a=>a.pattern_id)}catch{return[]}}getSqliteEmbedding(t){if(!this.db)return null;try{let e=this.db.prepare("SELECT embedding, dimension FROM qe_pattern_embeddings WHERE pattern_id = ?").get(t);return e?new Float32Array(e.embedding.buffer,e.embedding.byteOffset,e.dimension):null}catch{return null}}triggerCompaction(){try{this.rvfStore.compact?.()}catch{}}pruneHistory(){let t=Date.now()-this.config.windowDurationMs;this.history=this.history.filter(e=>e.timestamp>=t)}};var S={maxDivergenceRate2to3:1e-4,maxReadLatencyRatio2to3:2,maxFallbacks3to4:0,maxWriteLatencyRatio3to4:1.5,minChecksRequired:10},g=class{config;witnessChain=null;constructor(t){this.config={...S,...t}}setWitnessChain(t){this.witnessChain=t}evaluate(t,e,a){let n=Math.min(t+1,4);if(t>=4)return{canPromote:!1,currentStage:t,targetStage:4,checks:[],summary:"Already at maximum stage (4: RVF primary)"};if(t<2)return{canPromote:!0,currentStage:t,targetStage:n,checks:[],summary:`Stage ${t}\u2192${n} has no automated gates \u2014 manual promotion allowed`};let i=[];if(t===2){let s=e.getRollingDivergenceRate(),o=e.getCheckCount();i.push({name:"consistency-checks-count",passed:o>=this.config.minChecksRequired,actual:`${o} checks`,threshold:`>= ${this.config.minChecksRequired} checks`}),i.push({name:"divergence-rate",passed:s<=this.config.maxDivergenceRate2to3,actual:`${(s*100).toFixed(4)}%`,threshold:`<= ${(this.config.maxDivergenceRate2to3*100).toFixed(4)}%`});let c=a.sqliteReadLatencyAvgMs>0?a.rvfReadLatencyAvgMs/a.sqliteReadLatencyAvgMs:0;i.push({name:"read-latency-ratio",passed:c<=this.config.maxReadLatencyRatio2to3||a.rvfReadLatencyAvgMs===0,actual:`${c.toFixed(2)}x`,threshold:`<= ${this.config.maxReadLatencyRatio2to3}x`})}if(t===3){i.push({name:"fallback-count",passed:a.fallbacksUsed<=this.config.maxFallbacks3to4,actual:`${a.fallbacksUsed} fallbacks`,threshold:`<= ${this.config.maxFallbacks3to4} fallbacks`});let s=a.sqliteWriteLatencyAvgMs??a.sqliteReadLatencyAvgMs,o=a.rvfWriteLatencyAvgMs??a.rvfReadLatencyAvgMs,c=s>0?o/s:0;i.push({name:"write-latency-ratio",passed:c<=this.config.maxWriteLatencyRatio3to4||o===0,actual:`${c.toFixed(2)}x`,threshold:`<= ${this.config.maxWriteLatencyRatio3to4}x`})}let r=i.length>0&&i.every(s=>s.passed),u=i.filter(s=>!s.passed).map(s=>s.name);return{canPromote:r,currentStage:t,targetStage:n,checks:i,summary:r?`All gates passed \u2014 safe to promote to stage ${n}`:`Blocked: ${u.join(", ")} failed`}}promote(t,e,a,n=!1){let i=this.evaluate(t,e,a);if(!i.canPromote&&!n)return this.recordWitness("QUALITY_GATE_FAIL",{action:"stage-promotion-blocked",from:t,to:i.targetStage,failedChecks:i.checks.filter(u=>!u.passed),summary:i.summary}),{promoted:!1,newStage:t,result:i};let r=i.targetStage;return this.recordWitness("QUALITY_GATE_PASS",{action:n?"stage-promotion-forced":"stage-promotion-approved",from:t,to:r,checks:i.checks,forced:n,summary:i.summary}),{promoted:!0,newStage:r,result:i}}recordWitness(t,e){try{this.witnessChain?.append(t,e,"rvf-stage-gate")}catch{}}};var d=null,f=class h{adapter;validator;gate;currentStage;initialized=!1;constructor(t){this.currentStage=t?.stage??1,this.adapter=new p({stage:this.currentStage,rvfPath:t?.rvfPath??".agentic-qe/patterns.rvf",dimensions:t?.dimensions??384,enableFallback:!0}),this.validator=new l({sampleSize:50,windowDurationMs:10080*60*1e3,compactionThreshold:.3,scoreTolerance:.05}),this.gate=new g({minChecksRequired:10})}attachSqliteDb(t){this.adapter.setSqliteDb(t),this.validator.setSqliteDb(t)}attachRvfStore(t){this.adapter.setRvfStore(t),this.validator.setRvfStore(t)}attachWitnessChain(t){this.gate.setWitnessChain(t)}async initialize(){if(!this.initialized){if(this.currentStage===1)try{let{getRvfMigrationStage:t}=await import("./feature-flags-G66OT3AS.js"),e=t();this.currentStage=e,this.adapter.setStage(e)}catch{}try{let{UnifiedMemoryManager:t}=await import("./unified-memory-2VMGSGQL.js"),e=t.getInstance();await e.initialize();let a=e.getDatabase();a&&this.attachSqliteDb(a)}catch{}try{let{getSharedRvfAdapter:t}=await import("./shared-rvf-adapter-6AHPA3V5.js"),e=t();e&&this.attachRvfStore(e)}catch{}try{let{WitnessChain:t}=await import("./witness-chain-5QRT7EMX.js"),{getDefaultWitnessKeyManager:e}=await import("./witness-key-manager-LXXO6L2G.js"),a=new t(void 0,e());await a.initialize(),this.attachWitnessChain(a)}catch{}this.initialized=!0}}getStatus(){let t=this.adapter.getMetrics(),e=this.adapter.status(),a=this.validator.getHistory(),n=this.gate.evaluate(this.currentStage,this.validator,t);return{stage:this.currentStage,stageName:m[this.currentStage],metrics:t,consistencyHistory:{totalChecks:this.validator.getCheckCount(),rollingDivergenceRate:this.validator.getRollingDivergenceRate(),lastCheck:a.length>0?a[a.length-1]:null},gateEvaluation:n,engineStatus:{sqliteVectorCount:e.sqlite.vectorCount,rvfAvailable:e.rvf!==null,rvfVectorCount:e.rvf?.totalVectors??null,rvfDeadSpaceRatio:e.rvf?.deadSpaceRatio??null}}}runConsistencyCheck(){return this.validator.runCheck()}evaluateGate(){return this.gate.evaluate(this.currentStage,this.validator,this.adapter.getMetrics())}promote(t=!1){let e=this.currentStage,{promoted:a,newStage:n,result:i}=this.gate.promote(this.currentStage,this.validator,this.adapter.getMetrics(),t);return a&&(this.currentStage=n,this.adapter.setStage(n)),{promoted:a,previousStage:e,newStage:n,result:i}}write(t,e){return this.adapter.write(t,e)}search(t,e){return this.adapter.search(t,e)}getAdapter(){return this.adapter}static getInstance(t){return d||(d=new h(t)),d}static resetInstance(){d=null}};export{f as RvfMigrationCoordinator};
@@ -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.15.17");process.exit(0)}
2
+ import{a,b,c,d,f as e}from"./chunk-QSQNXBD2.js";import"./chunk-Z7SKUC6P.js";e();export{a as createRvfStore,d as isRvfNativeAvailable,b as openRvfStore,c as openRvfStoreReadonly};
@@ -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.15.16");process.exit(0)}
2
- import{a,b,c,d,e,f}from"./chunk-I7MQIM2U.js";import"./chunk-AJMJNQMP.js";export{b as isLockHeldByLiveProcess,c as isRvfLockHeldError,d as isRvfStructuralError,f as quarantineUnusableStore,a as readLockOwnerPid,e as removeStaleRvfLock};
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.15.17");process.exit(0)}
2
+ import{a,b,c,d,e,f}from"./chunk-U4S74IIZ.js";import"./chunk-Z7SKUC6P.js";export{b as isLockHeldByLiveProcess,c as isRvfLockHeldError,d as isRvfStructuralError,f as quarantineUnusableStore,a as readLockOwnerPid,e as removeStaleRvfLock};
@@ -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.15.17");process.exit(0)}
2
+ import{d as a,e as b}from"./chunk-SFITYZLV.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";b();export{a as openDatabase};
@@ -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.15.17");process.exit(0)}
2
+ import{a}from"./chunk-YCVLKU6H.js";import"./chunk-AVHYJ3XP.js";import"./chunk-C7QLLMYI.js";import"./chunk-EUWG2JG4.js";import"./chunk-UHJVZEQA.js";import"./chunk-XPTCQKVE.js";import"./chunk-NZJVDOUN.js";import"./chunk-X5QD76IU.js";import"./chunk-IRHXGCQR.js";import"./chunk-CMN7PU2H.js";import"./chunk-YKRLUTK7.js";import"./chunk-COTQ44YO.js";import"./chunk-U5SMBJ6F.js";import"./chunk-LCWEQRZI.js";import"./chunk-2EQK7B5L.js";import"./chunk-YAJOBZE5.js";import"./chunk-LRKLATSH.js";import"./chunk-ZP5AWQRO.js";import"./chunk-BSIWI4ES.js";import"./chunk-TIVKDIF7.js";import"./chunk-DS5IFRY6.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import"./chunk-JHKKIJT2.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-SFITYZLV.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";export{a as TestScheduleTool};
@@ -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.15.17");process.exit(0)}
2
+ import{d as a,e as b,f as c,g as d}from"./chunk-BKHEQIRZ.js";import"./chunk-CMN7PU2H.js";import"./chunk-REY52O7J.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-Z7SKUC6P.js";export{a as PersistentScheduler,b as createPersistentScheduler,d as createScheduleEntry,c as generateScheduleId};
@@ -1,12 +1,12 @@
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.15.16");process.exit(0)}
2
- import{d as S,e as w,f as I,j as x}from"./chunk-YLMNVLDK.js";import{b as R,c as T}from"./chunk-32GN3JKR.js";import{a as C}from"./chunk-TIUKLYAI.js";import"./chunk-AJMJNQMP.js";import{Command as F}from"commander";import i from"chalk";import{resolve as L}from"node:path";var b="Dependency advisories",E=3;function U(e){let o=e.checks??[],n=e.vulnerabilities.some(t=>t.severity==="high"||t.severity==="critical"),r=e.compliance?.compliant===!1;if(e.status!=="complete"||r){let t=o.some(y=>y.name===b&&y.status!=="complete"),g=o.some(y=>y.name!==b&&y.status!=="complete");return t&&!g&&!r&&!n?E:1}return n?1:e.vulnerabilities.some(t=>t.severity==="medium")?2:0}function K(e,o,n){return new F("security").description("Security scanning and URL validation").option("--sast","Run SAST scan").option("--dast","Run DAST scan").option("--dependencies","Check package.json dependencies against OSV advisories (sends package names and versions to the OSV API)").option("--compliance <frameworks>","Check compliance (gdpr,hipaa,soc2)","").option("--url-validate <url>","Validate a URL for security threats and PII exposure").option("--no-pii","Disable PII scanning when using --url-validate").option("-t, --target <path>","Target directory to scan",".").option("-F, --format <format>","Output format (text|json|sarif|markdown)","text").option("-o, --output <path>","Write output to file").addHelpText("after",`
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.15.17");process.exit(0)}
2
+ import{d as S,e as w,f as I,j as x}from"./chunk-P4OB6WDJ.js";import{b as R,c as T}from"./chunk-OJIUIEI4.js";import{a as C}from"./chunk-MLMD3I75.js";import"./chunk-Z7SKUC6P.js";import{Command as F}from"commander";import i from"chalk";import{resolve as L}from"node:path";var b="Dependency advisories",E=3;function U(e){let o=e.checks??[],n=e.vulnerabilities.some(t=>t.severity==="high"||t.severity==="critical"),r=e.compliance?.compliant===!1;if(e.status!=="complete"||r){let t=o.some(y=>y.name===b&&y.status!=="complete"),g=o.some(y=>y.name!==b&&y.status!=="complete");return t&&!g&&!r&&!n?E:1}return n?1:e.vulnerabilities.some(t=>t.severity==="medium")?2:0}function K(e,o,n){return new F("security").description("Security scanning and URL validation").option("--sast","Run SAST scan").option("--dast","Run DAST scan").option("--dependencies","Check package.json dependencies against OSV advisories (sends package names and versions to the OSV API)").option("--compliance <frameworks>","Check compliance (gdpr,hipaa,soc2)","").option("--url-validate <url>","Validate a URL for security threats and PII exposure").option("--no-pii","Disable PII scanning when using --url-validate").option("-t, --target <path>","Target directory to scan",".").option("-F, --format <format>","Output format (text|json|sarif|markdown)","text").option("-o, --output <path>","Write output to file").addHelpText("after",`
3
3
  Exit codes:
4
4
  0 every requested check completed; no medium or higher findings
5
5
  1 high/critical findings, non-compliance, or a check failed / is incomplete
6
6
  2 medium findings only
7
7
  ${E} UNMEASURED: dependency advisories could not be checked (OSV unreachable, rate limited, or partial)`).action(async t=>{if(!await n())return;if(t.urlValidate){try{let d=t.format,m=t.urlValidate;d==="text"&&console.log(i.blue(`
8
8
  Validating URL: ${m}
9
- `));let{VisualSecurityTool:p}=await import("./visual-security-GZ2MOKWB.js"),s=await new p().invoke({url:m,enablePII:t.pii!==!1});if(s.success&&s.data){let a=s.data;if(d==="json")S(w(a),t.output);else{if(a.urlSecurity.valid)console.log(i.green(" URL Security: CLEAN"));else{console.log(i.red(` URL Security: ${a.urlSecurity.issues.length} issue(s) (risk: ${a.urlSecurity.riskLevel})`));for(let u of a.urlSecurity.issues){let h=u.severity==="critical"?i.red:u.severity==="high"?i.yellow:i.gray;console.log(h(` [${u.severity}] ${u.type}: ${u.description}`))}}if(a.piiExposure.scanned)if(a.piiExposure.found){console.log(i.red(`
9
+ `));let{VisualSecurityTool:p}=await import("./visual-security-ZYP2KPH7.js"),s=await new p().invoke({url:m,enablePII:t.pii!==!1});if(s.success&&s.data){let a=s.data;if(d==="json")S(w(a),t.output);else{if(a.urlSecurity.valid)console.log(i.green(" URL Security: CLEAN"));else{console.log(i.red(` URL Security: ${a.urlSecurity.issues.length} issue(s) (risk: ${a.urlSecurity.riskLevel})`));for(let u of a.urlSecurity.issues){let h=u.severity==="critical"?i.red:u.severity==="high"?i.yellow:i.gray;console.log(h(` [${u.severity}] ${u.type}: ${u.description}`))}}if(a.piiExposure.scanned)if(a.piiExposure.found){console.log(i.red(`
10
10
  PII Exposure: ${a.piiExposure.types.length} type(s) found in URL`));for(let u of a.piiExposure.details)console.log(i.yellow(` [${u.type}] in ${u.location}: ${u.masked}`))}else console.log(i.green(`
11
11
  PII Exposure: none detected`));console.log(`
12
12
  ${a.summary}
@@ -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.15.16");process.exit(0)}
2
- import{a,b,c,d,e,f,g,h}from"./chunk-EK7OLYOZ.js";import"./chunk-AGRV5B3T.js";import"./chunk-U2A7NHZA.js";import"./chunk-I7MQIM2U.js";import"./chunk-ZFL436FN.js";import"./chunk-AJMJNQMP.js";export{a as RvfLiveLockError,d as __openOrCreateRvfForTests,b as __setSharedRvfAdapterForTests,f as compactSharedRvfAdapter,e as decideCompactionFromStatus,c as getSharedRvfAdapter,h as resetSharedRvfAdapter,g as runBootCompactGuard};
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.15.17");process.exit(0)}
2
+ import{a,b,c,d,e,f,g,h}from"./chunk-R3KBOQ3O.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-U4S74IIZ.js";import"./chunk-QSQNXBD2.js";import"./chunk-Z7SKUC6P.js";export{a as RvfLiveLockError,d as __openOrCreateRvfForTests,b as __setSharedRvfAdapterForTests,f as compactSharedRvfAdapter,e as decideCompactionFromStatus,c as getSharedRvfAdapter,h as resetSharedRvfAdapter,g as runBootCompactGuard};
@@ -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.15.16");process.exit(0)}
2
- import{a,b,c,d}from"./chunk-KXCLACFG.js";import"./chunk-AJMJNQMP.js";export{c as getSharedMigrationAdapter,a as getSharedRvfDualWriter,b as getSharedRvfDualWriterSync,d as resetSharedRvfDualWriter};
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.15.17");process.exit(0)}
2
+ import{a,b,c,d}from"./chunk-VITV7AEC.js";import"./chunk-Z7SKUC6P.js";export{c as getSharedMigrationAdapter,a as getSharedRvfDualWriter,b as getSharedRvfDualWriterSync,d as resetSharedRvfDualWriter};
@@ -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.15.17");process.exit(0)}
2
+ import{f as a,g as b,h as c,i as d}from"./chunk-YMUY3TES.js";import"./chunk-XPTCQKVE.js";import"./chunk-ZGV7L4MW.js";import"./chunk-NZJVDOUN.js";import"./chunk-X5QD76IU.js";import"./chunk-IRHXGCQR.js";import"./chunk-CMN7PU2H.js";import"./chunk-YKRLUTK7.js";import"./chunk-COTQ44YO.js";import"./chunk-U5SMBJ6F.js";import"./chunk-LCWEQRZI.js";import"./chunk-2EQK7B5L.js";import"./chunk-YAJOBZE5.js";import"./chunk-4EJLHNER.js";import"./chunk-LRKLATSH.js";import"./chunk-CXCMATZ6.js";import"./chunk-ZP5AWQRO.js";import"./chunk-BSIWI4ES.js";import"./chunk-TIVKDIF7.js";import"./chunk-DS5IFRY6.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import"./chunk-JHKKIJT2.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-SFITYZLV.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";export{a as DEFAULT_SQLITE_CONFIG,c as SQLitePatternStore,d as createSQLitePatternStore,b as hashEmbedding};
@@ -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.15.16");process.exit(0)}
2
- import{a as n,e as p}from"./chunk-KNSRL6NO.js";import"./chunk-AJMJNQMP.js";p();import*as a from"node:fs";import*as i from"node:path";import d from"chalk";function y(s){let r=null,m=async()=>{try{let[{findProjectRoot:e},{createKernelMemoryBackend:c},{setStandaloneMemoryBackend:l}]=await Promise.all([import("./project-root-BEANNYWU.js"),import("./hybrid-backend-4STAO7CV.js"),import("./memory-handlers-MP426XRJ.js")]),o=i.join(e(),".agentic-qe");a.mkdirSync(o,{recursive:!0});let t=c(o);return await t.initialize(),l(t),!0}catch(e){return console.error(d.red(` Failed to open memory store: ${n(e)}`)),process.exitCode=1,!1}};return()=>s.initialized?Promise.resolve(!0):(r??=m(),r)}export{y as createEnsureMemoryBackend};
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.15.17");process.exit(0)}
2
+ import{a as n,e as p}from"./chunk-J7Q5TXFZ.js";import"./chunk-Z7SKUC6P.js";p();import*as a from"node:fs";import*as i from"node:path";import d from"chalk";function y(s){let r=null,m=async()=>{try{let[{findProjectRoot:e},{createKernelMemoryBackend:c},{setStandaloneMemoryBackend:l}]=await Promise.all([import("./project-root-GMOFJEKD.js"),import("./hybrid-backend-FRWP4BOY.js"),import("./memory-handlers-TPF3KCO5.js")]),o=i.join(e(),".agentic-qe");a.mkdirSync(o,{recursive:!0});let t=c(o);return await t.initialize(),l(t),!0}catch(e){return console.error(d.red(` Failed to open memory store: ${n(e)}`)),process.exitCode=1,!1}};return()=>s.initialized?Promise.resolve(!0):(r??=m(),r)}export{y as createEnsureMemoryBackend};
@@ -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.15.16");process.exit(0)}
2
- import{d as g,e as p}from"./chunk-YLMNVLDK.js";import{a as m,c as w}from"./chunk-PINSJCM3.js";import"./chunk-QPEOLAAS.js";import{b}from"./chunk-JHQCRRJI.js";import{h as $,q as k}from"./chunk-DTMAS2GB.js";import"./chunk-ZQ2XW3IP.js";import{B as C}from"./chunk-MO55CVMT.js";import"./chunk-CEYSYSK5.js";import"./chunk-WP4RETKG.js";import"./chunk-JDIYMZCQ.js";import"./chunk-V5NHZV7S.js";import"./chunk-S75SOOZL.js";import"./chunk-PPUZWYUG.js";import"./chunk-3HD7E6HN.js";import"./chunk-CRPIYUTJ.js";import"./chunk-F742SZAX.js";import"./chunk-CAKMOVZ6.js";import"./chunk-FLNAW7C4.js";import"./chunk-J4ELZNLY.js";import"./chunk-YAPLJR7K.js";import"./chunk-G5RHFBAY.js";import"./chunk-XIIQ5QTT.js";import"./chunk-A5GBXCP5.js";import"./chunk-L6QSTQME.js";import{c as v}from"./chunk-AGRV5B3T.js";import"./chunk-U2A7NHZA.js";import"./chunk-KPRCB5LT.js";import"./chunk-KNSRL6NO.js";import"./chunk-2H4XH6FT.js";import"./chunk-AJMJNQMP.js";import e from"chalk";import{existsSync as S,readFileSync as A}from"node:fs";import{join as E}from"node:path";C();function H(){try{let o=k().defaultProvider,a=$(o),n=a?.mode??b(o),t={"metered-api":`${e.red("\u25CF")} pay-per-token API key (no cap)`,"metered-capped":`${e.yellow("\u25CF")} pay-per-token with server-side cap`,subscription:`${e.green("\u25CF")} Claude subscription (no per-token charge)`,local:`${e.green("\u25CF")} local (no cost)`};if(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.15.17");process.exit(0)}
2
+ import{d as g,e as p}from"./chunk-P4OB6WDJ.js";import{a as m,c as w}from"./chunk-HVT7RMGV.js";import"./chunk-NQFDJ6BT.js";import{b}from"./chunk-SAEECT23.js";import{h as $,q as k}from"./chunk-NKUHMA4T.js";import"./chunk-H2LHWZRE.js";import{C}from"./chunk-NZJVDOUN.js";import"./chunk-X5QD76IU.js";import"./chunk-IRHXGCQR.js";import"./chunk-CMN7PU2H.js";import"./chunk-YKRLUTK7.js";import"./chunk-COTQ44YO.js";import"./chunk-U5SMBJ6F.js";import"./chunk-LCWEQRZI.js";import"./chunk-2EQK7B5L.js";import"./chunk-YAJOBZE5.js";import"./chunk-LRKLATSH.js";import"./chunk-ZP5AWQRO.js";import"./chunk-BSIWI4ES.js";import"./chunk-TIVKDIF7.js";import"./chunk-DS5IFRY6.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import"./chunk-JHKKIJT2.js";import{c as v}from"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-SFITYZLV.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";import e from"chalk";import{existsSync as S,readFileSync as A}from"node:fs";import{join as E}from"node:path";C();function H(){try{let o=k().defaultProvider,a=$(o),n=a?.mode??b(o),t={"metered-api":`${e.red("\u25CF")} pay-per-token API key (no cap)`,"metered-capped":`${e.yellow("\u25CF")} pay-per-token with server-side cap`,subscription:`${e.green("\u25CF")} Claude subscription (no per-token charge)`,local:`${e.green("\u25CF")} local (no cost)`};if(console.log(e.blue(`
3
3
  LLM Billing:`)),a){let s=a.source==="config"?a.detail??".agentic-qe/llm-config.json":"registerProvider()";console.log(` Provider: ${e.cyan(o)} ${e.magenta("\u25CF")} external \u2014 ${n} ${e.gray(`(declared by ${s}, not verified by AQE)`)}`)}else console.log(` Provider: ${e.cyan(o)} ${t[n]??n}`);let i=Number.parseFloat(process.env.AQE_MAX_BUDGET_USD??"");Number.isFinite(i)&&i>0?console.log(` Per-run budget cap: ${e.cyan("$"+i.toFixed(2))}`):n==="metered-api"&&(console.log(e.gray(" No budget cap set \u2014 use AQE_MAX_BUDGET_USD or --max-budget-usd.")),console.log(e.gray(" Tip: AQE_LLM_PROVIDER=claude-code runs on your Claude subscription.")))}catch{}}function x(){try{let u=E(v(),".agentic-qe","workers","daemon.pid");if(!S(u))return{configured:!1,running:!1};let o=parseInt(A(u,"utf-8").trim(),10);if(!Number.isFinite(o))return{configured:!0,running:!1};try{return process.kill(o,0),{configured:!0,running:!0,pid:o}}catch{return{configured:!0,running:!1,pid:o}}}catch{return{configured:!1,running:!1}}}var f=class{name="status";description="Show system status";cleanupAndExit;ensureInitialized;constructor(o,a){this.cleanupAndExit=o,this.ensureInitialized=a}register(o,a){o.command("status").description(this.description).option("-v, --verbose","Show detailed status").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async n=>{await this.executeStatus(n,a)})}async executeStatus(o,a){if(await this.ensureInitialized())try{let n=a.queen.getHealth(),t=a.queen.getMetrics();if((o.format||"text")==="json"){let s={};if(o.verbose)for(let[r,l]of n.domainHealth)s[r]={status:l.status,agents:l.agents,errors:l.errors.length};g(p({status:n.status,uptime:t.uptime,workStealing:n.workStealingActive,agents:{total:n.totalAgents,active:n.activeAgents,utilization:t.agentUtilization},tasks:{received:t.tasksReceived,completed:t.tasksCompleted,failed:t.tasksFailed,pending:n.pendingTasks,running:n.runningTasks,stolen:t.tasksStolen},coordination:{protocols:t.protocolsExecuted,workflows:t.workflowsExecuted},...o.verbose?{domains:s}:{},issues:n.issues}),o.output),await this.cleanupAndExit(0);return}if(console.log(e.blue(`
4
4
  AQE v3 Status
5
5
  `)),console.log(` Status: ${m(n.status)}`),console.log(` Uptime: ${e.cyan(w(t.uptime))}`),console.log(` Work Stealing: ${n.workStealingActive?e.green("active"):e.gray("inactive")}`),console.log(e.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.15.16");process.exit(0)}
2
- import{a as l}from"./chunk-5JZRZI4S.js";import"./chunk-VMDFFTCK.js";import"./chunk-N7HL5PHH.js";import"./chunk-L6QSTQME.js";import"./chunk-AJMJNQMP.js";var s={healthyThreshold:.4,warningThreshold:.2,maxHistoryEntries:100,enableLogging:!1},n=class{config;minCutService;history=[];constructor(t){this.config={...s,...t},this.minCutService=l()}computeFleetHealth(t){if(t.length===0)return this.emptyFleetResult();let r=this.minCutService.buildTaskGraphFromTopology(t);return this.computeFleetHealthFromGraph(r,t.length)}computeFleetHealthFromGraph(t,r){if(t.nodes.length===0)return this.emptyFleetResult();let e=this.minCutService.getStructuralHealth(t),o=this.determineStatus(e.normalizedLambda),a={lambda:e.lambda,healthy:e.healthy,weakPoints:e.weakPoints,normalizedLambda:e.normalizedLambda,riskScore:e.riskScore,status:o,suggestions:e.suggestions,measuredAt:new Date};return this.addHistoryEntry({lambda:e.lambda,healthy:e.healthy,weakPointCount:e.weakPoints.length,agentCount:r??t.nodes.length,timestamp:a.measuredAt}),this.config.enableLogging&&this.logHealth(a),a}getTrend(){if(this.history.length<2)return"stable";let t=Math.min(5,this.history.length),r=this.history.slice(-t),e=r[0].lambda,a=r[r.length-1].lambda-e;return Math.abs(a)<.05?"stable":a>0?"improving":"degrading"}getHistory(t){let r=[...this.history];return t!==void 0&&t<r.length?r.slice(-t):r}clearHistory(){this.history.length=0}getMinCutService(){return this.minCutService}determineStatus(t){return t>=this.config.healthyThreshold?"healthy":t>=this.config.warningThreshold?"warning":"critical"}addHistoryEntry(t){this.history.push(t),this.history.length>this.config.maxHistoryEntries&&this.history.splice(0,this.history.length-this.config.maxHistoryEntries)}emptyFleetResult(){return{lambda:0,healthy:!1,weakPoints:[],normalizedLambda:0,riskScore:1,status:"empty",suggestions:["No agents in fleet. Spawn agents to build a topology."],measuredAt:new Date}}logHealth(t){console.error(`[StructuralHealth] Status: ${t.status} | Lambda: ${t.normalizedLambda.toFixed(3)} | Weak points: ${t.weakPoints.length} | Risk: ${(t.riskScore*100).toFixed(0)}%`)}};function d(i){return new n(i)}export{s as DEFAULT_STRUCTURAL_HEALTH_CONFIG,n as StructuralHealthMonitor,d as createStructuralHealthMonitor};
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.15.17");process.exit(0)}
2
+ import{a as l}from"./chunk-ECKHDHR2.js";import"./chunk-JI33PMPZ.js";import"./chunk-IKB3M7OF.js";import"./chunk-JHKKIJT2.js";import"./chunk-Z7SKUC6P.js";var s={healthyThreshold:.4,warningThreshold:.2,maxHistoryEntries:100,enableLogging:!1},n=class{config;minCutService;history=[];constructor(t){this.config={...s,...t},this.minCutService=l()}computeFleetHealth(t){if(t.length===0)return this.emptyFleetResult();let r=this.minCutService.buildTaskGraphFromTopology(t);return this.computeFleetHealthFromGraph(r,t.length)}computeFleetHealthFromGraph(t,r){if(t.nodes.length===0)return this.emptyFleetResult();let e=this.minCutService.getStructuralHealth(t),o=this.determineStatus(e.normalizedLambda),a={lambda:e.lambda,healthy:e.healthy,weakPoints:e.weakPoints,normalizedLambda:e.normalizedLambda,riskScore:e.riskScore,status:o,suggestions:e.suggestions,measuredAt:new Date};return this.addHistoryEntry({lambda:e.lambda,healthy:e.healthy,weakPointCount:e.weakPoints.length,agentCount:r??t.nodes.length,timestamp:a.measuredAt}),this.config.enableLogging&&this.logHealth(a),a}getTrend(){if(this.history.length<2)return"stable";let t=Math.min(5,this.history.length),r=this.history.slice(-t),e=r[0].lambda,a=r[r.length-1].lambda-e;return Math.abs(a)<.05?"stable":a>0?"improving":"degrading"}getHistory(t){let r=[...this.history];return t!==void 0&&t<r.length?r.slice(-t):r}clearHistory(){this.history.length=0}getMinCutService(){return this.minCutService}determineStatus(t){return t>=this.config.healthyThreshold?"healthy":t>=this.config.warningThreshold?"warning":"critical"}addHistoryEntry(t){this.history.push(t),this.history.length>this.config.maxHistoryEntries&&this.history.splice(0,this.history.length-this.config.maxHistoryEntries)}emptyFleetResult(){return{lambda:0,healthy:!1,weakPoints:[],normalizedLambda:0,riskScore:1,status:"empty",suggestions:["No agents in fleet. Spawn agents to build a topology."],measuredAt:new Date}}logHealth(t){console.error(`[StructuralHealth] Status: ${t.status} | Lambda: ${t.normalizedLambda.toFixed(3)} | Weak points: ${t.weakPoints.length} | Risk: ${(t.riskScore*100).toFixed(0)}%`)}};function d(i){return new n(i)}export{s as DEFAULT_STRUCTURAL_HEALTH_CONFIG,n as StructuralHealthMonitor,d as createStructuralHealthMonitor};
@@ -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.15.16");process.exit(0)}
2
- import{c as r,s as g,t as m,u as p,x as b,y as h}from"./chunk-VSIKHWZ4.js";import{a as y}from"./chunk-SR52XP5F.js";import"./chunk-HGWXF45W.js";import"./chunk-MO55CVMT.js";import"./chunk-CEYSYSK5.js";import"./chunk-WP4RETKG.js";import"./chunk-JDIYMZCQ.js";import"./chunk-V5NHZV7S.js";import"./chunk-S75SOOZL.js";import"./chunk-PPUZWYUG.js";import"./chunk-3HD7E6HN.js";import"./chunk-CRPIYUTJ.js";import"./chunk-F742SZAX.js";import"./chunk-CAKMOVZ6.js";import"./chunk-FLNAW7C4.js";import"./chunk-J4ELZNLY.js";import"./chunk-YAPLJR7K.js";import"./chunk-G5RHFBAY.js";import"./chunk-XIIQ5QTT.js";import"./chunk-A5GBXCP5.js";import"./chunk-L6QSTQME.js";import"./chunk-AGRV5B3T.js";import"./chunk-U2A7NHZA.js";import"./chunk-KPRCB5LT.js";import{a,e as S}from"./chunk-KNSRL6NO.js";import"./chunk-2H4XH6FT.js";import"./chunk-AJMJNQMP.js";import{Command as v}from"commander";import e from"chalk";import d from"ora";S();import*as f from"fs";import*as i from"path";import{fileURLToPath as $}from"url";var C=$(import.meta.url),R=i.dirname(C);function w(){let n=new v("sync").description("Sync local learning data to cloud PostgreSQL");return n.option("--full","Run full sync instead of incremental").option("-e, --env <environment>","Environment identifier",process.env.AQE_ENV||"devpod").option("--dry-run","Preview sync without making changes").option("-v, --verbose","Enable verbose output").option("--since <date>","Sync changes since date (ISO 8601)").option("--sources <sources>","Comma-separated list of sources to sync").action(async l=>{let o={environment:l.env,verbose:l.verbose,sync:{...r.sync,dryRun:l.dryRun}};if(l.sources){let s=l.sources.split(",").map(c=>c.trim());o.sync.sources=r.sync.sources.filter(c=>s.includes(c.name))}let t=d("Initializing sync agent...").start();try{let s;if(l.full)t.text="Running full sync...",s=await m(o);else{let c=l.since?new Date(l.since):void 0;t.text="Running incremental sync...",s=await p(c,o)}t.stop(),E(s)}catch(s){t.fail(`Sync failed: ${a(s)}`),process.exit(1)}}),n.command("pull").description("Pull cloud learning data into local SQLite database").option("-f, --full","Full pull (all cloud data)").option("-e, --env <environment>","Pull only data from specific environment","all").option("--tables <tables>","Comma-separated list of tables to pull").option("--dry-run","Preview pull without writing to local DB").option("--target <path>","Custom target SQLite database path").option("--since <date>","Pull changes since date (ISO 8601)").option("-v, --verbose","Enable verbose output").action(async l=>{let o={environment:l.env,verbose:l.verbose,dryRun:l.dryRun,targetDb:l.target};l.tables&&(o.tables=l.tables.split(",").map(s=>s.trim()));let t=d("Initializing pull sync agent...").start();try{let s;if(l.full)t.text="Pulling all data from cloud...",s=await b(o);else{let c=l.since?new Date(l.since):void 0;t.text=`Pulling ${c?"changes since "+c.toISOString():"incremental changes (last 24h)"}...`,s=await h(c,o)}t.stop(),D(s)}catch(s){t.fail(`Pull failed: ${a(s)}`),process.exit(1)}}),n.command("status").description("Show sync status and data source information").option("-e, --env <environment>","Environment identifier",process.env.AQE_ENV||"devpod").action(async l=>{let o=d("Checking sync status...").start();try{let t=g({environment:l.env,verbose:!1});await t.initialize();let s=await t.getStatus();await t.close(),o.stop(),P(s)}catch(t){o.fail(`Failed to get status: ${a(t)}`),process.exit(1)}}),n.command("verify").description("Verify sync integrity between local and cloud").option("-e, --env <environment>","Environment identifier",process.env.AQE_ENV||"devpod").action(async l=>{let o=d("Verifying sync integrity...").start();try{let t=g({environment:l.env,verbose:!1});await t.initialize(),o.text="Connecting to cloud...";let s=await t.verify();await t.close(),o.stop(),I(s)}catch(t){o.fail(`Verification failed: ${a(t)}`),process.exit(1)}}),n.command("init").description("Initialize cloud schema (requires GCP credentials)").option("--dry-run","Print schema without executing").option("-o, --output <file>","Save schema to file").action(async l=>{let o=[i.join(R,"../../sync/schema/cloud-schema.sql")],t=y(import.meta.url);t&&(o.push(i.join(t,"src/sync/schema/cloud-schema.sql")),o.push(i.join(t,"dist/sync/schema/cloud-schema.sql"))),o.push(i.join(process.cwd(),"src/sync/schema/cloud-schema.sql"));let s;for(let u of o)try{s=f.readFileSync(u,"utf-8");break}catch{}if(!s)throw new Error(`Could not locate cloud-schema.sql. Searched: ${o.join(", ")}`);if(l.output){f.writeFileSync(l.output,s),console.log(e.green(`Schema saved to ${l.output}`));return}if(l.dryRun){console.log(e.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.15.17");process.exit(0)}
2
+ import{c as r,s as g,t as m,u as p,x as b,y as h}from"./chunk-FAQ24UHB.js";import{a as y}from"./chunk-5WYZVSL2.js";import"./chunk-XPTCQKVE.js";import"./chunk-NZJVDOUN.js";import"./chunk-X5QD76IU.js";import"./chunk-IRHXGCQR.js";import"./chunk-CMN7PU2H.js";import"./chunk-YKRLUTK7.js";import"./chunk-COTQ44YO.js";import"./chunk-U5SMBJ6F.js";import"./chunk-LCWEQRZI.js";import"./chunk-2EQK7B5L.js";import"./chunk-YAJOBZE5.js";import"./chunk-LRKLATSH.js";import"./chunk-ZP5AWQRO.js";import"./chunk-BSIWI4ES.js";import"./chunk-TIVKDIF7.js";import"./chunk-DS5IFRY6.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import"./chunk-JHKKIJT2.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-SFITYZLV.js";import{a,e as S}from"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";import{Command as v}from"commander";import e from"chalk";import d from"ora";S();import*as f from"fs";import*as i from"path";import{fileURLToPath as $}from"url";var C=$(import.meta.url),R=i.dirname(C);function w(){let n=new v("sync").description("Sync local learning data to cloud PostgreSQL");return n.option("--full","Run full sync instead of incremental").option("-e, --env <environment>","Environment identifier",process.env.AQE_ENV||"devpod").option("--dry-run","Preview sync without making changes").option("-v, --verbose","Enable verbose output").option("--since <date>","Sync changes since date (ISO 8601)").option("--sources <sources>","Comma-separated list of sources to sync").action(async l=>{let o={environment:l.env,verbose:l.verbose,sync:{...r.sync,dryRun:l.dryRun}};if(l.sources){let s=l.sources.split(",").map(c=>c.trim());o.sync.sources=r.sync.sources.filter(c=>s.includes(c.name))}let t=d("Initializing sync agent...").start();try{let s;if(l.full)t.text="Running full sync...",s=await m(o);else{let c=l.since?new Date(l.since):void 0;t.text="Running incremental sync...",s=await p(c,o)}t.stop(),E(s)}catch(s){t.fail(`Sync failed: ${a(s)}`),process.exit(1)}}),n.command("pull").description("Pull cloud learning data into local SQLite database").option("-f, --full","Full pull (all cloud data)").option("-e, --env <environment>","Pull only data from specific environment","all").option("--tables <tables>","Comma-separated list of tables to pull").option("--dry-run","Preview pull without writing to local DB").option("--target <path>","Custom target SQLite database path").option("--since <date>","Pull changes since date (ISO 8601)").option("-v, --verbose","Enable verbose output").action(async l=>{let o={environment:l.env,verbose:l.verbose,dryRun:l.dryRun,targetDb:l.target};l.tables&&(o.tables=l.tables.split(",").map(s=>s.trim()));let t=d("Initializing pull sync agent...").start();try{let s;if(l.full)t.text="Pulling all data from cloud...",s=await b(o);else{let c=l.since?new Date(l.since):void 0;t.text=`Pulling ${c?"changes since "+c.toISOString():"incremental changes (last 24h)"}...`,s=await h(c,o)}t.stop(),D(s)}catch(s){t.fail(`Pull failed: ${a(s)}`),process.exit(1)}}),n.command("status").description("Show sync status and data source information").option("-e, --env <environment>","Environment identifier",process.env.AQE_ENV||"devpod").action(async l=>{let o=d("Checking sync status...").start();try{let t=g({environment:l.env,verbose:!1});await t.initialize();let s=await t.getStatus();await t.close(),o.stop(),P(s)}catch(t){o.fail(`Failed to get status: ${a(t)}`),process.exit(1)}}),n.command("verify").description("Verify sync integrity between local and cloud").option("-e, --env <environment>","Environment identifier",process.env.AQE_ENV||"devpod").action(async l=>{let o=d("Verifying sync integrity...").start();try{let t=g({environment:l.env,verbose:!1});await t.initialize(),o.text="Connecting to cloud...";let s=await t.verify();await t.close(),o.stop(),I(s)}catch(t){o.fail(`Verification failed: ${a(t)}`),process.exit(1)}}),n.command("init").description("Initialize cloud schema (requires GCP credentials)").option("--dry-run","Print schema without executing").option("-o, --output <file>","Save schema to file").action(async l=>{let o=[i.join(R,"../../sync/schema/cloud-schema.sql")],t=y(import.meta.url);t&&(o.push(i.join(t,"src/sync/schema/cloud-schema.sql")),o.push(i.join(t,"dist/sync/schema/cloud-schema.sql"))),o.push(i.join(process.cwd(),"src/sync/schema/cloud-schema.sql"));let s;for(let u of o)try{s=f.readFileSync(u,"utf-8");break}catch{}if(!s)throw new Error(`Could not locate cloud-schema.sql. Searched: ${o.join(", ")}`);if(l.output){f.writeFileSync(l.output,s),console.log(e.green(`Schema saved to ${l.output}`));return}if(l.dryRun){console.log(e.cyan(`
3
3
  === Cloud Schema ===
4
4
  `)),console.log(s),console.log(e.yellow(`
5
5
  Dry run - no changes made`));return}let c=d("Initializing cloud schema...").start();try{let u=g({verbose:!0});c.info("Schema initialization requires cloud connection"),c.info("Run with --output to save schema, then apply manually"),await u.close()}catch(u){c.fail(`Init failed: ${a(u)}`),process.exit(1)}}),n.command("config").description("Show or modify sync configuration").option("--show","Show current configuration").option("--sources","List configured data sources").action(async l=>{if(l.sources){console.log(e.cyan(`
@@ -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.15.17");process.exit(0)}
2
+ import{A,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-FAQ24UHB.js";import"./chunk-XPTCQKVE.js";import"./chunk-NZJVDOUN.js";import"./chunk-X5QD76IU.js";import"./chunk-IRHXGCQR.js";import"./chunk-CMN7PU2H.js";import"./chunk-YKRLUTK7.js";import"./chunk-COTQ44YO.js";import"./chunk-U5SMBJ6F.js";import"./chunk-LCWEQRZI.js";import"./chunk-2EQK7B5L.js";import"./chunk-YAJOBZE5.js";import"./chunk-LRKLATSH.js";import"./chunk-ZP5AWQRO.js";import"./chunk-BSIWI4ES.js";import"./chunk-TIVKDIF7.js";import"./chunk-DS5IFRY6.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import"./chunk-JHKKIJT2.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-SFITYZLV.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";export{r as CloudSyncAgent,a as DEFAULT_PULL_CONFIG,c as DEFAULT_SYNC_CONFIG,j as DirectConnectionManager,h as IAPTunnelManager,f as JSONReader,n as PostgresReader,l as PostgresWriter,v as PullSyncAgent,d as SQLiteReader,p as SQLiteWriter,z as SyncEmbeddingGenerator,b as TYPE_MAPPING,k as createConnectionManager,g as createJSONReader,o as createPostgresReader,m as createPostgresWriter,w as createPullSyncAgent,e as createSQLiteReader,q as createSQLiteWriter,s as createSyncAgent,A as createSyncEmbeddingGenerator,i as createTunnelManager,x as pullFromCloud,y as pullIncrementalFromCloud,u as syncIncrementalToCloud,t as syncToCloud};
@@ -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.15.16");process.exit(0)}
2
- import{d as y,e as c}from"./chunk-YLMNVLDK.js";import{b}from"./chunk-6DPYNAOK.js";import{a as w,b as E}from"./chunk-PINSJCM3.js";import"./chunk-BEKDKVQT.js";import"./chunk-QPEOLAAS.js";import{f as I}from"./chunk-UE5ZOZR2.js";import{c as C}from"./chunk-V5NHZV7S.js";import{a as x,b as $,e as h,f as A}from"./chunk-LE4QJREF.js";import"./chunk-AGRV5B3T.js";import"./chunk-U2A7NHZA.js";import"./chunk-KNSRL6NO.js";import"./chunk-AJMJNQMP.js";import o from"chalk";var L=200,R=["status","measured","message","note","notMeasuredReason","notMeasured","warning","error","incompleteChecks"];function O(a,s=L){if(a==null)return["Result: none (the task returned no result)"];let e=[];if(typeof a=="object"&&!Array.isArray(a)){let t=a;for(let i of R)t[i]!==void 0&&e.push(`${i}: ${v(t[i])}`)}let n=c(a).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.15.17");process.exit(0)}
2
+ import{d as y,e as c}from"./chunk-P4OB6WDJ.js";import{b}from"./chunk-HAQJFUAQ.js";import{a as w,b as E}from"./chunk-HVT7RMGV.js";import"./chunk-E7XIMOKW.js";import"./chunk-NQFDJ6BT.js";import{b as I}from"./chunk-HWQPMUSN.js";import"./chunk-EPVPXHL7.js";import{c as C}from"./chunk-CMN7PU2H.js";import{a as x,b as $,e as h,f as A}from"./chunk-REY52O7J.js";import"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-Z7SKUC6P.js";import o from"chalk";var L=200,R=["status","measured","message","note","notMeasuredReason","notMeasured","warning","error","incompleteChecks"];function O(a,s=L){if(a==null)return["Result: none (the task returned no result)"];let e=[];if(typeof a=="object"&&!Array.isArray(a)){let t=a;for(let i of R)t[i]!==void 0&&e.push(`${i}: ${v(t[i])}`)}let n=c(a).split(`
3
3
  `);return e.push("Result:"),e.push(...n.slice(0,s).map(t=>` ${t}`)),n.length>s&&e.push(` \u2026 ${n.length-s} more line(s); --output <file> writes the full result`),e}function v(a){return typeof a=="string"?a:Array.isArray(a)&&a.length===0?"[]":JSON.stringify(a)}function q(a){if(!a||typeof a!="object")return[];let{status:s,error:e,incompleteChecks:n,message:t,notMeasuredReason:i}=a,r=Array.isArray(n)?n.filter(u=>typeof u=="string"):[];if(r.length===0&&(s==="incomplete"||s==="failed")&&r.push(typeof e=="string"?e:`result status is ${s}`),r.length===0&&(s==="not-measured"||s==="partial")){let u=[t,i].find(m=>typeof m=="string");r.push(u??`result status is ${s}`)}return r}var S=class{name="task";description="Manage QE tasks";cleanupAndExit;ensureInitialized;constructor(s,e){this.cleanupAndExit=s,this.ensureInitialized=e}register(s,e){let n=s.command("task").description(this.description);n.command("submit <type>").description("Submit a task to the Queen Coordinator").option("-p, --priority <priority>","Task priority (p0|p1|p2|p3)","p1").option("-d, --domain <domain>","Target domain").option("-t, --timeout <ms>","Task timeout in ms","300000").option("--payload <json>","Task payload as JSON","{}").option("--wait","Wait for task completion (required: CLI tasks are not persisted)").option("-o, --output <file>","Write the full task result as JSON to a file").option("--no-progress","Disable progress indicator").action(async(t,i)=>{await this.executeSubmit(t,i,e)}),n.command("list").description("List all tasks").option("-s, --status <status>","Filter by status").option("-p, --priority <priority>","Filter by priority").option("-d, --domain <domain>","Filter by domain").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async t=>{await this.executeList(t,e)}),n.command("cancel <taskId>").description("Cancel a task").action(async t=>{await this.executeCancel(t,e)}),n.command("status <taskId>").description("Get task status").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(t,i)=>{await this.executeTaskStatus(t,i,e)})}async executeSubmit(s,e,n){if(e.domain!==void 0&&!$(e.domain))return console.error(o.red(`
4
4
  Unknown domain: ${e.domain}`)),console.error(o.gray(` Valid domains: ${x.join(", ")}
5
5
  `)),this.cleanupAndExit(1);if(!h(e.priority))return console.error(o.red(`
@@ -1,9 +1,9 @@
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.15.16");process.exit(0)}
2
- import{a as Y,b as w,c as X,d as m,e as k}from"./chunk-5NNNEWLS.js";import"./chunk-24OX5TQJ.js";import"./chunk-67Z5R7RJ.js";import"./chunk-AG2EWGXS.js";import"./chunk-IOYG4VFL.js";import"./chunk-5QO3R3TU.js";import"./chunk-D6COXLYE.js";import"./chunk-GJYHWYXR.js";import"./chunk-32GN3JKR.js";import"./chunk-O5W3FIO6.js";import"./chunk-J7I6PABJ.js";import"./chunk-YPBSUGMI.js";import"./chunk-L2DWPVNJ.js";import"./chunk-5JZRZI4S.js";import"./chunk-NQXXI77K.js";import"./chunk-OAEE6JWQ.js";import"./chunk-HJ6ZGVTB.js";import"./chunk-KITOPKRG.js";import"./chunk-GAHNO6JJ.js";import"./chunk-CJSHWQXP.js";import"./chunk-E3D4GPLP.js";import"./chunk-P3EYRILV.js";import{a as K}from"./chunk-VWPM27GU.js";import"./chunk-ASEOFRIG.js";import"./chunk-MD43XRX5.js";import"./chunk-OCV2XEWQ.js";import"./chunk-DVYHMDFR.js";import"./chunk-LKTTUHLF.js";import"./chunk-AAMLQ2LF.js";import"./chunk-IUBJVHNB.js";import"./chunk-SASBO5Y5.js";import"./chunk-EGYE5UPQ.js";import"./chunk-QPEOLAAS.js";import"./chunk-LRSX2FJM.js";import"./chunk-YRAX7SFJ.js";import"./chunk-TIUKLYAI.js";import"./chunk-5V3TI2LG.js";import"./chunk-VMDFFTCK.js";import"./chunk-KL7OKSU2.js";import"./chunk-Y4PFUMOU.js";import"./chunk-2YZ4G6NW.js";import"./chunk-C5FP5GW3.js";import"./chunk-W5HQUIML.js";import"./chunk-UHEOGZLX.js";import"./chunk-5PBLPQ5T.js";import"./chunk-MAFQV4U4.js";import"./chunk-C6D5AHBO.js";import"./chunk-TVGI32MB.js";import"./chunk-J442IZLE.js";import"./chunk-24QHCVX6.js";import"./chunk-PEQDY4BO.js";import"./chunk-4D4DENG6.js";import"./chunk-LQLPB2T6.js";import"./chunk-NDJ7P2EP.js";import"./chunk-QVDCVD5D.js";import"./chunk-63GMRQ25.js";import"./chunk-ZR2TKVXQ.js";import"./chunk-M7WJCTG3.js";import{b as H}from"./chunk-FL64OUBA.js";import"./chunk-SI6DPU5D.js";import"./chunk-HCH4Y6XX.js";import"./chunk-NVEWF4JV.js";import"./chunk-GFWHUQSF.js";import"./chunk-6ICX3FEG.js";import"./chunk-NZU4ACBZ.js";import{d as N,e as W,f as J,g as V}from"./chunk-UE5ZOZR2.js";import"./chunk-72XSEQMW.js";import"./chunk-ZJH5MU2I.js";import"./chunk-32BPDLRZ.js";import"./chunk-SHKOCGNK.js";import"./chunk-UNGBRZDK.js";import"./chunk-FDDC72IA.js";import"./chunk-525CFDUE.js";import"./chunk-6XXZDV2C.js";import"./chunk-5VZL4UVN.js";import"./chunk-RJIEG3NA.js";import"./chunk-4LQFBY5L.js";import"./chunk-KU2AUFGX.js";import"./chunk-5B5QPCNU.js";import"./chunk-PHT5N7SC.js";import"./chunk-EA4YQVKS.js";import"./chunk-N7HL5PHH.js";import"./chunk-GQ6TUIKY.js";import"./chunk-HVRRLYX6.js";import"./chunk-63ZKI4PX.js";import"./chunk-5LAVKGLH.js";import"./chunk-IOQ6ZQ5W.js";import"./chunk-KVF4NXGQ.js";import"./chunk-SUDMM5SO.js";import"./chunk-JQ3DYUMS.js";import"./chunk-6ZBXSOX6.js";import"./chunk-NO3IV5Q5.js";import"./chunk-QQWBWEJS.js";import"./chunk-XIQW7EFL.js";import"./chunk-JHQCRRJI.js";import"./chunk-DTMAS2GB.js";import"./chunk-5SPCGMBB.js";import"./chunk-SSYAQZXA.js";import"./chunk-ZQ2XW3IP.js";import"./chunk-VXFLJNCA.js";import"./chunk-IOKYCMTJ.js";import"./chunk-HGWXF45W.js";import"./chunk-VJCIEHEF.js";import{B as ye,w as z}from"./chunk-MO55CVMT.js";import"./chunk-CEYSYSK5.js";import"./chunk-WP4RETKG.js";import"./chunk-JDIYMZCQ.js";import"./chunk-V5NHZV7S.js";import"./chunk-S75SOOZL.js";import"./chunk-PPUZWYUG.js";import"./chunk-3HD7E6HN.js";import"./chunk-CRPIYUTJ.js";import"./chunk-F742SZAX.js";import"./chunk-CAKMOVZ6.js";import"./chunk-NAEWCFQT.js";import"./chunk-M4FRQ4TE.js";import"./chunk-DXD6K2ZP.js";import"./chunk-FLNAW7C4.js";import"./chunk-KXCLACFG.js";import{a as _,b as D,e as S,f as x}from"./chunk-LE4QJREF.js";import"./chunk-J4ELZNLY.js";import"./chunk-YAPLJR7K.js";import"./chunk-G5RHFBAY.js";import"./chunk-XIIQ5QTT.js";import"./chunk-A5GBXCP5.js";import"./chunk-L6QSTQME.js";import"./chunk-EK7OLYOZ.js";import{c as U,d as fe}from"./chunk-AGRV5B3T.js";import"./chunk-U2A7NHZA.js";import"./chunk-I7MQIM2U.js";import"./chunk-ZFL436FN.js";import"./chunk-KPRCB5LT.js";import{a as d,e as j}from"./chunk-KNSRL6NO.js";import"./chunk-2H4XH6FT.js";import"./chunk-AJMJNQMP.js";j();var ke={enableLearning:!0,enableRouting:!0,enableGuidance:!0,enableTrajectories:!0,enableExperienceReplay:!0,autoStoreExperiences:!0,minQualityThreshold:.6},q=class t{static instance=null;static initPromise=null;config;enhancedAdapter;disposed=!1;patternsLoaded=!1;qualityThresholdsFromPatterns=null;tasksRecorded=0;successfulTasks=0;failedTasks=0;patternsStored=0;routingRequests=0;activeTrajectories=new Map;constructor(e,r){this.config=e,this.enhancedAdapter=r}static async getInstance(e){if(t.instance&&!t.instance.disposed)return t.instance;if(t.initPromise)return t.initPromise;t.initPromise=t.create(e);try{return t.instance=await t.initPromise,t.instance}finally{t.initPromise=null}}static async create(e){let r={...ke,...e},n=Y({enableTrajectories:r.enableTrajectories,enableExperienceReplay:r.enableExperienceReplay,enablePatternEvolution:!0,autoStoreExperiences:r.autoStoreExperiences,autoConsolidate:!0});await n.initialize();let s=new t(r,n);return await s.loadPatternsFromLoader(),await s.seedInitialPatternsIfNeeded(),console.error("[ReasoningBankService] Initialized with EnhancedReasoningBankAdapter (trajectory + experience + evolution)"),s}async loadPatternsFromLoader(){try{let r=await K().getQualityGateThresholds();if(r){this.qualityThresholdsFromPatterns=r,this.patternsLoaded=!0,console.error("[ReasoningBankService] Loaded quality thresholds from PatternLoader",{tiers:Object.keys(r)});return}console.error("[ReasoningBankService] PatternLoader returned no thresholds, using defaults")}catch(e){console.error("[ReasoningBankService] Failed to load patterns from PatternLoader, using defaults",{error:e instanceof Error?e.message:"Unknown error"})}this.patternsLoaded=!1}async seedInitialPatternsIfNeeded(){try{let e=await this.enhancedAdapter.getStats();if(e.reasoningBank.totalPatterns>0){console.error(`[ReasoningBankService] Found ${e.reasoningBank.totalPatterns} existing patterns, skipping seed`);return}console.error("[ReasoningBankService] Seeding initial QE patterns...");let r=(s,i="string",a=!1)=>({name:s,type:i,required:a,description:`${s} parameter`}),n=[{patternType:"test-template",name:"unit-test-generation",description:"Generate comprehensive unit tests for TypeScript/JavaScript modules",domain:"test-generation",template:{type:"workflow",content:"Analyze module exports, identify edge cases, generate Jest/Vitest tests with proper mocking",variables:[r("modulePath"),r("framework")]},context:{tags:["unit","typescript","jest","vitest"]}},{patternType:"coverage-strategy",name:"coverage-gap-analysis",description:"Identify untested code paths and recommend targeted tests",domain:"coverage-analysis",template:{type:"workflow",content:"Parse coverage report, identify uncovered branches, prioritize by risk, generate recommendations",variables:[r("coveragePath"),r("threshold","number")]},context:{tags:["coverage","analysis","risk"]}},{patternType:"test-template",name:"integration-test-generation",description:"Generate integration tests for API endpoints and service interactions",domain:"test-generation",template:{type:"workflow",content:"Identify API contracts, generate request/response tests, validate error handling",variables:[r("apiPath"),r("framework")]},context:{tags:["integration","api","contract"]}},{patternType:"flaky-fix",name:"flaky-test-remediation",description:"Detect and fix flaky tests through pattern analysis",domain:"test-execution",template:{type:"workflow",content:"Analyze test history, identify timing/race conditions, apply stabilization patterns",variables:[r("testPath"),r("retryCount","number")]},context:{tags:["flaky","stability","retry"]}},{patternType:"error-handling",name:"security-vulnerability-scan",description:"Scan code for security vulnerabilities using OWASP patterns",domain:"security-compliance",template:{type:"workflow",content:"Run SAST analysis, check for injection risks, validate authentication/authorization",variables:[r("targetPath"),r("severity")]},context:{tags:["security","owasp","sast"]}}];for(let s of n)try{await this.enhancedAdapter.storePattern(s),this.patternsStored++}catch(i){console.error(`[ReasoningBankService] Failed to seed pattern ${s.name}:`,i)}console.error(`[ReasoningBankService] Seeded ${n.length} initial patterns`)}catch(e){console.error("[ReasoningBankService] Failed to seed patterns:",e)}}getPatternsLoaded(){return this.patternsLoaded}getQualityThresholdsFromPatterns(){return this.qualityThresholdsFromPatterns}async startTaskTrajectory(e,r,n={}){if(!this.config.enableTrajectories||this.disposed)return e;try{let s=await this.enhancedAdapter.startTaskTrajectory(r,n);return this.activeTrajectories.set(e,s),console.error(`[ReasoningBankService] Started trajectory: task=${e} trajectory=${s}`),s}catch(s){return console.error("[ReasoningBankService] Failed to start trajectory:",s),e}}async recordTrajectoryStep(e,r,n,s){if(!this.config.enableTrajectories||this.disposed)return;let i=this.activeTrajectories.get(e);if(!i){console.error(`[ReasoningBankService] No active trajectory for task ${e}`);return}try{await this.enhancedAdapter.recordTaskStep(i,r,n,s)}catch(a){console.error("[ReasoningBankService] Failed to record trajectory step:",a)}}async endTaskTrajectory(e,r,n){if(!this.config.enableTrajectories||this.disposed)return null;let s=this.activeTrajectories.get(e);if(!s)return console.error(`[ReasoningBankService] No active trajectory for task ${e}`),null;try{let i=await this.enhancedAdapter.endTaskTrajectory(s,r,n);return this.activeTrajectories.delete(e),console.error(`[ReasoningBankService] Ended trajectory: task=${e} success=${r} steps=${i.steps.length} quality=${i.metrics.averageQuality.toFixed(2)}`),i}catch(i){return console.error("[ReasoningBankService] Failed to end trajectory:",i),this.activeTrajectories.delete(e),null}}getActiveTrajectoryId(e){return this.activeTrajectories.get(e)}async recordTaskOutcome(e){if(!(!this.config.enableLearning||this.disposed)){this.tasksRecorded++,e.success?this.successfulTasks++:this.failedTasks++;try{let r={patternId:`task-${e.taskId}`,success:e.success,metrics:{executionTimeMs:e.executionTimeMs,testsPassed:e.metrics?.testsPassed,testsFailed:e.metrics?.testsGenerated?e.metrics.testsGenerated-(e.metrics.testsPassed||0):void 0,coverageImprovement:e.metrics?.coverageImprovement},feedback:e.error};await this.enhancedAdapter.recordPatternOutcome(r),e.success&&(e.qualityScore||.5)>=this.config.minQualityThreshold&&(await this.storeTaskPattern(e),this.patternsStored++),e.agentId&&await this.updateAgentPerformanceFromOutcome(e),console.error(`[ReasoningBankService] Recorded outcome: task=${e.taskId} success=${e.success} quality=${e.qualityScore?.toFixed(2)||"N/A"}`)}catch(r){throw console.error("[ReasoningBankService] Failed to record outcome:",r),r}}}async updateAgentPerformanceFromOutcome(e){if(e.agentId)try{H(e.agentId,{success:e.success,executionTimeMs:e.executionTimeMs,qualityScore:e.qualityScore}),console.error(`[ReasoningBankService] Updated agent performance: agent=${e.agentId} success=${e.success} duration=${e.executionTimeMs}ms`)}catch(r){console.error("[ReasoningBankService] Failed to update agent performance:",r)}}async storeTaskPattern(e){try{let r=[e.taskType,e.domain||"general",e.agentId?`agent:${e.agentId}`:void 0,e.modelTier?`tier:${e.modelTier}`:void 0,e.executionTimeMs?`duration:${e.executionTimeMs}ms`:void 0].filter(n=>n!==void 0);await this.enhancedAdapter.storePattern({patternType:"test-template",name:`${e.taskType}-${e.domain||"general"}`,description:e.task,template:{type:"workflow",content:e.task,variables:[]},context:{tags:r}})}catch(r){console.error("[ReasoningBankService] Failed to store pattern:",r)}}async getRoutingRecommendation(e){if(!this.config.enableRouting||this.disposed)return this.createFallbackRouting(e);this.routingRequests++;try{let r=await this.enhancedAdapter.routeTaskWithExperience(e);if(!r.success)return console.error("[ReasoningBankService] Routing returned error:",r.error),this.createFallbackRouting(e);let n=r.value;return n.experienceGuidance&&console.error(`[ReasoningBankService] Experience guidance: strategy="${n.experienceGuidance.recommendedStrategy}" confidence=${n.experienceGuidance.confidence.toFixed(2)} tokenSavings=${n.experienceGuidance.estimatedTokenSavings}`),console.error(`[ReasoningBankService] Routing: task="${e.task.slice(0,50)}..." -> agent=${n.recommendedAgent} confidence=${n.confidence.toFixed(2)}`),n}catch(r){return console.error("[ReasoningBankService] Routing failed:",r),this.createFallbackRouting(e)}}async getExperienceGuidance(e,r){if(!this.config.enableExperienceReplay||this.disposed)return null;try{return await this.enhancedAdapter.getExperienceGuidance(e,r)}catch(n){return console.error("[ReasoningBankService] Failed to get experience guidance:",n),null}}async getTaskGuidance(e,r){if(!this.config.enableGuidance||this.disposed)return[];try{let n=await this.enhancedAdapter.routeTaskWithExperience({task:e,domain:r});return n.success?n.value.guidance:[]}catch(n){return console.error("[ReasoningBankService] Guidance failed:",n),[]}}async searchPatterns(e,r){return(await this.searchPatternMatches(e,r)).map(n=>n.pattern)}async searchPatternMatches(e,r){if(this.disposed)return[];try{let n=await this.enhancedAdapter.searchPatterns(e,{limit:r?.limit||10,domain:r?.domain});return n.success?n.value:(console.error("[ReasoningBankService] Search returned error:",n.error),[])}catch(n){return console.error("[ReasoningBankService] Search failed:",n),[]}}getPatternSearchStatus(){return this.enhancedAdapter.getPatternSearchStatus()}getExperienceGuidanceStatus(){return!this.config.enableExperienceReplay||this.disposed?null:this.enhancedAdapter.getExperienceGuidanceStatus()}async getStats(){let e=await this.enhancedAdapter.getStats();return{service:{tasksRecorded:this.tasksRecorded,successfulTasks:this.successfulTasks,failedTasks:this.failedTasks,successRate:this.tasksRecorded>0?this.successfulTasks/this.tasksRecorded:0,patternsStored:this.patternsStored,routingRequests:this.routingRequests,patternsLoaded:this.patternsLoaded,activeTrajectories:this.activeTrajectories.size},reasoningBank:e.reasoningBank,adapter:e.adapter}}createFallbackRouting(e){return{recommendedAgent:"qe-test-architect",confidence:.5,alternatives:[],domains:e.domain?[e.domain]:["test-generation"],patterns:[],guidance:[],reasoning:"Fallback routing - ReasoningBank unavailable",latencyMs:0}}isHealthy(){return!this.disposed}async dispose(){this.disposed||(this.disposed=!0,await this.enhancedAdapter.dispose(),this.activeTrajectories.clear(),t.instance=null,console.error("[ReasoningBankService] Disposed"))}static reset(){t.instance&&t.instance.dispose(),t.instance=null,t.initPromise=null}};async function T(t){return q.getInstance(t)}async function Z(t,e,r){return(await T()).startTaskTrajectory(t,e,r)}async function O(t,e,r){return(await T()).endTaskTrajectory(t,e,r)}ye();var he="claude-haiku-4-5-20251001",Te=200,be=5;async function ee(){let t=process.env.ANTHROPIC_API_KEY;if(!t)return;let e=(process.env.ANTHROPIC_BASE_URL??"https://api.anthropic.com").replace(/\/$/,""),r=z();if(!r.isInitialized())return;let n=r.getDatabase();if(!n.prepare("PRAGMA table_info(qe_trajectories)").all().some(o=>o.name==="feedback"))return;let i=n.prepare(`
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.15.17");process.exit(0)}
2
+ import{a as Y,b as w,c as X,d as m,e as k}from"./chunk-2PCEMDIX.js";import"./chunk-INI3Q4CN.js";import"./chunk-VYPVU3JF.js";import"./chunk-2YWYW7NU.js";import"./chunk-WBDWHHKP.js";import"./chunk-YR5QBUHZ.js";import"./chunk-MCXW3DKE.js";import"./chunk-PK34KJH7.js";import"./chunk-OJIUIEI4.js";import"./chunk-SUAZ5Z47.js";import"./chunk-G2X3OLMN.js";import"./chunk-K7WAI662.js";import"./chunk-HFZD5KLR.js";import"./chunk-ECKHDHR2.js";import"./chunk-YCVLKU6H.js";import"./chunk-ZVMSSCTH.js";import"./chunk-VDEKVIP5.js";import"./chunk-ZAQMRFBB.js";import"./chunk-AVHYJ3XP.js";import"./chunk-ORQ2YBRR.js";import"./chunk-JRIJM4LE.js";import"./chunk-VKREKVFI.js";import{a as K}from"./chunk-SAZ4PJBR.js";import"./chunk-WX4PO65Q.js";import"./chunk-VQFV2IPV.js";import"./chunk-IJZFJPHS.js";import"./chunk-QN7HP2UW.js";import"./chunk-5WATBVU6.js";import"./chunk-ZC3KDNJW.js";import"./chunk-PIWGKGWP.js";import"./chunk-AGCS5GSO.js";import"./chunk-X2DWHGCC.js";import"./chunk-NQFDJ6BT.js";import"./chunk-A4BVDYIL.js";import"./chunk-4UKTIQDT.js";import"./chunk-MLMD3I75.js";import"./chunk-CQER6IJ5.js";import"./chunk-JI33PMPZ.js";import"./chunk-DCDSN67A.js";import"./chunk-OWIQR6N2.js";import"./chunk-KR2TAAF6.js";import"./chunk-XEYFZLIT.js";import"./chunk-UOVCTK5L.js";import"./chunk-KT2QCXO6.js";import"./chunk-J6QRNQJF.js";import"./chunk-LV7UIK4Q.js";import"./chunk-DHKSPOUQ.js";import"./chunk-IHQGNDMX.js";import"./chunk-QTQDX4TZ.js";import"./chunk-MGZ6XZHU.js";import"./chunk-P3D7SEHW.js";import"./chunk-PCL5JRKN.js";import"./chunk-776K4ZLE.js";import"./chunk-RKCN4B26.js";import"./chunk-6V6BD6PH.js";import"./chunk-HRUHHHVR.js";import"./chunk-74MDUIAZ.js";import"./chunk-S3DT5TPR.js";import"./chunk-ZWUF27P4.js";import{b as H}from"./chunk-XEMCHGAJ.js";import"./chunk-CVPXHDQU.js";import"./chunk-Q6F3DYZN.js";import"./chunk-C7QLLMYI.js";import"./chunk-DNVRTJKB.js";import"./chunk-S3TBOKAZ.js";import"./chunk-O7VJ3VKD.js";import{a as W,b as J,c as V}from"./chunk-HWQPMUSN.js";import{d as N}from"./chunk-EPVPXHL7.js";import"./chunk-FBSBXCZS.js";import"./chunk-7BSOO3CY.js";import"./chunk-LN7NKE3N.js";import"./chunk-QJSSUBO3.js";import"./chunk-OO2M2QUV.js";import"./chunk-M2YI5YUR.js";import"./chunk-ND72UDVH.js";import"./chunk-LOMT4UC2.js";import"./chunk-LIF6UWHV.js";import"./chunk-DJDVD6RM.js";import"./chunk-45223KK6.js";import"./chunk-TDZ6N43D.js";import"./chunk-POPSZDI2.js";import"./chunk-MVVVGQJ6.js";import"./chunk-XFTX3KLE.js";import"./chunk-IKB3M7OF.js";import"./chunk-6LSZCEW2.js";import"./chunk-ERYADKMZ.js";import"./chunk-J3QFJI2Y.js";import"./chunk-SRBCBVSI.js";import"./chunk-7SNSI4VY.js";import"./chunk-4NKZU2JZ.js";import"./chunk-EUWG2JG4.js";import"./chunk-UHJVZEQA.js";import"./chunk-CVYPMGUM.js";import"./chunk-LG5PPJT7.js";import"./chunk-IJSROBM6.js";import"./chunk-JVWZAE2H.js";import"./chunk-SAEECT23.js";import"./chunk-NKUHMA4T.js";import"./chunk-LRY6UIRI.js";import"./chunk-KTORRIX3.js";import"./chunk-H2LHWZRE.js";import"./chunk-IQL6XRF5.js";import"./chunk-YMUY3TES.js";import"./chunk-XPTCQKVE.js";import"./chunk-ZGV7L4MW.js";import{C as ye,w as z}from"./chunk-NZJVDOUN.js";import"./chunk-X5QD76IU.js";import"./chunk-IRHXGCQR.js";import"./chunk-CMN7PU2H.js";import"./chunk-YKRLUTK7.js";import"./chunk-COTQ44YO.js";import"./chunk-U5SMBJ6F.js";import"./chunk-LCWEQRZI.js";import"./chunk-2EQK7B5L.js";import"./chunk-YAJOBZE5.js";import"./chunk-OWIZBZLN.js";import"./chunk-4EJLHNER.js";import"./chunk-LRKLATSH.js";import"./chunk-CXCMATZ6.js";import"./chunk-ZP5AWQRO.js";import"./chunk-VITV7AEC.js";import{a as _,b as D,e as S,f as x}from"./chunk-REY52O7J.js";import"./chunk-BSIWI4ES.js";import"./chunk-TIVKDIF7.js";import"./chunk-DS5IFRY6.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import"./chunk-JHKKIJT2.js";import"./chunk-R3KBOQ3O.js";import{c as U,d as fe}from"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-U4S74IIZ.js";import"./chunk-QSQNXBD2.js";import"./chunk-SFITYZLV.js";import{a as d,e as j}from"./chunk-J7Q5TXFZ.js";import"./chunk-VLTDW7XJ.js";import"./chunk-Z7SKUC6P.js";j();var ke={enableLearning:!0,enableRouting:!0,enableGuidance:!0,enableTrajectories:!0,enableExperienceReplay:!0,autoStoreExperiences:!0,minQualityThreshold:.6},q=class t{static instance=null;static initPromise=null;config;enhancedAdapter;disposed=!1;patternsLoaded=!1;qualityThresholdsFromPatterns=null;tasksRecorded=0;successfulTasks=0;failedTasks=0;patternsStored=0;routingRequests=0;activeTrajectories=new Map;constructor(e,r){this.config=e,this.enhancedAdapter=r}static async getInstance(e){if(t.instance&&!t.instance.disposed)return t.instance;if(t.initPromise)return t.initPromise;t.initPromise=t.create(e);try{return t.instance=await t.initPromise,t.instance}finally{t.initPromise=null}}static async create(e){let r={...ke,...e},n=Y({enableTrajectories:r.enableTrajectories,enableExperienceReplay:r.enableExperienceReplay,enablePatternEvolution:!0,autoStoreExperiences:r.autoStoreExperiences,autoConsolidate:!0});await n.initialize();let s=new t(r,n);return await s.loadPatternsFromLoader(),await s.seedInitialPatternsIfNeeded(),console.error("[ReasoningBankService] Initialized with EnhancedReasoningBankAdapter (trajectory + experience + evolution)"),s}async loadPatternsFromLoader(){try{let r=await K().getQualityGateThresholds();if(r){this.qualityThresholdsFromPatterns=r,this.patternsLoaded=!0,console.error("[ReasoningBankService] Loaded quality thresholds from PatternLoader",{tiers:Object.keys(r)});return}console.error("[ReasoningBankService] PatternLoader returned no thresholds, using defaults")}catch(e){console.error("[ReasoningBankService] Failed to load patterns from PatternLoader, using defaults",{error:e instanceof Error?e.message:"Unknown error"})}this.patternsLoaded=!1}async seedInitialPatternsIfNeeded(){try{let e=await this.enhancedAdapter.getStats();if(e.reasoningBank.totalPatterns>0){console.error(`[ReasoningBankService] Found ${e.reasoningBank.totalPatterns} existing patterns, skipping seed`);return}console.error("[ReasoningBankService] Seeding initial QE patterns...");let r=(s,i="string",a=!1)=>({name:s,type:i,required:a,description:`${s} parameter`}),n=[{patternType:"test-template",name:"unit-test-generation",description:"Generate comprehensive unit tests for TypeScript/JavaScript modules",domain:"test-generation",template:{type:"workflow",content:"Analyze module exports, identify edge cases, generate Jest/Vitest tests with proper mocking",variables:[r("modulePath"),r("framework")]},context:{tags:["unit","typescript","jest","vitest"]}},{patternType:"coverage-strategy",name:"coverage-gap-analysis",description:"Identify untested code paths and recommend targeted tests",domain:"coverage-analysis",template:{type:"workflow",content:"Parse coverage report, identify uncovered branches, prioritize by risk, generate recommendations",variables:[r("coveragePath"),r("threshold","number")]},context:{tags:["coverage","analysis","risk"]}},{patternType:"test-template",name:"integration-test-generation",description:"Generate integration tests for API endpoints and service interactions",domain:"test-generation",template:{type:"workflow",content:"Identify API contracts, generate request/response tests, validate error handling",variables:[r("apiPath"),r("framework")]},context:{tags:["integration","api","contract"]}},{patternType:"flaky-fix",name:"flaky-test-remediation",description:"Detect and fix flaky tests through pattern analysis",domain:"test-execution",template:{type:"workflow",content:"Analyze test history, identify timing/race conditions, apply stabilization patterns",variables:[r("testPath"),r("retryCount","number")]},context:{tags:["flaky","stability","retry"]}},{patternType:"error-handling",name:"security-vulnerability-scan",description:"Scan code for security vulnerabilities using OWASP patterns",domain:"security-compliance",template:{type:"workflow",content:"Run SAST analysis, check for injection risks, validate authentication/authorization",variables:[r("targetPath"),r("severity")]},context:{tags:["security","owasp","sast"]}}];for(let s of n)try{await this.enhancedAdapter.storePattern(s),this.patternsStored++}catch(i){console.error(`[ReasoningBankService] Failed to seed pattern ${s.name}:`,i)}console.error(`[ReasoningBankService] Seeded ${n.length} initial patterns`)}catch(e){console.error("[ReasoningBankService] Failed to seed patterns:",e)}}getPatternsLoaded(){return this.patternsLoaded}getQualityThresholdsFromPatterns(){return this.qualityThresholdsFromPatterns}async startTaskTrajectory(e,r,n={}){if(!this.config.enableTrajectories||this.disposed)return e;try{let s=await this.enhancedAdapter.startTaskTrajectory(r,n);return this.activeTrajectories.set(e,s),console.error(`[ReasoningBankService] Started trajectory: task=${e} trajectory=${s}`),s}catch(s){return console.error("[ReasoningBankService] Failed to start trajectory:",s),e}}async recordTrajectoryStep(e,r,n,s){if(!this.config.enableTrajectories||this.disposed)return;let i=this.activeTrajectories.get(e);if(!i){console.error(`[ReasoningBankService] No active trajectory for task ${e}`);return}try{await this.enhancedAdapter.recordTaskStep(i,r,n,s)}catch(a){console.error("[ReasoningBankService] Failed to record trajectory step:",a)}}async endTaskTrajectory(e,r,n){if(!this.config.enableTrajectories||this.disposed)return null;let s=this.activeTrajectories.get(e);if(!s)return console.error(`[ReasoningBankService] No active trajectory for task ${e}`),null;try{let i=await this.enhancedAdapter.endTaskTrajectory(s,r,n);return this.activeTrajectories.delete(e),console.error(`[ReasoningBankService] Ended trajectory: task=${e} success=${r} steps=${i.steps.length} quality=${i.metrics.averageQuality.toFixed(2)}`),i}catch(i){return console.error("[ReasoningBankService] Failed to end trajectory:",i),this.activeTrajectories.delete(e),null}}getActiveTrajectoryId(e){return this.activeTrajectories.get(e)}async recordTaskOutcome(e){if(!(!this.config.enableLearning||this.disposed)){this.tasksRecorded++,e.success?this.successfulTasks++:this.failedTasks++;try{let r={patternId:`task-${e.taskId}`,success:e.success,metrics:{executionTimeMs:e.executionTimeMs,testsPassed:e.metrics?.testsPassed,testsFailed:e.metrics?.testsGenerated?e.metrics.testsGenerated-(e.metrics.testsPassed||0):void 0,coverageImprovement:e.metrics?.coverageImprovement},feedback:e.error};await this.enhancedAdapter.recordPatternOutcome(r),e.success&&(e.qualityScore||.5)>=this.config.minQualityThreshold&&(await this.storeTaskPattern(e),this.patternsStored++),e.agentId&&await this.updateAgentPerformanceFromOutcome(e),console.error(`[ReasoningBankService] Recorded outcome: task=${e.taskId} success=${e.success} quality=${e.qualityScore?.toFixed(2)||"N/A"}`)}catch(r){throw console.error("[ReasoningBankService] Failed to record outcome:",r),r}}}async updateAgentPerformanceFromOutcome(e){if(e.agentId)try{H(e.agentId,{success:e.success,executionTimeMs:e.executionTimeMs,qualityScore:e.qualityScore}),console.error(`[ReasoningBankService] Updated agent performance: agent=${e.agentId} success=${e.success} duration=${e.executionTimeMs}ms`)}catch(r){console.error("[ReasoningBankService] Failed to update agent performance:",r)}}async storeTaskPattern(e){try{let r=[e.taskType,e.domain||"general",e.agentId?`agent:${e.agentId}`:void 0,e.modelTier?`tier:${e.modelTier}`:void 0,e.executionTimeMs?`duration:${e.executionTimeMs}ms`:void 0].filter(n=>n!==void 0);await this.enhancedAdapter.storePattern({patternType:"test-template",name:`${e.taskType}-${e.domain||"general"}`,description:e.task,template:{type:"workflow",content:e.task,variables:[]},context:{tags:r}})}catch(r){console.error("[ReasoningBankService] Failed to store pattern:",r)}}async getRoutingRecommendation(e){if(!this.config.enableRouting||this.disposed)return this.createFallbackRouting(e);this.routingRequests++;try{let r=await this.enhancedAdapter.routeTaskWithExperience(e);if(!r.success)return console.error("[ReasoningBankService] Routing returned error:",r.error),this.createFallbackRouting(e);let n=r.value;return n.experienceGuidance&&console.error(`[ReasoningBankService] Experience guidance: strategy="${n.experienceGuidance.recommendedStrategy}" confidence=${n.experienceGuidance.confidence.toFixed(2)} tokenSavings=${n.experienceGuidance.estimatedTokenSavings}`),console.error(`[ReasoningBankService] Routing: task="${e.task.slice(0,50)}..." -> agent=${n.recommendedAgent} confidence=${n.confidence.toFixed(2)}`),n}catch(r){return console.error("[ReasoningBankService] Routing failed:",r),this.createFallbackRouting(e)}}async getExperienceGuidance(e,r){if(!this.config.enableExperienceReplay||this.disposed)return null;try{return await this.enhancedAdapter.getExperienceGuidance(e,r)}catch(n){return console.error("[ReasoningBankService] Failed to get experience guidance:",n),null}}async getTaskGuidance(e,r){if(!this.config.enableGuidance||this.disposed)return[];try{let n=await this.enhancedAdapter.routeTaskWithExperience({task:e,domain:r});return n.success?n.value.guidance:[]}catch(n){return console.error("[ReasoningBankService] Guidance failed:",n),[]}}async searchPatterns(e,r){return(await this.searchPatternMatches(e,r)).map(n=>n.pattern)}async searchPatternMatches(e,r){if(this.disposed)return[];try{let n=await this.enhancedAdapter.searchPatterns(e,{limit:r?.limit||10,domain:r?.domain});return n.success?n.value:(console.error("[ReasoningBankService] Search returned error:",n.error),[])}catch(n){return console.error("[ReasoningBankService] Search failed:",n),[]}}getPatternSearchStatus(){return this.enhancedAdapter.getPatternSearchStatus()}getExperienceGuidanceStatus(){return!this.config.enableExperienceReplay||this.disposed?null:this.enhancedAdapter.getExperienceGuidanceStatus()}async getStats(){let e=await this.enhancedAdapter.getStats();return{service:{tasksRecorded:this.tasksRecorded,successfulTasks:this.successfulTasks,failedTasks:this.failedTasks,successRate:this.tasksRecorded>0?this.successfulTasks/this.tasksRecorded:0,patternsStored:this.patternsStored,routingRequests:this.routingRequests,patternsLoaded:this.patternsLoaded,activeTrajectories:this.activeTrajectories.size},reasoningBank:e.reasoningBank,adapter:e.adapter}}createFallbackRouting(e){return{recommendedAgent:"qe-test-architect",confidence:.5,alternatives:[],domains:e.domain?[e.domain]:["test-generation"],patterns:[],guidance:[],reasoning:"Fallback routing - ReasoningBank unavailable",latencyMs:0}}isHealthy(){return!this.disposed}async dispose(){this.disposed||(this.disposed=!0,await this.enhancedAdapter.dispose(),this.activeTrajectories.clear(),t.instance=null,console.error("[ReasoningBankService] Disposed"))}static reset(){t.instance&&t.instance.dispose(),t.instance=null,t.initPromise=null}};async function T(t){return q.getInstance(t)}async function Z(t,e,r){return(await T()).startTaskTrajectory(t,e,r)}async function O(t,e,r){return(await T()).endTaskTrajectory(t,e,r)}ye();var he="claude-haiku-4-5-20251001",Te=200,be=5;async function ee(){let t=process.env.ANTHROPIC_API_KEY;if(!t)return;let e=(process.env.ANTHROPIC_BASE_URL??"https://api.anthropic.com").replace(/\/$/,""),r=z();if(!r.isInitialized())return;let n=r.getDatabase();if(!n.prepare("PRAGMA table_info(qe_trajectories)").all().some(o=>o.name==="feedback"))return;let i=n.prepare(`
3
3
  SELECT id, task, agent, domain, success
4
4
  FROM qe_trajectories
5
5
  WHERE feedback IS NULL AND ended_at IS NOT NULL
6
6
  ORDER BY ended_at DESC
7
7
  LIMIT ?
8
8
  `).all(be);if(i.length===0)return;let a=n.prepare("UPDATE qe_trajectories SET feedback = ? WHERE id = ?");for(let o of i)try{let c=await Re(o,t,e);c&&await r.writeWhenUnlocked(()=>a.run(JSON.stringify(c),o.id))}catch{}}async function Re(t,e,r){let n=["You are a quality engineering judge scoring a completed task trajectory.","",`Task: ${t.task.slice(0,400)}`,`Agent: ${t.agent??"unknown"}`,`Domain: ${t.domain??"general"}`,`Outcome: ${t.success?"success":"failure"}`,"",'Respond ONLY with JSON: {"quality": 0..1, "reasoning": "\u2264120 chars", "improvement": "\u2264120 chars or omit"}.'].join(`
9
- `),s=await fetch(`${r}/v1/messages`,{method:"POST",headers:{"content-type":"application/json","x-api-key":e,"anthropic-version":"2023-06-01"},body:JSON.stringify({model:he,max_tokens:Te,messages:[{role:"user",content:n}]})});if(!s.ok)return null;let a=(await s.json()).content?.[0]?.text;if(!a)return null;let o=a.match(/\{[\s\S]*\}/);if(!o)return null;try{let c=JSON.parse(o[0]);return typeof c.quality!="number"||typeof c.reasoning!="string"?null:{quality:Math.max(0,Math.min(1,c.quality)),reasoning:c.reasoning.slice(0,200),improvement:typeof c.improvement=="string"?c.improvement.slice(0,200):void 0}}catch{return null}}j();fe();import{existsSync as xe}from"node:fs";import{resolve as we}from"node:path";var te={"ideation-assessment":"qcsd-ideation-swarm"};function B(t){let e=t.toLowerCase();return/\b(security|vulnerabilit|cve|owasp|secret|credential|injection|xss|csrf)\b/.test(e)?"security-compliance":/\b(chaos|resilience|fault.?inject|disaster|failover)\b/.test(e)?"chaos-resilience":/\b(defect|bug.?predict|risk.?assess|mutation)\b/.test(e)?"defect-intelligence":/\b(coverage|uncovered|gap.?analy)\b/.test(e)?"coverage-analysis":/\b(quality|code.?review|maintain|tech.?debt)\b/.test(e)?"quality-assessment":/\b(contract|api.?compat|breaking.?change|pact)\b/.test(e)?"contract-testing":/\b(index|knowledge.?graph|semantic|code.?intel)\b/.test(e)?"code-intelligence":/\b(accessib|a11y|wcag|screen.?read)\b/.test(e)?"visual-accessibility":/\b(requirement|bdd|acceptance|user.?stor)\b/.test(e)?"requirements-validation":/\b(generat.*test|test.*generat|write.*test|create.*test)\b/.test(e)?"test-generation":/\b(run.*test|execut.*test)\b/.test(e)?"test-execution":"test-generation"}var ve=new RegExp([String.raw`\b(?:chaos|resilience)\s+(?:\w+\s+)?(?:tests?|testing|experiments?)\b(?![./\w])`,String.raw`\bfault[\s-]?inject(?:ion|ing)\b(?![./\w])`,String.raw`\binject(?:s|ing)?\s+(?:\w+\s+)?faults?\b(?![./\w])`].join("|")),Se=/\b(?:learning|learned|learnt)\b|\blearn\s+from\b/,re=/\b(?:semantic|code)\s+search\b|\bsearch\s+(?:the\s+)?(?:code(?:base)?|repo(?:sitory)?|source(?:\s+code)?)\b|\bsearch\s+for\b/;function ne(t){let e=t.toLowerCase();return re.test(e)&&!/\bindex|knowledge\s+graph/.test(e)}function se(t){return/\b(?:generat\w*|create|write|add)\s+(?:\w+\s+){0,2}tests?\b/i.test(t)}function ie(t){let e=t.toLowerCase();return/run\s+(?:\w+\s+)*tests?/.test(e)||/execute\s+(?:\w+\s+)*tests?/.test(e)||e.includes("run tests")||e.includes("execute tests")?ve.test(e)?"run-chaos":"execute-tests":e.includes("generate test")||e.includes("create test")||e.includes("write test")?"generate-tests":e.includes("coverage")||e.includes("uncovered")?"analyze-coverage":e.includes("quality")||e.includes("code quality")?"assess-quality":e.includes("defect")||e.includes("bug")||e.includes("predict")?"predict-defects":e.includes("requirement")||e.includes("bdd")||e.includes("acceptance")?"validate-requirements":e.includes("index")||e.includes("knowledge graph")||e.includes("semantic")?"index-code":e.includes("security")||e.includes("vulnerability")||e.includes("owasp")?"scan-security":e.includes("contract")||e.includes("api contract")||e.includes("pact")?"validate-contracts":e.includes("accessibility")||e.includes("a11y")||e.includes("wcag")?"test-accessibility":e.includes("chaos")||e.includes("resilience")||e.includes("fault")?"run-chaos":re.test(e)?"index-code":Se.test(e)?"optimize-learning":e.includes("ideation")||e.includes("quality criteria")||e.includes("htsm")||e.includes("qcsd")||e.includes("testability")||e.includes("pi planning")||e.includes("sprint planning")?"ideation-assessment":"generate-tests"}var g=(t,e)=>({kind:"needs-input",error:`task_orchestrate inferred '${t}' from the description, but ${e}`});async function M(t,e){let{accepted:r,skipped:n}=await V(e,U());if(n.length>0){let s=n.map(i=>`${i.path} (${i.reason})`).join(", ");return g(t,`these filePaths cannot be read: ${s}. Pass regular files inside the project.`)}return{files:r}}var Pe=/\.(?:[cm]?[jt]sx?|py|go|rs|java|kt|cs|rb|php|swift|info|lcov|json|xml)$/i,Ae=/^(?:for|of|in|under|on)$/i;function ae(t){let e=t.split(/\s+/).map(s=>s.replace(/^[`'"(]+|[`'",;:!?)]+$|\.$/g,"")).filter(Boolean),r=e.filter(s=>!/^https?:/i.test(s)&&(/[\\/]/.test(s)||Pe.test(s)));if(r.length>0)return[...new Set(r)];let n=e.filter((s,i)=>i>0&&Ae.test(e[i-1])&&/^[\w.-]+$/.test(s)&&xe(we(s)));return[...new Set(n)]}async function Ee(t){let e="analyze-coverage",r=t.filePaths??[],n=r.length>0?r:ae(t.task);if(n.length>1)return g(e,`coverage is analyzed for one target, and ${r.length>0?"filePaths":"the description"} names ${n.length} (${n.join(", ")}). Pass one file or directory, or use coverage_analyze_sublinear with a target.`);let s=n[0]??".";if(s!=="."){let i=await N(e,"target",s,{allowDirectory:!0,allowMissing:!0});if(!i.success)return g(e,`the ${i.error.message.replace(/^Invalid [\w-]+ payload: /,"")}`)}return{kind:"route",type:e,domain:"coverage-analysis",executionOwner:"caller",payload:{target:s,detectGaps:!0}}}async function Ie(t){let e="generate-tests";if((t.filePaths??[]).length>0)return{kind:"as-inferred"};let r=ae(t.task);if(r.length===0){let s=se(t.task)?"no source files were given and the description names none.":"no task type could be inferred from the description, and test generation (the fallback) needs source files: none were given and the description names none.";return g(e,`${s} Pass filePaths with the source files to generate tests for, or use test_generate_enhanced, or task_submit with a task type and its payload.`)}let n=await M(e,r);return"kind"in n?n:{kind:"route",type:e,domain:"test-generation",payload:{sourceFiles:n.files}}}async function oe(t,e){let r=e.filePaths??[];switch(t){case"scan-security":{if(r.length===0)return g(t,"no files to scan were given. Pass filePaths with the source files to scan, or use security_scan_comprehensive with a target.");let n=await M(t,r);return"kind"in n?n:{kind:"route",type:"sast-scan",domain:"security-compliance",payload:{files:n.files}}}case"index-code":return ne(e.task)?g(t,"the description asks for a code search, which task_orchestrate does not run: the code-intelligence search can report no results for code that exists (#1224). Search the source directly (e.g. grep), or use code_index with a target for dependency and impact analysis."):r.length===0?g(t,"no files to index were given. Pass filePaths with the files to index, or use code_index with a target."):{kind:"as-inferred"};case"assess-quality":{if(r.length===0)return g(t,"no source files were given. Pass filePaths with the source files to assess, or use quality_assess.");let n=await M(t,r);return"kind"in n?n:{kind:"route",type:"analyze-quality",domain:"quality-assessment",payload:{sourceFiles:n.files}}}case"analyze-coverage":return Ee(e);case"test-accessibility":return g(t,"an accessibility audit needs a browser run against the page (axe-core, pa11y or Lighthouse), and the domain task handler cannot guarantee one. Use accessibility_test with the page URL.");case"optimize-learning":return g(t,"learning optimization overwrites the stored learned strategies, so it is not run from a description. Use task_submit with type optimize-strategies in domain learning-optimization.");case"run-chaos":return g(t,"a chaos run needs an experiment, or a fault type and target, which a description does not provide. Use chaos_test, or task_submit with type run-experiment (experimentId) or inject-fault (faultType, target) in domain chaos-resilience.");case"validate-contracts":return g(t,"contract validation needs the API contract itself. Use contract_validate, or task_submit with type validate-contract and payload.contract in domain contract-testing.");case"validate-requirements":return g(t,"requirement validation needs a structured requirement (title, description, acceptance criteria). Use requirements_validate, or task_submit with type validate and payload.requirement in domain requirements-validation.");case"generate-tests":return Ie(e);default:return{kind:"as-inferred"}}}async function je(t,e,r){let n;try{n=await T()}catch(h){return{experienceGuidance:null,patternHintMatches:[],learning:{patternSearch:"unavailable",reason:d(h)}}}let s=n.getPatternSearchStatus(),i=n.getExperienceGuidanceStatus(),a=await n.getExperienceGuidance(t,e),o=await n.searchPatternMatches(t,{limit:5,domain:r}).catch(()=>[]),c=ce(s,n.getPatternSearchStatus()),f=n.getExperienceGuidanceStatus(),u=i&&f?ce(i,f):f;return{experienceGuidance:a,patternHintMatches:o,learning:{patternSearch:c.mode,...c.reason?{reason:c.reason}:{},...u?{experienceGuidance:u}:{}}}}function ce(t,e){return t.mode==="vector"?e:t}async function st(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};if(t.filePaths!==void 0){let n=W(t.filePaths,"filePaths","Invalid task_orchestrate params");if(!n.success)return{success:!1,error:n.error.message}}if(t.priority!==void 0&&de(t.priority)===void 0)return{success:!1,error:Oe(t.priority)};let{queen:e,workflowOrchestrator:r}=m();try{let n=t.context?.project||B(t.task),s=t.priority==="critical"||/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(t.task),a=await(await w()).routeTask({task:t.task,codeContext:t.codeContext,filePaths:t.filePaths,manualTier:t.manualTier,isCritical:s,agentType:`qe-${n}`,domain:n,metadata:{inferredDomain:n,hasCodeContext:!!t.codeContext,fileCount:t.filePaths?.length}}),{experienceGuidance:o,patternHintMatches:c,learning:f}=await je(t.task,t.context?.project,t.context?.project??n),u=ie(t.task),h=de(t.priority??"medium")??"p2",P=te[u];if(P&&r){console.log(`[TaskOrchestrate] Task type '${u}' has workflow '${P}' - executing workflow`);let l=t.task.match(/https?:\/\/[^\s]+/i),b=l?l[0]:void 0;b&&console.log(`[TaskOrchestrate] Detected URL for analysis: ${b}`);let C={targetId:t.context?.project||b||`task-${Date.now()}`,targetType:b?"website":"epic",description:t.task,acceptanceCriteria:t.context?.requirements||[],url:b,routing:{tier:a.decision.tier,modelId:a.modelId,executionStrategy:a.executionStrategy,complexity:a.decision.complexityAnalysis.overall},patternHints:c.length>0?c.map(({pattern:R,similarity:le,score:ge,matchType:me,canReuse:pe})=>({patternId:R.id,name:R.name,description:R.description,confidence:R.confidence,similarity:le,score:ge,matchType:me,canReuse:pe})):void 0},v=await r.executeWorkflow(P,C);return v.success?{success:!0,data:{taskId:v.value,type:u,priority:h,strategy:t.strategy||"adaptive",status:"workflow-started",message:`Workflow '${P}' started for task: ${t.task}`,routing:{tier:a.decision.tier,tierName:a.tierInfo.name,modelId:a.modelId,executionStrategy:a.executionStrategy,complexity:a.decision.complexityAnalysis.overall,confidence:a.decision.confidence,useAgentBooster:a.useAgentBooster,rationale:a.decision.rationale,decisionTimeMs:a.decision.metadata.decisionTimeMs},learning:f}}:{success:!1,error:`Workflow execution failed: ${v.error.message}`}}let p=await oe(u,t);if(p.kind==="needs-input")return{success:!1,error:p.error};let A=p.kind==="route"?p.type:u,L=p.kind==="route"?[p.domain]:[],E=p.kind==="route"&&p.executionOwner==="caller"?X():null,G=e.validateTaskExecutable(A,L);if(!G.success)return{success:!1,error:`${G.error.message}. task_orchestrate inferred '${u}' from the description; use task_submit with a supported type and its payload, or the domain's MCP tool.`};let y={description:t.task,strategy:t.strategy||"adaptive",maxAgents:t.maxAgents,context:t.context};u==="generate-tests"&&(y.sourceFiles=t.filePaths||[],y.sourceCode=t.codeContext||"",y.language=y.language||"typescript",y.testType=y.testType||"unit"),u==="index-code"&&(y.paths=t.filePaths||[]),p.kind==="route"&&Object.assign(y,p.payload);let $=await e.submitTask({type:A,...E?{executionOwner:"caller"}:{},priority:h,targetDomains:L,payload:{...y,routing:{tier:a.decision.tier,modelId:a.modelId,executionStrategy:a.executionStrategy,useAgentBooster:a.useAgentBooster,agentBoosterTransform:a.decision.agentBoosterTransform,complexity:a.decision.complexityAnalysis.overall,confidence:a.decision.confidence},experienceGuidance:o?{strategy:o.recommendedStrategy,actions:o.suggestedActions,confidence:o.confidence,tokenSavings:o.estimatedTokenSavings}:void 0,patternHints:c.length>0?c.map(({pattern:l,similarity:b,score:C,matchType:v,canReuse:R})=>({patternId:l.id,name:l.name,description:l.description,confidence:l.confidence,similarity:b,score:C,matchType:v,canReuse:R})):void 0},timeout:6e5});if(!$.success)return{success:!1,error:$.error.message};let I=$.value;f.patternSearch!=="unavailable"&&await Z(I,t.task,{agent:"queen-coordinator",domain:t.context?.project});let Q=E?e.getTaskStatus(I):void 0;return E&&Q&&E.execute(Q.task).catch(l=>{console.error(`[TaskOrchestrate] Task ${I} failed to execute: ${d(l)}`)}),process.env.AQE_TRAJECTORY_JUDGE==="1"&&process.env.ANTHROPIC_API_KEY&&ee().catch(l=>{console.warn("[TrajectoryJudge] failed:",l instanceof Error?l.message:l)}),{success:!0,data:{taskId:I,type:A,...A!==u?{inferredType:u}:{},priority:h,strategy:t.strategy||"adaptive",status:"submitted",message:`Task orchestrated: ${t.task}${o?" (with experience guidance)":""}`,routing:{tier:a.decision.tier,tierName:a.tierInfo.name,modelId:a.modelId,executionStrategy:a.executionStrategy,complexity:a.decision.complexityAnalysis.overall,confidence:a.decision.confidence,useAgentBooster:a.useAgentBooster,rationale:a.decision.rationale,decisionTimeMs:a.decision.metadata.decisionTimeMs},learning:f}}}catch(n){return{success:!1,error:`Failed to orchestrate task: ${d(n)}`}}}function de(t){switch(t){case"critical":return"p0";case"high":return"p1";case"medium":return"p2";case"low":return"p3";default:return S(t)?t:void 0}}function Oe(t){return`${x(t)} (or critical, high, medium, low)`}j();async function dt(t){try{let e=await w(),r=t.domain||B(t.task),n=t.isCritical??/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(t.task),s=await e.routeTask({task:t.task,codeContext:t.codeContext,filePaths:t.filePaths,manualTier:t.manualTier,isCritical:n,agentType:t.agentType||`qe-${r}`,domain:r,metadata:{inferredDomain:r,hasCodeContext:!!t.codeContext,fileCount:t.filePaths?.length}});return{success:!0,data:{tier:s.decision.tier,tierName:s.tierInfo.name,modelId:s.modelId,executionStrategy:s.executionStrategy,useAgentBooster:s.useAgentBooster,agentBoosterTransform:s.decision.agentBoosterTransform,complexity:{overall:s.decision.complexityAnalysis.overall,code:s.decision.complexityAnalysis.codeComplexity,reasoning:s.decision.complexityAnalysis.reasoningComplexity,scope:s.decision.complexityAnalysis.scopeComplexity},confidence:s.decision.confidence,rationale:s.decision.rationale,warnings:s.decision.warnings,budget:{allowed:s.decision.budgetDecision.allowed,wasDowngraded:s.decision.budgetDecision.wasDowngraded,estimatedCostUsd:s.decision.budgetDecision.estimatedCostUsd},decisionTimeMs:s.decision.metadata.decisionTimeMs}}}catch(e){return{success:!1,error:`Failed to route task: ${d(e)}`}}}async function ut(t){try{let e=await w(),r=e.getRoutingStats(),n=e.getMetrics(),s={stats:r,modelRouterMetrics:{totalDecisions:n.totalDecisions,avgDecisionTimeMs:n.avgDecisionTimeMs,agentBoosterStats:n.agentBoosterStats,budgetStats:n.budgetStats}};return t.includeLog&&(s.log=e.getRoutingLog(t.logLimit||100)),{success:!0,data:s}}catch(e){return{success:!1,error:`Failed to get routing metrics: ${d(e)}`}}}async function lt(t){try{let{createRoutingFeedbackCollector:e}=await import("./routing-feedback-FJCRKXNG.js"),{getGlobalCostTracker:r}=await import("./cost-tracker-MMDDNKZB.js"),n=e(100);await n.initialize(),n.enableEconomicRouting({...t.taskComplexity!=null?{}:{}},r());let s=n.getEconomicReport();return s?{success:!0,data:{tierEfficiency:s.tierEfficiency.map(a=>({...a,qualityPerDollar:isFinite(a.qualityPerDollar)?a.qualityPerDollar:"Infinity"})),currentHourlyCostUsd:s.currentHourlyCostUsd,currentDailyCostUsd:s.currentDailyCostUsd,budgetRemaining:s.budgetRemaining,recommendation:s.recommendation,savingsOpportunity:s.savingsOpportunity}}:{success:!1,error:"Economic routing is not available"}}catch(e){return{success:!1,error:`Failed to get economic routing report: ${d(e)}`}}}j();async function yt(t){try{let e=await T(),r={taskId:t.taskId,task:t.task,taskType:t.taskType,success:t.success,executionTimeMs:t.executionTimeMs,agentId:t.agentId,domain:t.domain,modelTier:t.modelTier,qualityScore:t.qualityScore,error:t.error,metrics:t.metrics};await e.recordTaskOutcome(r);let n=t.success&&(t.qualityScore||.5)>=.6;return{success:!0,data:{recorded:!0,patternStored:n,message:n?`Outcome recorded and pattern stored for task ${t.taskId}`:`Outcome recorded for task ${t.taskId}`}}}catch(e){return{success:!1,error:`Failed to record task outcome: ${d(e)}`}}}async function kt(){try{let e=await(await T()).getStats();return{success:!0,data:{service:e.service,patterns:{totalPatterns:e.reasoningBank.totalPatterns,byDomain:e.reasoningBank.byDomain,byTier:e.reasoningBank.byTier,learningOutcomes:e.reasoningBank.learningOutcomes,patternSuccessRate:e.reasoningBank.patternSuccessRate},embeddings:{cacheSize:e.reasoningBank.embeddingCacheSize,dimension:e.reasoningBank.embeddingDimension,transformerAvailable:e.reasoningBank.transformerAvailable},performance:{avgRoutingLatencyMs:e.reasoningBank.avgRoutingLatencyMs,p95RoutingLatencyMs:e.reasoningBank.p95RoutingLatencyMs}}}}catch(t){return{success:!1,error:`Failed to get ReasoningBank stats: ${d(t)}`}}}var ue=new Set;async function ht(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=m();try{let r=e.getTaskStatus(t.taskId);if(!r)return{success:!1,error:`Task not found: ${t.taskId}`};let n={taskId:r.taskId,type:r.task.type,status:r.status,cancellationResultPending:r.cancellationResultPending,priority:r.task.priority,assignedDomain:r.assignedDomain,assignedAgents:r.assignedAgents,result:t.detailed?r.result:void 0,error:r.error,createdAt:r.task.createdAt.toISOString(),startedAt:r.startedAt?.toISOString(),completedAt:r.completedAt?.toISOString(),duration:r.completedAt&&r.startedAt?r.completedAt.getTime()-r.startedAt.getTime():void 0};if((r.status==="completed"||r.status==="failed")&&!ue.has(t.taskId)){ue.add(t.taskId);try{let s=await T(),i=n.duration||0,a=r.status==="completed",o=r.task.payload||{},c=typeof o.description=="string"?o.description:r.task.type,f=o.routing,u=await O(t.taskId,a,r.error),h=u?.metrics.averageQuality??(a?.7:.3);await s.recordTaskOutcome({taskId:t.taskId,task:c,taskType:r.task.type,success:a,executionTimeMs:i,agentId:r.assignedAgents?.[0],domain:r.assignedDomain,modelTier:f?.tier,qualityScore:h,error:r.error,metrics:{testsGenerated:typeof r.result=="object"&&r.result?r.result.testsGenerated:void 0,testsPassed:typeof r.result=="object"&&r.result?r.result.testsPassed:void 0}}),console.error(`[TaskHandler] Recorded learning outcome: task=${t.taskId} success=${a} quality=${h.toFixed(2)} trajectorySteps=${u?.steps.length??0}`)}catch(s){console.error("[TaskHandler] Failed to record outcome:",s)}}return{success:!0,data:n}}catch(r){return{success:!1,error:`Failed to get task status: ${d(r)}`}}}var F=[];function Tt(t){Be(t);let e=t.subscribeToEventType("TaskCompleted",async n=>{let{taskId:s}=n.payload;s&&m().queen?.getTaskStatus(s)?.status!=="cancelled"&&await O(s,!0).catch(()=>{})}),r=t.subscribeToEventType("TaskFailed",async n=>{let{taskId:s,error:i}=n.payload;s&&m().queen?.getTaskStatus(s)?.status!=="cancelled"&&await O(s,!1,i).catch(()=>{})});F=[e,r]}function Be(t){for(let e of F)t.unsubscribe(e);F=[]}async function wt(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let e=t.targetDomains??[];if(!Array.isArray(e)||!e.every(D))return{success:!1,error:`Unknown domain: ${(Array.isArray(e)?e.filter(a=>!D(a)).map(String):[String(e)]).join(", ")}. Valid domains: ${_.join(", ")}`};if(t.priority!==void 0&&!S(t.priority))return{success:!1,error:x(t.priority)};let{queen:r}=m(),n=r.validateTaskExecutable(t.type,e);if(!n.success)return{success:!1,error:n.error.message};let s=J(t.type,t.payload);if(s)return{success:!1,error:s.message};try{let i=await r.submitTask({type:t.type,priority:t.priority||"p1",targetDomains:e,payload:t.payload||{},timeout:t.timeout||3e5});if(!i.success)return{success:!1,error:i.error.message};let a=r.getTaskStatus(i.value);return a?{success:!0,data:{taskId:i.value,type:t.type,priority:t.priority||"p1",status:a.status,error:a.error,assignedDomain:a.assignedDomain}}:{success:!1,error:`Task ${i.value} was accepted but its execution status is unavailable.`}}catch(i){return{success:!1,error:`Failed to submit task: ${d(i)}`}}}async function Pt(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};if(t.priority!==void 0&&!S(t.priority))return{success:!1,error:x(t.priority)};let{queen:e}=m();try{let r=e.listTasks({status:t.status,priority:t.priority,domain:t.domain});return{success:!0,data:(typeof t.limit=="number"?r.slice(0,t.limit):r).map(i=>({taskId:i.taskId,type:i.task.type,status:i.status,cancellationResultPending:i.cancellationResultPending,priority:i.task.priority,assignedDomain:i.assignedDomain,assignedAgents:i.assignedAgents,result:i.result,error:i.error,createdAt:i.task.createdAt.toISOString(),startedAt:i.startedAt?.toISOString(),completedAt:i.completedAt?.toISOString(),duration:i.completedAt&&i.startedAt?i.completedAt.getTime()-i.startedAt.getTime():void 0}))}}catch(r){return{success:!1,error:`Failed to list tasks: ${d(r)}`}}}async function At(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=m();try{let r=e.getTaskStatus(t.taskId);return r?{success:!0,data:{taskId:r.taskId,type:r.task.type,status:r.status,cancellationResultPending:r.cancellationResultPending,priority:r.task.priority,assignedDomain:r.assignedDomain,assignedAgents:r.assignedAgents,result:t.detailed?r.result:void 0,error:r.error,createdAt:r.task.createdAt.toISOString(),startedAt:r.startedAt?.toISOString(),completedAt:r.completedAt?.toISOString(),duration:r.completedAt&&r.startedAt?r.completedAt.getTime()-r.startedAt.getTime():void 0}}:{success:!1,error:`Task not found: ${t.taskId}`}}catch(r){return{success:!1,error:`Failed to get task status: ${d(r)}`}}}async function Et(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=m();try{let r=await e.cancelTask(t.taskId);return r.success?{success:!0,data:{taskId:t.taskId,cancelled:!0,cancellationResultPending:e.getTaskStatus(t.taskId)?.cancellationResultPending??!1}}:{success:!1,error:r.error.message}}catch(r){return{success:!1,error:`Failed to cancel task: ${d(r)}`}}}export{dt as handleModelRoute,kt as handleReasoningBankStats,lt as handleRoutingEconomics,ut as handleRoutingMetrics,Et as handleTaskCancel,Pt as handleTaskList,st as handleTaskOrchestrate,yt as handleTaskOutcomeRecord,At as handleTaskStatus,ht as handleTaskStatusWithLearning,wt as handleTaskSubmit,Tt as subscribeTrajectoryEvents,Be as unsubscribeTrajectoryEvents};
9
+ `),s=await fetch(`${r}/v1/messages`,{method:"POST",headers:{"content-type":"application/json","x-api-key":e,"anthropic-version":"2023-06-01"},body:JSON.stringify({model:he,max_tokens:Te,messages:[{role:"user",content:n}]})});if(!s.ok)return null;let a=(await s.json()).content?.[0]?.text;if(!a)return null;let o=a.match(/\{[\s\S]*\}/);if(!o)return null;try{let c=JSON.parse(o[0]);return typeof c.quality!="number"||typeof c.reasoning!="string"?null:{quality:Math.max(0,Math.min(1,c.quality)),reasoning:c.reasoning.slice(0,200),improvement:typeof c.improvement=="string"?c.improvement.slice(0,200):void 0}}catch{return null}}j();fe();import{existsSync as xe}from"node:fs";import{resolve as we}from"node:path";var te={"ideation-assessment":"qcsd-ideation-swarm"};function B(t){let e=t.toLowerCase();return/\b(security|vulnerabilit|cve|owasp|secret|credential|injection|xss|csrf)\b/.test(e)?"security-compliance":/\b(chaos|resilience|fault.?inject|disaster|failover)\b/.test(e)?"chaos-resilience":/\b(defect|bug.?predict|risk.?assess|mutation)\b/.test(e)?"defect-intelligence":/\b(coverage|uncovered|gap.?analy)\b/.test(e)?"coverage-analysis":/\b(quality|code.?review|maintain|tech.?debt)\b/.test(e)?"quality-assessment":/\b(contract|api.?compat|breaking.?change|pact)\b/.test(e)?"contract-testing":/\b(index|knowledge.?graph|semantic|code.?intel)\b/.test(e)?"code-intelligence":/\b(accessib|a11y|wcag|screen.?read)\b/.test(e)?"visual-accessibility":/\b(requirement|bdd|acceptance|user.?stor)\b/.test(e)?"requirements-validation":/\b(generat.*test|test.*generat|write.*test|create.*test)\b/.test(e)?"test-generation":/\b(run.*test|execut.*test)\b/.test(e)?"test-execution":"test-generation"}var ve=new RegExp([String.raw`\b(?:chaos|resilience)\s+(?:\w+\s+)?(?:tests?|testing|experiments?)\b(?![./\w])`,String.raw`\bfault[\s-]?inject(?:ion|ing)\b(?![./\w])`,String.raw`\binject(?:s|ing)?\s+(?:\w+\s+)?faults?\b(?![./\w])`].join("|")),Se=/\b(?:learning|learned|learnt)\b|\blearn\s+from\b/,re=/\b(?:semantic|code)\s+search\b|\bsearch\s+(?:the\s+)?(?:code(?:base)?|repo(?:sitory)?|source(?:\s+code)?)\b|\bsearch\s+for\b/;function ne(t){let e=t.toLowerCase();return re.test(e)&&!/\bindex|knowledge\s+graph/.test(e)}function se(t){return/\b(?:generat\w*|create|write|add)\s+(?:\w+\s+){0,2}tests?\b/i.test(t)}function ie(t){let e=t.toLowerCase();return/run\s+(?:\w+\s+)*tests?/.test(e)||/execute\s+(?:\w+\s+)*tests?/.test(e)||e.includes("run tests")||e.includes("execute tests")?ve.test(e)?"run-chaos":"execute-tests":e.includes("generate test")||e.includes("create test")||e.includes("write test")?"generate-tests":e.includes("coverage")||e.includes("uncovered")?"analyze-coverage":e.includes("quality")||e.includes("code quality")?"assess-quality":e.includes("defect")||e.includes("bug")||e.includes("predict")?"predict-defects":e.includes("requirement")||e.includes("bdd")||e.includes("acceptance")?"validate-requirements":e.includes("index")||e.includes("knowledge graph")||e.includes("semantic")?"index-code":e.includes("security")||e.includes("vulnerability")||e.includes("owasp")?"scan-security":e.includes("contract")||e.includes("api contract")||e.includes("pact")?"validate-contracts":e.includes("accessibility")||e.includes("a11y")||e.includes("wcag")?"test-accessibility":e.includes("chaos")||e.includes("resilience")||e.includes("fault")?"run-chaos":re.test(e)?"index-code":Se.test(e)?"optimize-learning":e.includes("ideation")||e.includes("quality criteria")||e.includes("htsm")||e.includes("qcsd")||e.includes("testability")||e.includes("pi planning")||e.includes("sprint planning")?"ideation-assessment":"generate-tests"}var g=(t,e)=>({kind:"needs-input",error:`task_orchestrate inferred '${t}' from the description, but ${e}`});async function M(t,e){let{accepted:r,skipped:n}=await V(e,U());if(n.length>0){let s=n.map(i=>`${i.path} (${i.reason})`).join(", ");return g(t,`these filePaths cannot be read: ${s}. Pass regular files inside the project.`)}return{files:r}}var Pe=/\.(?:[cm]?[jt]sx?|py|go|rs|java|kt|cs|rb|php|swift|info|lcov|json|xml)$/i,Ae=/^(?:for|of|in|under|on)$/i;function ae(t){let e=t.split(/\s+/).map(s=>s.replace(/^[`'"(]+|[`'",;:!?)]+$|\.$/g,"")).filter(Boolean),r=e.filter(s=>!/^https?:/i.test(s)&&(/[\\/]/.test(s)||Pe.test(s)));if(r.length>0)return[...new Set(r)];let n=e.filter((s,i)=>i>0&&Ae.test(e[i-1])&&/^[\w.-]+$/.test(s)&&xe(we(s)));return[...new Set(n)]}async function Ee(t){let e="analyze-coverage",r=t.filePaths??[],n=r.length>0?r:ae(t.task);if(n.length>1)return g(e,`coverage is analyzed for one target, and ${r.length>0?"filePaths":"the description"} names ${n.length} (${n.join(", ")}). Pass one file or directory, or use coverage_analyze_sublinear with a target.`);let s=n[0]??".";if(s!=="."){let i=await N(e,"target",s,{allowDirectory:!0,allowMissing:!0});if(!i.success)return g(e,`the ${i.error.message.replace(/^Invalid [\w-]+ payload: /,"")}`)}return{kind:"route",type:e,domain:"coverage-analysis",executionOwner:"caller",payload:{target:s,detectGaps:!0}}}async function Ie(t){let e="generate-tests";if((t.filePaths??[]).length>0)return{kind:"as-inferred"};let r=ae(t.task);if(r.length===0){let s=se(t.task)?"no source files were given and the description names none.":"no task type could be inferred from the description, and test generation (the fallback) needs source files: none were given and the description names none.";return g(e,`${s} Pass filePaths with the source files to generate tests for, or use test_generate_enhanced, or task_submit with a task type and its payload.`)}let n=await M(e,r);return"kind"in n?n:{kind:"route",type:e,domain:"test-generation",payload:{sourceFiles:n.files}}}async function oe(t,e){let r=e.filePaths??[];switch(t){case"scan-security":{if(r.length===0)return g(t,"no files to scan were given. Pass filePaths with the source files to scan, or use security_scan_comprehensive with a target.");let n=await M(t,r);return"kind"in n?n:{kind:"route",type:"sast-scan",domain:"security-compliance",payload:{files:n.files}}}case"index-code":return ne(e.task)?g(t,"the description asks for a code search, which task_orchestrate does not run: the code-intelligence search can report no results for code that exists (#1224). Search the source directly (e.g. grep), or use code_index with a target for dependency and impact analysis."):r.length===0?g(t,"no files to index were given. Pass filePaths with the files to index, or use code_index with a target."):{kind:"as-inferred"};case"assess-quality":{if(r.length===0)return g(t,"no source files were given. Pass filePaths with the source files to assess, or use quality_assess.");let n=await M(t,r);return"kind"in n?n:{kind:"route",type:"analyze-quality",domain:"quality-assessment",payload:{sourceFiles:n.files}}}case"analyze-coverage":return Ee(e);case"test-accessibility":return g(t,"an accessibility audit needs a browser run against the page (axe-core, pa11y or Lighthouse), and the domain task handler cannot guarantee one. Use accessibility_test with the page URL.");case"optimize-learning":return g(t,"learning optimization overwrites the stored learned strategies, so it is not run from a description. Use task_submit with type optimize-strategies in domain learning-optimization.");case"run-chaos":return g(t,"a chaos run needs an experiment, or a fault type and target, which a description does not provide. Use chaos_test, or task_submit with type run-experiment (experimentId) or inject-fault (faultType, target) in domain chaos-resilience.");case"validate-contracts":return g(t,"contract validation needs the API contract itself. Use contract_validate, or task_submit with type validate-contract and payload.contract in domain contract-testing.");case"validate-requirements":return g(t,"requirement validation needs a structured requirement (title, description, acceptance criteria). Use requirements_validate, or task_submit with type validate and payload.requirement in domain requirements-validation.");case"generate-tests":return Ie(e);default:return{kind:"as-inferred"}}}async function je(t,e,r){let n;try{n=await T()}catch(h){return{experienceGuidance:null,patternHintMatches:[],learning:{patternSearch:"unavailable",reason:d(h)}}}let s=n.getPatternSearchStatus(),i=n.getExperienceGuidanceStatus(),a=await n.getExperienceGuidance(t,e),o=await n.searchPatternMatches(t,{limit:5,domain:r}).catch(()=>[]),c=ce(s,n.getPatternSearchStatus()),f=n.getExperienceGuidanceStatus(),u=i&&f?ce(i,f):f;return{experienceGuidance:a,patternHintMatches:o,learning:{patternSearch:c.mode,...c.reason?{reason:c.reason}:{},...u?{experienceGuidance:u}:{}}}}function ce(t,e){return t.mode==="vector"?e:t}async function st(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};if(t.filePaths!==void 0){let n=W(t.filePaths,"filePaths","Invalid task_orchestrate params");if(!n.success)return{success:!1,error:n.error.message}}if(t.priority!==void 0&&de(t.priority)===void 0)return{success:!1,error:Oe(t.priority)};let{queen:e,workflowOrchestrator:r}=m();try{let n=t.context?.project||B(t.task),s=t.priority==="critical"||/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(t.task),a=await(await w()).routeTask({task:t.task,codeContext:t.codeContext,filePaths:t.filePaths,manualTier:t.manualTier,isCritical:s,agentType:`qe-${n}`,domain:n,metadata:{inferredDomain:n,hasCodeContext:!!t.codeContext,fileCount:t.filePaths?.length}}),{experienceGuidance:o,patternHintMatches:c,learning:f}=await je(t.task,t.context?.project,t.context?.project??n),u=ie(t.task),h=de(t.priority??"medium")??"p2",P=te[u];if(P&&r){console.log(`[TaskOrchestrate] Task type '${u}' has workflow '${P}' - executing workflow`);let l=t.task.match(/https?:\/\/[^\s]+/i),b=l?l[0]:void 0;b&&console.log(`[TaskOrchestrate] Detected URL for analysis: ${b}`);let C={targetId:t.context?.project||b||`task-${Date.now()}`,targetType:b?"website":"epic",description:t.task,acceptanceCriteria:t.context?.requirements||[],url:b,routing:{tier:a.decision.tier,modelId:a.modelId,executionStrategy:a.executionStrategy,complexity:a.decision.complexityAnalysis.overall},patternHints:c.length>0?c.map(({pattern:R,similarity:le,score:ge,matchType:me,canReuse:pe})=>({patternId:R.id,name:R.name,description:R.description,confidence:R.confidence,similarity:le,score:ge,matchType:me,canReuse:pe})):void 0},v=await r.executeWorkflow(P,C);return v.success?{success:!0,data:{taskId:v.value,type:u,priority:h,strategy:t.strategy||"adaptive",status:"workflow-started",message:`Workflow '${P}' started for task: ${t.task}`,routing:{tier:a.decision.tier,tierName:a.tierInfo.name,modelId:a.modelId,executionStrategy:a.executionStrategy,complexity:a.decision.complexityAnalysis.overall,confidence:a.decision.confidence,useAgentBooster:a.useAgentBooster,rationale:a.decision.rationale,decisionTimeMs:a.decision.metadata.decisionTimeMs},learning:f}}:{success:!1,error:`Workflow execution failed: ${v.error.message}`}}let p=await oe(u,t);if(p.kind==="needs-input")return{success:!1,error:p.error};let A=p.kind==="route"?p.type:u,L=p.kind==="route"?[p.domain]:[],E=p.kind==="route"&&p.executionOwner==="caller"?X():null,G=e.validateTaskExecutable(A,L);if(!G.success)return{success:!1,error:`${G.error.message}. task_orchestrate inferred '${u}' from the description; use task_submit with a supported type and its payload, or the domain's MCP tool.`};let y={description:t.task,strategy:t.strategy||"adaptive",maxAgents:t.maxAgents,context:t.context};u==="generate-tests"&&(y.sourceFiles=t.filePaths||[],y.sourceCode=t.codeContext||"",y.language=y.language||"typescript",y.testType=y.testType||"unit"),u==="index-code"&&(y.paths=t.filePaths||[]),p.kind==="route"&&Object.assign(y,p.payload);let $=await e.submitTask({type:A,...E?{executionOwner:"caller"}:{},priority:h,targetDomains:L,payload:{...y,routing:{tier:a.decision.tier,modelId:a.modelId,executionStrategy:a.executionStrategy,useAgentBooster:a.useAgentBooster,agentBoosterTransform:a.decision.agentBoosterTransform,complexity:a.decision.complexityAnalysis.overall,confidence:a.decision.confidence},experienceGuidance:o?{strategy:o.recommendedStrategy,actions:o.suggestedActions,confidence:o.confidence,tokenSavings:o.estimatedTokenSavings}:void 0,patternHints:c.length>0?c.map(({pattern:l,similarity:b,score:C,matchType:v,canReuse:R})=>({patternId:l.id,name:l.name,description:l.description,confidence:l.confidence,similarity:b,score:C,matchType:v,canReuse:R})):void 0},timeout:6e5});if(!$.success)return{success:!1,error:$.error.message};let I=$.value;f.patternSearch!=="unavailable"&&await Z(I,t.task,{agent:"queen-coordinator",domain:t.context?.project});let Q=E?e.getTaskStatus(I):void 0;return E&&Q&&E.execute(Q.task).catch(l=>{console.error(`[TaskOrchestrate] Task ${I} failed to execute: ${d(l)}`)}),process.env.AQE_TRAJECTORY_JUDGE==="1"&&process.env.ANTHROPIC_API_KEY&&ee().catch(l=>{console.warn("[TrajectoryJudge] failed:",l instanceof Error?l.message:l)}),{success:!0,data:{taskId:I,type:A,...A!==u?{inferredType:u}:{},priority:h,strategy:t.strategy||"adaptive",status:"submitted",message:`Task orchestrated: ${t.task}${o?" (with experience guidance)":""}`,routing:{tier:a.decision.tier,tierName:a.tierInfo.name,modelId:a.modelId,executionStrategy:a.executionStrategy,complexity:a.decision.complexityAnalysis.overall,confidence:a.decision.confidence,useAgentBooster:a.useAgentBooster,rationale:a.decision.rationale,decisionTimeMs:a.decision.metadata.decisionTimeMs},learning:f}}}catch(n){return{success:!1,error:`Failed to orchestrate task: ${d(n)}`}}}function de(t){switch(t){case"critical":return"p0";case"high":return"p1";case"medium":return"p2";case"low":return"p3";default:return S(t)?t:void 0}}function Oe(t){return`${x(t)} (or critical, high, medium, low)`}j();async function dt(t){try{let e=await w(),r=t.domain||B(t.task),n=t.isCritical??/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(t.task),s=await e.routeTask({task:t.task,codeContext:t.codeContext,filePaths:t.filePaths,manualTier:t.manualTier,isCritical:n,agentType:t.agentType||`qe-${r}`,domain:r,metadata:{inferredDomain:r,hasCodeContext:!!t.codeContext,fileCount:t.filePaths?.length}});return{success:!0,data:{tier:s.decision.tier,tierName:s.tierInfo.name,modelId:s.modelId,executionStrategy:s.executionStrategy,useAgentBooster:s.useAgentBooster,agentBoosterTransform:s.decision.agentBoosterTransform,complexity:{overall:s.decision.complexityAnalysis.overall,code:s.decision.complexityAnalysis.codeComplexity,reasoning:s.decision.complexityAnalysis.reasoningComplexity,scope:s.decision.complexityAnalysis.scopeComplexity},confidence:s.decision.confidence,rationale:s.decision.rationale,warnings:s.decision.warnings,budget:{allowed:s.decision.budgetDecision.allowed,wasDowngraded:s.decision.budgetDecision.wasDowngraded,estimatedCostUsd:s.decision.budgetDecision.estimatedCostUsd},decisionTimeMs:s.decision.metadata.decisionTimeMs}}}catch(e){return{success:!1,error:`Failed to route task: ${d(e)}`}}}async function ut(t){try{let e=await w(),r=e.getRoutingStats(),n=e.getMetrics(),s={stats:r,modelRouterMetrics:{totalDecisions:n.totalDecisions,avgDecisionTimeMs:n.avgDecisionTimeMs,agentBoosterStats:n.agentBoosterStats,budgetStats:n.budgetStats}};return t.includeLog&&(s.log=e.getRoutingLog(t.logLimit||100)),{success:!0,data:s}}catch(e){return{success:!1,error:`Failed to get routing metrics: ${d(e)}`}}}async function lt(t){try{let{createRoutingFeedbackCollector:e}=await import("./routing-feedback-I7VOX2HU.js"),{getGlobalCostTracker:r}=await import("./cost-tracker-NENVSO4A.js"),n=e(100);await n.initialize(),n.enableEconomicRouting({...t.taskComplexity!=null?{}:{}},r());let s=n.getEconomicReport();return s?{success:!0,data:{tierEfficiency:s.tierEfficiency.map(a=>({...a,qualityPerDollar:isFinite(a.qualityPerDollar)?a.qualityPerDollar:"Infinity"})),currentHourlyCostUsd:s.currentHourlyCostUsd,currentDailyCostUsd:s.currentDailyCostUsd,budgetRemaining:s.budgetRemaining,recommendation:s.recommendation,savingsOpportunity:s.savingsOpportunity}}:{success:!1,error:"Economic routing is not available"}}catch(e){return{success:!1,error:`Failed to get economic routing report: ${d(e)}`}}}j();async function yt(t){try{let e=await T(),r={taskId:t.taskId,task:t.task,taskType:t.taskType,success:t.success,executionTimeMs:t.executionTimeMs,agentId:t.agentId,domain:t.domain,modelTier:t.modelTier,qualityScore:t.qualityScore,error:t.error,metrics:t.metrics};await e.recordTaskOutcome(r);let n=t.success&&(t.qualityScore||.5)>=.6;return{success:!0,data:{recorded:!0,patternStored:n,message:n?`Outcome recorded and pattern stored for task ${t.taskId}`:`Outcome recorded for task ${t.taskId}`}}}catch(e){return{success:!1,error:`Failed to record task outcome: ${d(e)}`}}}async function kt(){try{let e=await(await T()).getStats();return{success:!0,data:{service:e.service,patterns:{totalPatterns:e.reasoningBank.totalPatterns,byDomain:e.reasoningBank.byDomain,byTier:e.reasoningBank.byTier,learningOutcomes:e.reasoningBank.learningOutcomes,patternSuccessRate:e.reasoningBank.patternSuccessRate},embeddings:{cacheSize:e.reasoningBank.embeddingCacheSize,dimension:e.reasoningBank.embeddingDimension,transformerAvailable:e.reasoningBank.transformerAvailable},performance:{avgRoutingLatencyMs:e.reasoningBank.avgRoutingLatencyMs,p95RoutingLatencyMs:e.reasoningBank.p95RoutingLatencyMs}}}}catch(t){return{success:!1,error:`Failed to get ReasoningBank stats: ${d(t)}`}}}var ue=new Set;async function ht(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=m();try{let r=e.getTaskStatus(t.taskId);if(!r)return{success:!1,error:`Task not found: ${t.taskId}`};let n={taskId:r.taskId,type:r.task.type,status:r.status,cancellationResultPending:r.cancellationResultPending,priority:r.task.priority,assignedDomain:r.assignedDomain,assignedAgents:r.assignedAgents,result:t.detailed?r.result:void 0,error:r.error,createdAt:r.task.createdAt.toISOString(),startedAt:r.startedAt?.toISOString(),completedAt:r.completedAt?.toISOString(),duration:r.completedAt&&r.startedAt?r.completedAt.getTime()-r.startedAt.getTime():void 0};if((r.status==="completed"||r.status==="failed")&&!ue.has(t.taskId)){ue.add(t.taskId);try{let s=await T(),i=n.duration||0,a=r.status==="completed",o=r.task.payload||{},c=typeof o.description=="string"?o.description:r.task.type,f=o.routing,u=await O(t.taskId,a,r.error),h=u?.metrics.averageQuality??(a?.7:.3);await s.recordTaskOutcome({taskId:t.taskId,task:c,taskType:r.task.type,success:a,executionTimeMs:i,agentId:r.assignedAgents?.[0],domain:r.assignedDomain,modelTier:f?.tier,qualityScore:h,error:r.error,metrics:{testsGenerated:typeof r.result=="object"&&r.result?r.result.testsGenerated:void 0,testsPassed:typeof r.result=="object"&&r.result?r.result.testsPassed:void 0}}),console.error(`[TaskHandler] Recorded learning outcome: task=${t.taskId} success=${a} quality=${h.toFixed(2)} trajectorySteps=${u?.steps.length??0}`)}catch(s){console.error("[TaskHandler] Failed to record outcome:",s)}}return{success:!0,data:n}}catch(r){return{success:!1,error:`Failed to get task status: ${d(r)}`}}}var F=[];function Tt(t){Be(t);let e=t.subscribeToEventType("TaskCompleted",async n=>{let{taskId:s}=n.payload;s&&m().queen?.getTaskStatus(s)?.status!=="cancelled"&&await O(s,!0).catch(()=>{})}),r=t.subscribeToEventType("TaskFailed",async n=>{let{taskId:s,error:i}=n.payload;s&&m().queen?.getTaskStatus(s)?.status!=="cancelled"&&await O(s,!1,i).catch(()=>{})});F=[e,r]}function Be(t){for(let e of F)t.unsubscribe(e);F=[]}async function wt(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let e=t.targetDomains??[];if(!Array.isArray(e)||!e.every(D))return{success:!1,error:`Unknown domain: ${(Array.isArray(e)?e.filter(a=>!D(a)).map(String):[String(e)]).join(", ")}. Valid domains: ${_.join(", ")}`};if(t.priority!==void 0&&!S(t.priority))return{success:!1,error:x(t.priority)};let{queen:r}=m(),n=r.validateTaskExecutable(t.type,e);if(!n.success)return{success:!1,error:n.error.message};let s=J(t.type,t.payload);if(s)return{success:!1,error:s.message};try{let i=await r.submitTask({type:t.type,priority:t.priority||"p1",targetDomains:e,payload:t.payload||{},timeout:t.timeout||3e5});if(!i.success)return{success:!1,error:i.error.message};let a=r.getTaskStatus(i.value);return a?{success:!0,data:{taskId:i.value,type:t.type,priority:t.priority||"p1",status:a.status,error:a.error,assignedDomain:a.assignedDomain}}:{success:!1,error:`Task ${i.value} was accepted but its execution status is unavailable.`}}catch(i){return{success:!1,error:`Failed to submit task: ${d(i)}`}}}async function Pt(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};if(t.priority!==void 0&&!S(t.priority))return{success:!1,error:x(t.priority)};let{queen:e}=m();try{let r=e.listTasks({status:t.status,priority:t.priority,domain:t.domain});return{success:!0,data:(typeof t.limit=="number"?r.slice(0,t.limit):r).map(i=>({taskId:i.taskId,type:i.task.type,status:i.status,cancellationResultPending:i.cancellationResultPending,priority:i.task.priority,assignedDomain:i.assignedDomain,assignedAgents:i.assignedAgents,result:i.result,error:i.error,createdAt:i.task.createdAt.toISOString(),startedAt:i.startedAt?.toISOString(),completedAt:i.completedAt?.toISOString(),duration:i.completedAt&&i.startedAt?i.completedAt.getTime()-i.startedAt.getTime():void 0}))}}catch(r){return{success:!1,error:`Failed to list tasks: ${d(r)}`}}}async function At(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=m();try{let r=e.getTaskStatus(t.taskId);return r?{success:!0,data:{taskId:r.taskId,type:r.task.type,status:r.status,cancellationResultPending:r.cancellationResultPending,priority:r.task.priority,assignedDomain:r.assignedDomain,assignedAgents:r.assignedAgents,result:t.detailed?r.result:void 0,error:r.error,createdAt:r.task.createdAt.toISOString(),startedAt:r.startedAt?.toISOString(),completedAt:r.completedAt?.toISOString(),duration:r.completedAt&&r.startedAt?r.completedAt.getTime()-r.startedAt.getTime():void 0}}:{success:!1,error:`Task not found: ${t.taskId}`}}catch(r){return{success:!1,error:`Failed to get task status: ${d(r)}`}}}async function Et(t){if(!k())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=m();try{let r=await e.cancelTask(t.taskId);return r.success?{success:!0,data:{taskId:t.taskId,cancelled:!0,cancellationResultPending:e.getTaskStatus(t.taskId)?.cancellationResultPending??!1}}:{success:!1,error:r.error.message}}catch(r){return{success:!1,error:`Failed to cancel task: ${d(r)}`}}}export{dt as handleModelRoute,kt as handleReasoningBankStats,lt as handleRoutingEconomics,ut as handleRoutingMetrics,Et as handleTaskCancel,Pt as handleTaskList,st as handleTaskOrchestrate,yt as handleTaskOutcomeRecord,At as handleTaskStatus,ht as handleTaskStatusWithLearning,wt as handleTaskSubmit,Tt as subscribeTrajectoryEvents,Be as unsubscribeTrajectoryEvents};
@@ -0,0 +1,34 @@
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.15.17");process.exit(0)}
2
+ import{b as C,c as O}from"./chunk-XBTGEYED.js";import{d as k,e as b,g as D,k as I}from"./chunk-P4OB6WDJ.js";import{c as G,m as P,n as E}from"./chunk-X2DWHGCC.js";import"./chunk-NQFDJ6BT.js";import{d as U}from"./chunk-CQER6IJ5.js";import"./chunk-OWIQR6N2.js";import"./chunk-EPVPXHL7.js";import"./chunk-CMN7PU2H.js";import"./chunk-REY52O7J.js";import"./chunk-5FSPELOG.js";import"./chunk-TWBZONKT.js";import{c as S,d as W}from"./chunk-GPPTRKEM.js";import"./chunk-TM75GAXG.js";import"./chunk-J7Q5TXFZ.js";import"./chunk-Z7SKUC6P.js";import{Command as L}from"commander";import e from"chalk";W();import*as x from"fs";import*as m from"path";function q(h,i){let y=m.relative(m.resolve(i),m.resolve(h));return y!==""&&!y.startsWith("..")&&!m.isAbsolute(y)}function A(h,i,y){let p=m.resolve(h);if(!q(p,y.projectRoot))return{status:"outside-project",path:p};x.mkdirSync(m.dirname(p),{recursive:!0});try{x.writeFileSync(p,i,{encoding:"utf-8",flag:y.force?"w":"wx"})}catch($){if($.code==="EEXIST")return{status:"exists",path:p};throw $}return{status:"written",path:p}}function Z(h,i,y){let p=new L("test").description("Test generation, execution, scheduling, and load testing").argument("<action>","Action (generate|execute|schedule|load)").argument("[target]","Target file or directory").option("--behavior-examples <path>","JSON specification examples for a single source file").option("-f, --framework <framework>","Test framework (execute: defaults to each project's jest/vitest config; Python files run with pytest)","vitest").option("--project-root <dir>","execute action: run every test file from this directory inside the project (for example a monorepo package); the target is then relative to it. Default: each file runs from its nearest directory with a vitest/jest config").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("--no-save","generate action: print the generated test code instead of writing test files beside the source (#925)").option("--force","generate action: overwrite existing test files instead of skipping them").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($,T,o)=>{if(await y())try{if($==="generate"){console.log(e.blue(`
3
+ Generating tests for ${T||"current directory"}...
4
+ `));let d=await h.kernel.getDomainAPIAsync("test-generation");if(!d){console.log(e.red("Test generation domain not available"));return}let a=await import("path"),w=a.resolve(T||"."),c=C(w,{includeTests:!1});if(c.length===0){console.log(e.yellow("No source files found"));return}console.log(e.gray(` Found ${c.length} source files
5
+ `));let l;if(o.behaviorExamples){if(c.length!==1)throw new Error("--behavior-examples requires exactly one source file");let s=await import("node:fs/promises");l=G(JSON.parse(await s.readFile(o.behaviorExamples,"utf8")))}let n=await d.generateTests({behaviorExamples:l,sourceFiles:c,testType:o.type,framework:o.framework,coverageTarget:80});if(n.success&&n.value){let s=n.value,t=o.format,r=s.tests.filter(u=>u.qualityGateResult?.passed!==!0);if(r.length>0){let u=r.map(g=>{let v=g.qualityGateResult?.issues?.map(j=>j.description).filter(Boolean).join("; ")||"missing passing quality evidence";return`${g.sourceFile}: ${v}`});console.error(e.red(`Generation rejected ${r.length} invalid or unvalidated test artifact(s):`));for(let g of u)console.error(e.red(` - ${g}`));await i(1)}if(t==="json")k(b(s),o.output);else if(t==="markdown"){let u=`# Test Generation Report
6
+
7
+ - **Tests Generated**: ${s.tests.length}
8
+ - **Coverage Estimate**: ${s.coverageEstimate==null?"Unmeasured":s.coverageEstimate+"%"}
9
+ - **Patterns Used**: ${s.patternsUsed.join(", ")||"none"}
10
+
11
+ ## Tests
12
+
13
+ `+s.tests.map(g=>`- **${g.name}** (${g.assertions} assertions) \u2014 \`${g.sourceFile}\``).join(`
14
+ `)+`
15
+ `;k(u,o.output)}else{console.log(e.green(`Generated ${s.tests.length} tests
16
+ `)),console.log(e.cyan(" Tests:"));let u=o.save===!1,g=await import("fs"),v=S(g.statSync(w).isDirectory()?w:a.dirname(w)),j=0,R=0;for(let f of s.tests)if(console.log(` ${e.white(f.name)}`),console.log(e.gray(` Source: ${a.basename(f.sourceFile)}`)),console.log(e.gray(` Assertions: ${f.assertions}`)),f.testCode){if(u){console.log(e.gray(` Would be written to: ${f.testFile} (not written, --no-save)`)),console.log(` ----- ${a.basename(f.testFile)} -----`),console.log(f.testCode),console.log(` ----- end ${a.basename(f.testFile)} -----`);continue}console.log(e.gray(` Test File: ${f.testFile}`));let F=A(f.testFile,f.testCode,{projectRoot:v,force:o.force===!0});F.status==="written"?(console.log(e.green(` Written to: ${F.path}`)),j++):F.status==="exists"?(console.log(e.yellow(` ${F.path} exists, skipped (use --force to overwrite)`)),R++):(console.log(e.red(` ${F.path} is outside the project root ${v}, skipped (not written)`)),R++)}if(!u){let f=R>0?` (${R} skipped)`:"";console.log(e.gray(`
17
+ Wrote ${j} of ${s.tests.length} generated test files${f}.`))}console.log(`
18
+ Coverage Estimate: ${e.yellow(s.coverageEstimate==null?"Unmeasured":s.coverageEstimate+"%")}`),s.patternsUsed.length>0&&console.log(` Patterns Used: ${e.cyan(s.patternsUsed.join(", "))}`),o.save===!1&&console.log(e.gray(" --no-save: no generated test files were written."))}}else console.error(e.red(`Failed: ${n.error?.message||"Unknown error"}`)),await i(1)}else if($==="execute"){console.log(e.blue(`
19
+ Executing tests in ${T||"current directory"}...
20
+ `));let d=await h.kernel.getDomainAPIAsync("test-execution");if(!d){console.log(e.red("Test execution domain not available"));return}let a;if(o.projectRoot!==void 0){let t=await E("test execute",o.projectRoot);if(!t.success)return console.error(e.red(`Failed: ${t.error.message}`)),i(1);a=t.value}let c=(await import("path")).resolve(a??".",T||"."),l=C(c,{testsOnly:!0}),n=O(l,o.framework);if(n.length===0){console.log(e.yellow("No test files found"));return}if(a){let t=await P("test execute",n,a);if(!t.success)return console.error(e.red(`Failed: ${t.error.message}`)),i(1);n=t.value.testFiles}console.log(e.gray(` Found ${n.length} test files
21
+ `));let s=await d.runTests({testFiles:n,framework:p.getOptionValueSource("framework")==="default"?void 0:o.framework,parallel:!0,...a?{projectRoot:a}:{},retryCount:2});if(s.success&&s.value){let t=s.value,r=o.format,u=t.passed+t.failed+t.skipped;if(await h.kernel.memory.set("test-run:latest",{passed:t.passed,failed:t.failed,skipped:t.skipped,duration:t.duration,measuredAt:new Date().toISOString()},{namespace:"test-execution",persist:!0}),await U(h.kernel.memory,{runId:t.runId,passed:t.passed,failed:t.failed,skipped:t.skipped},{source:"aqe test execute"}),r==="json")k(b(t),o.output);else if(r==="junit")k(D(t),o.output);else if(r==="markdown")k(I(t),o.output);else if(console.log(e.green("Test run complete")),console.log(`
22
+ Results:`),console.log(` Total: ${e.white(u)}`),console.log(` Passed: ${e.green(t.passed)}`+(t.flaky?` (${e.yellow(t.flaky)} flaky: passed on a retry)`:"")),console.log(` Failed: ${e.red(t.failed)}`),console.log(` Skipped: ${e.yellow(t.skipped)}`),console.log(` Duration: ${e.cyan(t.duration+"ms")}`),t.retries){let g=t.retries.tests.filter(v=>v.unmatched).length;console.log(` Retries: ${e.white(t.retries.totalRetries)} run, ${e.green(t.retries.nowPassing)} now passing, ${e.red(t.retries.stillFailing)} still failing`+(g>0?`, ${e.yellow(g)} matched no test`:""))}t.failed>0&&await i(1),u>0&&t.skipped/u>.2&&await i(2)}else console.log(e.red(`Failed: ${s.error?.message||"Unknown error"}`)),await i(1)}else if($==="schedule"){let d=o.format;d==="text"&&console.log(e.blue(`
23
+ Running test schedule pipeline...
24
+ `));let{TestScheduleTool:a}=await import("./schedule-G7JMQDUX.js"),c=await new a().invoke({cwd:T||process.cwd(),gitRef:o.gitRef,useGitAware:o.gitAware!==!1,trackFlaky:o.flaky!==!1});if(c.success&&c.data){let l=c.data;if(d==="json")k(b(l),o.output);else{console.log(e.green(` Schedule complete
25
+ `)),console.log(` Phases: ${e.white(l.phases.length)}`);for(let n of l.phases){let s=n.failed===0?e.green:e.red;console.log(` ${e.cyan(n.phaseName)}: ${s(`${n.passed}/${n.totalTests} passed`)} (${n.durationMs}ms)`)}console.log(`
26
+ Git-aware: ${l.gitAware.enabled?e.green(`yes (${l.gitAware.selectedTests} selected)`):e.gray("disabled")}`),console.log(` Duration: ${e.cyan(l.totalDuration+"ms")}`),console.log(`
27
+ ${l.summary}`)}}else console.log(e.red(`Failed: ${c.error||"Unknown error"}`))}else if($==="load"){let d=o.format,a=parseInt(o.agents,10)||10,w=parseInt(o.duration,10)||3e4,c=o.profile,l=!o.real;d==="text"&&console.log(e.blue(`
28
+ Running load test: ${a} agents, ${c} profile, ${w}ms${l?" (mock)":" (real)"}...
29
+ `));let{LoadTestTool:n}=await import("./load-test-7TRIH2WJ.js"),t=await new n().invoke({targetAgents:a,profile:c,durationMs:w,mockMode:l});if(t.success&&t.data){let r=t.data;if(d==="json")k(b(r),o.output);else{let u=r.passed?e.green:e.red;console.log(u(` Load test ${r.passed?"PASSED":"FAILED"}
30
+ `)),console.log(` Profile: ${e.cyan(r.profile)} (${r.mockMode?"mock":"real"})`),console.log(` Agents: ${e.white(r.targetAgents)}`),console.log(` Duration: ${e.cyan(r.duration+"ms")}`),console.log(` Bottlenecks: ${r.bottleneckCount>0?e.red(r.bottleneckCount):e.green("none")}`),r.report.hasCritical&&console.log(e.red(" CRITICAL bottlenecks detected!")),console.log(`
31
+ ${r.summary}`)}r.passed||await i(1)}else console.log(e.red(`Failed: ${t.error||"Unknown error"}`))}else console.log(e.red(`
32
+ Unknown action: ${$}. Use: generate, execute, schedule, or load
33
+ `)),await i(1);console.log(""),await i(0)}catch(d){console.error(e.red(`
34
+ Failed:`),d),await i(1)}});return p}export{Z as createTestCommand};
@@ -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.15.17");process.exit(0)}
2
+ import{a,b,c,d,e}from"./chunk-Q6F3DYZN.js";import"./chunk-Z7SKUC6P.js";e();export{d as runProcessText,c as runTestRunnerProcess,b as terminateTestRunner,a as trackTestRunnerExit};