agentic-qe 3.14.6 → 3.14.8

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 (467) hide show
  1. package/.claude/helpers/.helpers-version +1 -1
  2. package/.claude/helpers/auto-memory-hook.mjs +18 -9
  3. package/.claude/helpers/helpers.manifest.json +6 -5
  4. package/.claude/helpers/hook-handler.cjs +40 -12
  5. package/.claude/helpers/memory.cjs +86 -0
  6. package/.claude/helpers/router.cjs +105 -0
  7. package/.claude/helpers/session.cjs +166 -0
  8. package/.claude/helpers/statusline.cjs +73 -621
  9. package/.claude/skills/skills-manifest.json +1 -1
  10. package/CHANGELOG.md +204 -0
  11. package/assets/skills/skills-manifest.json +1 -1
  12. package/dist/adapters/a2a/notifications/retry-queue.js +5 -0
  13. package/dist/adapters/claude-flow/pretrain-bridge.js +3 -2
  14. package/dist/agents/claim-verifier/verifiers/file-verifier.js +3 -2
  15. package/dist/cli/bundle.js +8 -8
  16. package/dist/cli/chunks/adapter-XYCOXQCC.js +2 -0
  17. package/dist/cli/chunks/{agent-booster-wasm-2YGML6OU.js → agent-booster-wasm-67OKGDGZ.js} +2 -2
  18. package/dist/cli/chunks/{agent-handler-D5SSQYNU.js → agent-handler-4HZEQ3WQ.js} +2 -2
  19. package/dist/cli/chunks/{agent-memory-branch-YHPLTITV.js → agent-memory-branch-IBHZQSRN.js} +2 -2
  20. package/dist/cli/chunks/aqe-learning-engine-DTJCROTG.js +2 -0
  21. package/dist/cli/chunks/{arena-7BGOXGXO.js → arena-EJBIGSF4.js} +2 -2
  22. package/dist/cli/chunks/{arena-MCE6EU7K.js → arena-LCLRGUIK.js} +4 -4
  23. package/dist/cli/chunks/{audit-BMWTQECB.js → audit-PY4JNDQQ.js} +3 -3
  24. package/dist/cli/chunks/base-5TQ34GMD.js +2 -0
  25. package/dist/cli/chunks/{better-sqlite3-PMUNGASU.js → better-sqlite3-2JG5K6XT.js} +2 -2
  26. package/dist/cli/chunks/{brain-handler-QPUFYX7F.js → brain-handler-3UYK55GA.js} +4 -4
  27. package/dist/cli/chunks/{branch-enumerator-WKFDGRN4.js → branch-enumerator-GOSWOX46.js} +2 -2
  28. package/dist/cli/chunks/{browser-VY5HKH5X.js → browser-DC2JV47Z.js} +2 -2
  29. package/dist/cli/chunks/browser-workflow-KWX4ESTJ.js +2 -0
  30. package/dist/cli/chunks/{chunk-FWASDOT2.js → chunk-25EEIAHS.js} +2 -2
  31. package/dist/cli/chunks/{chunk-P6OYS755.js → chunk-3576QGPP.js} +1 -1
  32. package/dist/cli/chunks/{chunk-2TMWAQQ3.js → chunk-3EKG7HFV.js} +4 -4
  33. package/dist/cli/chunks/{chunk-QZANMBIT.js → chunk-3FCHH4VP.js} +1 -1
  34. package/dist/cli/chunks/{chunk-CD542DNJ.js → chunk-3S5IIK32.js} +1 -1
  35. package/dist/cli/chunks/{chunk-5VFPCSK7.js → chunk-3X2JSW3R.js} +1 -1
  36. package/dist/cli/chunks/{chunk-D45SG6CP.js → chunk-4HXFPBAA.js} +1 -1
  37. package/dist/cli/chunks/{chunk-JVNTSNWU.js → chunk-4PY44TKH.js} +2 -2
  38. package/dist/cli/chunks/{chunk-DZ3AUAAB.js → chunk-4RNCVSVN.js} +2 -2
  39. package/dist/cli/chunks/{chunk-JBTPOIAC.js → chunk-56M4QNXU.js} +2 -2
  40. package/dist/cli/chunks/{chunk-H52HZ67P.js → chunk-5X4HDW5W.js} +2 -2
  41. package/dist/cli/chunks/{chunk-UNFFDHER.js → chunk-673XJBGW.js} +10 -32
  42. package/dist/cli/chunks/{chunk-RTFO5UQH.js → chunk-6F7MFHTY.js} +2 -2
  43. package/dist/cli/chunks/{chunk-Y3LZ35OG.js → chunk-6GJWT2OY.js} +2 -2
  44. package/dist/cli/chunks/{chunk-JXGFRBUO.js → chunk-6GNWVPMR.js} +2 -2
  45. package/dist/cli/chunks/{chunk-3EA536JF.js → chunk-6VTC3OHD.js} +2 -2
  46. package/dist/cli/chunks/{chunk-W6HXLH5G.js → chunk-775WGWLL.js} +3 -3
  47. package/dist/cli/chunks/{chunk-TVYY3OCX.js → chunk-77WL5HQW.js} +1 -1
  48. package/dist/cli/chunks/chunk-7STWD4KJ.js +3 -0
  49. package/dist/cli/chunks/{chunk-YSLL6VSL.js → chunk-7TNCEVWX.js} +2 -2
  50. package/dist/cli/chunks/{chunk-Z7WODOTH.js → chunk-7X3LMTRA.js} +2 -2
  51. package/dist/cli/chunks/{chunk-RZZCUIAI.js → chunk-A53MMSGC.js} +2 -2
  52. package/dist/cli/chunks/{chunk-QW6VMTBR.js → chunk-A5CLVZC3.js} +2 -2
  53. package/dist/cli/chunks/{chunk-IG5GNEC6.js → chunk-AEYJ4ZLA.js} +1 -1
  54. package/dist/cli/chunks/{chunk-NMAIY4PX.js → chunk-AJ5PCJQ2.js} +11 -11
  55. package/dist/cli/chunks/{chunk-WO4QMXIG.js → chunk-AJMAKUS3.js} +2 -2
  56. package/dist/cli/chunks/{chunk-2NPKIBAZ.js → chunk-AOD2ES44.js} +2 -2
  57. package/dist/cli/chunks/chunk-AR2S4DOB.js +2 -0
  58. package/dist/cli/chunks/{chunk-257E2A5M.js → chunk-AUFV2G2J.js} +5 -5
  59. package/dist/cli/chunks/{chunk-BVR7RMC5.js → chunk-B2QKBQYD.js} +1 -1
  60. package/dist/cli/chunks/{chunk-B6D2CHEH.js → chunk-BCCSV3RH.js} +1 -1
  61. package/dist/cli/chunks/{chunk-2YXGBZWV.js → chunk-BFIXUKOR.js} +1 -1
  62. package/dist/cli/chunks/chunk-BHPTHC5O.js +4 -0
  63. package/dist/cli/chunks/{chunk-AIRGNL55.js → chunk-BITFGVZ4.js} +2 -2
  64. package/dist/cli/chunks/{chunk-MBRHSU6W.js → chunk-BL6273KR.js} +10 -10
  65. package/dist/cli/chunks/{chunk-SMDN3BQZ.js → chunk-BOIUENWW.js} +1 -1
  66. package/dist/cli/chunks/{chunk-YS4FCTWF.js → chunk-BT3MI2BW.js} +1 -1
  67. package/dist/cli/chunks/{chunk-JZOS5FCX.js → chunk-BTBJ2NLH.js} +2 -2
  68. package/dist/cli/chunks/{chunk-CCK4BF76.js → chunk-BUVJIVFG.js} +1 -1
  69. package/dist/cli/chunks/{chunk-2JVWITNK.js → chunk-BZIPW2PA.js} +56 -80
  70. package/dist/cli/chunks/{chunk-BPEDWS6O.js → chunk-C647D42G.js} +2 -2
  71. package/dist/cli/chunks/{chunk-6U7LNMWZ.js → chunk-CBWM5NOO.js} +3 -3
  72. package/dist/cli/chunks/{chunk-72KXSMWI.js → chunk-CIEXUYY7.js} +1 -1
  73. package/dist/cli/chunks/{chunk-SE4WIB26.js → chunk-CLUHGBLN.js} +4 -4
  74. package/dist/cli/chunks/{chunk-JIXUMYKZ.js → chunk-CQEWL32R.js} +1 -1
  75. package/dist/cli/chunks/{chunk-CM7U6TAX.js → chunk-CXUC7YKA.js} +2 -2
  76. package/dist/cli/chunks/{chunk-7LPR6HJG.js → chunk-D2Y36V5J.js} +2 -2
  77. package/dist/cli/chunks/{chunk-BJTJLJRZ.js → chunk-DSJJHPPS.js} +4 -4
  78. package/dist/cli/chunks/{chunk-ZVWVV4EX.js → chunk-DZHXCOSK.js} +1 -1
  79. package/dist/cli/chunks/{chunk-7Z5LHRC3.js → chunk-EBV3WFIR.js} +2 -2
  80. package/dist/cli/chunks/{chunk-KNNISEDY.js → chunk-EKO5QL2B.js} +1 -1
  81. package/dist/cli/chunks/{chunk-XAS3XRYM.js → chunk-EMOZ5O5S.js} +1 -1
  82. package/dist/cli/chunks/{chunk-62N4NUJH.js → chunk-ES7TAJRJ.js} +2 -2
  83. package/dist/cli/chunks/chunk-EXQGHTPD.js +65 -0
  84. package/dist/cli/chunks/{chunk-Q7EAGKAE.js → chunk-F2WAB4WK.js} +2 -2
  85. package/dist/cli/chunks/{chunk-L4RUBPLR.js → chunk-F57FTFWS.js} +2 -2
  86. package/dist/cli/chunks/{chunk-GGRHV6D7.js → chunk-F6JJNBE5.js} +1 -1
  87. package/dist/cli/chunks/{chunk-3EZOZN25.js → chunk-FRC7AFB4.js} +2 -2
  88. package/dist/cli/chunks/{chunk-RSXXCL4A.js → chunk-G36RZF2Y.js} +1 -1
  89. package/dist/cli/chunks/{chunk-ZSPU4MOS.js → chunk-G3C7Z6FO.js} +2 -2
  90. package/dist/cli/chunks/{chunk-SNOBH4AZ.js → chunk-GA63ESNT.js} +2 -2
  91. package/dist/cli/chunks/{chunk-HNFVJP4I.js → chunk-GHMJFICO.js} +2 -2
  92. package/dist/cli/chunks/{chunk-7D3V65N5.js → chunk-GK5WLUX3.js} +1 -1
  93. package/dist/cli/chunks/{chunk-RETBYIAC.js → chunk-GQJ4QDEN.js} +6 -6
  94. package/dist/cli/chunks/chunk-GVLRE3BV.js +12 -0
  95. package/dist/cli/chunks/{chunk-MW2GGZZ5.js → chunk-H5UH234L.js} +1 -1
  96. package/dist/cli/chunks/{chunk-HM6ZSCPI.js → chunk-HBAFXWSO.js} +1 -1
  97. package/dist/cli/chunks/{chunk-DHVX5UB2.js → chunk-HE3BDBAO.js} +2 -2
  98. package/dist/cli/chunks/{chunk-YFBSPLJG.js → chunk-HHANMCD2.js} +1 -1
  99. package/dist/cli/chunks/chunk-HPVYJ6JH.js +2 -0
  100. package/dist/cli/chunks/{chunk-PX5YDCRH.js → chunk-I6NZFBT3.js} +3 -3
  101. package/dist/cli/chunks/{chunk-5J6W7SIA.js → chunk-ISBOHF6Y.js} +1 -1
  102. package/dist/cli/chunks/{chunk-UCFQALXO.js → chunk-J24AJEDE.js} +2 -2
  103. package/dist/cli/chunks/{chunk-FBMN7B46.js → chunk-J5HTQHJK.js} +2 -2
  104. package/dist/cli/chunks/{chunk-GPYVDFB3.js → chunk-JDOVO4E4.js} +205 -195
  105. package/dist/cli/chunks/chunk-JQAJUXRE.js +2 -0
  106. package/dist/cli/chunks/{chunk-RG52OKAM.js → chunk-JRK5GX56.js} +1 -1
  107. package/dist/cli/chunks/{chunk-I33ERSGB.js → chunk-JRLZ7LZ3.js} +2 -2
  108. package/dist/cli/chunks/{chunk-NQZ5AR3D.js → chunk-JTOFLDU7.js} +2 -2
  109. package/dist/cli/chunks/{chunk-NHWGMJAP.js → chunk-K6EOHGKS.js} +2 -2
  110. package/dist/cli/chunks/{chunk-5QQSIGUA.js → chunk-KKXH25IH.js} +2 -2
  111. package/dist/cli/chunks/{chunk-VGFFFKGK.js → chunk-KNSQWM2E.js} +2 -2
  112. package/dist/cli/chunks/{chunk-B6MOJC3X.js → chunk-L5T32SRF.js} +1 -1
  113. package/dist/cli/chunks/{chunk-WGM35YWL.js → chunk-LKFBW2QM.js} +2 -2
  114. package/dist/cli/chunks/{chunk-AJRUJAAK.js → chunk-LMAI74EP.js} +1 -1
  115. package/dist/cli/chunks/{chunk-C6KWXUFJ.js → chunk-LQVS5IWH.js} +2 -2
  116. package/dist/cli/chunks/{chunk-H5BS5VH7.js → chunk-LRGTPUJA.js} +2 -2
  117. package/dist/cli/chunks/{chunk-3HZS4M3O.js → chunk-LTHV4PIG.js} +2 -2
  118. package/dist/cli/chunks/{chunk-7CUQCCMD.js → chunk-M7QKCHLQ.js} +2 -2
  119. package/dist/cli/chunks/{chunk-CF2ISEOJ.js → chunk-N3ASALOL.js} +2 -2
  120. package/dist/cli/chunks/{chunk-ZCRTRYXK.js → chunk-NEXBTLN6.js} +2 -2
  121. package/dist/cli/chunks/{chunk-VMNWDJIZ.js → chunk-NJEEKYEP.js} +3 -3
  122. package/dist/cli/chunks/{chunk-ZEV3YTO7.js → chunk-NWUFTLSF.js} +2 -2
  123. package/dist/cli/chunks/{chunk-MQROI74N.js → chunk-O4QB2GFL.js} +2 -2
  124. package/dist/cli/chunks/{chunk-GDSXITFH.js → chunk-OA75C4HY.js} +2 -2
  125. package/dist/cli/chunks/{chunk-SESK3ARK.js → chunk-OVMG6EEF.js} +2 -2
  126. package/dist/cli/chunks/{chunk-MUOG6QXR.js → chunk-OX7MJFLC.js} +2 -2
  127. package/dist/cli/chunks/{chunk-ELLBS5RP.js → chunk-OZJQN7YE.js} +2 -2
  128. package/dist/cli/chunks/{chunk-D6CJIGRU.js → chunk-PFXCRRR6.js} +55 -55
  129. package/dist/cli/chunks/{chunk-ZL6SYKUK.js → chunk-PVJLQ2YZ.js} +1 -1
  130. package/dist/cli/chunks/{chunk-6LIHFV7O.js → chunk-QDRFLM77.js} +2 -2
  131. package/dist/cli/chunks/{chunk-H6ZM3PUT.js → chunk-QH7C4PTX.js} +1 -1
  132. package/dist/cli/chunks/chunk-QKM4XT2F.js +2 -0
  133. package/dist/cli/chunks/{chunk-V4DM6ELU.js → chunk-QP7EKLWU.js} +2 -2
  134. package/dist/cli/chunks/{chunk-BAMN2CHI.js → chunk-QPACHVDI.js} +1 -1
  135. package/dist/cli/chunks/{chunk-QDFTT3RF.js → chunk-QQVE65ER.js} +2 -2
  136. package/dist/cli/chunks/{chunk-LL3IGZBI.js → chunk-QYCZYJH7.js} +2 -2
  137. package/dist/cli/chunks/{chunk-DUYOVM5I.js → chunk-R6I5I724.js} +2 -2
  138. package/dist/cli/chunks/{chunk-ENGZ4D5V.js → chunk-RJJIPTVH.js} +2 -2
  139. package/dist/cli/chunks/{chunk-7NITCZWD.js → chunk-RM6OC35G.js} +1 -1
  140. package/dist/cli/chunks/{chunk-Q5XTSMWR.js → chunk-RTD4U7IW.js} +2 -2
  141. package/dist/cli/chunks/{chunk-DBDPRORT.js → chunk-SKJQKOFJ.js} +2 -2
  142. package/dist/cli/chunks/{chunk-ICTXTNQZ.js → chunk-SMBGK7XI.js} +1 -1
  143. package/dist/cli/chunks/{chunk-PI7TJS62.js → chunk-SPS472C5.js} +2 -2
  144. package/dist/cli/chunks/{chunk-IV5UZOHH.js → chunk-SUNXA2UR.js} +2 -2
  145. package/dist/cli/chunks/{chunk-IB27QACC.js → chunk-SVP3BP52.js} +2 -2
  146. package/dist/cli/chunks/{chunk-5OOMJGFN.js → chunk-T4WQPE77.js} +1 -1
  147. package/dist/cli/chunks/{chunk-66VWCR67.js → chunk-T53ZN4NO.js} +2 -2
  148. package/dist/cli/chunks/chunk-T6W2EYHC.js +2 -0
  149. package/dist/cli/chunks/{chunk-EAY2JMZG.js → chunk-T7YCNOW5.js} +2 -2
  150. package/dist/cli/chunks/{chunk-FZOBD67M.js → chunk-TCQWVVSR.js} +1 -1
  151. package/dist/cli/chunks/{chunk-SJUXE4IC.js → chunk-TGRHO4ES.js} +2 -2
  152. package/dist/cli/chunks/{chunk-6RE3X4V5.js → chunk-TP7L4EX6.js} +2 -2
  153. package/dist/cli/chunks/{chunk-6SQM2MUX.js → chunk-TT45RCLN.js} +2 -2
  154. package/dist/cli/chunks/{chunk-AVBJYI5I.js → chunk-TUZNWRYC.js} +1 -1
  155. package/dist/cli/chunks/{chunk-YHKEDEAA.js → chunk-U2QTL5T2.js} +3 -3
  156. package/dist/cli/chunks/chunk-U64QORFO.js +2 -0
  157. package/dist/cli/chunks/{chunk-BBT64TII.js → chunk-UHLZKH6B.js} +4 -4
  158. package/dist/cli/chunks/{chunk-GSF6MB64.js → chunk-UIWXKRTK.js} +2 -2
  159. package/dist/cli/chunks/{chunk-JMONHE4B.js → chunk-UNFE4RPV.js} +1 -1
  160. package/dist/cli/chunks/{chunk-DPYSUDAO.js → chunk-UQGIC5OX.js} +1 -1
  161. package/dist/cli/chunks/{chunk-IAF6T27S.js → chunk-VAXTPLO3.js} +2 -2
  162. package/dist/cli/chunks/{chunk-6SH5VZUD.js → chunk-VCSNNLWL.js} +2 -2
  163. package/dist/cli/chunks/chunk-VSPNIDQK.js +21 -0
  164. package/dist/cli/chunks/{chunk-6OS76PHI.js → chunk-VV2JVYOI.js} +2 -2
  165. package/dist/cli/chunks/{chunk-IQO7UCFR.js → chunk-VW7AXJQS.js} +2 -2
  166. package/dist/cli/chunks/{chunk-UQ32JHES.js → chunk-W7JUD4EZ.js} +2 -2
  167. package/dist/cli/chunks/chunk-WFKE7NZ5.js +12 -0
  168. package/dist/cli/chunks/{chunk-RFNPJK6N.js → chunk-WVEHKAIH.js} +3 -3
  169. package/dist/cli/chunks/{chunk-64VGZQLB.js → chunk-XAESN54Q.js} +1 -1
  170. package/dist/cli/chunks/{chunk-BMAPORJ7.js → chunk-XECZYQT5.js} +2 -2
  171. package/dist/cli/chunks/chunk-XFT4FYTC.js +2 -0
  172. package/dist/cli/chunks/{chunk-Y3UOUNHM.js → chunk-YHX74M7C.js} +2 -2
  173. package/dist/cli/chunks/chunk-YIWBJ637.js +2 -0
  174. package/dist/cli/chunks/{chunk-SDRHUMJB.js → chunk-Z5UZOYQS.js} +2 -2
  175. package/dist/cli/chunks/{chunk-7J6QC567.js → chunk-Z6G3QVZ4.js} +12 -12
  176. package/dist/cli/chunks/ci-5LIV2HW5.js +82 -0
  177. package/dist/cli/chunks/{ci-output-LDT24TS3.js → ci-output-UO5BDFU4.js} +2 -2
  178. package/dist/cli/chunks/{circuit-breaker-F5V4KITU.js → circuit-breaker-UQDPXYRD.js} +2 -2
  179. package/dist/cli/chunks/{claude-flow-setup-DT6WQQVD.js → claude-flow-setup-62QES3QX.js} +2 -2
  180. package/dist/cli/chunks/client-AJZKCP4I.js +2 -0
  181. package/dist/cli/chunks/{cline-installer-G7TJOAEX.js → cline-installer-X7VZTSZG.js} +2 -2
  182. package/dist/cli/chunks/{code-PGE6A42V.js → code-H3BF4L4H.js} +3 -3
  183. package/dist/cli/chunks/{code-index-extractor-RNITH372.js → code-index-extractor-BJGFZGGL.js} +2 -2
  184. package/dist/cli/chunks/{codex-installer-LBX77AI3.js → codex-installer-KVZWKU6S.js} +2 -2
  185. package/dist/cli/chunks/{completions-4AWLAARX.js → completions-YMILE6V7.js} +2 -2
  186. package/dist/cli/chunks/{complexity-analyzer-ZPNSS476.js → complexity-analyzer-J26N2PWG.js} +2 -2
  187. package/dist/cli/chunks/{continuedev-installer-UAPWX6OA.js → continuedev-installer-MAR42OV7.js} +2 -2
  188. package/dist/cli/chunks/{copilot-installer-BJN2YJGI.js → copilot-installer-CVOJF6OT.js} +2 -2
  189. package/dist/cli/chunks/core-handlers-MQHEMGDV.js +2 -0
  190. package/dist/cli/chunks/{cost-tracker-MHP2VJ63.js → cost-tracker-SXLWXE55.js} +2 -2
  191. package/dist/cli/chunks/{coverage-PQB4IEFG.js → coverage-D7HCHFP3.js} +3 -3
  192. package/dist/cli/chunks/cross-domain-router-3QNMZV5R.js +2 -0
  193. package/dist/cli/chunks/{cursor-installer-ZXBWYAS3.js → cursor-installer-X37VHIKW.js} +2 -2
  194. package/dist/cli/chunks/{daemon-64C7R6OJ.js → daemon-JN7SOH6F.js} +4 -4
  195. package/dist/cli/chunks/{daemon-N2BEGEFY.js → daemon-LIW47IDM.js} +4 -4
  196. package/dist/cli/chunks/{dag-attention-scheduler-SPZDAPNL.js → dag-attention-scheduler-QCHHIZBT.js} +2 -2
  197. package/dist/cli/chunks/{detect-LXJBSSZW.js → detect-WRFCWAX5.js} +2 -2
  198. package/dist/cli/chunks/{dist-node-U3TKZ2IZ.js → dist-node-6FWT4XZO.js} +2 -2
  199. package/dist/cli/chunks/{domain-handler-3DDWUVSR.js → domain-handler-SNFPNMRT.js} +2 -2
  200. package/dist/cli/chunks/{domain-plugins-JJVWI4OQ.js → domain-plugins-MXKHH62P.js} +2 -2
  201. package/dist/cli/chunks/domain-transfer-47UJNERX.js +2 -0
  202. package/dist/cli/chunks/dream-OSWAITPT.js +2 -0
  203. package/dist/cli/chunks/{embed-and-insert-pattern-JPAR7TXX.js → embed-and-insert-pattern-LZFAUNBQ.js} +2 -2
  204. package/dist/cli/chunks/{eval-SOLG23EA.js → eval-AMUXTMJB.js} +2 -2
  205. package/dist/cli/chunks/{experience-capture-middleware-T7G2VOOD.js → experience-capture-middleware-3D65TR2C.js} +4 -4
  206. package/dist/cli/chunks/{fast-paths-32N3ELI4.js → fast-paths-Y7BBMM56.js} +2 -2
  207. package/dist/cli/chunks/{feature-flags-APJDQ4N7.js → feature-flags-JMQQ7JW4.js} +2 -2
  208. package/dist/cli/chunks/{feature-flags-NAHKLDRN.js → feature-flags-VESRRQ6V.js} +2 -2
  209. package/dist/cli/chunks/{file-discovery-YKVM3MDB.js → file-discovery-JJKQQUV6.js} +2 -2
  210. package/dist/cli/chunks/{fleet-55M5CJS4.js → fleet-WIGHICJF.js} +4 -4
  211. package/dist/cli/chunks/{gnn-wrapper-UD6E6S6Z.js → gnn-wrapper-BFNPETTT.js} +2 -2
  212. package/dist/cli/chunks/{heartbeat-handler-OYVW3VSC.js → heartbeat-handler-HDXKTGUI.js} +4 -4
  213. package/dist/cli/chunks/heartbeat-scheduler-BVRVVIE2.js +2 -0
  214. package/dist/cli/chunks/hnsw-adapter-MZTHXULS.js +2 -0
  215. package/dist/cli/chunks/hnsw-index-KHEX4VDG.js +2 -0
  216. package/dist/cli/chunks/{hnsw-legacy-bridge-HBYIS3ZW.js → hnsw-legacy-bridge-6A7OTAPT.js} +2 -2
  217. package/dist/cli/chunks/{hnswlib-node-EQPM42OU.js → hnswlib-node-LKV2H47B.js} +2 -2
  218. package/dist/cli/chunks/{hooks-5ZSSJWO6.js → hooks-KDSFYQQG.js} +10 -10
  219. package/dist/cli/chunks/hybrid-backend-2B3LCLR4.js +2 -0
  220. package/dist/cli/chunks/{hypergraph-engine-XBGVQ4PD.js → hypergraph-engine-GDLPEPUC.js} +2 -2
  221. package/dist/cli/chunks/{hypergraph-handler-CAWAQ673.js → hypergraph-handler-4UMFA2EW.js} +3 -3
  222. package/dist/cli/chunks/impact-analyzer-4R4VWOGQ.js +2 -0
  223. package/dist/cli/chunks/{init-handler-PRHXSARK.js → init-handler-4GCHPQHD.js} +16 -14
  224. package/dist/cli/chunks/init-wizard-TAOPXHHD.js +2 -0
  225. package/dist/cli/chunks/kernel-6I6VZUWY.js +2 -0
  226. package/dist/cli/chunks/{kilocode-installer-F7LXBM7I.js → kilocode-installer-HJZMT2G5.js} +2 -2
  227. package/dist/cli/chunks/{kiro-installer-NM723ZRG.js → kiro-installer-WUPY67HG.js} +2 -2
  228. package/dist/cli/chunks/knowledge-graph-KFMTTUR5.js +2 -0
  229. package/dist/cli/chunks/{learning-5QYIDHH3.js → learning-AXKIS7IG.js} +4 -4
  230. package/dist/cli/chunks/{llm-router-43HKWPSX.js → llm-router-HUDPNZLJ.js} +4 -4
  231. package/dist/cli/chunks/llm-router-service-2D74XVM3.js +2 -0
  232. package/dist/cli/chunks/{load-5YDBWSCS.js → load-RM44POD7.js} +2 -2
  233. package/dist/cli/chunks/load-test-53FWOWNS.js +2 -0
  234. package/dist/cli/chunks/{mcp-UMAPMNMY.js → mcp-5JVQRBOP.js} +2 -2
  235. package/dist/cli/chunks/{memory-FWCPCQFP.js → memory-VGZ2V6PL.js} +5 -5
  236. package/dist/cli/chunks/memory-backend-KFJDDPEZ.js +2 -0
  237. package/dist/cli/chunks/memory-handlers-EI537Z32.js +2 -0
  238. package/dist/cli/chunks/{multi-model-executor-2XTBGLE4.js → multi-model-executor-WPRKCSCM.js} +2 -2
  239. package/dist/cli/chunks/{opencode-installer-GIXOJ6NS.js → opencode-installer-YAJMRCQO.js} +2 -2
  240. package/dist/cli/chunks/{orchestrator-VW6BKHLI.js → orchestrator-MUGWBUYP.js} +17 -17
  241. package/dist/cli/chunks/pattern-null-store-7DMU5CJ4.js +2 -0
  242. package/dist/cli/chunks/{pattern-usage-recorder-7CEUC3J7.js → pattern-usage-recorder-ZQJJ2YNG.js} +2 -2
  243. package/dist/cli/chunks/{pipeline-IGUQPPPO.js → pipeline-F4DXDUDC.js} +2 -2
  244. package/dist/cli/chunks/{platform-2P636I7B.js → platform-HI3A3OWF.js} +2 -2
  245. package/dist/cli/chunks/{plugin-NY6SWDPE.js → plugin-XRITPTR7.js} +2 -2
  246. package/dist/cli/chunks/{prime-radiant-advanced-wasm-2UUDTIO2.js → prime-radiant-advanced-wasm-HHNJP7CQ.js} +2 -2
  247. package/dist/cli/chunks/{project-root-IOISG5KX.js → project-root-2VN4WO2A.js} +2 -2
  248. package/dist/cli/chunks/protocol-executor-2EMTBTMG.js +2 -0
  249. package/dist/cli/chunks/{protocol-handler-ZTPCRQ5W.js → protocol-handler-ZEVHSEBG.js} +2 -2
  250. package/dist/cli/chunks/{prove-SQX5A3IG.js → prove-C4BLZWBS.js} +2 -2
  251. package/dist/cli/chunks/qe-reasoning-bank-VZHZZPHE.js +2 -0
  252. package/dist/cli/chunks/{quality-DROILKRY.js → quality-M3DTE4KK.js} +2 -2
  253. package/dist/cli/chunks/quality-gate-V6KS7ML3.js +7 -0
  254. package/dist/cli/chunks/queen-coordinator-7MYTTUHI.js +2 -0
  255. package/dist/cli/chunks/{real-embeddings-P5U3MGYC.js → real-embeddings-YWSE3IRT.js} +2 -2
  256. package/dist/cli/chunks/{ref-validation-KY73NQXD.js → ref-validation-ZWOTFA3T.js} +2 -2
  257. package/dist/cli/chunks/{roocode-installer-6JPPRB3W.js → roocode-installer-GJBIWETD.js} +2 -2
  258. package/dist/cli/chunks/router-ZD4LXAWA.js +2 -0
  259. package/dist/cli/chunks/routing-feedback-FSLMDVGD.js +2 -0
  260. package/dist/cli/chunks/{routing-handler-VTJIVFUO.js → routing-handler-CFYLGNAR.js} +2 -2
  261. package/dist/cli/chunks/{ruvector-commands-C6RPSJJO.js → ruvector-commands-EDKG456B.js} +2 -2
  262. package/dist/cli/chunks/rvf-dual-writer-LTKTDRFS.js +2 -0
  263. package/dist/cli/chunks/rvf-migration-adapter-IF24EVC5.js +2 -0
  264. package/dist/cli/chunks/{rvf-migration-coordinator-R53URRIO.js → rvf-migration-coordinator-ZMEYMAI6.js} +2 -2
  265. package/dist/cli/chunks/rvf-native-adapter-E6JNBKMZ.js +2 -0
  266. package/dist/cli/chunks/{rvf-store-integrity-MMXN5TEJ.js → rvf-store-integrity-AH6PNJP6.js} +2 -2
  267. package/dist/cli/chunks/safe-db-F6TRB5KZ.js +2 -0
  268. package/dist/cli/chunks/schedule-HBD4BYTE.js +2 -0
  269. package/dist/cli/chunks/scheduler-6FYWPMQC.js +2 -0
  270. package/dist/cli/chunks/{security-3B3R2NL4.js → security-ZU2GW3ZM.js} +3 -3
  271. package/dist/cli/chunks/{shared-rvf-adapter-VIJB7JUS.js → shared-rvf-adapter-5FOVSL3T.js} +2 -2
  272. package/dist/cli/chunks/{shared-rvf-dual-writer-UVWGDUWC.js → shared-rvf-dual-writer-IO4DC4XV.js} +2 -2
  273. package/dist/cli/chunks/sqlite-persistence-DOU72F5Z.js +2 -0
  274. package/dist/cli/chunks/{standalone-memory-M4LWAAYZ.js → standalone-memory-3UXDZ7HI.js} +2 -2
  275. package/dist/cli/chunks/{status-handler-YYFV6OZL.js → status-handler-264CHTWS.js} +2 -2
  276. package/dist/cli/chunks/{structural-health-27E6LLKB.js → structural-health-E2QPUOZE.js} +2 -2
  277. package/dist/cli/chunks/{sync-J3LJ56WN.js → sync-2ACMWM7D.js} +2 -2
  278. package/dist/cli/chunks/sync-N2L2OST4.js +2 -0
  279. package/dist/cli/chunks/{task-handler-4MCEBQZL.js → task-handler-IB5CVOTY.js} +2 -2
  280. package/dist/cli/chunks/task-handlers-QBMYNJHE.js +9 -0
  281. package/dist/cli/chunks/test-7RGLRDSP.js +33 -0
  282. package/dist/cli/chunks/{test-scheduling-ZJBFRZ3J.js → test-scheduling-RJABJT2W.js} +3 -3
  283. package/dist/cli/chunks/token-bootstrap-JVHMHB72.js +2 -0
  284. package/dist/cli/chunks/{token-usage-3X5WMTG2.js → token-usage-3ECHQVCY.js} +2 -2
  285. package/dist/cli/chunks/{transformers-MVL4C5IX.js → transformers-KJH3IJWI.js} +2 -2
  286. package/dist/cli/chunks/{tree-sitter-wasm-parser-SLW65ZFO.js → tree-sitter-wasm-parser-XN6PFI32.js} +2 -2
  287. package/dist/cli/chunks/{types-TG5P3CRS.js → types-5BAPXOLS.js} +2 -2
  288. package/dist/cli/chunks/unified-memory-GHAYAXWZ.js +2 -0
  289. package/dist/cli/chunks/unified-memory-hnsw-CCC63YXT.js +2 -0
  290. package/dist/cli/chunks/unified-persistence-HKRHI5PG.js +2 -0
  291. package/dist/cli/chunks/{upgrade-ETBHDEPY.js → upgrade-S5NFQZID.js} +2 -2
  292. package/dist/cli/chunks/{validate-C2A73LZK.js → validate-BIBWOLJD.js} +2 -2
  293. package/dist/cli/chunks/{validate-swarm-67XN42ML.js → validate-swarm-WAA3LBHH.js} +2 -2
  294. package/dist/cli/chunks/visual-security-APOXJ3Q3.js +2 -0
  295. package/dist/cli/chunks/{web-tree-sitter-USJN77P4.js → web-tree-sitter-OTBQTHAV.js} +2 -2
  296. package/dist/cli/chunks/{windsurf-installer-5GGZXGJW.js → windsurf-installer-NNQ22EW6.js} +2 -2
  297. package/dist/cli/chunks/witness-chain-7IP5IJGT.js +2 -0
  298. package/dist/cli/chunks/{witness-chain-IWS5ZHHL.js → witness-chain-E7MUBOJW.js} +2 -2
  299. package/dist/cli/chunks/witness-chain-repair-FW4QSN4C.js +2 -0
  300. package/dist/cli/chunks/{witness-chain-verifier-3GEADWPE.js → witness-chain-verifier-YMROEBVL.js} +2 -2
  301. package/dist/cli/chunks/{witness-key-manager-ZWEIK3VJ.js → witness-key-manager-4CGRNDMJ.js} +2 -2
  302. package/dist/cli/chunks/{workflow-KHMVVBBA.js → workflow-4VRSTRAN.js} +4 -4
  303. package/dist/cli/chunks/workflow-orchestrator-2HNW5ZMQ.js +2 -0
  304. package/dist/cli/chunks/wrappers-4M4UTGEU.js +2 -0
  305. package/dist/cli/commands/ci.js +18 -7
  306. package/dist/cli/commands/quality-gate.js +6 -1
  307. package/dist/cli/commands/test.js +18 -3
  308. package/dist/cli/handlers/init-handler.d.ts +2 -0
  309. package/dist/cli/handlers/init-handler.js +8 -2
  310. package/dist/cli/index.js +15 -2
  311. package/dist/cli/process-store-cleanup.d.ts +7 -0
  312. package/dist/cli/process-store-cleanup.js +27 -0
  313. package/dist/cli/utils/ci-config.d.ts +3 -3
  314. package/dist/cli/utils/ci-config.js +202 -68
  315. package/dist/coordination/handlers/test-execution-handlers.js +13 -8
  316. package/dist/coordination/index.d.ts +1 -1
  317. package/dist/coordination/queen-event-handlers.js +9 -6
  318. package/dist/coordination/result-saver.js +1 -1
  319. package/dist/coordination/services/index.d.ts +1 -1
  320. package/dist/coordination/services/task-audit-logger.d.ts +38 -13
  321. package/dist/coordination/services/task-audit-logger.js +33 -5
  322. package/dist/coordination/task-executor.d.ts +5 -0
  323. package/dist/coordination/task-executor.js +10 -5
  324. package/dist/domains/quality-assessment/quality-evidence.d.ts +3 -1
  325. package/dist/domains/quality-assessment/quality-evidence.js +7 -2
  326. package/dist/domains/test-execution/services/retry-handler.js +32 -13
  327. package/dist/domains/test-execution/services/test-executor.d.ts +3 -3
  328. package/dist/domains/test-execution/services/test-executor.js +66 -22
  329. package/dist/domains/test-generation/coordinator.js +6 -5
  330. package/dist/domains/test-generation/interfaces.d.ts +11 -1
  331. package/dist/domains/test-generation/services/behavior-example-validation.d.ts +36 -0
  332. package/dist/domains/test-generation/services/behavior-example-validation.js +89 -0
  333. package/dist/domains/test-generation/services/behavior-examples.d.ts +8 -0
  334. package/dist/domains/test-generation/services/behavior-examples.js +65 -0
  335. package/dist/domains/test-generation/services/test-generator.d.ts +1 -1
  336. package/dist/domains/test-generation/services/test-generator.js +59 -30
  337. package/dist/domains/visual-accessibility/services/axe-core-audit.d.ts +0 -15
  338. package/dist/domains/visual-accessibility/services/axe-core-audit.js +12 -10
  339. package/dist/init/browser-engine-installer.d.ts +5 -5
  340. package/dist/init/browser-engine-installer.js +28 -6
  341. package/dist/init/fleet-integration.js +3 -2
  342. package/dist/init/init-wizard-steps.js +3 -2
  343. package/dist/init/init-wizard.d.ts +2 -0
  344. package/dist/init/orchestrator.js +1 -0
  345. package/dist/init/phases/06-code-intelligence.js +6 -4
  346. package/dist/init/phases/09-assets.js +8 -18
  347. package/dist/init/phases/phase-interface.d.ts +2 -0
  348. package/dist/integrations/agentic-flow/reasoning-bank/index.d.ts +2 -5
  349. package/dist/integrations/ruvector/sona-persistence.d.ts +1 -0
  350. package/dist/integrations/ruvector/sona-persistence.js +74 -20
  351. package/dist/integrations/ruvector/sona-wrapper.d.ts +2 -0
  352. package/dist/integrations/ruvector/sona-wrapper.js +13 -0
  353. package/dist/integrations/vibium/client.d.ts +1 -0
  354. package/dist/integrations/vibium/client.js +24 -11
  355. package/dist/integrations/vibium/runtime.d.ts +14 -0
  356. package/dist/integrations/vibium/runtime.js +94 -0
  357. package/dist/kernel/memory-backend.js +5 -4
  358. package/dist/kernel/pattern-fts-self-heal.d.ts +63 -0
  359. package/dist/kernel/pattern-fts-self-heal.js +193 -0
  360. package/dist/kernel/process-lifecycle.d.ts +60 -0
  361. package/dist/kernel/process-lifecycle.js +91 -0
  362. package/dist/kernel/unified-memory-schemas.d.ts +15 -1
  363. package/dist/kernel/unified-memory-schemas.js +53 -25
  364. package/dist/kernel/unified-memory.js +34 -36
  365. package/dist/kernel/unified-persistence.js +12 -6
  366. package/dist/learning/aqe-learning-engine.js +3 -2
  367. package/dist/learning/experience-capture.d.ts +2 -1
  368. package/dist/learning/experience-capture.js +23 -8
  369. package/dist/learning/pattern-store.d.ts +1 -1
  370. package/dist/learning/pattern-store.js +27 -30
  371. package/dist/learning/qe-patterns.d.ts +6 -0
  372. package/dist/learning/qe-reasoning-bank.d.ts +1 -0
  373. package/dist/learning/qe-reasoning-bank.js +14 -4
  374. package/dist/learning/real-qe-reasoning-bank.d.ts +9 -4
  375. package/dist/learning/real-qe-reasoning-bank.js +28 -4
  376. package/dist/learning/rvf-pattern-store.js +19 -19
  377. package/dist/learning/sqlite-persistence.js +9 -24
  378. package/dist/mcp/bundle.js +545 -581
  379. package/dist/mcp/connection-pool.d.ts +2 -0
  380. package/dist/mcp/connection-pool.js +13 -2
  381. package/dist/mcp/entry.js +52 -6
  382. package/dist/mcp/handlers/domain-handler-configs.js +12 -4
  383. package/dist/mcp/handlers/memory-handlers.d.ts +1 -0
  384. package/dist/mcp/handlers/memory-handlers.js +16 -6
  385. package/dist/mcp/handlers/task-handlers.js +11 -7
  386. package/dist/mcp/protocol-server.js +47 -11
  387. package/dist/mcp/services/reasoning-bank-service.d.ts +6 -1
  388. package/dist/mcp/services/reasoning-bank-service.js +5 -1
  389. package/dist/mcp/tools/test-execution/e2e-execute.js +9 -1
  390. package/dist/mcp/tools/test-generation/generate.d.ts +6 -1
  391. package/dist/mcp/tools/test-generation/generate.js +8 -0
  392. package/dist/mcp/types.d.ts +8 -2
  393. package/dist/optimization/session-cache.js +13 -11
  394. package/dist/plugins/cache.js +10 -3
  395. package/dist/shared/embeddings/embedding-cache.js +4 -4
  396. package/dist/shared/error-utils.d.ts +15 -0
  397. package/dist/shared/error-utils.js +21 -0
  398. package/dist/shared/events/domain-events.d.ts +2 -1
  399. package/dist/shared/llm/cache.js +7 -10
  400. package/dist/shared/retry-engine.js +4 -0
  401. package/dist/shared/test-runner-process.d.ts +10 -0
  402. package/dist/shared/test-runner-process.js +210 -0
  403. package/dist/validation/quality-verdict.js +3 -2
  404. package/dist/workers/quality-daemon/priority-queue.js +4 -1
  405. package/package.json +10 -6
  406. package/dist/cli/chunks/adapter-UYOJPTOX.js +0 -2
  407. package/dist/cli/chunks/aqe-learning-engine-JR5AVQXR.js +0 -2
  408. package/dist/cli/chunks/base-DRZ2LS6X.js +0 -2
  409. package/dist/cli/chunks/browser-workflow-CJ7T3MXF.js +0 -2
  410. package/dist/cli/chunks/chunk-3NIG7S5W.js +0 -2
  411. package/dist/cli/chunks/chunk-4N23RFDU.js +0 -2
  412. package/dist/cli/chunks/chunk-AHKELLIO.js +0 -12
  413. package/dist/cli/chunks/chunk-DK4XN4CU.js +0 -2
  414. package/dist/cli/chunks/chunk-E6G2RD5H.js +0 -4
  415. package/dist/cli/chunks/chunk-MJS53PRX.js +0 -2
  416. package/dist/cli/chunks/chunk-PZPWRQ2M.js +0 -21
  417. package/dist/cli/chunks/chunk-QGA55PFM.js +0 -12
  418. package/dist/cli/chunks/chunk-SPV2VKC5.js +0 -3
  419. package/dist/cli/chunks/chunk-TCHGOB2N.js +0 -2
  420. package/dist/cli/chunks/chunk-UKA2KOXE.js +0 -2
  421. package/dist/cli/chunks/chunk-WCJBU2KI.js +0 -2
  422. package/dist/cli/chunks/chunk-Z6GGIRQQ.js +0 -65
  423. package/dist/cli/chunks/ci-W6K6G2KZ.js +0 -81
  424. package/dist/cli/chunks/client-KHWJT6FB.js +0 -2
  425. package/dist/cli/chunks/core-handlers-HING5RRG.js +0 -2
  426. package/dist/cli/chunks/cross-domain-router-PQTD6AZN.js +0 -2
  427. package/dist/cli/chunks/domain-transfer-M36KUJ2U.js +0 -2
  428. package/dist/cli/chunks/dream-WUGRSNCV.js +0 -2
  429. package/dist/cli/chunks/heartbeat-scheduler-33XX5XNQ.js +0 -2
  430. package/dist/cli/chunks/hnsw-adapter-XQPERX3H.js +0 -2
  431. package/dist/cli/chunks/hnsw-index-2GNXTWHH.js +0 -2
  432. package/dist/cli/chunks/hybrid-backend-CCF7URKI.js +0 -2
  433. package/dist/cli/chunks/impact-analyzer-HGKAZWIG.js +0 -2
  434. package/dist/cli/chunks/init-wizard-72MFBI3G.js +0 -2
  435. package/dist/cli/chunks/kernel-BRCBVMSK.js +0 -2
  436. package/dist/cli/chunks/knowledge-graph-DG44IPEI.js +0 -2
  437. package/dist/cli/chunks/llm-router-service-24KXFX32.js +0 -2
  438. package/dist/cli/chunks/load-test-N4TAYJY3.js +0 -2
  439. package/dist/cli/chunks/memory-backend-NVYFYVAU.js +0 -2
  440. package/dist/cli/chunks/memory-handlers-UTWCNCHL.js +0 -2
  441. package/dist/cli/chunks/pattern-null-store-SBPNYDBR.js +0 -2
  442. package/dist/cli/chunks/protocol-executor-IBYEII5Q.js +0 -2
  443. package/dist/cli/chunks/qe-reasoning-bank-7IETWW6W.js +0 -2
  444. package/dist/cli/chunks/quality-gate-PWKWDJY2.js +0 -7
  445. package/dist/cli/chunks/queen-coordinator-NHUK2MWJ.js +0 -2
  446. package/dist/cli/chunks/router-SRSO3IHF.js +0 -2
  447. package/dist/cli/chunks/routing-feedback-PASRE5HY.js +0 -2
  448. package/dist/cli/chunks/rvf-dual-writer-4M4J67OU.js +0 -2
  449. package/dist/cli/chunks/rvf-migration-adapter-TSXGT5LF.js +0 -2
  450. package/dist/cli/chunks/rvf-native-adapter-MOF3E7BR.js +0 -2
  451. package/dist/cli/chunks/safe-db-QJLFO33B.js +0 -2
  452. package/dist/cli/chunks/schedule-YIVXW5O2.js +0 -2
  453. package/dist/cli/chunks/scheduler-AON7DWSJ.js +0 -2
  454. package/dist/cli/chunks/sqlite-persistence-75VHKKQB.js +0 -2
  455. package/dist/cli/chunks/sync-26CEGSTC.js +0 -2
  456. package/dist/cli/chunks/task-handlers-GYBAWKE2.js +0 -9
  457. package/dist/cli/chunks/test-MPC5HRH5.js +0 -33
  458. package/dist/cli/chunks/token-bootstrap-2Y2XITBX.js +0 -2
  459. package/dist/cli/chunks/unified-memory-UCQ6AB32.js +0 -2
  460. package/dist/cli/chunks/unified-memory-hnsw-IXYUMKRR.js +0 -2
  461. package/dist/cli/chunks/unified-persistence-7E6JQ4FZ.js +0 -2
  462. package/dist/cli/chunks/vibium-NILGKHLN.js +0 -2
  463. package/dist/cli/chunks/visual-security-4VZXPEVG.js +0 -2
  464. package/dist/cli/chunks/witness-chain-JQA2VPZI.js +0 -2
  465. package/dist/cli/chunks/witness-chain-repair-4UA7IPS3.js +0 -2
  466. package/dist/cli/chunks/workflow-orchestrator-GI5NQH7C.js +0 -2
  467. package/dist/cli/chunks/wrappers-N6XIK5PT.js +0 -2
@@ -8,7 +8,9 @@
8
8
  */
9
9
  import { MCPToolBase, MCPToolConfig, MCPToolContext } from '../base';
10
10
  import { ToolResult } from '../../types';
11
+ import { GenerateTestsRequest } from '../../../domains/test-generation/interfaces';
11
12
  export interface TestGenerateParams {
13
+ behaviorExamples?: GenerateTestsRequest['behaviorExamples'];
12
14
  sourceFiles: string[];
13
15
  testType?: 'unit' | 'integration' | 'e2e';
14
16
  framework?: 'jest' | 'vitest' | 'mocha' | 'pytest' | 'node-test';
@@ -21,7 +23,8 @@ export interface TestGenerateParams {
21
23
  }
22
24
  export interface TestGenerateResult {
23
25
  tests: GeneratedTest[];
24
- coverageEstimate: number;
26
+ /** null means unmeasured; never coerce unknown coverage to measured zero. */
27
+ coverageEstimate: number | null;
25
28
  patternsUsed: string[];
26
29
  suggestions: string[];
27
30
  antiPatterns?: AntiPattern[];
@@ -34,6 +37,8 @@ export interface GeneratedTest {
34
37
  testCode: string;
35
38
  type: 'unit' | 'integration' | 'e2e';
36
39
  assertions: number;
40
+ generationMode?: string;
41
+ generationLimits?: string[];
37
42
  }
38
43
  export interface AntiPattern {
39
44
  name: string;
@@ -10,6 +10,7 @@ import { MCPToolBase, getSharedMemoryBackend, getLLMRouter } from '../base.js';
10
10
  import { createTestGeneratorServiceWithDependencies } from '../../../domains/test-generation/services/test-generator.js';
11
11
  import { TokenOptimizerService } from '../../../optimization/token-optimizer-service.js';
12
12
  import { toErrorMessage } from '../../../shared/error-utils.js';
13
+ import { BEHAVIOR_EXAMPLE_ITEM_SCHEMA, validateBehaviorExamples } from '../../../domains/test-generation/services/behavior-example-validation.js';
13
14
  // ============================================================================
14
15
  // Tool Implementation
15
16
  // ============================================================================
@@ -45,6 +46,9 @@ export class TestGenerateTool extends MCPToolBase {
45
46
  async execute(params, context) {
46
47
  const { sourceFiles, testType = 'unit', framework = 'vitest', language = 'typescript', coverageTarget = 80, patterns = [], aiEnhancement = true, detectAntiPatterns = false, } = params;
47
48
  try {
49
+ // #795: reject malformed caller fixtures at the tool boundary, before
50
+ // any service or domain work runs.
51
+ const behaviorExamples = validateBehaviorExamples(params.behaviorExamples);
48
52
  // Stream progress updates
49
53
  this.emitStream(context, {
50
54
  status: 'analyzing',
@@ -79,6 +83,7 @@ export class TestGenerateTool extends MCPToolBase {
79
83
  const service = await this.getService(context);
80
84
  // Build the domain request from MCP params
81
85
  const domainRequest = {
86
+ behaviorExamples,
82
87
  sourceFiles,
83
88
  testType: testType,
84
89
  framework: framework,
@@ -103,6 +108,8 @@ export class TestGenerateTool extends MCPToolBase {
103
108
  testCode: test.testCode,
104
109
  type: test.type,
105
110
  assertions: test.assertions,
111
+ generationMode: test.generationMode,
112
+ generationLimits: test.generationLimits,
106
113
  }));
107
114
  this.emitStream(context, {
108
115
  status: 'generating',
@@ -150,6 +157,7 @@ export class TestGenerateTool extends MCPToolBase {
150
157
  const TEST_GENERATE_SCHEMA = {
151
158
  type: 'object',
152
159
  properties: {
160
+ behaviorExamples: { type: 'array', description: 'Trusted JSON specification fixtures: functionName, args, expected', items: BEHAVIOR_EXAMPLE_ITEM_SCHEMA },
153
161
  sourceFiles: {
154
162
  type: 'array',
155
163
  description: 'Array of source file paths to generate tests for',
@@ -14,6 +14,8 @@ export interface ToolParameter {
14
14
  required?: boolean;
15
15
  default?: unknown;
16
16
  enum?: string[];
17
+ /** JSON Schema for array elements (only meaningful when type is 'array'). */
18
+ items?: Record<string, unknown>;
17
19
  }
18
20
  /**
19
21
  * Optional safety metadata advertised by an MCP tool.
@@ -40,6 +42,8 @@ export interface ToolDefinition {
40
42
  domain?: DomainName;
41
43
  lazyLoad?: boolean;
42
44
  isConcurrencySafe?: boolean;
45
+ /** False for live reads whose results must not be reused by the session cache. */
46
+ isCacheable?: boolean;
43
47
  annotations?: ToolAnnotations;
44
48
  }
45
49
  /**
@@ -171,6 +175,7 @@ export interface TestGenerateParams {
171
175
  framework?: string;
172
176
  testType?: 'unit' | 'integration' | 'e2e' | 'property-based';
173
177
  coverageGoal?: number;
178
+ behaviorExamples?: import('../domains/test-generation/interfaces').BehaviorExample[];
174
179
  aiEnhancement?: boolean;
175
180
  detectAntiPatterns?: boolean;
176
181
  }
@@ -467,14 +472,15 @@ export interface TestGenerateResult {
467
472
  status: string;
468
473
  duration: number;
469
474
  testsGenerated: number;
470
- coverageEstimate: number;
475
+ /** null means unmeasured; never coerce unknown coverage to measured zero. */
476
+ coverageEstimate: number | null;
471
477
  antiPatternsDetected?: number;
472
478
  suggestions?: string[];
473
479
  savedFiles?: string[];
474
480
  patternsUsed?: string[];
475
481
  /**
476
482
  * #567: true when the ADR-051 LLM branch actually ran. When false the tests
477
- * are deterministic template scaffolding — see `generationMode`/`note`.
483
+ * come from deterministic fixtures or scaffolding — see `generationMode`/`note`.
478
484
  */
479
485
  llmEnhanced?: boolean;
480
486
  /** #567: set to 'deterministic-template' when no LLM enhancement was applied. */
@@ -40,17 +40,19 @@ export const DEFAULT_SESSION_CACHE_CONFIG = {
40
40
  * Ensures identical logical objects always produce the same fingerprint.
41
41
  */
42
42
  function canonicalStringify(value) {
43
- if (value === null || value === undefined)
44
- return JSON.stringify(value);
45
- if (typeof value !== 'object')
46
- return JSON.stringify(value);
47
- if (Array.isArray(value)) {
48
- return '[' + value.map(v => canonicalStringify(v)).join(',') + ']';
43
+ // Honor JSON's array holes, undefined fields and toJSON (for example Date)
44
+ // before ordering keys. Hand-built fragments can conflate distinct inputs.
45
+ const normalized = JSON.parse(JSON.stringify(value));
46
+ function encode(item) {
47
+ if (item === null || typeof item !== 'object')
48
+ return JSON.stringify(item);
49
+ if (Array.isArray(item))
50
+ return '[' + item.map(encode).join(',') + ']';
51
+ const obj = item;
52
+ return '{' + Object.keys(obj).sort()
53
+ .map(key => JSON.stringify(key) + ':' + encode(obj[key])).join(',') + '}';
49
54
  }
50
- const obj = value;
51
- const sortedKeys = Object.keys(obj).sort();
52
- const pairs = sortedKeys.map(k => JSON.stringify(k) + ':' + canonicalStringify(obj[k]));
53
- return '{' + pairs.join(',') + '}';
55
+ return encode(normalized);
54
56
  }
55
57
  // ============================================================================
56
58
  // Implementation
@@ -114,7 +116,7 @@ export class SessionOperationCache {
114
116
  if (!this.config.enabled)
115
117
  return;
116
118
  // Evict oldest if at capacity
117
- if (this.cache.size >= this.config.maxEntries) {
119
+ if (!this.cache.has(fingerprint) && this.cache.size >= this.config.maxEntries) {
118
120
  this.evictOldest();
119
121
  }
120
122
  const entry = {
@@ -51,9 +51,16 @@ export class PluginCache {
51
51
  }
52
52
  // Copy source to cache
53
53
  fs.mkdirSync(dir, { recursive: true });
54
- this.copyDir(sourceDir, dir);
55
- // Write the manifest (ensure it's present even if source didn't have it at root)
56
- fs.writeFileSync(path.join(dir, 'qe-plugin.json'), JSON.stringify(manifest, null, 2));
54
+ try {
55
+ this.copyDir(sourceDir, dir);
56
+ // Write the manifest (ensure it's present even if source didn't have it at root)
57
+ fs.writeFileSync(path.join(dir, 'qe-plugin.json'), JSON.stringify(manifest, null, 2));
58
+ }
59
+ catch (error) {
60
+ // A partial directory must not satisfy the immutable-cache fast path on retry.
61
+ fs.rmSync(dir, { recursive: true, force: true });
62
+ throw error;
63
+ }
57
64
  // Cleanup old versions
58
65
  this.pruneOldVersions(manifest.name);
59
66
  return dir;
@@ -36,7 +36,7 @@ export class EmbeddingCache {
36
36
  // Move to end (LRU update)
37
37
  this.cache.delete(key);
38
38
  this.cache.set(key, entry);
39
- return entry.embedding;
39
+ return [...entry.embedding];
40
40
  }
41
41
  this.misses++;
42
42
  return null;
@@ -54,7 +54,7 @@ export class EmbeddingCache {
54
54
  }
55
55
  }
56
56
  const entry = {
57
- embedding,
57
+ embedding: [...embedding],
58
58
  timestamp: Date.now(),
59
59
  model,
60
60
  };
@@ -118,7 +118,7 @@ export class EmbeddingCache {
118
118
  export() {
119
119
  return Array.from(this.cache.entries()).map(([key, entry]) => ({
120
120
  key,
121
- entry,
121
+ entry: { ...entry, embedding: [...entry.embedding] },
122
122
  }));
123
123
  }
124
124
  /**
@@ -128,7 +128,7 @@ export class EmbeddingCache {
128
128
  this.cache.clear();
129
129
  for (const { key, entry } of data) {
130
130
  if (this.cache.size < this.maxSize) {
131
- this.cache.set(key, entry);
131
+ this.cache.set(key, { ...entry, embedding: [...entry.embedding] });
132
132
  }
133
133
  }
134
134
  }
@@ -13,4 +13,19 @@ export declare function toErrorMessage(error: unknown): string;
13
13
  * Coerce unknown error value to an Error instance.
14
14
  */
15
15
  export declare function toError(error: unknown): Error;
16
+ /**
17
+ * A request was rejected because the caller's input is invalid (a malformed
18
+ * argument, an unknown function name, an unsupported option combination).
19
+ *
20
+ * The failure is deterministic and says nothing about the health of the
21
+ * component that rejected it, so it must not be retried and must not count
22
+ * toward a domain circuit breaker (ADR-064). The marker survives being
23
+ * flattened to a message string via `callerError` on TaskFailed events.
24
+ */
25
+ export declare class CallerInputError extends Error {
26
+ readonly callerError: true;
27
+ constructor(message: string);
28
+ }
29
+ /** True when `error` is (or is marked as) a caller-input error. */
30
+ export declare function isCallerInputError(error: unknown): boolean;
16
31
  //# sourceMappingURL=error-utils.d.ts.map
@@ -17,4 +17,25 @@ export function toErrorMessage(error) {
17
17
  export function toError(error) {
18
18
  return error instanceof Error ? error : new Error(String(error));
19
19
  }
20
+ /**
21
+ * A request was rejected because the caller's input is invalid (a malformed
22
+ * argument, an unknown function name, an unsupported option combination).
23
+ *
24
+ * The failure is deterministic and says nothing about the health of the
25
+ * component that rejected it, so it must not be retried and must not count
26
+ * toward a domain circuit breaker (ADR-064). The marker survives being
27
+ * flattened to a message string via `callerError` on TaskFailed events.
28
+ */
29
+ export class CallerInputError extends Error {
30
+ callerError = true;
31
+ constructor(message) {
32
+ super(message);
33
+ this.name = 'CallerInputError';
34
+ }
35
+ }
36
+ /** True when `error` is (or is marked as) a caller-input error. */
37
+ export function isCallerInputError(error) {
38
+ return error instanceof CallerInputError
39
+ || (typeof error === 'object' && error !== null && error.callerError === true);
40
+ }
20
41
  //# sourceMappingURL=error-utils.js.map
@@ -17,7 +17,8 @@ export interface TestSuiteCreatedPayload {
17
17
  suiteId: string;
18
18
  testCount: number;
19
19
  sourceFiles: string[];
20
- coverageEstimate: number;
20
+ /** null means unmeasured; never coerce unknown coverage to measured zero. */
21
+ coverageEstimate: number | null;
21
22
  }
22
23
  export declare const TestGenerationEvents: {
23
24
  readonly TestGenerated: "test-generation.TestGenerated";
@@ -5,6 +5,7 @@
5
5
  * Provides efficient caching of LLM responses to reduce costs and latency
6
6
  * for repeated queries. Uses LRU (Least Recently Used) eviction policy.
7
7
  */
8
+ import { createHash } from 'node:crypto';
8
9
  /**
9
10
  * Default cache configuration
10
11
  */
@@ -41,15 +42,9 @@ export class LLMCache {
41
42
  options?.systemPrompt ?? '',
42
43
  input,
43
44
  ];
44
- // Simple hash function
45
- const str = parts.join('|');
46
- let hash = 0;
47
- for (let i = 0; i < str.length; i++) {
48
- const char = str.charCodeAt(i);
49
- hash = ((hash << 5) - hash) + char;
50
- hash = hash & hash;
51
- }
52
- return `${type}:${Math.abs(hash).toString(36)}`;
45
+ // Encode field boundaries before hashing: prompt text may contain delimiters.
46
+ const hash = createHash('sha256').update(JSON.stringify(parts)).digest('hex');
47
+ return `${type}:${hash}`;
53
48
  }
54
49
  /**
55
50
  * Get a cached value
@@ -182,7 +177,9 @@ export class LLMCache {
182
177
  entry.createdAt = new Date(entry.createdAt);
183
178
  entry.lastAccessedAt = new Date(entry.lastAccessedAt);
184
179
  this.cache.set(key, entry);
185
- this.accessOrder.push(key);
180
+ if (this.config.enableLRU) {
181
+ this.updateAccessOrder(key);
182
+ }
186
183
  }
187
184
  // Evict if over capacity
188
185
  while (this.cache.size > this.config.maxSize) {
@@ -142,6 +142,10 @@ function delay(ms, signal) {
142
142
  * promise rejects with an `AbortError`.
143
143
  */
144
144
  export async function withRetry(fn, options) {
145
+ // Disabling retries must not bypass the caller's cancellation boundary.
146
+ if (options?.abortSignal?.aborted) {
147
+ throw options.abortSignal.reason ?? new DOMException('The operation was aborted.', 'AbortError');
148
+ }
145
149
  // Kill switch: bypass retry entirely when disabled
146
150
  if (process.env.AQE_RETRY_DISABLED === 'true') {
147
151
  const result = await fn();
@@ -0,0 +1,10 @@
1
+ import { type ChildProcess } from 'node:child_process';
2
+ /** Keep detached runners subject to the CLI's synchronous exit handling. */
3
+ export declare function trackTestRunnerExit(proc: ChildProcess): () => void;
4
+ /**
5
+ * Stop a test runner spawned in its own POSIX process group. The returned
6
+ * promise waits for the group to stop before report files may be removed.
7
+ * Windows uses taskkill's tree operation while the root PID still exists.
8
+ */
9
+ export declare function terminateTestRunner(proc: ChildProcess): Promise<void>;
10
+ //# sourceMappingURL=test-runner-process.d.ts.map
@@ -0,0 +1,210 @@
1
+ import { execFileSync, spawn } from 'node:child_process';
2
+ import { readdirSync, readFileSync } from 'node:fs';
3
+ /** Linux signal 0 also sees zombies, which can never execute or write files. */
4
+ function hasLiveLinuxGroupMember(group) {
5
+ for (const pid of readdirSync('/proc')) {
6
+ if (!/^\d+$/.test(pid))
7
+ continue;
8
+ let stat;
9
+ try {
10
+ stat = readFileSync(`/proc/${pid}/stat`, 'utf8');
11
+ }
12
+ catch (error) {
13
+ if (['ENOENT', 'ESRCH'].includes(error.code ?? ''))
14
+ continue;
15
+ throw error; // Unknown process state must not be claimed as stopped.
16
+ }
17
+ // The comm field can contain spaces and parentheses; its final ')' is the
18
+ // boundary before state, ppid and pgrp, not the first whitespace token.
19
+ const fields = stat.slice(stat.lastIndexOf(')') + 1).trim().split(/\s+/);
20
+ if (fields.length < 3 || !/^\d+$/.test(fields[2]))
21
+ throw new Error(`Invalid process stat for ${pid}`);
22
+ if (Number(fields[2]) === group && fields[0] !== 'Z' && fields[0] !== 'X')
23
+ return true;
24
+ }
25
+ return false;
26
+ }
27
+ /** Signal probes on Darwin may deny access while dead group members are reaped. */
28
+ function hasLiveDarwinGroupMember(group) {
29
+ const snapshot = execFileSync('ps', ['-axo', 'pgid=,stat='], {
30
+ encoding: 'utf8', timeout: 1000, maxBuffer: 1024 * 1024,
31
+ });
32
+ for (const line of snapshot.split('\n')) {
33
+ if (!line.trim())
34
+ continue;
35
+ const match = /^\s*(\d+)\s+([A-Z?])\S*\s*$/.exec(line);
36
+ if (!match)
37
+ throw new Error('Could not determine Darwin process group state');
38
+ if (Number(match[1]) === group && match[2] !== 'Z')
39
+ return true;
40
+ }
41
+ return false;
42
+ }
43
+ const activeGroups = new Set();
44
+ const stopGroupsOnExit = () => {
45
+ for (const pid of activeGroups) {
46
+ try {
47
+ process.kill(-pid, 'SIGKILL');
48
+ }
49
+ catch { /* Already exited. */ }
50
+ }
51
+ };
52
+ /** Keep detached runners subject to the CLI's synchronous exit handling. */
53
+ export function trackTestRunnerExit(proc) {
54
+ const pid = proc.pid;
55
+ if (process.platform === 'win32' || pid === undefined)
56
+ return () => { };
57
+ if (activeGroups.size === 0)
58
+ process.once('exit', stopGroupsOnExit);
59
+ activeGroups.add(pid);
60
+ return () => {
61
+ activeGroups.delete(pid);
62
+ if (activeGroups.size === 0)
63
+ process.off('exit', stopGroupsOnExit);
64
+ };
65
+ }
66
+ /**
67
+ * Stop a test runner spawned in its own POSIX process group. The returned
68
+ * promise waits for the group to stop before report files may be removed.
69
+ * Windows uses taskkill's tree operation while the root PID still exists.
70
+ */
71
+ export function terminateTestRunner(proc) {
72
+ return new Promise((resolve, reject) => {
73
+ const platform = process.platform;
74
+ const linux = platform === 'linux';
75
+ const grouped = process.platform !== 'win32' && proc.pid !== undefined;
76
+ const windowsTree = process.platform === 'win32' && proc.pid !== undefined;
77
+ let timer;
78
+ let finished = false;
79
+ let forceSent = false;
80
+ let closed = false;
81
+ let treeStopped = false;
82
+ const finish = () => {
83
+ if (finished)
84
+ return;
85
+ finished = true;
86
+ clearTimeout(timer);
87
+ proc.off('close', onClose);
88
+ resolve();
89
+ };
90
+ const fail = (error) => {
91
+ if (finished)
92
+ return;
93
+ finished = true;
94
+ clearTimeout(timer);
95
+ proc.off('close', onClose);
96
+ reject(error);
97
+ };
98
+ const groupExists = () => {
99
+ try {
100
+ process.kill(-proc.pid, 0);
101
+ return forceSent && linux ? hasLiveLinuxGroupMember(proc.pid) : true;
102
+ }
103
+ catch (error) {
104
+ if (error.code === 'ESRCH')
105
+ return false;
106
+ // A delivered group signal is not proof every member died. Inspect
107
+ // actual states; failures/malformed snapshots remain unknown and reject.
108
+ if (platform === 'darwin' && error.code === 'EPERM') {
109
+ return hasLiveDarwinGroupMember(proc.pid);
110
+ }
111
+ if (forceSent && linux && error.code === 'EPERM') {
112
+ return hasLiveLinuxGroupMember(proc.pid);
113
+ }
114
+ throw error;
115
+ }
116
+ };
117
+ const signalGroup = (signal) => {
118
+ try {
119
+ process.kill(-proc.pid, signal);
120
+ return true;
121
+ }
122
+ catch (error) {
123
+ if (error.code === 'ESRCH')
124
+ return false;
125
+ throw error;
126
+ }
127
+ };
128
+ const onClose = () => {
129
+ closed = true;
130
+ try {
131
+ if (windowsTree) {
132
+ if (treeStopped)
133
+ finish();
134
+ return;
135
+ }
136
+ // A root can exit before a TERM-resistant descendant. Keep escalation
137
+ // active while its owned group exists, even when stdio has closed.
138
+ if (!grouped || !groupExists())
139
+ finish();
140
+ }
141
+ catch (error) {
142
+ fail(error);
143
+ }
144
+ };
145
+ proc.once('close', onClose);
146
+ try {
147
+ if (grouped) {
148
+ if (!signalGroup('SIGTERM')) {
149
+ finish();
150
+ return;
151
+ }
152
+ timer = setTimeout(() => {
153
+ try {
154
+ if (!signalGroup('SIGKILL')) {
155
+ finish();
156
+ return;
157
+ }
158
+ forceSent = true;
159
+ const deadline = Date.now() + 1000;
160
+ const poll = () => {
161
+ try {
162
+ // Do not discard report files while group exit is unknown.
163
+ if (!groupExists())
164
+ finish();
165
+ else if (Date.now() >= deadline)
166
+ fail(new Error(`Test runner group ${proc.pid} survived SIGKILL.`));
167
+ else
168
+ timer = setTimeout(poll, 20);
169
+ }
170
+ catch (error) {
171
+ fail(error);
172
+ }
173
+ };
174
+ poll();
175
+ }
176
+ catch (error) {
177
+ fail(error);
178
+ }
179
+ }, 1000);
180
+ }
181
+ else if (windowsTree) {
182
+ const killer = spawn('taskkill', ['/PID', String(proc.pid), '/T', '/F'], {
183
+ stdio: 'ignore', windowsHide: true, timeout: 2000,
184
+ });
185
+ killer.once('error', fail);
186
+ killer.once('close', code => {
187
+ if (code !== 0) {
188
+ fail(new Error(`Test runner tree termination failed (taskkill exit ${code}).`));
189
+ }
190
+ else {
191
+ treeStopped = true;
192
+ if (closed)
193
+ finish();
194
+ }
195
+ });
196
+ }
197
+ else {
198
+ // No PID is available before spawn failure (and in test doubles).
199
+ proc.kill('SIGTERM');
200
+ if (finished)
201
+ return;
202
+ timer = setTimeout(() => { proc.kill('SIGKILL'); }, 1000);
203
+ }
204
+ }
205
+ catch (error) {
206
+ fail(error);
207
+ }
208
+ });
209
+ }
210
+ //# sourceMappingURL=test-runner-process.js.map
@@ -37,11 +37,12 @@ export async function computeQualityVerdict(input) {
37
37
  throw new Error('RequirementChecklist must have a non-empty, constant denominator (ADR-117).');
38
38
  }
39
39
  // 1. Mechanical gate (ADR-113). Non-execution ⇒ fail, no judge consulted.
40
- const mechanicalPass = input.oracle != null && input.oracle.baselinePassed && input.oracle.passed;
40
+ const mechanicalPass = input.oracle != null
41
+ && input.oracle.baselinePassed === true && input.oracle.passed === true;
41
42
  if (!mechanicalPass) {
42
43
  const why = input.oracle == null
43
44
  ? 'oracle did not run'
44
- : !input.oracle.baselinePassed
45
+ : input.oracle.baselinePassed !== true
45
46
  ? 'tests did not execute against the reference implementation'
46
47
  : 'mutation score below threshold';
47
48
  return {
@@ -30,7 +30,10 @@ export class PriorityQueue {
30
30
  */
31
31
  enqueue(item) {
32
32
  if (this.size >= this._maxSize) {
33
- return false;
33
+ // Stale background tasks must not consume capacity needed by new alerts.
34
+ this.pruneExpired();
35
+ if (this.size >= this._maxSize)
36
+ return false;
34
37
  }
35
38
  this.queues[item.priority].push(item);
36
39
  return true;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentic-qe",
3
- "version": "3.14.6",
3
+ "version": "3.14.8",
4
4
  "description": "Agentic Quality Engineering V3 - Domain-Driven Design Architecture with 13 Bounded Contexts, O(log n) coverage analysis, ReasoningBank learning, 60 specialized QE agents, mathematical Coherence verification, deep Claude Flow integration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -78,7 +78,7 @@
78
78
  "mcp": "tsx src/mcp/entry.ts",
79
79
  "test": "NODE_OPTIONS='--max-old-space-size=1024 --expose-gc' vitest run",
80
80
  "test:unit": "npm run test:unit:fast && npm run test:unit:heavy && npm run test:unit:mcp",
81
- "test:unit:fast": "vitest run --exclude='**/qe-reasoning-bank.test.ts' --exclude='**/qe-reasoning-bank-feedback-loop.test.ts' --exclude='**/aqe-learning-engine.test.ts' --exclude='**/aqe-learning-engine-patterns.test.ts' tests/unit/adapters tests/unit/shared tests/unit/cli tests/unit/learning tests/unit/kernel tests/unit/workers tests/unit/routing tests/unit/strange-loop tests/unit/sync tests/unit/feedback tests/unit/error-paths tests/unit/early-exit tests/unit/causal-discovery tests/unit/neural-optimizer tests/unit/test-scheduling tests/unit/logging tests/unit/validation tests/unit/memory tests/unit/performance tests/unit/scripts tests/unit/planning tests/context",
81
+ "test:unit:fast": "vitest run --exclude='**/qe-reasoning-bank.test.ts' --exclude='**/aqe-learning-engine.test.ts' --exclude='**/aqe-learning-engine-patterns.test.ts' tests/unit/adapters tests/unit/shared tests/unit/cli tests/unit/learning tests/unit/kernel tests/unit/workers tests/unit/routing tests/unit/strange-loop tests/unit/sync tests/unit/feedback tests/unit/error-paths tests/unit/early-exit tests/unit/causal-discovery tests/unit/neural-optimizer tests/unit/test-scheduling tests/unit/logging tests/unit/validation tests/unit/memory tests/unit/performance tests/unit/scripts tests/unit/planning tests/context",
82
82
  "test:unit:heavy": "vitest run tests/unit/coordination tests/unit/domains tests/unit/integrations tests/unit/optimization tests/unit/init --exclude='**/browser/**' --exclude='**/*.e2e.test.ts' --exclude='**/vibium/**' --exclude='**/browser-swarm-coordinator.test.ts'",
83
83
  "test:unit:mcp": "vitest run tests/unit/mcp --exclude='**/mcp/handlers/domain-handlers.test.ts' --fileParallelism=false",
84
84
  "test:ci": "vitest run --exclude='**/browser/**' --exclude='**/*.e2e.test.ts' --exclude='**/vibium/**' --exclude='**/integration/browser/**' --exclude='**/browser-swarm-coordinator.test.ts' --exclude='**/mcp/handlers/domain-handlers.test.ts' --exclude='**/fixtures/init-corpus/**'",
@@ -115,7 +115,7 @@
115
115
  "test:journeys:ci": "vitest run tests/integration/ --exclude='**/browser/**' --exclude='**/browser-integration/**' --exclude='**/integration/mcp/**' --exclude='**/integration/sync/**' --exclude='**/integration/learning/**' --exclude='**/integration/domains/**' --exclude='**/integration/llm/**' --exclude='**/integration/n8n/**' --exclude='**/*.e2e.test.ts'",
116
116
  "test:watch": "vitest",
117
117
  "performance:gate": "npx tsx src/performance/run-gates.ts",
118
- "test:integration:browser": "VIBIUM_REAL_TESTS=true vitest run tests/integrations/vibium/vibium-real.test.ts",
118
+ "test:integration:browser": "VIBIUM_REAL_TESTS=true vitest run --config config/vitest.browser.config.ts",
119
119
  "benchmark:token-reduction": "vitest bench tests/benchmarks/code-intelligence-token-reduction.bench.ts",
120
120
  "benchmark:self-learning": "tsx scripts/benchmark-self-learning.ts",
121
121
  "benchmark:rabitq": "tsx scripts/benchmark-rabitq.ts",
@@ -186,7 +186,6 @@
186
186
  "chalk": "^5.6.2",
187
187
  "cli-progress": "^3.12.0",
188
188
  "commander": "^14.0.3",
189
- "fast-glob": "^3.3.3",
190
189
  "fast-json-patch": "^3.1.1",
191
190
  "jose": "^6.1.3",
192
191
  "ora": "^9.0.0",
@@ -194,15 +193,16 @@
194
193
  "prime-radiant-advanced-wasm": "^0.1.3",
195
194
  "secure-json-parse": "^4.1.0",
196
195
  "semver": "^7.8.5",
196
+ "tinyglobby": "^0.2.17",
197
197
  "typescript": "^5.9.3",
198
198
  "uuid": "^14.0.0",
199
- "vibium": "^0.1.2",
200
199
  "web-tree-sitter": "~0.26.8",
201
200
  "yaml": "^2.8.2"
202
201
  },
203
202
  "peerDependencies": {
204
203
  "@claude-flow/browser": "3.0.0-alpha.1",
205
- "@claude-flow/guidance": "3.0.0-alpha.1"
204
+ "@claude-flow/guidance": "3.0.0-alpha.1",
205
+ "vibium": "^26.8.21"
206
206
  },
207
207
  "peerDependenciesMeta": {
208
208
  "@claude-flow/browser": {
@@ -210,6 +210,9 @@
210
210
  },
211
211
  "@claude-flow/guidance": {
212
212
  "optional": true
213
+ },
214
+ "vibium": {
215
+ "optional": true
213
216
  }
214
217
  },
215
218
  "optionalDependencies": {
@@ -276,6 +279,7 @@
276
279
  "glob": "^13.0.0",
277
280
  "msw": "^2.12.7",
278
281
  "tsx": "^4.21.0",
282
+ "vibium": "^26.8.21",
279
283
  "vitest": "^5.0.1"
280
284
  },
281
285
  "engines": {
@@ -1,2 +0,0 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.6");process.exit(0)}
2
- import{a,b,c}from"./chunk-RFNPJK6N.js";import"./chunk-YSLL6VSL.js";import"./chunk-2YXGBZWV.js";import"./chunk-AIRGNL55.js";import"./chunk-MJS53PRX.js";import"./chunk-64VGZQLB.js";export{a as AgentBoosterAdapter,b as createAgentBoosterAdapter,c as createAgentBoosterAdapterSync};
@@ -1,2 +0,0 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.14.6");process.exit(0)}
2
- import{a,b,c,d,e,f}from"./chunk-AHKELLIO.js";import"./chunk-CM7U6TAX.js";import"./chunk-MBRHSU6W.js";import"./chunk-Z6GGIRQQ.js";import"./chunk-CD542DNJ.js";import"./chunk-7LPR6HJG.js";import"./chunk-7D3V65N5.js";import"./chunk-CCK4BF76.js";import"./chunk-YFBSPLJG.js";import"./chunk-7CUQCCMD.js";import"./chunk-3HZS4M3O.js";import"./chunk-Y3LZ35OG.js";import"./chunk-JVNTSNWU.js";import"./chunk-SMDN3BQZ.js";import"./chunk-6U7LNMWZ.js";import"./chunk-I33ERSGB.js";import"./chunk-IG5GNEC6.js";import"./chunk-UNFFDHER.js";import"./chunk-2TMWAQQ3.js";import"./chunk-2JVWITNK.js";import"./chunk-Q5XTSMWR.js";import"./chunk-AIRGNL55.js";import"./chunk-QW6VMTBR.js";import"./chunk-SDRHUMJB.js";import"./chunk-5J6W7SIA.js";import"./chunk-KNNISEDY.js";import"./chunk-TCHGOB2N.js";import"./chunk-FBMN7B46.js";import"./chunk-ENGZ4D5V.js";import"./chunk-MJS53PRX.js";import"./chunk-DPYSUDAO.js";import"./chunk-PI7TJS62.js";import"./chunk-EAY2JMZG.js";import"./chunk-C6KWXUFJ.js";import"./chunk-IB27QACC.js";import"./chunk-6SH5VZUD.js";import"./chunk-SESK3ARK.js";import"./chunk-SNOBH4AZ.js";import"./chunk-IQO7UCFR.js";import"./chunk-DUYOVM5I.js";import"./chunk-64VGZQLB.js";export{b as AQELearningEngine,a as DEFAULT_ENGINE_CONFIG,c as DEFAULT_META_LEARNING_CONFIG,d as MetaLearningEngine,e as createAQELearningEngine,f as createDefaultLearningEngine};