agentic-qe 3.11.3 → 3.11.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/.claude/hooks/aqe-hook.cjs +44 -10
  2. package/.claude/skills/skills-manifest.json +1 -1
  3. package/CHANGELOG.md +106 -0
  4. package/assets/skills/skills-manifest.json +1 -1
  5. package/dist/audit/witness-chain.d.ts +25 -0
  6. package/dist/audit/witness-chain.js +69 -22
  7. package/dist/audit/witness-key-manager.d.ts +11 -0
  8. package/dist/audit/witness-key-manager.js +24 -0
  9. package/dist/cli/brain-commands.js +2 -1
  10. package/dist/cli/bundle.js +5 -5
  11. package/dist/cli/chunks/adapter-KNM5R47J.js +2 -0
  12. package/dist/cli/chunks/{agent-booster-wasm-BFRW7HEU.js → agent-booster-wasm-CSTBLNYZ.js} +2 -2
  13. package/dist/cli/chunks/{agent-handler-ZVC3VFPC.js → agent-handler-M4W4GTXN.js} +2 -2
  14. package/dist/cli/chunks/{agent-memory-branch-3WU3CVSX.js → agent-memory-branch-VGXFYLSQ.js} +2 -2
  15. package/dist/cli/chunks/aqe-learning-engine-MXPJLVR3.js +2 -0
  16. package/dist/cli/chunks/{arena-QMRLNQUC.js → arena-FKSD3LLM.js} +4 -4
  17. package/dist/cli/chunks/{arena-JMVTWWG5.js → arena-IQBRGWAG.js} +2 -2
  18. package/dist/cli/chunks/audit-7NSGRR4Z.js +3 -0
  19. package/dist/cli/chunks/base-X4EXQ2AS.js +2 -0
  20. package/dist/cli/chunks/{hnswlib-node-EBRXKEX5.js → better-sqlite3-2KR4LQRU.js} +2 -2
  21. package/dist/cli/chunks/brain-handler-M6A3UB66.js +89 -0
  22. package/dist/cli/chunks/{branch-enumerator-CJJG6X3I.js → branch-enumerator-2JGKY4BB.js} +2 -2
  23. package/dist/cli/chunks/{browser-LI2CDWVR.js → browser-J43WQPJL.js} +2 -2
  24. package/dist/cli/chunks/browser-workflow-4HX6RP5F.js +2 -0
  25. package/dist/cli/chunks/{chunk-DS7AZD26.js → chunk-26WEI3P4.js} +2 -2
  26. package/dist/cli/chunks/{chunk-OVEG5MEL.js → chunk-2XPMATEK.js} +2 -2
  27. package/dist/cli/chunks/{chunk-36HTS4EP.js → chunk-2XQHG56O.js} +2 -2
  28. package/dist/cli/chunks/{chunk-CGKHG46K.js → chunk-354367AP.js} +2 -2
  29. package/dist/cli/chunks/{chunk-FPKKKUWF.js → chunk-37ZUF5NX.js} +1 -1
  30. package/dist/cli/chunks/{chunk-H7Y43HBQ.js → chunk-3I4TCMOJ.js} +1 -1
  31. package/dist/cli/chunks/{chunk-WV66MXJI.js → chunk-3JF5A72M.js} +2 -2
  32. package/dist/cli/chunks/{chunk-MX5FMAY5.js → chunk-3LY7OCSO.js} +1 -1
  33. package/dist/cli/chunks/{chunk-KHUN65Q3.js → chunk-3V36WMIO.js} +1 -1
  34. package/dist/cli/chunks/{chunk-VFEU4JM4.js → chunk-3WR35GFF.js} +2 -2
  35. package/dist/cli/chunks/{chunk-A43MKBSX.js → chunk-4LODYRNV.js} +2 -2
  36. package/dist/cli/chunks/{chunk-3E3PSEC5.js → chunk-4MHN7JWC.js} +3 -3
  37. package/dist/cli/chunks/chunk-4QOI5JS7.js +14 -0
  38. package/dist/cli/chunks/{chunk-LKLWIP4Z.js → chunk-4RTWPR3X.js} +1 -1
  39. package/dist/cli/chunks/chunk-4XJ2A3HY.js +65 -0
  40. package/dist/cli/chunks/{chunk-PMHSTMHV.js → chunk-4Y3LGBKJ.js} +3 -3
  41. package/dist/cli/chunks/{chunk-SFDBIO64.js → chunk-52U5BFZP.js} +2 -2
  42. package/dist/cli/chunks/{chunk-YPRM6ZFL.js → chunk-53YOYZW5.js} +2 -2
  43. package/dist/cli/chunks/{chunk-REZ2GZQ3.js → chunk-5WMU7XCF.js} +1 -1
  44. package/dist/cli/chunks/{chunk-VUEYLW5P.js → chunk-62OTU2AP.js} +2 -2
  45. package/dist/cli/chunks/{chunk-3XLGXCSX.js → chunk-62UM7Q5N.js} +1 -1
  46. package/dist/cli/chunks/{chunk-DZZ4AJQI.js → chunk-6Q57K4YD.js} +2 -2
  47. package/dist/cli/chunks/chunk-6R3YOAKO.js +2 -0
  48. package/dist/cli/chunks/chunk-6T65OKUM.js +2 -0
  49. package/dist/cli/chunks/{chunk-VTDWQ7WI.js → chunk-7BCRULCP.js} +2 -2
  50. package/dist/cli/chunks/{chunk-XCSEJQXR.js → chunk-7DTMENY6.js} +2 -2
  51. package/dist/cli/chunks/{chunk-N2K2EQFH.js → chunk-7KXPNNMR.js} +2 -2
  52. package/dist/cli/chunks/{chunk-XKUN5PDH.js → chunk-7P6X4BFO.js} +3 -3
  53. package/dist/cli/chunks/{chunk-3CBYKKRW.js → chunk-7YSBATSN.js} +2 -2
  54. package/dist/cli/chunks/{chunk-ZDPQB67L.js → chunk-ABU64UWB.js} +1 -1
  55. package/dist/cli/chunks/{chunk-IJHPZMEQ.js → chunk-AF6P5RWY.js} +2 -2
  56. package/dist/cli/chunks/{chunk-7S7QF4HJ.js → chunk-AGJOGUP5.js} +1 -1
  57. package/dist/cli/chunks/{chunk-EHEFI6LR.js → chunk-AL5VJJN4.js} +1 -1
  58. package/dist/cli/chunks/{chunk-Q2A2XQGF.js → chunk-AOQYORVA.js} +2 -2
  59. package/dist/cli/chunks/{chunk-6WWNK67C.js → chunk-AOXJFDH5.js} +180 -176
  60. package/dist/cli/chunks/{chunk-SWRGPCZ2.js → chunk-AXKWV5NF.js} +4 -4
  61. package/dist/cli/chunks/{chunk-3BREKEL5.js → chunk-B2VBDMDI.js} +2 -2
  62. package/dist/cli/chunks/{chunk-RXN5DWVM.js → chunk-BJLA2IX7.js} +2 -2
  63. package/dist/cli/chunks/{chunk-DPYNXEBC.js → chunk-BLPWJQTY.js} +2 -2
  64. package/dist/cli/chunks/{chunk-SMHYPPO6.js → chunk-BTLUWH4R.js} +2 -2
  65. package/dist/cli/chunks/{chunk-PUK5NE47.js → chunk-C4EZNOWK.js} +1 -1
  66. package/dist/cli/chunks/{chunk-ATFADWGD.js → chunk-C5C4W572.js} +2 -2
  67. package/dist/cli/chunks/{chunk-WTKT2AD3.js → chunk-CDJP6COA.js} +2 -2
  68. package/dist/cli/chunks/{chunk-G6MPXBCD.js → chunk-CKOF27L7.js} +2 -2
  69. package/dist/cli/chunks/{chunk-BQ5EJPK3.js → chunk-D45QLJEL.js} +1 -1
  70. package/dist/cli/chunks/{chunk-WCVZHXWL.js → chunk-DFRRWOEX.js} +2 -2
  71. package/dist/cli/chunks/{chunk-PSL53AQ4.js → chunk-DLBVADWQ.js} +92 -92
  72. package/dist/cli/chunks/{chunk-HRD5I7ES.js → chunk-DPL762HU.js} +1 -1
  73. package/dist/cli/chunks/{chunk-7QIYYYUE.js → chunk-DVW66FPU.js} +1 -1
  74. package/dist/cli/chunks/{chunk-ABD6JBNO.js → chunk-EDOGRFAG.js} +1 -1
  75. package/dist/cli/chunks/{chunk-7SBMTSGY.js → chunk-EEKG35K5.js} +5 -5
  76. package/dist/cli/chunks/{chunk-PW4GGJMP.js → chunk-EK3HPH6A.js} +1 -1
  77. package/dist/cli/chunks/{chunk-QPMISAWB.js → chunk-FGD6HINU.js} +1 -1
  78. package/dist/cli/chunks/{chunk-SLU35IDJ.js → chunk-FGSIID5C.js} +2 -2
  79. package/dist/cli/chunks/{chunk-DNOBN3IR.js → chunk-FHTYEAQ3.js} +2 -2
  80. package/dist/cli/chunks/{chunk-S2T2BXUL.js → chunk-FII3WCCY.js} +2 -2
  81. package/dist/cli/chunks/{chunk-77QJQRL2.js → chunk-FIPKIIMS.js} +2 -2
  82. package/dist/cli/chunks/{chunk-WYJFVSEB.js → chunk-FMNXHVIN.js} +2 -2
  83. package/dist/cli/chunks/{chunk-FZLCKIPP.js → chunk-G2ZIJZJ7.js} +2 -2
  84. package/dist/cli/chunks/{chunk-L6PH7JIE.js → chunk-GODAWJMZ.js} +2 -2
  85. package/dist/cli/chunks/{chunk-KTYESESI.js → chunk-GW6XWMX2.js} +2 -2
  86. package/dist/cli/chunks/{chunk-AC6OZTY4.js → chunk-HC6KTVFR.js} +2 -2
  87. package/dist/cli/chunks/{chunk-EXCU4J7T.js → chunk-HJWT4KME.js} +1 -1
  88. package/dist/cli/chunks/{chunk-GBCDJJWH.js → chunk-I3ANRYQ6.js} +2 -2
  89. package/dist/cli/chunks/{chunk-KXRI4MR3.js → chunk-I3NWKPXJ.js} +2 -2
  90. package/dist/cli/chunks/chunk-IBDQWKI3.js +2 -0
  91. package/dist/cli/chunks/{chunk-7FVWETN4.js → chunk-IU5RSN6M.js} +2 -2
  92. package/dist/cli/chunks/{chunk-L44XXD3X.js → chunk-J5XDKVI7.js} +2 -2
  93. package/dist/cli/chunks/{chunk-NJ2RY4OL.js → chunk-J6PFPY7V.js} +2 -2
  94. package/dist/cli/chunks/{chunk-27MMZQ7X.js → chunk-JATLFS6A.js} +1 -1
  95. package/dist/cli/chunks/{chunk-SIAJP3YA.js → chunk-JBKZ5TUM.js} +2 -2
  96. package/dist/cli/chunks/{chunk-PLQADRA6.js → chunk-JDSHUECG.js} +2 -2
  97. package/dist/cli/chunks/chunk-K4C25BWV.js +24 -0
  98. package/dist/cli/chunks/{chunk-UFZCHVLH.js → chunk-K4I7UIU5.js} +1 -1
  99. package/dist/cli/chunks/{chunk-6F43POT6.js → chunk-KP3R2M2G.js} +1 -1
  100. package/dist/cli/chunks/chunk-KQVIWE3W.js +2 -0
  101. package/dist/cli/chunks/{chunk-JWTMVC6E.js → chunk-KVVJVMDM.js} +2 -2
  102. package/dist/cli/chunks/{chunk-EZ4GKHSI.js → chunk-LOE2JETO.js} +2 -2
  103. package/dist/cli/chunks/{chunk-O7ZDQ5FF.js → chunk-LPR2R3AN.js} +3 -3
  104. package/dist/cli/chunks/{chunk-AKOGQT3A.js → chunk-M6FW56MV.js} +2 -2
  105. package/dist/cli/chunks/{chunk-NBOEXSV2.js → chunk-MCHEUSY4.js} +1 -1
  106. package/dist/cli/chunks/{chunk-B7XPSXK6.js → chunk-MEIU7457.js} +2 -2
  107. package/dist/cli/chunks/{chunk-3FOFPGHH.js → chunk-MHMQ6MCT.js} +2 -2
  108. package/dist/cli/chunks/{chunk-6JR2RSY2.js → chunk-MIU5RUBJ.js} +2 -2
  109. package/dist/cli/chunks/{chunk-QCCXH5DK.js → chunk-MMEXHZUC.js} +37 -12
  110. package/dist/cli/chunks/{chunk-LW5TUN5F.js → chunk-MTBGOWJA.js} +2 -2
  111. package/dist/cli/chunks/{chunk-JVXPKHND.js → chunk-NCSXLMDL.js} +77 -27
  112. package/dist/cli/chunks/{chunk-WLLGPGQY.js → chunk-O7J54OHN.js} +1 -1
  113. package/dist/cli/chunks/{chunk-ZM7WOA3K.js → chunk-OGNTCZKK.js} +1 -1
  114. package/dist/cli/chunks/{chunk-CYJ6O5VZ.js → chunk-OS2HHJTM.js} +2 -2
  115. package/dist/cli/chunks/{chunk-242B625Q.js → chunk-OS62Y77J.js} +2 -2
  116. package/dist/cli/chunks/{chunk-CLZ5RQVA.js → chunk-PVDXNQPL.js} +2 -2
  117. package/dist/cli/chunks/{chunk-PUUGIBFF.js → chunk-PW72M2FE.js} +2 -2
  118. package/dist/cli/chunks/{chunk-RWUGXU2K.js → chunk-Q5TR6ETB.js} +22 -22
  119. package/dist/cli/chunks/{chunk-CCDGNJZX.js → chunk-QKK7VBVB.js} +2 -2
  120. package/dist/cli/chunks/{chunk-BHZI6PDR.js → chunk-RFLHPLET.js} +1 -1
  121. package/dist/cli/chunks/{chunk-KULBMV6K.js → chunk-RJN2RM76.js} +2 -2
  122. package/dist/cli/chunks/{chunk-LGEZ3ZJX.js → chunk-RKXZLTWR.js} +2 -2
  123. package/dist/cli/chunks/{chunk-OFMVC6P3.js → chunk-SE3JFUKP.js} +1 -1
  124. package/dist/cli/chunks/{chunk-S7KDHA6P.js → chunk-SK754ZSH.js} +4 -4
  125. package/dist/cli/chunks/{chunk-OQGELUM2.js → chunk-SO6G4IX3.js} +2 -2
  126. package/dist/cli/chunks/{chunk-5746QYRF.js → chunk-SUL3I6QZ.js} +2 -2
  127. package/dist/cli/chunks/{chunk-22CUJA33.js → chunk-TBT3OFRW.js} +2 -2
  128. package/dist/cli/chunks/{chunk-26KHL4VO.js → chunk-TEIWJ3GJ.js} +1 -1
  129. package/dist/cli/chunks/{chunk-SFGBC5RP.js → chunk-TRNBQFFG.js} +8 -20
  130. package/dist/cli/chunks/{chunk-UTGW75AZ.js → chunk-TTJJ4DQE.js} +2 -2
  131. package/dist/cli/chunks/{chunk-H6YFMUFG.js → chunk-UBI2EOS3.js} +1 -1
  132. package/dist/cli/chunks/{chunk-GCIL7PK7.js → chunk-UBY322ED.js} +2 -2
  133. package/dist/cli/chunks/{chunk-P4UGVVVX.js → chunk-UORTQXJ2.js} +1 -1
  134. package/dist/cli/chunks/{chunk-BFBZFUBP.js → chunk-URP75DL4.js} +1 -1
  135. package/dist/cli/chunks/chunk-V6NAB5UZ.js +2 -0
  136. package/dist/cli/chunks/{chunk-DZ7PWB6E.js → chunk-VMFAANWX.js} +2 -2
  137. package/dist/cli/chunks/{chunk-6KKKPVOF.js → chunk-VMWRMINE.js} +1 -1
  138. package/dist/cli/chunks/{chunk-ECGASTG7.js → chunk-VN2HHBZN.js} +2 -2
  139. package/dist/cli/chunks/{chunk-6GVRP64A.js → chunk-W72FJA2H.js} +2 -2
  140. package/dist/cli/chunks/chunk-W7TYKPLY.js +27 -0
  141. package/dist/cli/chunks/{chunk-2OUXYSQV.js → chunk-WHHQIL4F.js} +2 -2
  142. package/dist/cli/chunks/{chunk-RRSUW2TK.js → chunk-WMZ2QGGS.js} +2 -2
  143. package/dist/cli/chunks/{chunk-54TDOQAH.js → chunk-WPSK237F.js} +3 -3
  144. package/dist/cli/chunks/{chunk-LMA6KEZH.js → chunk-XKQY2Z3Q.js} +1 -1
  145. package/dist/cli/chunks/{chunk-UMWYL37S.js → chunk-XLT3FYS7.js} +2 -2
  146. package/dist/cli/chunks/{chunk-5EW36WTI.js → chunk-XT4TDLOB.js} +2 -2
  147. package/dist/cli/chunks/{chunk-7UOH55UT.js → chunk-Y25PO65W.js} +2 -2
  148. package/dist/cli/chunks/{chunk-ED7MD6OI.js → chunk-Y6DWJKHU.js} +3 -3
  149. package/dist/cli/chunks/{chunk-A4NYOH7P.js → chunk-YBPLJRVT.js} +2 -2
  150. package/dist/cli/chunks/{chunk-BA7PJS3Y.js → chunk-YFCULQBP.js} +2 -2
  151. package/dist/cli/chunks/{chunk-B65CRJN6.js → chunk-YGVDP6X7.js} +1 -1
  152. package/dist/cli/chunks/chunk-YR2JKBZO.js +2 -0
  153. package/dist/cli/chunks/{chunk-FJRRXCIS.js → chunk-YZSTZUGJ.js} +1 -1
  154. package/dist/cli/chunks/{chunk-H2YOWAEB.js → chunk-ZG5UAEEO.js} +2 -2
  155. package/dist/cli/chunks/{chunk-MU36VPXV.js → chunk-ZLBY25MB.js} +1 -1
  156. package/dist/cli/chunks/chunk-ZMPAM4DY.js +2 -0
  157. package/dist/cli/chunks/{chunk-4ITHKHR5.js → chunk-ZPP57WQU.js} +2 -2
  158. package/dist/cli/chunks/{chunk-B6USJW5E.js → chunk-ZXEWTZFR.js} +1 -1
  159. package/dist/cli/chunks/{ci-JW4O2J3W.js → ci-CBNVLOOQ.js} +2 -2
  160. package/dist/cli/chunks/{ci-output-JNXJV4B2.js → ci-output-I4HY2FYJ.js} +2 -2
  161. package/dist/cli/chunks/{circuit-breaker-XDD4KUGR.js → circuit-breaker-5VRBKGWL.js} +2 -2
  162. package/dist/cli/chunks/{claude-flow-setup-L6IZOGYZ.js → claude-flow-setup-XPJPKHIO.js} +2 -2
  163. package/dist/cli/chunks/client-AHXNCOHK.js +2 -0
  164. package/dist/cli/chunks/{cline-installer-PK5SMN2B.js → cline-installer-OFRDUUWZ.js} +2 -2
  165. package/dist/cli/chunks/{code-ZDVX3SQH.js → code-QIZQVB3E.js} +2 -2
  166. package/dist/cli/chunks/{code-index-extractor-VXZNKEU5.js → code-index-extractor-LMUUWEX4.js} +2 -2
  167. package/dist/cli/chunks/{codex-installer-OXKSIX7H.js → codex-installer-N2MKIZ2S.js} +2 -2
  168. package/dist/cli/chunks/{completions-VRFFK223.js → completions-Y36S3C5J.js} +2 -2
  169. package/dist/cli/chunks/{complexity-analyzer-FTIMV74J.js → complexity-analyzer-73YS3WUD.js} +2 -2
  170. package/dist/cli/chunks/{continuedev-installer-KTYBBPN4.js → continuedev-installer-SAOTP6J3.js} +2 -2
  171. package/dist/cli/chunks/{copilot-installer-WDC3YNUR.js → copilot-installer-A4HXF6HE.js} +2 -2
  172. package/dist/cli/chunks/core-handlers-EEFLLMAZ.js +2 -0
  173. package/dist/cli/chunks/{cost-tracker-6MH4H33B.js → cost-tracker-P26XUVZS.js} +2 -2
  174. package/dist/cli/chunks/{coverage-NHATLNS4.js → coverage-HVNHSMVJ.js} +3 -3
  175. package/dist/cli/chunks/cross-domain-router-LT3H4SNJ.js +2 -0
  176. package/dist/cli/chunks/{cursor-installer-VQSUJDFB.js → cursor-installer-46BQFTYZ.js} +2 -2
  177. package/dist/cli/chunks/{daemon-3VAOEKQW.js → daemon-Y54O3FLT.js} +3 -3
  178. package/dist/cli/chunks/daemon-YE7K2AZF.js +10 -0
  179. package/dist/cli/chunks/{dag-attention-scheduler-HZ6OGYIH.js → dag-attention-scheduler-ETA7YY52.js} +2 -2
  180. package/dist/cli/chunks/{detect-CGU3SC63.js → detect-5WLQ2J3E.js} +2 -2
  181. package/dist/cli/chunks/{dist-node-DIBQ7PTA.js → dist-node-45WW6I7J.js} +2 -2
  182. package/dist/cli/chunks/{domain-handler-DCMGAYXS.js → domain-handler-J7DQV74M.js} +2 -2
  183. package/dist/cli/chunks/domain-transfer-GD2EGQVR.js +2 -0
  184. package/dist/cli/chunks/dream-4K3BK4IG.js +2 -0
  185. package/dist/cli/chunks/{embed-and-insert-pattern-7247LAU3.js → embed-and-insert-pattern-JELNEA2D.js} +2 -2
  186. package/dist/cli/chunks/{eval-6KR7TFOK.js → eval-A4PA5G2U.js} +2 -2
  187. package/dist/cli/chunks/{experience-capture-middleware-IIOR6RVV.js → experience-capture-middleware-MLHTYWTA.js} +3 -3
  188. package/dist/cli/chunks/{fast-paths-M7OGD4ZI.js → fast-paths-QYDTITRV.js} +2 -2
  189. package/dist/cli/chunks/{feature-flags-U75KFIGH.js → feature-flags-H4MSY26Z.js} +2 -2
  190. package/dist/cli/chunks/{feature-flags-GGUXHRJI.js → feature-flags-MQYYRHIK.js} +2 -2
  191. package/dist/cli/chunks/{file-discovery-V52AYEB7.js → file-discovery-RMFVJNGL.js} +2 -2
  192. package/dist/cli/chunks/{fleet-2UH72CK4.js → fleet-7KZQOTAC.js} +4 -4
  193. package/dist/cli/chunks/{gnn-wrapper-J2GDLT3P.js → gnn-wrapper-NMZFTGVH.js} +2 -2
  194. package/dist/cli/chunks/{heartbeat-handler-QIDQHRXT.js → heartbeat-handler-7BQDK7MG.js} +4 -4
  195. package/dist/cli/chunks/heartbeat-scheduler-IMPPGQUK.js +2 -0
  196. package/dist/cli/chunks/hnsw-adapter-EIAA6R2L.js +2 -0
  197. package/dist/cli/chunks/hnsw-index-ZXXP6AXZ.js +2 -0
  198. package/dist/cli/chunks/{hnsw-legacy-bridge-IU62PIY5.js → hnsw-legacy-bridge-TPPGBPKF.js} +2 -2
  199. package/dist/cli/chunks/{better-sqlite3-QNZJOJAB.js → hnswlib-node-E6NSZPP2.js} +2 -2
  200. package/dist/cli/chunks/{hooks-ZI4D3ATS.js → hooks-CYZIUYSH.js} +48 -52
  201. package/dist/cli/chunks/hybrid-router-LXWG4MLH.js +2 -0
  202. package/dist/cli/chunks/{hypergraph-engine-6JEERAGA.js → hypergraph-engine-WC6DMTYQ.js} +2 -2
  203. package/dist/cli/chunks/{hypergraph-handler-YMDGYCB6.js → hypergraph-handler-GTGA3TXJ.js} +3 -3
  204. package/dist/cli/chunks/impact-analyzer-TP5LRFYH.js +2 -0
  205. package/dist/cli/chunks/{init-handler-N57NW3QI.js → init-handler-N3Z72JNI.js} +6 -6
  206. package/dist/cli/chunks/init-wizard-AIOA5KOY.js +2 -0
  207. package/dist/cli/chunks/kernel-SQALRU6Q.js +2 -0
  208. package/dist/cli/chunks/{kilocode-installer-7ABTGXJ5.js → kilocode-installer-FUX4V6II.js} +2 -2
  209. package/dist/cli/chunks/{kiro-installer-2JFOHLVI.js → kiro-installer-ZSNZT7ZR.js} +2 -2
  210. package/dist/cli/chunks/knowledge-graph-JFVT6SNN.js +2 -0
  211. package/dist/cli/chunks/{learning-3P3ZXRGD.js → learning-UQY64COU.js} +3 -3
  212. package/dist/cli/chunks/{llm-router-AWB2KHDW.js → llm-router-CMHGGX6N.js} +4 -4
  213. package/dist/cli/chunks/llm-router-service-XHFKTH3I.js +2 -0
  214. package/dist/cli/chunks/{load-GGVBCBGX.js → load-E6WH4QN2.js} +2 -2
  215. package/dist/cli/chunks/load-test-JEIFJKNN.js +2 -0
  216. package/dist/cli/chunks/{mcp-33NHIBN3.js → mcp-UM5VTW6N.js} +2 -2
  217. package/dist/cli/chunks/{memory-IVAQS4OW.js → memory-7Q3XDUE5.js} +5 -5
  218. package/dist/cli/chunks/memory-backend-NT7I37CP.js +2 -0
  219. package/dist/cli/chunks/memory-handlers-746D7NE7.js +2 -0
  220. package/dist/cli/chunks/{multi-model-executor-NWQY6IN2.js → multi-model-executor-LZENWVRR.js} +2 -2
  221. package/dist/cli/chunks/{opencode-installer-FBB4JOEV.js → opencode-installer-O2JAIPLF.js} +2 -2
  222. package/dist/cli/chunks/{orchestrator-GDAXR7DH.js → orchestrator-DKZWXDRI.js} +5 -5
  223. package/dist/cli/chunks/pattern-null-store-6QU6WHDW.js +2 -0
  224. package/dist/cli/chunks/pattern-usage-recorder-CLUL4M55.js +2 -0
  225. package/dist/cli/chunks/{pipeline-VIKAOIBE.js → pipeline-2VDLTR5J.js} +2 -2
  226. package/dist/cli/chunks/{platform-FFVP36LH.js → platform-4N4Q5XYX.js} +2 -2
  227. package/dist/cli/chunks/{plugin-TI6QOLXH.js → plugin-GY5AU5CS.js} +2 -2
  228. package/dist/cli/chunks/{prime-radiant-advanced-wasm-AZRNI2OL.js → prime-radiant-advanced-wasm-TQ4DKDZS.js} +2 -2
  229. package/dist/cli/chunks/protocol-executor-GT2MZYUU.js +2 -0
  230. package/dist/cli/chunks/{protocol-handler-J4EA34B3.js → protocol-handler-T3LZ3WRG.js} +2 -2
  231. package/dist/cli/chunks/{prove-ADVRMAWS.js → prove-OV7S5J4W.js} +2 -2
  232. package/dist/cli/chunks/provider-manager-OATJ7R3D.js +2 -0
  233. package/dist/cli/chunks/qe-reasoning-bank-IJXNQ67O.js +2 -0
  234. package/dist/cli/chunks/{quality-GB5SJFSD.js → quality-AXD4NLQA.js} +2 -2
  235. package/dist/cli/chunks/queen-coordinator-6RBHWCUG.js +2 -0
  236. package/dist/cli/chunks/{real-embeddings-GDRJ4XSH.js → real-embeddings-2PUCC7FG.js} +2 -2
  237. package/dist/cli/chunks/{roocode-installer-Q6EISUDV.js → roocode-installer-WJ5ARGLW.js} +2 -2
  238. package/dist/cli/chunks/router-XKQRT5JK.js +2 -0
  239. package/dist/cli/chunks/routing-feedback-ACPSD4LW.js +2 -0
  240. package/dist/cli/chunks/{routing-handler-RO4RTRAG.js → routing-handler-CU6657SZ.js} +2 -2
  241. package/dist/cli/chunks/{ruvector-commands-FFIHCGVQ.js → ruvector-commands-IIF6VSFW.js} +2 -2
  242. package/dist/cli/chunks/{rvf-dual-writer-JGEK3A5Y.js → rvf-dual-writer-YMQI7XO2.js} +2 -2
  243. package/dist/cli/chunks/{rvf-migration-adapter-OVYC4QM6.js → rvf-migration-adapter-HDE3PR2W.js} +2 -2
  244. package/dist/cli/chunks/{rvf-migration-coordinator-U6L77QTS.js → rvf-migration-coordinator-MQV5OA7K.js} +2 -2
  245. package/dist/cli/chunks/rvf-native-adapter-SIWRKE33.js +2 -0
  246. package/dist/cli/chunks/safe-db-LCPUYMX4.js +2 -0
  247. package/dist/cli/chunks/schedule-HIQJCWXG.js +2 -0
  248. package/dist/cli/chunks/scheduler-QE5EJ5LE.js +2 -0
  249. package/dist/cli/chunks/{security-QPQIDAIL.js → security-UM3IGDSM.js} +3 -3
  250. package/dist/cli/chunks/{shared-rvf-adapter-JRJTI4UD.js → shared-rvf-adapter-I3SOJ6M4.js} +2 -2
  251. package/dist/cli/chunks/{shared-rvf-dual-writer-DSHGURDA.js → shared-rvf-dual-writer-KQGC2UO7.js} +2 -2
  252. package/dist/cli/chunks/sqlite-persistence-EU54UTMH.js +2 -0
  253. package/dist/cli/chunks/status-handler-OX4CJZME.js +46 -0
  254. package/dist/cli/chunks/{structural-health-UVECCN7U.js → structural-health-PYUMVBXJ.js} +2 -2
  255. package/dist/cli/chunks/{sync-XXIGTGCG.js → sync-2TED3YTY.js} +2 -2
  256. package/dist/cli/chunks/{sync-ZLZ4CZFJ.js → sync-VALFNTA6.js} +2 -2
  257. package/dist/cli/chunks/{task-handler-73YAVOKJ.js → task-handler-VPGAJVPC.js} +2 -2
  258. package/dist/cli/chunks/{task-handlers-PKECV27D.js → task-handlers-IB4UAMU6.js} +3 -3
  259. package/dist/cli/chunks/{test-U3SXW4SV.js → test-OMRJOZB6.js} +4 -4
  260. package/dist/cli/chunks/{test-scheduling-POJND3GV.js → test-scheduling-ZL3YFPBU.js} +3 -3
  261. package/dist/cli/chunks/{token-bootstrap-ICX6SIXJ.js → token-bootstrap-DNWZI7SH.js} +2 -2
  262. package/dist/cli/chunks/{token-usage-WCHJUVGT.js → token-usage-IYO7RGFF.js} +2 -2
  263. package/dist/cli/chunks/{transformers-L77UIHIY.js → transformers-53ALC34T.js} +2 -2
  264. package/dist/cli/chunks/{tree-sitter-wasm-parser-CVAXURQP.js → tree-sitter-wasm-parser-WUKJ2I2Q.js} +2 -2
  265. package/dist/cli/chunks/{types-LNVJBDM2.js → types-47FTEPMV.js} +2 -2
  266. package/dist/cli/chunks/unified-memory-CJLMC2I4.js +2 -0
  267. package/dist/cli/chunks/unified-memory-hnsw-FDGR4D2J.js +2 -0
  268. package/dist/cli/chunks/unified-persistence-UFH5GLDN.js +2 -0
  269. package/dist/cli/chunks/{upgrade-4ND5RQFY.js → upgrade-QPLMJA5Z.js} +2 -2
  270. package/dist/cli/chunks/{validate-ZA4XT6K2.js → validate-3GVKZOVF.js} +2 -2
  271. package/dist/cli/chunks/{validate-swarm-FNK3GCJ4.js → validate-swarm-XCRTLVM6.js} +2 -2
  272. package/dist/cli/chunks/{vibium-E2CK2GBQ.js → vibium-CH4VPKVZ.js} +2 -2
  273. package/dist/cli/chunks/visual-security-4ARJ7J2Y.js +2 -0
  274. package/dist/cli/chunks/{web-tree-sitter-63VRNKZV.js → web-tree-sitter-JDBNAZTV.js} +2 -2
  275. package/dist/cli/chunks/{windsurf-installer-5BTCVOLH.js → windsurf-installer-3MNPVJBP.js} +2 -2
  276. package/dist/cli/chunks/witness-chain-73QC33ED.js +2 -0
  277. package/dist/cli/chunks/{witness-chain-6CUUGISD.js → witness-chain-HR5UBV5J.js} +2 -2
  278. package/dist/cli/chunks/witness-key-manager-G5SQTIBZ.js +2 -0
  279. package/dist/cli/chunks/{workflow-V7ED22XT.js → workflow-43EMD5FY.js} +4 -4
  280. package/dist/cli/chunks/workflow-orchestrator-RKMMPXNA.js +2 -0
  281. package/dist/cli/chunks/{wrappers-7S3NTTLW.js → wrappers-3N7AYNM3.js} +2 -2
  282. package/dist/cli/commands/audit.d.ts +12 -0
  283. package/dist/cli/commands/audit.js +64 -4
  284. package/dist/cli/commands/hooks-handlers/hooks-dream-learning.js +45 -19
  285. package/dist/cli/commands/hooks-handlers/hooks-shared.d.ts +13 -0
  286. package/dist/cli/commands/hooks-handlers/hooks-shared.js +38 -0
  287. package/dist/cli/commands/hooks-handlers/task-hooks.js +19 -1
  288. package/dist/cli/handlers/status-handler.d.ts +18 -0
  289. package/dist/cli/handlers/status-handler.js +47 -0
  290. package/dist/coordination/consensus/providers/ollama-provider.js +3 -2
  291. package/dist/coordination/mincut/queen-integration.js +24 -7
  292. package/dist/coordination/protocol-executor.js +2 -1
  293. package/dist/coordination/queen-lifecycle.js +4 -1
  294. package/dist/domains/code-intelligence/coordinator.js +10 -6
  295. package/dist/domains/code-intelligence/services/product-factors-bridge.js +3 -1
  296. package/dist/domains/defect-intelligence/services/defect-predictor.d.ts +6 -0
  297. package/dist/domains/defect-intelligence/services/defect-predictor.js +21 -0
  298. package/dist/domains/learning-optimization/interfaces.d.ts +7 -0
  299. package/dist/domains/learning-optimization/plugin.js +5 -0
  300. package/dist/domains/learning-optimization/services/learning-coordinator.d.ts +10 -0
  301. package/dist/domains/learning-optimization/services/learning-coordinator.js +57 -0
  302. package/dist/domains/test-execution/plugin.js +2 -2
  303. package/dist/domains/test-execution/services/flaky-detector.js +1 -1
  304. package/dist/domains/test-generation/coordinator.js +22 -8
  305. package/dist/domains/test-generation/interfaces.d.ts +3 -0
  306. package/dist/domains/test-generation/services/test-generator.js +9 -1
  307. package/dist/integrations/ruvector/delta-tracker.js +10 -1
  308. package/dist/integrations/ruvector/proof-gate.d.ts +68 -0
  309. package/dist/integrations/ruvector/proof-gate.js +135 -0
  310. package/dist/integrations/ruvector/sona-persistence.d.ts +24 -0
  311. package/dist/integrations/ruvector/sona-persistence.js +76 -0
  312. package/dist/integrations/ruvector/sona-three-loop.d.ts +15 -0
  313. package/dist/integrations/ruvector/sona-three-loop.js +17 -0
  314. package/dist/kernel/unified-memory-schemas.d.ts +2 -2
  315. package/dist/kernel/unified-memory-schemas.js +48 -2
  316. package/dist/kernel/unified-memory.d.ts +57 -0
  317. package/dist/kernel/unified-memory.js +148 -0
  318. package/dist/learning/aqe-learning-engine.js +3 -1
  319. package/dist/learning/dream/concept-graph.d.ts +31 -1
  320. package/dist/learning/dream/concept-graph.js +109 -3
  321. package/dist/learning/dream/dream-engine.d.ts +13 -1
  322. package/dist/learning/dream/dream-engine.js +146 -10
  323. package/dist/learning/dream/index.d.ts +1 -1
  324. package/dist/learning/dream/types.d.ts +23 -0
  325. package/dist/learning/local-judge-client.js +2 -1
  326. package/dist/learning/pattern-store.d.ts +2 -2
  327. package/dist/learning/pattern-store.js +14 -3
  328. package/dist/learning/qe-reasoning-bank.js +34 -31
  329. package/dist/learning/routing-topology-gate.d.ts +12 -2
  330. package/dist/learning/routing-topology-gate.js +15 -3
  331. package/dist/learning/rvf-pattern-store.d.ts +1 -1
  332. package/dist/learning/rvf-pattern-store.js +21 -8
  333. package/dist/learning/sqlite-persistence.js +12 -9
  334. package/dist/mcp/bundle.js +524 -445
  335. package/dist/mcp/qe-tool-bridge.js +7 -2
  336. package/dist/mcp/tools/base.d.ts +29 -0
  337. package/dist/mcp/tools/base.js +25 -0
  338. package/dist/mcp/tools/coverage-analysis/index.js +6 -4
  339. package/dist/mcp/tools/learning-optimization/dream.d.ts +4 -13
  340. package/dist/mcp/tools/learning-optimization/dream.js +10 -96
  341. package/dist/mcp/tools/planning/goap-execute.d.ts +13 -1
  342. package/dist/mcp/tools/planning/goap-execute.js +33 -18
  343. package/dist/mcp/tools/registry.js +7 -2
  344. package/dist/persistence/rvf-migration-coordinator.js +2 -1
  345. package/dist/planning/actions/qe-action-library.js +124 -1
  346. package/dist/planning/goap-planner.d.ts +14 -2
  347. package/dist/planning/goap-planner.js +51 -9
  348. package/dist/planning/index.d.ts +1 -1
  349. package/dist/planning/plan-executor.d.ts +84 -4
  350. package/dist/planning/plan-executor.js +221 -56
  351. package/dist/planning/types.d.ts +27 -0
  352. package/dist/routing/free-tier/coordinator-support.d.ts +6 -3
  353. package/dist/routing/free-tier/coordinator-support.js +6 -3
  354. package/dist/routing/free-tier/executor.d.ts +14 -0
  355. package/dist/routing/free-tier/executor.js +21 -0
  356. package/dist/routing/free-tier/index.d.ts +1 -0
  357. package/dist/routing/free-tier/index.js +1 -0
  358. package/dist/routing/free-tier/pattern-cache.d.ts +57 -0
  359. package/dist/routing/free-tier/pattern-cache.js +148 -0
  360. package/dist/routing/free-tier/provider.js +9 -1
  361. package/dist/routing/value-score.js +3 -0
  362. package/dist/shared/embeddings/ollama-client.js +2 -1
  363. package/dist/shared/events/domain-events.d.ts +2 -0
  364. package/dist/shared/llm/model-mapping.js +26 -0
  365. package/dist/shared/llm/model-registry.d.ts +10 -0
  366. package/dist/shared/llm/model-registry.js +92 -0
  367. package/dist/shared/llm/ollama-url.d.ts +17 -0
  368. package/dist/shared/llm/ollama-url.js +25 -0
  369. package/dist/shared/llm/providers/ollama-timeout.d.ts +26 -0
  370. package/dist/shared/llm/providers/ollama-timeout.js +31 -0
  371. package/dist/shared/llm/providers/ollama.d.ts +10 -0
  372. package/dist/shared/llm/providers/ollama.js +31 -4
  373. package/dist/shared/llm/router/hybrid-router.js +18 -1
  374. package/dist/workers/workers/learning-consolidation.js +21 -1
  375. package/package.json +5 -1
  376. package/dist/cli/chunks/adapter-IU3H3MD7.js +0 -2
  377. package/dist/cli/chunks/aqe-learning-engine-BGOC63IN.js +0 -2
  378. package/dist/cli/chunks/audit-TTWAAV7P.js +0 -3
  379. package/dist/cli/chunks/base-DVPRE3WO.js +0 -2
  380. package/dist/cli/chunks/brain-handler-FXPLJCPV.js +0 -89
  381. package/dist/cli/chunks/browser-workflow-MP5P7KZF.js +0 -2
  382. package/dist/cli/chunks/chunk-2SZQDTI5.js +0 -2
  383. package/dist/cli/chunks/chunk-6IHB3T6M.js +0 -2
  384. package/dist/cli/chunks/chunk-7PDUD7FF.js +0 -2
  385. package/dist/cli/chunks/chunk-EBCUWMLX.js +0 -27
  386. package/dist/cli/chunks/chunk-NWUVXLBB.js +0 -65
  387. package/dist/cli/chunks/chunk-OCACCUFO.js +0 -2
  388. package/dist/cli/chunks/chunk-PY2Q6MN3.js +0 -24
  389. package/dist/cli/chunks/chunk-UNH2DE2G.js +0 -2
  390. package/dist/cli/chunks/client-ADCDBTEE.js +0 -2
  391. package/dist/cli/chunks/core-handlers-HCACMLUW.js +0 -2
  392. package/dist/cli/chunks/cross-domain-router-HXFQAU4M.js +0 -2
  393. package/dist/cli/chunks/daemon-ZSK6CLQR.js +0 -10
  394. package/dist/cli/chunks/domain-transfer-UWFKBZTJ.js +0 -2
  395. package/dist/cli/chunks/dream-SVWQH62A.js +0 -2
  396. package/dist/cli/chunks/heartbeat-scheduler-QW5TW5QS.js +0 -2
  397. package/dist/cli/chunks/hnsw-adapter-D6EJWYAL.js +0 -2
  398. package/dist/cli/chunks/hnsw-index-4MWR4U5W.js +0 -2
  399. package/dist/cli/chunks/hybrid-router-BYVUBHER.js +0 -2
  400. package/dist/cli/chunks/impact-analyzer-OK2UIMSG.js +0 -2
  401. package/dist/cli/chunks/init-wizard-6NNPNS6J.js +0 -2
  402. package/dist/cli/chunks/kernel-F4A4GRNO.js +0 -2
  403. package/dist/cli/chunks/knowledge-graph-MSJDEZCF.js +0 -2
  404. package/dist/cli/chunks/llm-router-service-27IQAO7G.js +0 -2
  405. package/dist/cli/chunks/load-test-TT5VLAN7.js +0 -2
  406. package/dist/cli/chunks/memory-backend-FVSK53IM.js +0 -2
  407. package/dist/cli/chunks/memory-handlers-OPUDOZNT.js +0 -2
  408. package/dist/cli/chunks/pattern-null-store-7MVEDWCY.js +0 -2
  409. package/dist/cli/chunks/protocol-executor-BLDDYEJ4.js +0 -2
  410. package/dist/cli/chunks/provider-manager-ZYCFRYZQ.js +0 -2
  411. package/dist/cli/chunks/qe-reasoning-bank-P66CCPHM.js +0 -2
  412. package/dist/cli/chunks/queen-coordinator-LPHT3SX5.js +0 -2
  413. package/dist/cli/chunks/router-XQ2TERUT.js +0 -2
  414. package/dist/cli/chunks/routing-feedback-K52O752B.js +0 -2
  415. package/dist/cli/chunks/rvf-native-adapter-G4DV7FK3.js +0 -2
  416. package/dist/cli/chunks/safe-db-TMSEITES.js +0 -2
  417. package/dist/cli/chunks/schedule-RWFLA43O.js +0 -2
  418. package/dist/cli/chunks/scheduler-2V55MJJR.js +0 -2
  419. package/dist/cli/chunks/sqlite-persistence-L7QM6IWF.js +0 -2
  420. package/dist/cli/chunks/status-handler-SBT3MZTX.js +0 -45
  421. package/dist/cli/chunks/unified-memory-ZSULA46X.js +0 -2
  422. package/dist/cli/chunks/unified-memory-hnsw-SQEWFUBN.js +0 -2
  423. package/dist/cli/chunks/unified-persistence-EDCTT6SE.js +0 -2
  424. package/dist/cli/chunks/visual-security-SOGAETFP.js +0 -2
  425. package/dist/cli/chunks/witness-chain-AJCECBH5.js +0 -2
  426. package/dist/cli/chunks/workflow-orchestrator-UXRUCOZR.js +0 -2
@@ -87,21 +87,24 @@ const FATAL_MARKERS = [
87
87
  'was compiled against a different Node.js version',
88
88
  ];
89
89
 
90
- function recordHookHealth(stderr) {
90
+ // Internal timeout for the spawned bundle process. Kept BELOW the harness's
91
+ // own hook timeout (settings.json) so THIS script observes and logs a stall
92
+ // itself — if the harness timeout fires first, this whole process is killed
93
+ // too and never gets to write the log line. (2026-06-02 postmortem: a 5s
94
+ // harness timeout vs. this shim's own admitted ~30-60s cold start left
95
+ // routing_outcomes writes silently dropped for a month — nothing recorded
96
+ // the mismatch because nothing was watching for it.)
97
+ const SPAWN_TIMEOUT_MS = Number(process.env.AQE_HOOK_TIMEOUT_MS) || 18000;
98
+
99
+ function recordHookHealth(line) {
91
100
  try {
92
- if (!stderr) return;
93
- const hit = FATAL_MARKERS.find((m) => stderr.includes(m));
94
- if (!hit) return;
95
101
  const logPath = path.join(PROJECT, '.agentic-qe', 'hooks-health.log');
96
102
  // Throttle: skip if we logged within the last 5 min (avoid a line/turn).
97
103
  try {
98
104
  const st = fs.statSync(logPath);
99
105
  if (Date.now() - st.mtimeMs < 5 * 60 * 1000) return;
100
106
  } catch { /* no log yet — fall through and create it */ }
101
- const subcmd = args[0] || 'unknown';
102
- const line = `[${new Date().toISOString()}] FATAL hook persistence failure `
103
- + `(cmd=${subcmd}): "${hit}". Learning is NOT being captured. `
104
- + `Fix: \`npm rebuild better-sqlite3\` (host/container native-binary mismatch).\n`;
107
+ fs.mkdirSync(path.dirname(logPath), { recursive: true });
105
108
  fs.appendFileSync(logPath, line);
106
109
  } catch { /* health logging must never block a turn */ }
107
110
  }
@@ -109,12 +112,43 @@ function recordHookHealth(stderr) {
109
112
  let out = '';
110
113
  try {
111
114
  const res = spawnSync(cmd, cmdArgs, {
112
- stdio: ['ignore', 'pipe', 'pipe'], // swallow stdin; capture stderr to scan
115
+ // Claude Code delivers hook event data (prompt, tool_input, etc.) as JSON
116
+ // on stdin — `$PROMPT`/`$TOOL_INPUT_*` env-var substitution is NOT
117
+ // reliable on every hook surface (see hooks-shared.ts:readStdinJsonEvent's
118
+ // own docstring). Discarding stdin here silently broke the CLI's
119
+ // existing, already-safe stdin fallback (500ms internal timeout, never
120
+ // hangs) — inherit it instead so that fallback can actually run.
121
+ stdio: ['inherit', 'pipe', 'pipe'],
113
122
  encoding: 'utf8',
114
123
  maxBuffer: 16 * 1024 * 1024,
124
+ timeout: SPAWN_TIMEOUT_MS,
115
125
  });
116
126
  out = (res && res.stdout) || '';
117
- recordHookHealth((res && res.stderr) || ''); // tee fatal markers to health log
127
+ const subcmd = args[0] || 'unknown';
128
+ const stderr = (res && res.stderr) || '';
129
+ const hit = FATAL_MARKERS.find((m) => stderr.includes(m));
130
+ const ts = () => new Date().toISOString();
131
+ if (hit) {
132
+ recordHookHealth(`[${ts()}] FATAL hook persistence failure `
133
+ + `(cmd=${subcmd}): "${hit}". Learning is NOT being captured. `
134
+ + `Fix: \`npm rebuild better-sqlite3\` (host/container native-binary mismatch).\n`);
135
+ } else if (res && res.signal) {
136
+ // Killed by our own SPAWN_TIMEOUT_MS (or another signal) before finishing.
137
+ // No output means no persistence happened for this invocation.
138
+ recordHookHealth(`[${ts()}] TIMEOUT hook did not complete `
139
+ + `(cmd=${subcmd}, signal=${res.signal}, budget=${SPAWN_TIMEOUT_MS}ms). `
140
+ + `Learning for this invocation was NOT captured.\n`);
141
+ } else if (res && res.error) {
142
+ // spawnSync couldn't even launch the child (ENOENT/EACCES/etc).
143
+ recordHookHealth(`[${ts()}] SPAWN-FAILED hook could not start `
144
+ + `(cmd=${subcmd}): ${res.error.message || res.error}. `
145
+ + `Learning for this invocation was NOT captured.\n`);
146
+ } else if (res && res.status !== 0 && !out.includes('{')) {
147
+ // Child exited non-zero with no JSON payload — e.g. an empty-task throw
148
+ // when the harness didn't populate $PROMPT/$TOOL_INPUT_*.
149
+ recordHookHealth(`[${ts()}] EMPTY-RESULT hook exited status=${res.status} `
150
+ + `with no JSON output (cmd=${subcmd}). stderr: ${stderr.slice(0, 300)}\n`);
151
+ }
118
152
  } catch { /* never block a turn */ }
119
153
 
120
154
  // Emit only the top-level JSON object: the first line beginning with '{' through
@@ -939,7 +939,7 @@
939
939
  },
940
940
  "metadata": {
941
941
  "generatedBy": "Agentic QE Fleet",
942
- "fleetVersion": "3.11.3",
942
+ "fleetVersion": "3.11.5",
943
943
  "manifestVersion": "1.4.0",
944
944
  "lastUpdated": "2026-04-13T00:00:00.000Z",
945
945
  "contributors": [
package/CHANGELOG.md CHANGED
@@ -5,6 +5,112 @@ All notable changes to the Agentic QE project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [3.11.5] - 2026-07-07
9
+
10
+ A system-integrity sweep of the self-learning loop: dream-cycle insights now
11
+ genuinely turn into reusable patterns instead of silently piling up, pattern
12
+ usage stats are accurate again (no more double-counting or mid-session
13
+ regressions), and the witness-chain audit trail, agent-topology tracking, GOAP
14
+ plan execution, and SONA continual learning all had real dormant-code or
15
+ data-integrity bugs fixed. See
16
+ [SYSTEM-INTEGRITY-AUDIT-2026-07-04](docs/analysis/SYSTEM-INTEGRITY-AUDIT-2026-07-04.md)
17
+ and the [remediation plan](docs/plans/SYSTEM-INTEGRITY-REMEDIATION-GOAP-PLAN-2026-07-04.md)
18
+ for full findings and verification evidence.
19
+
20
+ ### Fixed
21
+
22
+ - **Dream-cycle insights now genuinely become reusable patterns** — a gate in
23
+ the concept-loading path meant the fix that lets `detectGaps`/
24
+ `detectOptimizations`/`detectPatternMerges` see real failure/success data
25
+ only ever ran in manual tests, never in real scheduled dream cycles. Also
26
+ fixed the mechanism that marks an insight "applied": it previously
27
+ incremented a counter on the 3 newest insights on every successful task
28
+ regardless of whether anything was actually promoted (proven live in
29
+ production, with counts as high as 16) — it now only marks an insight
30
+ applied when it's genuinely turned into a new pattern.
31
+ - **`aqe learning stats` reported the wrong pattern counts** — Total and "By
32
+ Domain" now come from the real pattern store instead of an incomplete
33
+ vector-index count that silently excluded any pattern without an embedding.
34
+ - **Pattern usage was recorded twice per outcome**, inflating usage counts and
35
+ success-rate stats 2x; now written once.
36
+ - **Pattern lookups could silently fail after a name collision** ("Pattern not
37
+ found") because an internal id could go out of sync between the in-memory
38
+ cache and the database; fixed for both pattern-store backends.
39
+ - **Learning stats could regress mid-session** — reported totals could drop
40
+ below the real historical count right after the first pattern-usage event
41
+ in a session; now always reports the correct, non-decreasing total.
42
+ - **Witness-chain audit trail** — cryptographic signing now covers all new
43
+ entries, and a bug that silently broke chain verification for every entry
44
+ after an archival operation is fixed, plus a new CI gate to catch
45
+ regressions.
46
+ - **Agent-topology tracking (mincut)** now reflects real agent activity
47
+ instead of a constant placeholder reading, removing a false "critical"
48
+ routing state that could occur on an empty graph.
49
+ - **GOAP plan execution** now dispatches real domain-API calls for the
50
+ majority of actions instead of always simulating (mocking) results.
51
+ - **SONA continual-learning cold start** — the self-learning weight-update
52
+ mechanism no longer needs 100 requests to accumulate within a single
53
+ process lifetime before it can save its first update; progress now
54
+ persists across restarts.
55
+ - Assorted smaller integrity fixes: pattern-null (failure record) capture
56
+ wasn't wired into the production learning path; a stale/expired daemon
57
+ process could look "healthy"; a TTL bug caused several cache entries to
58
+ live 1000x longer than intended.
59
+
60
+ ### Changed
61
+
62
+ - Cleaned up dead data left over from now-fixed bugs (degenerate agent-topology
63
+ snapshots, orphaned GOAP test-fixture rows, a corrupted insight-tracking
64
+ counter) — internal only, no user-facing behavior change.
65
+
66
+ ## [3.11.4] - 2026-07-01
67
+
68
+ Better free local-model support, a tamper-evident guard for AQE's learning
69
+ database, and a self-running dependency-security system — so known CVEs surface
70
+ on their own instead of sitting unnoticed.
71
+
72
+ Local test generation now defaults to a **code-tuned** local model and skips the
73
+ paid path when a cached pattern already fits. A new opt-in **proof-gate** lets you
74
+ cryptographically verify that nothing tampered with `memory.db` across a sync or
75
+ migration. And AQE now audits its own dependencies on a schedule and opens
76
+ in-range security-fix PRs automatically. See
77
+ [ADR-116](docs/implementation/adrs/ADR-116-proof-gate-memory-integrity.md) (proof-gate),
78
+ [ADR-115](docs/implementation/adrs/ADR-115-dependency-security-system.md) (dependency security),
79
+ and the [free-tier local-models guide](docs/guides/free-tier-local-models.md).
80
+
81
+ ### Added
82
+
83
+ - **Free-tier local test generation** — run test generation on a local Ollama
84
+ model (default `qwen3-coder:30b`), with an objective "is this a real test?"
85
+ check and a repair loop; a ruvLLM-style **pattern cache** skips the model
86
+ entirely when a prior result fits, and the paid path is used only as fallback.
87
+ - **Local-model plumbing** — unified `AQE_OLLAMA_URL`, adaptive Ollama timeouts,
88
+ registered qwen3 models, and a capability-aware tool-routing guard so a model
89
+ is only asked to use tools it actually supports.
90
+ - **Proof-gate (opt-in)** — a tamper-evident SHA-256 hash chain over the
91
+ `memory.db` kv write path: enable it for a sync/migration/publish window
92
+ (`AQE_PROOF_GATE=1`) and `verifyMemoryIntegrity()` proves no write was mutated,
93
+ reordered, or dropped. Off by default, fail-soft, single-store (ADR-116).
94
+ - **Dependency-security system** — a daily scheduled consumer-POV `npm audit`
95
+ that files a tracking issue on new HIGH/CRITICAL CVEs (even against unchanged,
96
+ pinned deps), plus a weekly updater that opens small in-range security-fix PRs
97
+ and refuses to drop optional platform binaries. `npm run deps:audit` /
98
+ `deps:update` locally (ADR-115).
99
+
100
+ ### Fixed
101
+
102
+ - **`@grpc/grpc-js` HIGH CVE** (CVE-2026-48068 / -48069, server-crash DoS)
103
+ resolved by an in-range bump to 1.14.4.
104
+ - **Reduced advisory noise** — in-range dependency updates cut moderate
105
+ advisories from 29 to 7 (OpenTelemetry W3C-Baggage family and others), with all
106
+ 15 optional platform dependencies preserved.
107
+
108
+ ### Changed
109
+
110
+ - **Default local test-gen model** is now `qwen3-coder:30b` (code-tuned MoE),
111
+ replacing the general-purpose `qwen3:30b-a3b` — lower latency and more reliable
112
+ test output.
113
+
8
114
  ## [3.11.3] - 2026-06-27
9
115
 
10
116
  Tests and evals you can actually trust, cheaper model options, and a guard that
@@ -939,7 +939,7 @@
939
939
  },
940
940
  "metadata": {
941
941
  "generatedBy": "Agentic QE Fleet",
942
- "fleetVersion": "3.11.0",
942
+ "fleetVersion": "3.11.5",
943
943
  "manifestVersion": "1.4.0",
944
944
  "lastUpdated": "2026-04-13T00:00:00.000Z",
945
945
  "contributors": [
@@ -31,6 +31,15 @@ export interface WitnessFilter {
31
31
  export interface VerifyOptions {
32
32
  /** Also verify Ed25519 signatures. Requires keyManager on the chain. */
33
33
  checkSignatures?: boolean;
34
+ /**
35
+ * Also walk `witness_chain_archive` and validate it as part of the same
36
+ * hash chain (archived rows are hash-linked to each other and to the live
37
+ * table exactly like un-archived rows). Off by default: the live-only walk
38
+ * is enough to catch tampering with current data and already correctly
39
+ * bridges the archival boundary; this option adds full historical coverage
40
+ * for a deep CI gate at the cost of reading the (potentially large) archive.
41
+ */
42
+ includeArchive?: boolean;
34
43
  }
35
44
  export interface VerifyResult {
36
45
  valid: boolean;
@@ -62,6 +71,22 @@ export declare class WitnessChain {
62
71
  private addColumnIfMissing;
63
72
  /** Append a new SHAKE-256-hashed entry, optionally Ed25519-signed. */
64
73
  append(actionType: WitnessActionType, actionData: Record<string, unknown>, actor: string): WitnessEntry;
74
+ /**
75
+ * Find the entry with the given id, checking the live table first and then
76
+ * the archive. Used to recover a predecessor that array-adjacency can't
77
+ * see directly (it was archived, possibly by an earlier archival run than
78
+ * the one that affects the entry currently being checked).
79
+ */
80
+ private findEntryById;
81
+ /**
82
+ * Check one entry's self-hash and chain link. `arrayAdjacent` is whatever
83
+ * entry sits immediately before `current` in the array currently being
84
+ * scanned (undefined at the start of that array) — it's tried first since
85
+ * it's free (already fetched); a cross-table lookup by id only runs on a
86
+ * mismatch, e.g. because the true predecessor was moved to the archive by
87
+ * a *different* archival run than the one this scan is walking.
88
+ */
89
+ private checkEntryLink;
65
90
  /** Verify chain integrity. Supports mixed SHA-256/SHAKE-256 and optional signature checks. */
66
91
  verify(options?: VerifyOptions): VerifyResult;
67
92
  /** Query entries with optional filters. */
@@ -7,6 +7,7 @@
7
7
  */
8
8
  import { createHash } from 'crypto';
9
9
  import { getUnifiedMemory } from '../kernel/unified-memory.js';
10
+ import { getDefaultWitnessKeyManager } from './witness-key-manager.js';
10
11
  // --- Constants & Hash Functions ---
11
12
  const GENESIS_PREV_HASH = '0'.repeat(64);
12
13
  function sha256(data) {
@@ -128,43 +129,87 @@ export class WitnessChain {
128
129
  hash_algo: algo, signature, signer_key_id: signerKeyId,
129
130
  };
130
131
  }
132
+ /**
133
+ * Find the entry with the given id, checking the live table first and then
134
+ * the archive. Used to recover a predecessor that array-adjacency can't
135
+ * see directly (it was archived, possibly by an earlier archival run than
136
+ * the one that affects the entry currently being checked).
137
+ */
138
+ findEntryById(id) {
139
+ if (!this.db)
140
+ return undefined;
141
+ return this.db.prepare('SELECT * FROM witness_chain WHERE id = ?').get(id)
142
+ ?? this.db.prepare('SELECT * FROM witness_chain_archive WHERE id = ?').get(id);
143
+ }
144
+ /**
145
+ * Check one entry's self-hash and chain link. `arrayAdjacent` is whatever
146
+ * entry sits immediately before `current` in the array currently being
147
+ * scanned (undefined at the start of that array) — it's tried first since
148
+ * it's free (already fetched); a cross-table lookup by id only runs on a
149
+ * mismatch, e.g. because the true predecessor was moved to the archive by
150
+ * a *different* archival run than the one this scan is walking.
151
+ */
152
+ checkEntryLink(current, arrayAdjacent) {
153
+ const algo = current.hash_algo || 'sha256';
154
+ if (current.action_hash !== hashWith(algo, current.action_data))
155
+ return false;
156
+ if (current.id === 1)
157
+ return current.prev_hash === GENESIS_PREV_HASH; // genesis, never archived
158
+ if (arrayAdjacent && current.prev_hash === hashWith(algo, serializeEntry(arrayAdjacent))) {
159
+ return true;
160
+ }
161
+ const predecessor = this.findEntryById(current.id - 1);
162
+ return predecessor !== undefined && current.prev_hash === hashWith(algo, serializeEntry(predecessor));
163
+ }
131
164
  /** Verify chain integrity. Supports mixed SHA-256/SHAKE-256 and optional signature checks. */
132
165
  verify(options) {
133
166
  if (!this.db)
134
167
  throw new Error('WitnessChain not initialized');
135
- const entries = this.db.prepare('SELECT * FROM witness_chain ORDER BY id ASC').all();
136
- if (entries.length === 0)
168
+ const live = this.db.prepare('SELECT * FROM witness_chain ORDER BY id ASC').all();
169
+ if (live.length === 0)
137
170
  return { valid: true, entriesChecked: 0 };
138
171
  let signatureFailures = 0;
139
172
  const checkSigs = options?.checkSignatures === true && this.keyManager !== null;
140
- for (let i = 0; i < entries.length; i++) {
141
- const current = entries[i];
142
- const algo = current.hash_algo || 'sha256';
143
- if (current.action_hash !== hashWith(algo, current.action_data)) {
144
- return { valid: false, brokenAt: current.id, entriesChecked: i + 1, signatureFailures };
145
- }
146
- if (i === 0) {
147
- if (current.prev_hash !== GENESIS_PREV_HASH) {
148
- return { valid: false, brokenAt: current.id, entriesChecked: 1, signatureFailures };
149
- }
150
- }
151
- else {
152
- const expectedPrevHash = hashWith(algo, serializeEntry(entries[i - 1]));
153
- if (current.prev_hash !== expectedPrevHash) {
154
- return { valid: false, brokenAt: current.id, entriesChecked: i + 1, signatureFailures };
155
- }
156
- }
173
+ const checkSignature = (current) => {
157
174
  if (checkSigs && current.signature && current.signer_key_id) {
158
175
  const sigData = Buffer.from(current.prev_hash + current.action_hash + current.action_type + current.timestamp + current.actor, 'utf-8');
159
176
  if (!this.keyManager.verify(Buffer.from(sigData), Buffer.from(current.signature, 'hex'), current.signer_key_id)) {
160
177
  signatureFailures++;
161
178
  }
162
179
  }
180
+ };
181
+ // Live table: always its own valid chain, since append() always chains
182
+ // to whatever the live tail is at write time — array-adjacency is right
183
+ // by construction *except* at a boundary where the true predecessor has
184
+ // since been archived, which checkEntryLink()'s fallback covers.
185
+ for (let i = 0; i < live.length; i++) {
186
+ const current = live[i];
187
+ if (!this.checkEntryLink(current, i > 0 ? live[i - 1] : undefined)) {
188
+ return { valid: false, brokenAt: current.id, entriesChecked: i + 1, signatureFailures };
189
+ }
190
+ checkSignature(current);
191
+ }
192
+ let entriesChecked = live.length;
193
+ if (options?.includeArchive) {
194
+ // The archived segment is its own contiguous slice of history (by id)
195
+ // and is checked the same way — NOT by merging archive+live into one
196
+ // id-sorted array, which would wrongly treat an archived row as the
197
+ // predecessor of a live row that was actually appended (and correctly
198
+ // chained to the live tail) well after that row was archived.
199
+ const archived = this.db.prepare('SELECT * FROM witness_chain_archive ORDER BY id ASC').all();
200
+ for (let i = 0; i < archived.length; i++) {
201
+ const current = archived[i];
202
+ if (!this.checkEntryLink(current, i > 0 ? archived[i - 1] : undefined)) {
203
+ return { valid: false, brokenAt: current.id, entriesChecked: entriesChecked + i + 1, signatureFailures };
204
+ }
205
+ checkSignature(current);
206
+ }
207
+ entriesChecked += archived.length;
163
208
  }
164
209
  const valid = signatureFailures === 0;
165
210
  return {
166
- valid, entriesChecked: entries.length, signatureFailures,
167
- ...(signatureFailures > 0 ? { brokenAt: entries[0].id } : {}),
211
+ valid, entriesChecked, signatureFailures,
212
+ ...(signatureFailures > 0 ? { brokenAt: live[0].id } : {}),
168
213
  };
169
214
  }
170
215
  /** Query entries with optional filters. */
@@ -259,7 +304,9 @@ export class WitnessChain {
259
304
  let _instance = null;
260
305
  export async function getWitnessChain() {
261
306
  if (!_instance) {
262
- _instance = new WitnessChain();
307
+ // ADR-070 Phase 6.2: sign with the persistent, project-wide default key
308
+ // manager so entries get real signatures that survive process restarts.
309
+ _instance = new WitnessChain(undefined, getDefaultWitnessKeyManager());
263
310
  await _instance.initialize();
264
311
  }
265
312
  return _instance;
@@ -97,4 +97,15 @@ export declare class WitnessKeyManager {
97
97
  /** Load all key pairs from PEM files in keyDir. */
98
98
  private loadFromDisk;
99
99
  }
100
+ /**
101
+ * Get the process-wide default WitnessKeyManager, backed by a persistent
102
+ * `.agentic-qe/witness-keys/` directory under the project root. Every
103
+ * production `WitnessChain` construction site should use this (instead of
104
+ * an ephemeral in-memory-only manager) so a signature created by one process
105
+ * can still be verified by a later one — an ephemeral key dies with the
106
+ * process that made it, permanently orphaning every signature it produced.
107
+ */
108
+ export declare function getDefaultWitnessKeyManager(): WitnessKeyManager;
109
+ /** Test-only: reset the default key manager singleton between test files. */
110
+ export declare function _resetDefaultWitnessKeyManagerForTests(): void;
100
111
  //# sourceMappingURL=witness-key-manager.d.ts.map
@@ -9,6 +9,7 @@
9
9
  import { generateKeyPairSync, createPrivateKey, createPublicKey, sign, verify, createHash, } from 'crypto';
10
10
  import { existsSync, mkdirSync, writeFileSync, readFileSync, readdirSync } from 'fs';
11
11
  import { join } from 'path';
12
+ import { findProjectRoot } from '../kernel/project-root.js';
12
13
  // ============================================================================
13
14
  // WitnessKeyManager Implementation
14
15
  // ============================================================================
@@ -215,4 +216,27 @@ export class WitnessKeyManager {
215
216
  }
216
217
  }
217
218
  }
219
+ // ============================================================================
220
+ // Default (project-wide) instance — ADR-070 Phase 6.2 production wiring
221
+ // ============================================================================
222
+ let _defaultInstance = null;
223
+ /**
224
+ * Get the process-wide default WitnessKeyManager, backed by a persistent
225
+ * `.agentic-qe/witness-keys/` directory under the project root. Every
226
+ * production `WitnessChain` construction site should use this (instead of
227
+ * an ephemeral in-memory-only manager) so a signature created by one process
228
+ * can still be verified by a later one — an ephemeral key dies with the
229
+ * process that made it, permanently orphaning every signature it produced.
230
+ */
231
+ export function getDefaultWitnessKeyManager() {
232
+ if (!_defaultInstance) {
233
+ const keyDir = join(findProjectRoot(), '.agentic-qe', 'witness-keys');
234
+ _defaultInstance = new WitnessKeyManager({ keyDir });
235
+ }
236
+ return _defaultInstance;
237
+ }
238
+ /** Test-only: reset the default key manager singleton between test files. */
239
+ export function _resetDefaultWitnessKeyManagerForTests() {
240
+ _defaultInstance = null;
241
+ }
218
242
  //# sourceMappingURL=witness-key-manager.js.map
@@ -16,6 +16,7 @@ import { diffBrains, } from '../integrations/ruvector/brain-diff.js';
16
16
  import { searchBrain, } from '../integrations/ruvector/brain-search.js';
17
17
  import { createWitnessChain } from '../audit/witness-chain.js';
18
18
  import { backfillWitnessChain } from '../audit/witness-backfill.js';
19
+ import { getDefaultWitnessKeyManager } from '../audit/witness-key-manager.js';
19
20
  /**
20
21
  * Export the QE brain state.
21
22
  *
@@ -117,7 +118,7 @@ export async function brainSearch(inputPath, options = {}) {
117
118
  export async function witnessBackfill(dbPath) {
118
119
  const db = openDatabase(dbPath);
119
120
  try {
120
- const chain = createWitnessChain(db);
121
+ const chain = createWitnessChain(db, getDefaultWitnessKeyManager());
121
122
  await chain.initialize();
122
123
  return backfillWitnessChain(db, chain);
123
124
  }
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/env node
2
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.11.3");process.exit(0)}
3
- import{a as y}from"./chunks/chunk-REZ2GZQ3.js";import{a as f,c as P}from"./chunks/chunk-LGEZ3ZJX.js";import"./chunks/chunk-PUK5NE47.js";P();import{Command as S}from"commander";import m from"chalk";function h(e,i,a,s){let l=e.command(i).description(a);if(s)for(let u of s)l.alias(u);return l.helpOption(!1),l.allowUnknownOption(!0),l.allowExcessArguments(!0),l}function w(e,i){let a=e.commands,s=a.indexOf(i);s>=0&&a.splice(s,1)}function o(e,i){let a=h(e,i.name,i.description,i.aliases);a.action(async()=>{try{let s=await i.factory();w(e,a),e.addCommand(s),await e.parseAsync(process.argv)}catch(s){console.error(`Failed to load command '${i.name}':`,s instanceof Error?s.message:s),process.exit(1)}})}function d(e,i,a,s,l,u){let g=h(e,i,a,u);g.action(async()=>{try{let p=await s();w(e,g),p.register(e,l),await e.parseAsync(process.argv)}catch(p){console.error(`Failed to load command '${i}':`,p instanceof Error?p.message:p),process.exit(1)}})}var I=["[UnifiedMemory]","[HybridBackend]","[UnifiedPersistence]","[PersistentSONAEngine]","[QueenGovernance]","[QueenCoordinator]","[Queen]","[QUEEN]","[DomainBreakerRegistry]","[RealEmbeddings]","[HNSWIndex]","[PatternStore]","[TestGenerationCoordinator]","[CodeIntelligence]","[ProductFactorsBridge]","[LearningOptimizationCoordinator]","[DreamEngine]","[DreamScheduler]","[SecurityCompliance]","[Providers]","[GNN]","[test-generation]","[test-execution]","[coverage-analysis]","[quality-assessment]","[defect-intelligence]","[requirements-validation]","[code-intelligence]","[security-compliance]","[contract-testing]","[visual-accessibility]","[chaos-resilience]","[learning-optimization]","[enterprise-integration]","[coordination]","[PatternLearnerService]","[RequirementsValidation]","[ParserRegistry]","[AdversarialDefense]","[ContinueGateIntegration]","[ContinueGate]","[SQLitePatternStore]","[TokenTracking]","[InfraHealing]","[ExperienceCapture]"],b=/^\[\d{2}:\d{2}:\d{2}\.\d{3}\]\s+\[/,D=console.log.bind(console);console.log=(...e)=>{let a=(typeof e[0]=="string"?e[0]:"").trimStart();if(I.some(s=>a.startsWith(s))||b.test(a)){process.stderr.write(e.map(String).join(" ")+`
2
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.11.5");process.exit(0)}
3
+ import{a as y}from"./chunks/chunk-5WMU7XCF.js";import{a as f,c as P}from"./chunks/chunk-RKXZLTWR.js";import"./chunks/chunk-C4EZNOWK.js";P();import{Command as S}from"commander";import m from"chalk";function h(e,i,a,s){let l=e.command(i).description(a);if(s)for(let u of s)l.alias(u);return l.helpOption(!1),l.allowUnknownOption(!0),l.allowExcessArguments(!0),l}function w(e,i){let a=e.commands,s=a.indexOf(i);s>=0&&a.splice(s,1)}function o(e,i){let a=h(e,i.name,i.description,i.aliases);a.action(async()=>{try{let s=await i.factory();w(e,a),e.addCommand(s),await e.parseAsync(process.argv)}catch(s){console.error(`Failed to load command '${i.name}':`,s instanceof Error?s.message:s),process.exit(1)}})}function d(e,i,a,s,l,u){let g=h(e,i,a,u);g.action(async()=>{try{let p=await s();w(e,g),p.register(e,l),await e.parseAsync(process.argv)}catch(p){console.error(`Failed to load command '${i}':`,p instanceof Error?p.message:p),process.exit(1)}})}var I=["[UnifiedMemory]","[HybridBackend]","[UnifiedPersistence]","[PersistentSONAEngine]","[QueenGovernance]","[QueenCoordinator]","[Queen]","[QUEEN]","[DomainBreakerRegistry]","[RealEmbeddings]","[HNSWIndex]","[PatternStore]","[TestGenerationCoordinator]","[CodeIntelligence]","[ProductFactorsBridge]","[LearningOptimizationCoordinator]","[DreamEngine]","[DreamScheduler]","[SecurityCompliance]","[Providers]","[GNN]","[test-generation]","[test-execution]","[coverage-analysis]","[quality-assessment]","[defect-intelligence]","[requirements-validation]","[code-intelligence]","[security-compliance]","[contract-testing]","[visual-accessibility]","[chaos-resilience]","[learning-optimization]","[enterprise-integration]","[coordination]","[PatternLearnerService]","[RequirementsValidation]","[ParserRegistry]","[AdversarialDefense]","[ContinueGateIntegration]","[ContinueGate]","[SQLitePatternStore]","[TokenTracking]","[InfraHealing]","[ExperienceCapture]"],b=/^\[\d{2}:\d{2}:\d{2}\.\d{3}\]\s+\[/,D=console.log.bind(console);console.log=(...e)=>{let a=(typeof e[0]=="string"?e[0]:"").trimStart();if(I.some(s=>a.startsWith(s))||b.test(a)){process.stderr.write(e.map(String).join(" ")+`
4
4
  `);return}D(...e)};console.info=(...e)=>{process.stderr.write(e.map(String).join(" ")+`
5
- `)};var t={kernel:null,queen:null,router:null,workflowOrchestrator:null,scheduledWorkflows:new Map,persistentScheduler:null,initialized:!1};function C(e,i){let a=e.getDomainAPI("visual-accessibility");if(a?.registerWorkflowActions)try{a.registerWorkflowActions(i)}catch(l){console.error(m.yellow(` Warning: Could not register visual-accessibility workflow actions: ${f(l)}`))}let s=e.getDomainAPI("requirements-validation");if(s?.registerWorkflowActions)try{s.registerWorkflowActions(i)}catch(l){console.error(m.yellow(` Warning: Could not register requirements-validation workflow actions: ${f(l)}`))}}async function x(){let{QEKernelImpl:e}=await import("./chunks/kernel-F4A4GRNO.js"),{CrossDomainEventRouter:i}=await import("./chunks/cross-domain-router-HXFQAU4M.js"),{DefaultProtocolExecutor:a}=await import("./chunks/protocol-executor-BLDDYEJ4.js"),{WorkflowOrchestrator:s}=await import("./chunks/workflow-orchestrator-UXRUCOZR.js"),{createQueenCoordinator:l}=await import("./chunks/queen-coordinator-LPHT3SX5.js"),{createPersistentScheduler:u}=await import("./chunks/scheduler-2V55MJJR.js");t.kernel=new e({maxConcurrentAgents:15,memoryBackend:"sqlite",hnswEnabled:!0,lazyLoading:!0,enabledDomains:[...y],enableExperienceBridge:!1}),await t.kernel.initialize(),t.router=new i(t.kernel.eventBus),await t.router.initialize();let g=A=>t.kernel.getDomainAPI(A),p=new a(t.kernel.eventBus,t.kernel.memory,g);t.workflowOrchestrator=new s(t.kernel.eventBus,t.kernel.memory,t.kernel.coordinator),await t.workflowOrchestrator.initialize(),C(t.kernel,t.workflowOrchestrator),t.persistentScheduler=u(),t.queen=l(t.kernel,t.router,p,void 0),await t.queen.initialize();let{adoptExternalFleet:E}=await import("./chunks/core-handlers-HCACMLUW.js");E({kernel:t.kernel,queen:t.queen,router:t.router,workflowOrchestrator:t.workflowOrchestrator}),t.initialized=!0}async function k(){if(t.initialized&&t.kernel&&t.queen)return!0;let e=await import("fs"),a=(await import("path")).resolve(".agentic-qe");return e.existsSync(a)?c():(console.error(m.red(`
5
+ `)};var t={kernel:null,queen:null,router:null,workflowOrchestrator:null,scheduledWorkflows:new Map,persistentScheduler:null,initialized:!1};function C(e,i){let a=e.getDomainAPI("visual-accessibility");if(a?.registerWorkflowActions)try{a.registerWorkflowActions(i)}catch(l){console.error(m.yellow(` Warning: Could not register visual-accessibility workflow actions: ${f(l)}`))}let s=e.getDomainAPI("requirements-validation");if(s?.registerWorkflowActions)try{s.registerWorkflowActions(i)}catch(l){console.error(m.yellow(` Warning: Could not register requirements-validation workflow actions: ${f(l)}`))}}async function x(){let{QEKernelImpl:e}=await import("./chunks/kernel-SQALRU6Q.js"),{CrossDomainEventRouter:i}=await import("./chunks/cross-domain-router-LT3H4SNJ.js"),{DefaultProtocolExecutor:a}=await import("./chunks/protocol-executor-GT2MZYUU.js"),{WorkflowOrchestrator:s}=await import("./chunks/workflow-orchestrator-RKMMPXNA.js"),{createQueenCoordinator:l}=await import("./chunks/queen-coordinator-6RBHWCUG.js"),{createPersistentScheduler:u}=await import("./chunks/scheduler-QE5EJ5LE.js");t.kernel=new e({maxConcurrentAgents:15,memoryBackend:"sqlite",hnswEnabled:!0,lazyLoading:!0,enabledDomains:[...y],enableExperienceBridge:!1}),await t.kernel.initialize(),t.router=new i(t.kernel.eventBus),await t.router.initialize();let g=A=>t.kernel.getDomainAPI(A),p=new a(t.kernel.eventBus,t.kernel.memory,g);t.workflowOrchestrator=new s(t.kernel.eventBus,t.kernel.memory,t.kernel.coordinator),await t.workflowOrchestrator.initialize(),C(t.kernel,t.workflowOrchestrator),t.persistentScheduler=u(),t.queen=l(t.kernel,t.router,p,void 0),await t.queen.initialize();let{adoptExternalFleet:E}=await import("./chunks/core-handlers-EEFLLMAZ.js");E({kernel:t.kernel,queen:t.queen,router:t.router,workflowOrchestrator:t.workflowOrchestrator}),t.initialized=!0}async function k(){if(t.initialized&&t.kernel&&t.queen)return!0;let e=await import("fs"),a=(await import("path")).resolve(".agentic-qe");return e.existsSync(a)?c():(console.error(m.red(`
6
6
  Error: AQE system not initialized in this directory.`)),console.log(m.yellow("Run `aqe init` first to set up this project.\n")),!1)}async function c(){if(t.initialized&&t.kernel&&t.queen)return!0;process.stderr.write(m.gray("Auto-initializing v3 system...")+`
7
7
  `);let e=3e4,i=new Promise((a,s)=>{setTimeout(()=>s(new Error("Initialization timeout after 30 seconds")),e)});try{return await Promise.race([x(),i]),process.stderr.write(m.green("System ready")+`
8
8
 
9
- `),!0}catch(a){return a.message.includes("timeout")?(console.error(m.red("Initialization timed out after 30 seconds.")),console.log(m.yellow("Try running `aqe init` manually."))):(console.error(m.red("Failed to auto-initialize:"),a),console.log(m.yellow("Try running `aqe init` manually."))),!1}}async function r(e=0){try{t.workflowOrchestrator&&t.workflowOrchestrator.dispose().catch(()=>{}),t.queen&&t.queen.dispose().catch(()=>{}),t.router&&t.router.dispose().catch(()=>{}),t.kernel&&t.kernel.dispose().catch(()=>{})}catch{}process.exit(e)}var n=new S,v="3.11.3";n.name("aqe").description("Agentic QE - Domain-Driven Quality Engineering").version(v);d(n,"init","Initialize the AQE v3 system",()=>import("./chunks/init-handler-N57NW3QI.js").then(e=>e.createInitHandler(r)),t);d(n,"status","Show system status",()=>import("./chunks/status-handler-SBT3MZTX.js").then(e=>e.createStatusHandler(r,k)),t);d(n,"health","Check system health",()=>import("./chunks/status-handler-SBT3MZTX.js").then(e=>e.createHealthHandler(r,k)),t);d(n,"task","Manage QE tasks",()=>import("./chunks/task-handler-73YAVOKJ.js").then(e=>e.createTaskHandler(r,c)),t);d(n,"agent","Manage QE agents",()=>import("./chunks/agent-handler-ZVC3VFPC.js").then(e=>e.createAgentHandler(r,c)),t);d(n,"domain","Domain operations",()=>import("./chunks/domain-handler-DCMGAYXS.js").then(e=>e.createDomainHandler(r,c)),t);d(n,"protocol","Execute coordination protocols",()=>import("./chunks/protocol-handler-J4EA34B3.js").then(e=>e.createProtocolHandler(r,c)),t);d(n,"brain","Export, import, and inspect QE brain state",()=>import("./chunks/brain-handler-FXPLJCPV.js").then(e=>e.createBrainHandler(r,c)),t);d(n,"hypergraph","Query the code knowledge hypergraph",()=>import("./chunks/hypergraph-handler-YMDGYCB6.js").then(e=>e.createHypergraphHandler(r,c)),t,["hg"]);d(n,"heartbeat","Manage the token-free heartbeat scheduler",()=>import("./chunks/heartbeat-handler-QIDQHRXT.js").then(e=>e.createHeartbeatHandler(r)),t);d(n,"routing","View routing performance, economics, and accuracy",()=>import("./chunks/routing-handler-RO4RTRAG.js").then(e=>e.createRoutingHandler(r)),t);o(n,{name:"workflow",description:"Manage QE workflows and pipelines (ADR-041)",factory:()=>import("./chunks/workflow-V7ED22XT.js").then(e=>e.createWorkflowCommand(t,r,c))});o(n,{name:"test",description:"Test generation, execution, scheduling, and load testing",factory:()=>import("./chunks/test-U3SXW4SV.js").then(e=>e.createTestCommand(t,r,c))});o(n,{name:"coverage",description:"Coverage analysis shortcut",factory:()=>import("./chunks/coverage-NHATLNS4.js").then(e=>e.createCoverageCommand(t,r,c))});o(n,{name:"quality",description:"Quality assessment shortcut",factory:()=>import("./chunks/quality-GB5SJFSD.js").then(e=>e.createQualityCommand(t,r,c))});o(n,{name:"security",description:"Security scanning and URL validation",factory:()=>import("./chunks/security-QPQIDAIL.js").then(e=>e.createSecurityCommand(t,r,c))});o(n,{name:"arena",description:"Competitive test-strategy tournaments (ADR-104)",factory:()=>import("./chunks/arena-QMRLNQUC.js").then(e=>e.createArenaCommand(t,r,c))});o(n,{name:"code",description:"Code intelligence analysis",factory:()=>import("./chunks/code-ZDVX3SQH.js").then(e=>e.createCodeCommand(t,r,c))});o(n,{name:"completions",description:"Generate shell completions for aqe",factory:()=>import("./chunks/completions-VRFFK223.js").then(e=>e.createCompletionsCommand(r))});o(n,{name:"upgrade",description:"Detect optional native bindings and recommend install / flag changes",factory:()=>import("./chunks/upgrade-4ND5RQFY.js").then(e=>e.createUpgradeCommand(r))});o(n,{name:"fleet",description:"Fleet operations with multi-agent progress tracking",factory:()=>import("./chunks/fleet-2UH72CK4.js").then(e=>e.createFleetCommand(t,r,c,C))});o(n,{name:"validate",description:"Validation commands for skills and agents",factory:()=>import("./chunks/validate-swarm-FNK3GCJ4.js").then(e=>e.createValidateSwarmCommand(t,r,c))});o(n,{name:"skill",description:"Skill validation and reporting (ADR-056)",factory:()=>import("./chunks/validate-ZA4XT6K2.js").then(e=>e.createValidateCommand(t,r,c))});o(n,{name:"eval",description:"Run skill evaluation suites in parallel",factory:()=>import("./chunks/eval-6KR7TFOK.js").then(e=>e.createEvalCommand())});o(n,{name:"ci",description:"CI/CD pipeline orchestration",factory:()=>import("./chunks/ci-JW4O2J3W.js").then(e=>e.createCICommand(t,r,c))});o(n,{name:"token-usage",description:"View and analyze token consumption metrics (ADR-042)",factory:()=>import("./chunks/token-usage-WCHJUVGT.js").then(e=>e.createTokenUsageCommand())});o(n,{name:"llm",description:"LLM Router management (ADR-043)",factory:()=>import("./chunks/llm-router-AWB2KHDW.js").then(e=>e.createLLMRouterCommand())});o(n,{name:"sync",description:"Sync local learning data to cloud PostgreSQL",factory:()=>import("./chunks/sync-XXIGTGCG.js").then(e=>e.createSyncCommands())});o(n,{name:"hooks",description:"Self-learning QE hooks for pattern recognition and guidance",factory:()=>import("./chunks/hooks-ZI4D3ATS.js").then(e=>e.createHooksCommand())});o(n,{name:"learning",description:"AQE self-learning system management (standalone, no claude-flow required)",factory:()=>import("./chunks/learning-3P3ZXRGD.js").then(e=>e.createLearningCommand())});o(n,{name:"memory",description:"Memory store, retrieve, search, and delete operations",factory:()=>import("./chunks/memory-IVAQS4OW.js").then(e=>e.createMemoryCommand(t,r,c))});o(n,{name:"mcp",description:"Start the MCP protocol server for Claude Code integration",factory:()=>import("./chunks/mcp-33NHIBN3.js").then(e=>e.createMcpCommand())});o(n,{name:"platform",description:"Manage coding agent platform configurations",factory:()=>import("./chunks/platform-FFVP36LH.js").then(e=>e.createPlatformCommand())});o(n,{name:"prove",description:"Generate a verifiable Proof-of-Quality attestation",factory:()=>import("./chunks/prove-ADVRMAWS.js").then(e=>e.createProveCommand(t,r,c))});o(n,{name:"ruvector",description:"RuVector integration management",factory:()=>import("./chunks/ruvector-commands-FFIHCGVQ.js").then(e=>e.createRuVectorCommand())});o(n,{name:"audit",description:"Witness chain audit trail management",factory:()=>import("./chunks/audit-TTWAAV7P.js").then(e=>e.createAuditCommand(t,r,c))});o(n,{name:"pipeline",description:"Manage YAML deterministic pipelines (Imp-9)",factory:()=>import("./chunks/pipeline-VIKAOIBE.js").then(e=>e.createPipelineCommand(t,r,c))});o(n,{name:"plugin",description:"Manage external QE domain plugins",factory:()=>import("./chunks/plugin-TI6QOLXH.js").then(e=>e.createPluginCommand())});o(n,{name:"daemon",description:"Manage the QE Quality Daemon",factory:()=>import("./chunks/daemon-3VAOEKQW.js").then(e=>e.createDaemonCommand())});process.on("SIGINT",async()=>{console.log(m.yellow(`
9
+ `),!0}catch(a){return a.message.includes("timeout")?(console.error(m.red("Initialization timed out after 30 seconds.")),console.log(m.yellow("Try running `aqe init` manually."))):(console.error(m.red("Failed to auto-initialize:"),a),console.log(m.yellow("Try running `aqe init` manually."))),!1}}async function r(e=0){try{t.workflowOrchestrator&&t.workflowOrchestrator.dispose().catch(()=>{}),t.queen&&t.queen.dispose().catch(()=>{}),t.router&&t.router.dispose().catch(()=>{}),t.kernel&&t.kernel.dispose().catch(()=>{})}catch{}process.exit(e)}var n=new S,v="3.11.5";n.name("aqe").description("Agentic QE - Domain-Driven Quality Engineering").version(v);d(n,"init","Initialize the AQE v3 system",()=>import("./chunks/init-handler-N3Z72JNI.js").then(e=>e.createInitHandler(r)),t);d(n,"status","Show system status",()=>import("./chunks/status-handler-OX4CJZME.js").then(e=>e.createStatusHandler(r,k)),t);d(n,"health","Check system health",()=>import("./chunks/status-handler-OX4CJZME.js").then(e=>e.createHealthHandler(r,k)),t);d(n,"task","Manage QE tasks",()=>import("./chunks/task-handler-VPGAJVPC.js").then(e=>e.createTaskHandler(r,c)),t);d(n,"agent","Manage QE agents",()=>import("./chunks/agent-handler-M4W4GTXN.js").then(e=>e.createAgentHandler(r,c)),t);d(n,"domain","Domain operations",()=>import("./chunks/domain-handler-J7DQV74M.js").then(e=>e.createDomainHandler(r,c)),t);d(n,"protocol","Execute coordination protocols",()=>import("./chunks/protocol-handler-T3LZ3WRG.js").then(e=>e.createProtocolHandler(r,c)),t);d(n,"brain","Export, import, and inspect QE brain state",()=>import("./chunks/brain-handler-M6A3UB66.js").then(e=>e.createBrainHandler(r,c)),t);d(n,"hypergraph","Query the code knowledge hypergraph",()=>import("./chunks/hypergraph-handler-GTGA3TXJ.js").then(e=>e.createHypergraphHandler(r,c)),t,["hg"]);d(n,"heartbeat","Manage the token-free heartbeat scheduler",()=>import("./chunks/heartbeat-handler-7BQDK7MG.js").then(e=>e.createHeartbeatHandler(r)),t);d(n,"routing","View routing performance, economics, and accuracy",()=>import("./chunks/routing-handler-CU6657SZ.js").then(e=>e.createRoutingHandler(r)),t);o(n,{name:"workflow",description:"Manage QE workflows and pipelines (ADR-041)",factory:()=>import("./chunks/workflow-43EMD5FY.js").then(e=>e.createWorkflowCommand(t,r,c))});o(n,{name:"test",description:"Test generation, execution, scheduling, and load testing",factory:()=>import("./chunks/test-OMRJOZB6.js").then(e=>e.createTestCommand(t,r,c))});o(n,{name:"coverage",description:"Coverage analysis shortcut",factory:()=>import("./chunks/coverage-HVNHSMVJ.js").then(e=>e.createCoverageCommand(t,r,c))});o(n,{name:"quality",description:"Quality assessment shortcut",factory:()=>import("./chunks/quality-AXD4NLQA.js").then(e=>e.createQualityCommand(t,r,c))});o(n,{name:"security",description:"Security scanning and URL validation",factory:()=>import("./chunks/security-UM3IGDSM.js").then(e=>e.createSecurityCommand(t,r,c))});o(n,{name:"arena",description:"Competitive test-strategy tournaments (ADR-104)",factory:()=>import("./chunks/arena-FKSD3LLM.js").then(e=>e.createArenaCommand(t,r,c))});o(n,{name:"code",description:"Code intelligence analysis",factory:()=>import("./chunks/code-QIZQVB3E.js").then(e=>e.createCodeCommand(t,r,c))});o(n,{name:"completions",description:"Generate shell completions for aqe",factory:()=>import("./chunks/completions-Y36S3C5J.js").then(e=>e.createCompletionsCommand(r))});o(n,{name:"upgrade",description:"Detect optional native bindings and recommend install / flag changes",factory:()=>import("./chunks/upgrade-QPLMJA5Z.js").then(e=>e.createUpgradeCommand(r))});o(n,{name:"fleet",description:"Fleet operations with multi-agent progress tracking",factory:()=>import("./chunks/fleet-7KZQOTAC.js").then(e=>e.createFleetCommand(t,r,c,C))});o(n,{name:"validate",description:"Validation commands for skills and agents",factory:()=>import("./chunks/validate-swarm-XCRTLVM6.js").then(e=>e.createValidateSwarmCommand(t,r,c))});o(n,{name:"skill",description:"Skill validation and reporting (ADR-056)",factory:()=>import("./chunks/validate-3GVKZOVF.js").then(e=>e.createValidateCommand(t,r,c))});o(n,{name:"eval",description:"Run skill evaluation suites in parallel",factory:()=>import("./chunks/eval-A4PA5G2U.js").then(e=>e.createEvalCommand())});o(n,{name:"ci",description:"CI/CD pipeline orchestration",factory:()=>import("./chunks/ci-CBNVLOOQ.js").then(e=>e.createCICommand(t,r,c))});o(n,{name:"token-usage",description:"View and analyze token consumption metrics (ADR-042)",factory:()=>import("./chunks/token-usage-IYO7RGFF.js").then(e=>e.createTokenUsageCommand())});o(n,{name:"llm",description:"LLM Router management (ADR-043)",factory:()=>import("./chunks/llm-router-CMHGGX6N.js").then(e=>e.createLLMRouterCommand())});o(n,{name:"sync",description:"Sync local learning data to cloud PostgreSQL",factory:()=>import("./chunks/sync-2TED3YTY.js").then(e=>e.createSyncCommands())});o(n,{name:"hooks",description:"Self-learning QE hooks for pattern recognition and guidance",factory:()=>import("./chunks/hooks-CYZIUYSH.js").then(e=>e.createHooksCommand())});o(n,{name:"learning",description:"AQE self-learning system management (standalone, no claude-flow required)",factory:()=>import("./chunks/learning-UQY64COU.js").then(e=>e.createLearningCommand())});o(n,{name:"memory",description:"Memory store, retrieve, search, and delete operations",factory:()=>import("./chunks/memory-7Q3XDUE5.js").then(e=>e.createMemoryCommand(t,r,c))});o(n,{name:"mcp",description:"Start the MCP protocol server for Claude Code integration",factory:()=>import("./chunks/mcp-UM5VTW6N.js").then(e=>e.createMcpCommand())});o(n,{name:"platform",description:"Manage coding agent platform configurations",factory:()=>import("./chunks/platform-4N4Q5XYX.js").then(e=>e.createPlatformCommand())});o(n,{name:"prove",description:"Generate a verifiable Proof-of-Quality attestation",factory:()=>import("./chunks/prove-OV7S5J4W.js").then(e=>e.createProveCommand(t,r,c))});o(n,{name:"ruvector",description:"RuVector integration management",factory:()=>import("./chunks/ruvector-commands-IIF6VSFW.js").then(e=>e.createRuVectorCommand())});o(n,{name:"audit",description:"Witness chain audit trail management",factory:()=>import("./chunks/audit-7NSGRR4Z.js").then(e=>e.createAuditCommand(t,r,c))});o(n,{name:"pipeline",description:"Manage YAML deterministic pipelines (Imp-9)",factory:()=>import("./chunks/pipeline-2VDLTR5J.js").then(e=>e.createPipelineCommand(t,r,c))});o(n,{name:"plugin",description:"Manage external QE domain plugins",factory:()=>import("./chunks/plugin-GY5AU5CS.js").then(e=>e.createPluginCommand())});o(n,{name:"daemon",description:"Manage the QE Quality Daemon",factory:()=>import("./chunks/daemon-Y54O3FLT.js").then(e=>e.createDaemonCommand())});process.on("SIGINT",async()=>{console.log(m.yellow(`
10
10
 
11
11
  Shutting down...`)),console.log(m.green(`Shutdown complete
12
12
  `)),await r(0)});process.on("SIGTERM",async()=>{console.log(m.yellow(`
13
- Received SIGTERM, shutting down gracefully...`)),await r(0)});async function R(){let{isVersionFastPath:e}=await import("./chunks/fast-paths-M7OGD4ZI.js");e(process.argv)&&(console.log(v),process.exit(0));let{bootstrapTokenTracking:i}=await import("./chunks/token-bootstrap-ICX6SIXJ.js");await i({enableOptimization:!0,enablePersistence:!0,verbose:process.env.AQE_VERBOSE==="true"}),await n.parseAsync(),await r(0)}R().catch(async e=>{console.error(m.red("Fatal error:"),e),await r(1)});
13
+ Received SIGTERM, shutting down gracefully...`)),await r(0)});async function R(){let{isVersionFastPath:e}=await import("./chunks/fast-paths-QYDTITRV.js");e(process.argv)&&(console.log(v),process.exit(0));let{bootstrapTokenTracking:i}=await import("./chunks/token-bootstrap-DNWZI7SH.js");await i({enableOptimization:!0,enablePersistence:!0,verbose:process.env.AQE_VERBOSE==="true"}),await n.parseAsync(),await r(0)}R().catch(async e=>{console.error(m.red("Fatal error:"),e),await r(1)});
@@ -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.11.5");process.exit(0)}
2
+ import{a,b,c}from"./chunk-7P6X4BFO.js";import"./chunk-3WR35GFF.js";import"./chunk-TEIWJ3GJ.js";import"./chunk-CKOF27L7.js";import"./chunk-RKXZLTWR.js";import"./chunk-C4EZNOWK.js";export{a as AgentBoosterAdapter,b as createAgentBoosterAdapter,c as createAgentBoosterAdapterSync};
@@ -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.11.3");process.exit(0)}
2
- import{a as x}from"./chunk-UNH2DE2G.js";import{c as f}from"./chunk-7UOH55UT.js";import"./chunk-PUK5NE47.js";x();import{createRequire as w}from"module";var S=f.create("agent-booster-wasm"),t={JavaScript:0,TypeScript:1,Python:2,Rust:3,Go:4,Java:5,C:6,Cpp:7},l={ExactReplace:0,FuzzyReplace:1,InsertAfter:2,InsertBefore:3,Append:4},v={0:"JavaScript",1:"TypeScript",2:"Python",3:"Rust",4:"Go",5:"Java",6:"C",7:"Cpp"},a=null,u=null,p=null;async function g(){if(a)return!0;if(p)return!1;try{if(a=w(import.meta.url)("./agent_booster_wasm.js"),!a)throw new Error("WASM module loaded but is null");return u=new a.AgentBoosterWasm,!0}catch(e){return p=e,console.warn("[AgentBoosterWASM] Failed to load WASM module:",e),!1}}function A(e){return{".js":t.JavaScript,".mjs":t.JavaScript,".cjs":t.JavaScript,".jsx":t.JavaScript,".ts":t.TypeScript,".tsx":t.TypeScript,".mts":t.TypeScript,".cts":t.TypeScript,".py":t.Python,".rs":t.Rust,".go":t.Go,".java":t.Java,".c":t.C,".h":t.C,".cpp":t.Cpp,".cc":t.Cpp,".cxx":t.Cpp,".hpp":t.Cpp}[e.toLowerCase()]??t.JavaScript}var M=[{name:"var-to-const",detect:(e,r)=>e.includes("var ")&&r.includes("const "),apply:(e,r)=>e.replace(/\bvar\s+/g,"const ")},{name:"var-to-let",detect:(e,r)=>e.includes("var ")&&r.includes("let "),apply:(e,r)=>e.replace(/\bvar\s+/g,"let ")},{name:"add-types-function",detect:(e,r)=>e.includes("function")&&!e.includes(":")&&r.includes(":"),apply:(e,r)=>r},{name:"async-wrapper",detect:(e,r)=>!e.includes("async")&&r.includes("async")&&r.includes("await"),apply:(e,r)=>r},{name:"try-catch-wrapper",detect:(e,r)=>!e.includes("try {")&&r.includes("try {"),apply:(e,r)=>r},{name:"null-check",detect:(e,r)=>!e.includes("if (!")&&!e.includes("if (!")&&(r.includes("if (!")||r.includes("?.")),apply:(e,r)=>r},{name:"test-assertion",detect:(e,r)=>e.includes("test(")&&!e.includes("expect(")&&r.includes("expect("),apply:(e,r)=>r}];function y(e,r){for(let n of M)if(n.detect(e,r))try{return{success:!0,code:n.apply(e,r),pattern:n.name}}catch(s){S.debug("Pattern transform failed, trying next",{pattern:n.name,error:s instanceof Error?s.message:String(s)});continue}return{success:!1,code:r}}async function b(e,r,n,s={}){let o=performance.now(),{confidenceThreshold:T=.5,allowFallback:d=!0}=s;if(!e.trim())return{success:!0,mergedCode:r,confidence:1,strategy:l.Append,syntaxValid:!0,source:"fallback",latencyMs:performance.now()-o};if(await g()&&u&&a)try{let c=a.WasmLanguage[v[n]],i=u.apply_edit(e,r,c);return{success:!0,mergedCode:i.merged_code,confidence:i.confidence,strategy:i.strategy,syntaxValid:i.syntax_valid,source:"wasm",latencyMs:performance.now()-o}}catch(c){let i=c;if(d){let m=y(e,r);if(m.success)return{success:!0,mergedCode:m.code,confidence:.7,strategy:l.FuzzyReplace,syntaxValid:!0,source:"pattern",latencyMs:performance.now()-o}}return{success:!1,mergedCode:r,confidence:0,strategy:l.Append,syntaxValid:!1,source:"fallback",latencyMs:performance.now()-o,error:i.message}}if(d){let c=y(e,r);return{success:c.success,mergedCode:c.code,confidence:c.success?.7:0,strategy:l.FuzzyReplace,syntaxValid:!0,source:"pattern",latencyMs:performance.now()-o}}return{success:!1,mergedCode:r,confidence:0,strategy:l.Append,syntaxValid:!1,source:"fallback",latencyMs:performance.now()-o,error:p?.message??"WASM not available"}}async function W(e,r={}){return Promise.all(e.map(({original:n,edit:s,language:o})=>b(n,s,o,r)))}async function C(){return g()}async function L(){return await g()&&a?a.AgentBoosterWasm.version():"unavailable"}async function R(){if(await g(),u&&a)try{u.apply_edit("function x() {}","function x() {}",a.WasmLanguage.JavaScript)}catch(e){console.debug("[AgentBoosterWASM] Warmup error:",e instanceof Error?e.message:e)}}var _={transform:b,batchTransform:W,isWasmAvailable:C,getVersion:L,warmup:R,Language:t,MergeStrategy:l,languageFromExtension:A};export{t as Language,l as MergeStrategy,W as batchTransform,_ as default,L as getVersion,C as isWasmAvailable,A as languageFromExtension,b as transform,R as warmup};
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.11.5");process.exit(0)}
2
+ import{a as x}from"./chunk-ZMPAM4DY.js";import{c as f}from"./chunk-Y25PO65W.js";import"./chunk-C4EZNOWK.js";x();import{createRequire as w}from"module";var S=f.create("agent-booster-wasm"),t={JavaScript:0,TypeScript:1,Python:2,Rust:3,Go:4,Java:5,C:6,Cpp:7},l={ExactReplace:0,FuzzyReplace:1,InsertAfter:2,InsertBefore:3,Append:4},v={0:"JavaScript",1:"TypeScript",2:"Python",3:"Rust",4:"Go",5:"Java",6:"C",7:"Cpp"},a=null,u=null,p=null;async function g(){if(a)return!0;if(p)return!1;try{if(a=w(import.meta.url)("./agent_booster_wasm.js"),!a)throw new Error("WASM module loaded but is null");return u=new a.AgentBoosterWasm,!0}catch(e){return p=e,console.warn("[AgentBoosterWASM] Failed to load WASM module:",e),!1}}function A(e){return{".js":t.JavaScript,".mjs":t.JavaScript,".cjs":t.JavaScript,".jsx":t.JavaScript,".ts":t.TypeScript,".tsx":t.TypeScript,".mts":t.TypeScript,".cts":t.TypeScript,".py":t.Python,".rs":t.Rust,".go":t.Go,".java":t.Java,".c":t.C,".h":t.C,".cpp":t.Cpp,".cc":t.Cpp,".cxx":t.Cpp,".hpp":t.Cpp}[e.toLowerCase()]??t.JavaScript}var M=[{name:"var-to-const",detect:(e,r)=>e.includes("var ")&&r.includes("const "),apply:(e,r)=>e.replace(/\bvar\s+/g,"const ")},{name:"var-to-let",detect:(e,r)=>e.includes("var ")&&r.includes("let "),apply:(e,r)=>e.replace(/\bvar\s+/g,"let ")},{name:"add-types-function",detect:(e,r)=>e.includes("function")&&!e.includes(":")&&r.includes(":"),apply:(e,r)=>r},{name:"async-wrapper",detect:(e,r)=>!e.includes("async")&&r.includes("async")&&r.includes("await"),apply:(e,r)=>r},{name:"try-catch-wrapper",detect:(e,r)=>!e.includes("try {")&&r.includes("try {"),apply:(e,r)=>r},{name:"null-check",detect:(e,r)=>!e.includes("if (!")&&!e.includes("if (!")&&(r.includes("if (!")||r.includes("?.")),apply:(e,r)=>r},{name:"test-assertion",detect:(e,r)=>e.includes("test(")&&!e.includes("expect(")&&r.includes("expect("),apply:(e,r)=>r}];function y(e,r){for(let n of M)if(n.detect(e,r))try{return{success:!0,code:n.apply(e,r),pattern:n.name}}catch(s){S.debug("Pattern transform failed, trying next",{pattern:n.name,error:s instanceof Error?s.message:String(s)});continue}return{success:!1,code:r}}async function b(e,r,n,s={}){let o=performance.now(),{confidenceThreshold:T=.5,allowFallback:d=!0}=s;if(!e.trim())return{success:!0,mergedCode:r,confidence:1,strategy:l.Append,syntaxValid:!0,source:"fallback",latencyMs:performance.now()-o};if(await g()&&u&&a)try{let c=a.WasmLanguage[v[n]],i=u.apply_edit(e,r,c);return{success:!0,mergedCode:i.merged_code,confidence:i.confidence,strategy:i.strategy,syntaxValid:i.syntax_valid,source:"wasm",latencyMs:performance.now()-o}}catch(c){let i=c;if(d){let m=y(e,r);if(m.success)return{success:!0,mergedCode:m.code,confidence:.7,strategy:l.FuzzyReplace,syntaxValid:!0,source:"pattern",latencyMs:performance.now()-o}}return{success:!1,mergedCode:r,confidence:0,strategy:l.Append,syntaxValid:!1,source:"fallback",latencyMs:performance.now()-o,error:i.message}}if(d){let c=y(e,r);return{success:c.success,mergedCode:c.code,confidence:c.success?.7:0,strategy:l.FuzzyReplace,syntaxValid:!0,source:"pattern",latencyMs:performance.now()-o}}return{success:!1,mergedCode:r,confidence:0,strategy:l.Append,syntaxValid:!1,source:"fallback",latencyMs:performance.now()-o,error:p?.message??"WASM not available"}}async function W(e,r={}){return Promise.all(e.map(({original:n,edit:s,language:o})=>b(n,s,o,r)))}async function C(){return g()}async function L(){return await g()&&a?a.AgentBoosterWasm.version():"unavailable"}async function R(){if(await g(),u&&a)try{u.apply_edit("function x() {}","function x() {}",a.WasmLanguage.JavaScript)}catch(e){console.debug("[AgentBoosterWASM] Warmup error:",e instanceof Error?e.message:e)}}var _={transform:b,batchTransform:W,isWasmAvailable:C,getVersion:L,warmup:R,Language:t,MergeStrategy:l,languageFromExtension:A};export{t as Language,l as MergeStrategy,W as batchTransform,_ as default,L as getVersion,C as isWasmAvailable,A as languageFromExtension,b as transform,R as warmup};
@@ -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.11.3");process.exit(0)}
2
- import{b as p}from"./chunk-SLU35IDJ.js";import{a as g}from"./chunk-EXCU4J7T.js";import"./chunk-G6MPXBCD.js";import"./chunk-PUK5NE47.js";import s from"chalk";var l=class{name="agent";description="Manage QE agents";cleanupAndExit;ensureInitialized;constructor(n,t){this.cleanupAndExit=n,this.ensureInitialized=t}register(n,t){let a=n.command("agent").description(this.description);a.command("list").description("List all agents").option("-d, --domain <domain>","Filter by domain").option("-s, --status <status>","Filter by status").action(async e=>{await this.executeList(e,t)}),a.command("spawn <domain>").description("Spawn an agent in a domain").option("-t, --type <type>","Agent type","worker").option("-c, --capabilities <caps>","Comma-separated capabilities","general").option("--no-progress","Disable progress indicator").action(async(e,o)=>{await this.executeSpawn(e,o,t)})}async executeList(n,t){if(await this.ensureInitialized())try{let a=n.domain?t.queen.getAgentsByDomain(n.domain):t.queen.listAllAgents();if(n.status&&(a=a.filter(e=>e.status===n.status)),console.log(s.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.11.5");process.exit(0)}
2
+ import{b as p}from"./chunk-FGSIID5C.js";import{a as g}from"./chunk-HJWT4KME.js";import"./chunk-CKOF27L7.js";import"./chunk-C4EZNOWK.js";import s from"chalk";var l=class{name="agent";description="Manage QE agents";cleanupAndExit;ensureInitialized;constructor(n,t){this.cleanupAndExit=n,this.ensureInitialized=t}register(n,t){let a=n.command("agent").description(this.description);a.command("list").description("List all agents").option("-d, --domain <domain>","Filter by domain").option("-s, --status <status>","Filter by status").action(async e=>{await this.executeList(e,t)}),a.command("spawn <domain>").description("Spawn an agent in a domain").option("-t, --type <type>","Agent type","worker").option("-c, --capabilities <caps>","Comma-separated capabilities","general").option("--no-progress","Disable progress indicator").action(async(e,o)=>{await this.executeSpawn(e,o,t)})}async executeList(n,t){if(await this.ensureInitialized())try{let a=n.domain?t.queen.getAgentsByDomain(n.domain):t.queen.listAllAgents();if(n.status&&(a=a.filter(e=>e.status===n.status)),console.log(s.blue(`
3
3
  Agents (${a.length})
4
4
  `)),a.length===0)console.log(s.gray(" No agents found"));else{let e=new Map;for(let i of a)e.has(i.domain)||e.set(i.domain,[]),e.get(i.domain).push(i);let o=Array.from(e.entries());for(let[i,m]of o){console.log(s.cyan(` ${i}:`));for(let r of m)console.log(` ${r.id}`),console.log(` Type: ${r.type}`),console.log(` Status: ${g(r.status)}`),r.startedAt&&console.log(s.gray(` Started: ${r.startedAt.toISOString()}`));console.log("")}}}catch(a){console.error(s.red(`
5
5
  Failed to list agents:`),a),await this.cleanupAndExit(1)}}async executeSpawn(n,t,a){if(await this.ensureInitialized())try{let e=t.capabilities.split(",");console.log(s.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.11.3");process.exit(0)}
2
- import"./chunk-PUK5NE47.js";import{existsSync as i,mkdirSync as d,unlinkSync as s,readdirSync as p,statSync as f}from"fs";import{join as o,basename as l}from"path";var v={branchDir:".agentic-qe/branches",defaultStrategy:"child-wins",orphanMaxAgeMs:36e5},g=class{config;parentAdapter;activeBranches=new Map;witnessChain=null;constructor(t,e){this.parentAdapter=t,this.config={...v,...e}}setWitnessChain(t){this.witnessChain=t}createBranch(t){if(this.activeBranches.has(t))throw new Error(`Branch already exists for agent ${t}`);i(this.config.branchDir)||d(this.config.branchDir,{recursive:!0});let e=o(this.config.branchDir,`${t}.rvf`),r=this.parentAdapter.path(),n=this.parentAdapter.derive(e),a={agentId:t,childPath:e,parentPath:r,childAdapter:n,createdAt:Date.now(),ingestLog:[]};return this.activeBranches.set(t,a),a}recordIngest(t,e){let r=this.activeBranches.get(t);if(r)for(let n of e)r.ingestLog.push({id:n.id,vector:n.vector})}async mergeBranch(t,e){let r=e??this.config.defaultStrategy,n=performance.now(),a=0;if(r==="child-wins"&&t.ingestLog.length>0)try{a=this.parentAdapter.ingest(t.ingestLog).accepted}catch(c){console.warn(`[AgentMemoryBranch] Merge replay failed for ${t.agentId}:`,c)}return this.witnessChain?.append("BRANCH_MERGE",{agentId:t.agentId,strategy:r,vectorsMerged:a,branchPath:t.childPath},`agent-${t.agentId}`),this.cleanupBranchFile(t),this.activeBranches.delete(t.agentId),{vectorsMerged:a,strategy:r,durationMs:performance.now()-n}}discardBranch(t){this.witnessChain?.append("BRANCH_DISCARD",{agentId:t.agentId,action:"discard",branchPath:t.childPath},`agent-${t.agentId}`),this.cleanupBranchFile(t),this.activeBranches.delete(t.agentId)}getBranch(t){return this.activeBranches.get(t)}getActiveBranches(){return Array.from(this.activeBranches.values())}listBranchFiles(){return i(this.config.branchDir)?p(this.config.branchDir).filter(e=>e.endsWith(".rvf")).map(e=>{let r=o(this.config.branchDir,e),n=f(r);return{agentId:l(e,".rvf"),path:r,sizeBytes:n.size,modifiedAt:n.mtime}}):[]}cleanupOrphans(t){let e=t??this.config.orphanMaxAgeMs,r=Date.now(),n=0;for(let a of this.listBranchFiles())if(r-a.modifiedAt.getTime()>e&&!this.activeBranches.has(a.agentId))try{s(a.path);let h=`${a.path}.idmap.json`;i(h)&&s(h),n++}catch{}return n}cleanupBranchFile(t){try{t.childAdapter.close()}catch{}try{i(t.childPath)&&s(t.childPath);let e=`${t.childPath}.idmap.json`;i(e)&&s(e)}catch{}}};export{g as AgentMemoryBranch};
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.11.5");process.exit(0)}
2
+ import"./chunk-C4EZNOWK.js";import{existsSync as i,mkdirSync as d,unlinkSync as s,readdirSync as p,statSync as f}from"fs";import{join as o,basename as l}from"path";var v={branchDir:".agentic-qe/branches",defaultStrategy:"child-wins",orphanMaxAgeMs:36e5},g=class{config;parentAdapter;activeBranches=new Map;witnessChain=null;constructor(t,e){this.parentAdapter=t,this.config={...v,...e}}setWitnessChain(t){this.witnessChain=t}createBranch(t){if(this.activeBranches.has(t))throw new Error(`Branch already exists for agent ${t}`);i(this.config.branchDir)||d(this.config.branchDir,{recursive:!0});let e=o(this.config.branchDir,`${t}.rvf`),r=this.parentAdapter.path(),n=this.parentAdapter.derive(e),a={agentId:t,childPath:e,parentPath:r,childAdapter:n,createdAt:Date.now(),ingestLog:[]};return this.activeBranches.set(t,a),a}recordIngest(t,e){let r=this.activeBranches.get(t);if(r)for(let n of e)r.ingestLog.push({id:n.id,vector:n.vector})}async mergeBranch(t,e){let r=e??this.config.defaultStrategy,n=performance.now(),a=0;if(r==="child-wins"&&t.ingestLog.length>0)try{a=this.parentAdapter.ingest(t.ingestLog).accepted}catch(c){console.warn(`[AgentMemoryBranch] Merge replay failed for ${t.agentId}:`,c)}return this.witnessChain?.append("BRANCH_MERGE",{agentId:t.agentId,strategy:r,vectorsMerged:a,branchPath:t.childPath},`agent-${t.agentId}`),this.cleanupBranchFile(t),this.activeBranches.delete(t.agentId),{vectorsMerged:a,strategy:r,durationMs:performance.now()-n}}discardBranch(t){this.witnessChain?.append("BRANCH_DISCARD",{agentId:t.agentId,action:"discard",branchPath:t.childPath},`agent-${t.agentId}`),this.cleanupBranchFile(t),this.activeBranches.delete(t.agentId)}getBranch(t){return this.activeBranches.get(t)}getActiveBranches(){return Array.from(this.activeBranches.values())}listBranchFiles(){return i(this.config.branchDir)?p(this.config.branchDir).filter(e=>e.endsWith(".rvf")).map(e=>{let r=o(this.config.branchDir,e),n=f(r);return{agentId:l(e,".rvf"),path:r,sizeBytes:n.size,modifiedAt:n.mtime}}):[]}cleanupOrphans(t){let e=t??this.config.orphanMaxAgeMs,r=Date.now(),n=0;for(let a of this.listBranchFiles())if(r-a.modifiedAt.getTime()>e&&!this.activeBranches.has(a.agentId))try{s(a.path);let h=`${a.path}.idmap.json`;i(h)&&s(h),n++}catch{}return n}cleanupBranchFile(t){try{t.childAdapter.close()}catch{}try{i(t.childPath)&&s(t.childPath);let e=`${t.childPath}.idmap.json`;i(e)&&s(e)}catch{}}};export{g as AgentMemoryBranch};
@@ -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.11.5");process.exit(0)}
2
+ import{a,b,c,d,e,f}from"./chunk-Y6DWJKHU.js";import"./chunk-J6PFPY7V.js";import"./chunk-EEKG35K5.js";import"./chunk-UORTQXJ2.js";import"./chunk-4XJ2A3HY.js";import"./chunk-PW72M2FE.js";import"./chunk-UBI2EOS3.js";import"./chunk-MCHEUSY4.js";import"./chunk-YGVDP6X7.js";import"./chunk-JBKZ5TUM.js";import"./chunk-W7TYKPLY.js";import"./chunk-IBDQWKI3.js";import"./chunk-53YOYZW5.js";import"./chunk-TRNBQFFG.js";import"./chunk-LPR2R3AN.js";import"./chunk-NCSXLMDL.js";import"./chunk-IU5RSN6M.js";import"./chunk-ZMPAM4DY.js";import"./chunk-Y25PO65W.js";import"./chunk-YFCULQBP.js";import"./chunk-CKOF27L7.js";import"./chunk-4QOI5JS7.js";import"./chunk-RJN2RM76.js";import"./chunk-OS62Y77J.js";import"./chunk-TTJJ4DQE.js";import"./chunk-5WMU7XCF.js";import"./chunk-RKXZLTWR.js";import"./chunk-K4I7UIU5.js";import"./chunk-FHTYEAQ3.js";import"./chunk-WHHQIL4F.js";import"./chunk-3JF5A72M.js";import"./chunk-CDJP6COA.js";import"./chunk-FIPKIIMS.js";import"./chunk-2XQHG56O.js";import"./chunk-2XPMATEK.js";import"./chunk-JDSHUECG.js";import"./chunk-GODAWJMZ.js";import"./chunk-C4EZNOWK.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};