agentic-qe 3.11.4 → 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 (398) hide show
  1. package/.claude/hooks/aqe-hook.cjs +44 -10
  2. package/.claude/skills/skills-manifest.json +1 -1
  3. package/CHANGELOG.md +58 -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-62I6ZNRW.js → agent-booster-wasm-CSTBLNYZ.js} +2 -2
  13. package/dist/cli/chunks/{agent-handler-E2TZKKBS.js → agent-handler-M4W4GTXN.js} +2 -2
  14. package/dist/cli/chunks/{agent-memory-branch-JHAHC2NH.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-72ZV65BR.js → arena-FKSD3LLM.js} +4 -4
  17. package/dist/cli/chunks/{arena-KLG3YSSR.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-LAFK5QZ4.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-C7MPNYT7.js → branch-enumerator-2JGKY4BB.js} +2 -2
  23. package/dist/cli/chunks/{browser-UUDUDYLR.js → browser-J43WQPJL.js} +2 -2
  24. package/dist/cli/chunks/browser-workflow-4HX6RP5F.js +2 -0
  25. package/dist/cli/chunks/{chunk-UJMTKXPI.js → chunk-26WEI3P4.js} +2 -2
  26. package/dist/cli/chunks/{chunk-TQ373GGI.js → chunk-2XPMATEK.js} +2 -2
  27. package/dist/cli/chunks/{chunk-QJ5NCYJ3.js → chunk-2XQHG56O.js} +2 -2
  28. package/dist/cli/chunks/{chunk-EONKMHKO.js → chunk-354367AP.js} +2 -2
  29. package/dist/cli/chunks/{chunk-THKZVOZV.js → chunk-37ZUF5NX.js} +1 -1
  30. package/dist/cli/chunks/{chunk-5P7Q5YNC.js → chunk-3I4TCMOJ.js} +1 -1
  31. package/dist/cli/chunks/{chunk-PQUXFSN6.js → chunk-3JF5A72M.js} +2 -2
  32. package/dist/cli/chunks/{chunk-B5XUWHKQ.js → chunk-3LY7OCSO.js} +1 -1
  33. package/dist/cli/chunks/{chunk-HJ24KMC2.js → chunk-3V36WMIO.js} +1 -1
  34. package/dist/cli/chunks/{chunk-6JUOH6L4.js → chunk-3WR35GFF.js} +2 -2
  35. package/dist/cli/chunks/{chunk-T76RFXQX.js → chunk-4LODYRNV.js} +2 -2
  36. package/dist/cli/chunks/{chunk-D5S47YUS.js → chunk-4MHN7JWC.js} +3 -3
  37. package/dist/cli/chunks/chunk-4QOI5JS7.js +14 -0
  38. package/dist/cli/chunks/{chunk-63QUN3JK.js → chunk-4RTWPR3X.js} +1 -1
  39. package/dist/cli/chunks/chunk-4XJ2A3HY.js +65 -0
  40. package/dist/cli/chunks/{chunk-KUZMVH6N.js → chunk-4Y3LGBKJ.js} +3 -3
  41. package/dist/cli/chunks/{chunk-JFLSQH2X.js → chunk-52U5BFZP.js} +2 -2
  42. package/dist/cli/chunks/{chunk-YNK6SUPU.js → chunk-53YOYZW5.js} +2 -2
  43. package/dist/cli/chunks/{chunk-O7PVZ32A.js → chunk-5WMU7XCF.js} +1 -1
  44. package/dist/cli/chunks/{chunk-ZKCKOQJI.js → chunk-62OTU2AP.js} +2 -2
  45. package/dist/cli/chunks/{chunk-3SKIZDKL.js → chunk-62UM7Q5N.js} +1 -1
  46. package/dist/cli/chunks/{chunk-SFDUT5WM.js → chunk-6Q57K4YD.js} +2 -2
  47. package/dist/cli/chunks/{chunk-3SBUL72V.js → chunk-6R3YOAKO.js} +2 -2
  48. package/dist/cli/chunks/chunk-6T65OKUM.js +2 -0
  49. package/dist/cli/chunks/{chunk-TCVEKRPI.js → chunk-7BCRULCP.js} +2 -2
  50. package/dist/cli/chunks/{chunk-VKJQAKYG.js → chunk-7DTMENY6.js} +2 -2
  51. package/dist/cli/chunks/{chunk-XQ6DW5FV.js → chunk-7KXPNNMR.js} +2 -2
  52. package/dist/cli/chunks/{chunk-N2BJN6AO.js → chunk-7P6X4BFO.js} +3 -3
  53. package/dist/cli/chunks/{chunk-SL3SNOO2.js → chunk-7YSBATSN.js} +2 -2
  54. package/dist/cli/chunks/{chunk-5U2WHPXL.js → chunk-ABU64UWB.js} +1 -1
  55. package/dist/cli/chunks/{chunk-4RHNPRAP.js → chunk-AF6P5RWY.js} +2 -2
  56. package/dist/cli/chunks/{chunk-4JFH3MVA.js → chunk-AGJOGUP5.js} +1 -1
  57. package/dist/cli/chunks/{chunk-5Z4FBCBK.js → chunk-AL5VJJN4.js} +1 -1
  58. package/dist/cli/chunks/{chunk-Z2REKBD6.js → chunk-AOQYORVA.js} +2 -2
  59. package/dist/cli/chunks/{chunk-X64BEXUY.js → chunk-AOXJFDH5.js} +117 -113
  60. package/dist/cli/chunks/{chunk-DRMHVY4T.js → chunk-AXKWV5NF.js} +4 -4
  61. package/dist/cli/chunks/{chunk-3FJZMQJ7.js → chunk-B2VBDMDI.js} +2 -2
  62. package/dist/cli/chunks/{chunk-ARPBG6FQ.js → chunk-BJLA2IX7.js} +2 -2
  63. package/dist/cli/chunks/{chunk-6W3QHS45.js → chunk-BLPWJQTY.js} +2 -2
  64. package/dist/cli/chunks/{chunk-O5NEJIHB.js → chunk-BTLUWH4R.js} +2 -2
  65. package/dist/cli/chunks/{chunk-Y4AXOHW4.js → chunk-C4EZNOWK.js} +1 -1
  66. package/dist/cli/chunks/{chunk-FRFVN6AA.js → chunk-C5C4W572.js} +2 -2
  67. package/dist/cli/chunks/{chunk-7AWK43JN.js → chunk-CDJP6COA.js} +2 -2
  68. package/dist/cli/chunks/{chunk-VJGHRWMH.js → chunk-CKOF27L7.js} +2 -2
  69. package/dist/cli/chunks/{chunk-3E7D3A35.js → chunk-D45QLJEL.js} +1 -1
  70. package/dist/cli/chunks/{chunk-MALOUGSF.js → chunk-DFRRWOEX.js} +2 -2
  71. package/dist/cli/chunks/{chunk-JDFPAJGB.js → chunk-DLBVADWQ.js} +92 -92
  72. package/dist/cli/chunks/{chunk-7IKWF2AD.js → chunk-DPL762HU.js} +1 -1
  73. package/dist/cli/chunks/{chunk-RFQBDMAP.js → chunk-DVW66FPU.js} +1 -1
  74. package/dist/cli/chunks/{chunk-JPENUVCI.js → chunk-EDOGRFAG.js} +1 -1
  75. package/dist/cli/chunks/{chunk-HWBMYR5W.js → chunk-EEKG35K5.js} +5 -5
  76. package/dist/cli/chunks/{chunk-WQZ2WRO4.js → chunk-EK3HPH6A.js} +1 -1
  77. package/dist/cli/chunks/{chunk-WZYNY3VF.js → chunk-FGD6HINU.js} +1 -1
  78. package/dist/cli/chunks/{chunk-ZSBJNE35.js → chunk-FGSIID5C.js} +2 -2
  79. package/dist/cli/chunks/{chunk-TCWR6TDN.js → chunk-FHTYEAQ3.js} +2 -2
  80. package/dist/cli/chunks/{chunk-BRLUNIR4.js → chunk-FII3WCCY.js} +2 -2
  81. package/dist/cli/chunks/{chunk-VCUCD3B5.js → chunk-FIPKIIMS.js} +2 -2
  82. package/dist/cli/chunks/{chunk-6545AS2J.js → chunk-FMNXHVIN.js} +2 -2
  83. package/dist/cli/chunks/{chunk-VO6YJGB4.js → chunk-G2ZIJZJ7.js} +2 -2
  84. package/dist/cli/chunks/{chunk-7ADD2ZQL.js → chunk-GODAWJMZ.js} +2 -2
  85. package/dist/cli/chunks/{chunk-AQIEK4SY.js → chunk-GW6XWMX2.js} +2 -2
  86. package/dist/cli/chunks/{chunk-GOQ4P2PB.js → chunk-HC6KTVFR.js} +2 -2
  87. package/dist/cli/chunks/{chunk-2KNFS3L5.js → chunk-HJWT4KME.js} +1 -1
  88. package/dist/cli/chunks/{chunk-NV3TXXOW.js → chunk-I3ANRYQ6.js} +2 -2
  89. package/dist/cli/chunks/{chunk-IQBZBUP5.js → chunk-I3NWKPXJ.js} +2 -2
  90. package/dist/cli/chunks/chunk-IBDQWKI3.js +2 -0
  91. package/dist/cli/chunks/{chunk-LW5DHT3Z.js → chunk-IU5RSN6M.js} +2 -2
  92. package/dist/cli/chunks/{chunk-XHRLBJTM.js → chunk-J5XDKVI7.js} +2 -2
  93. package/dist/cli/chunks/{chunk-QEVX4GWF.js → chunk-J6PFPY7V.js} +2 -2
  94. package/dist/cli/chunks/{chunk-AE6HXMOG.js → chunk-JATLFS6A.js} +1 -1
  95. package/dist/cli/chunks/{chunk-HJO4RNOW.js → chunk-JBKZ5TUM.js} +2 -2
  96. package/dist/cli/chunks/{chunk-7QTB5XIQ.js → chunk-JDSHUECG.js} +2 -2
  97. package/dist/cli/chunks/{chunk-GRQ36XUH.js → chunk-K4C25BWV.js} +2 -2
  98. package/dist/cli/chunks/{chunk-BMQDELPA.js → chunk-K4I7UIU5.js} +1 -1
  99. package/dist/cli/chunks/{chunk-AJXGGTX7.js → chunk-KP3R2M2G.js} +1 -1
  100. package/dist/cli/chunks/chunk-KQVIWE3W.js +2 -0
  101. package/dist/cli/chunks/{chunk-ZFCVT43J.js → chunk-KVVJVMDM.js} +2 -2
  102. package/dist/cli/chunks/{chunk-WMIRAD3J.js → chunk-LOE2JETO.js} +2 -2
  103. package/dist/cli/chunks/{chunk-54B6P2WS.js → chunk-LPR2R3AN.js} +3 -3
  104. package/dist/cli/chunks/{chunk-EZRHSHOQ.js → chunk-M6FW56MV.js} +2 -2
  105. package/dist/cli/chunks/{chunk-IF3HPQNV.js → chunk-MCHEUSY4.js} +1 -1
  106. package/dist/cli/chunks/{chunk-NBBLPDJX.js → chunk-MEIU7457.js} +2 -2
  107. package/dist/cli/chunks/{chunk-4BFCLSDN.js → chunk-MHMQ6MCT.js} +2 -2
  108. package/dist/cli/chunks/{chunk-UQ72K44T.js → chunk-MIU5RUBJ.js} +2 -2
  109. package/dist/cli/chunks/{chunk-LKURMUBU.js → chunk-MMEXHZUC.js} +37 -12
  110. package/dist/cli/chunks/{chunk-SRVTNG6L.js → chunk-MTBGOWJA.js} +2 -2
  111. package/dist/cli/chunks/{chunk-TPMBFARK.js → chunk-NCSXLMDL.js} +67 -22
  112. package/dist/cli/chunks/{chunk-TU6YN43Q.js → chunk-O7J54OHN.js} +1 -1
  113. package/dist/cli/chunks/{chunk-JCTCM6IR.js → chunk-OGNTCZKK.js} +1 -1
  114. package/dist/cli/chunks/{chunk-FSGMRQFC.js → chunk-OS2HHJTM.js} +2 -2
  115. package/dist/cli/chunks/{chunk-TSWF3AGQ.js → chunk-OS62Y77J.js} +2 -2
  116. package/dist/cli/chunks/{chunk-VQU7DMEY.js → chunk-PVDXNQPL.js} +2 -2
  117. package/dist/cli/chunks/{chunk-DNOU2HVQ.js → chunk-PW72M2FE.js} +2 -2
  118. package/dist/cli/chunks/{chunk-HH6NCBSP.js → chunk-Q5TR6ETB.js} +22 -22
  119. package/dist/cli/chunks/{chunk-PFWJQPUC.js → chunk-QKK7VBVB.js} +2 -2
  120. package/dist/cli/chunks/{chunk-JNQN5DNS.js → chunk-RFLHPLET.js} +1 -1
  121. package/dist/cli/chunks/{chunk-IB3ZPLFA.js → chunk-RJN2RM76.js} +2 -2
  122. package/dist/cli/chunks/{chunk-PEIQDQXN.js → chunk-RKXZLTWR.js} +2 -2
  123. package/dist/cli/chunks/{chunk-5VSQAGA2.js → chunk-SE3JFUKP.js} +1 -1
  124. package/dist/cli/chunks/{chunk-LMJUMUQJ.js → chunk-SK754ZSH.js} +4 -4
  125. package/dist/cli/chunks/{chunk-UCYTY4LG.js → chunk-SO6G4IX3.js} +2 -2
  126. package/dist/cli/chunks/{chunk-ICCTQ5LO.js → chunk-SUL3I6QZ.js} +2 -2
  127. package/dist/cli/chunks/{chunk-G3TFNY4T.js → chunk-TBT3OFRW.js} +2 -2
  128. package/dist/cli/chunks/{chunk-AYGEWPN4.js → chunk-TEIWJ3GJ.js} +1 -1
  129. package/dist/cli/chunks/{chunk-YKSWC7I4.js → chunk-TRNBQFFG.js} +8 -20
  130. package/dist/cli/chunks/{chunk-NSPCZPTB.js → chunk-TTJJ4DQE.js} +2 -2
  131. package/dist/cli/chunks/{chunk-2WPSMQIL.js → chunk-UBI2EOS3.js} +1 -1
  132. package/dist/cli/chunks/{chunk-ADFKY3X2.js → chunk-UBY322ED.js} +2 -2
  133. package/dist/cli/chunks/{chunk-QSDIY3E2.js → chunk-UORTQXJ2.js} +1 -1
  134. package/dist/cli/chunks/{chunk-ODZSQVEW.js → chunk-URP75DL4.js} +1 -1
  135. package/dist/cli/chunks/{chunk-37ZDGJ3H.js → chunk-V6NAB5UZ.js} +1 -1
  136. package/dist/cli/chunks/{chunk-YZ5EQR37.js → chunk-VMFAANWX.js} +2 -2
  137. package/dist/cli/chunks/{chunk-NFJT7XXR.js → chunk-VMWRMINE.js} +1 -1
  138. package/dist/cli/chunks/{chunk-MCT4CD5M.js → chunk-VN2HHBZN.js} +2 -2
  139. package/dist/cli/chunks/{chunk-QMC5MTBV.js → chunk-W72FJA2H.js} +2 -2
  140. package/dist/cli/chunks/chunk-W7TYKPLY.js +27 -0
  141. package/dist/cli/chunks/{chunk-YUHM72VQ.js → chunk-WHHQIL4F.js} +2 -2
  142. package/dist/cli/chunks/{chunk-4YT5YN5G.js → chunk-WMZ2QGGS.js} +2 -2
  143. package/dist/cli/chunks/{chunk-Q7ORVHJB.js → chunk-WPSK237F.js} +3 -3
  144. package/dist/cli/chunks/{chunk-ZYZT2CDX.js → chunk-XKQY2Z3Q.js} +1 -1
  145. package/dist/cli/chunks/{chunk-WNMDWP5A.js → chunk-XLT3FYS7.js} +2 -2
  146. package/dist/cli/chunks/{chunk-U34OZXD6.js → chunk-XT4TDLOB.js} +2 -2
  147. package/dist/cli/chunks/{chunk-6GYGAW53.js → chunk-Y25PO65W.js} +2 -2
  148. package/dist/cli/chunks/{chunk-3SRPFBU7.js → chunk-Y6DWJKHU.js} +3 -3
  149. package/dist/cli/chunks/{chunk-D6CKKNYC.js → chunk-YBPLJRVT.js} +2 -2
  150. package/dist/cli/chunks/{chunk-LLUPRGOR.js → chunk-YFCULQBP.js} +2 -2
  151. package/dist/cli/chunks/{chunk-HT6WAYIR.js → chunk-YGVDP6X7.js} +1 -1
  152. package/dist/cli/chunks/{chunk-RCPD6F4R.js → chunk-YR2JKBZO.js} +2 -2
  153. package/dist/cli/chunks/{chunk-P6S6ZVB5.js → chunk-YZSTZUGJ.js} +1 -1
  154. package/dist/cli/chunks/{chunk-CNF3ZWLM.js → chunk-ZG5UAEEO.js} +2 -2
  155. package/dist/cli/chunks/{chunk-MWFJC5HR.js → chunk-ZLBY25MB.js} +1 -1
  156. package/dist/cli/chunks/chunk-ZMPAM4DY.js +2 -0
  157. package/dist/cli/chunks/{chunk-A4OMK3FO.js → chunk-ZPP57WQU.js} +2 -2
  158. package/dist/cli/chunks/{chunk-U3AVZGQA.js → chunk-ZXEWTZFR.js} +1 -1
  159. package/dist/cli/chunks/{ci-HQCRSCC7.js → ci-CBNVLOOQ.js} +2 -2
  160. package/dist/cli/chunks/{ci-output-YBVXLA6O.js → ci-output-I4HY2FYJ.js} +2 -2
  161. package/dist/cli/chunks/{circuit-breaker-ULGMF2QN.js → circuit-breaker-5VRBKGWL.js} +2 -2
  162. package/dist/cli/chunks/{claude-flow-setup-MKZ2LJXK.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-WZQ6XBWN.js → cline-installer-OFRDUUWZ.js} +2 -2
  165. package/dist/cli/chunks/{code-H3KGH45S.js → code-QIZQVB3E.js} +2 -2
  166. package/dist/cli/chunks/{code-index-extractor-NUVEAJ7C.js → code-index-extractor-LMUUWEX4.js} +2 -2
  167. package/dist/cli/chunks/{codex-installer-JQI6E6CV.js → codex-installer-N2MKIZ2S.js} +2 -2
  168. package/dist/cli/chunks/{completions-NDF4PFE7.js → completions-Y36S3C5J.js} +2 -2
  169. package/dist/cli/chunks/{complexity-analyzer-XCZH66HG.js → complexity-analyzer-73YS3WUD.js} +2 -2
  170. package/dist/cli/chunks/{continuedev-installer-Z4AJGZ7S.js → continuedev-installer-SAOTP6J3.js} +2 -2
  171. package/dist/cli/chunks/{copilot-installer-K4IPAL7C.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-35KXAB23.js → cost-tracker-P26XUVZS.js} +2 -2
  174. package/dist/cli/chunks/{coverage-QW5I4TYZ.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-P4Z7RMIZ.js → cursor-installer-46BQFTYZ.js} +2 -2
  177. package/dist/cli/chunks/{daemon-WQWTCYBM.js → daemon-Y54O3FLT.js} +3 -3
  178. package/dist/cli/chunks/daemon-YE7K2AZF.js +10 -0
  179. package/dist/cli/chunks/{dag-attention-scheduler-7XD2VGON.js → dag-attention-scheduler-ETA7YY52.js} +2 -2
  180. package/dist/cli/chunks/{detect-GZ3P4DI7.js → detect-5WLQ2J3E.js} +2 -2
  181. package/dist/cli/chunks/{dist-node-6WWAW7OP.js → dist-node-45WW6I7J.js} +2 -2
  182. package/dist/cli/chunks/{domain-handler-3GTLWARQ.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-BGIMA77V.js → embed-and-insert-pattern-JELNEA2D.js} +2 -2
  186. package/dist/cli/chunks/{eval-SXV6DRDD.js → eval-A4PA5G2U.js} +2 -2
  187. package/dist/cli/chunks/{experience-capture-middleware-TT6WCT2S.js → experience-capture-middleware-MLHTYWTA.js} +3 -3
  188. package/dist/cli/chunks/{fast-paths-HTAZHEQP.js → fast-paths-QYDTITRV.js} +2 -2
  189. package/dist/cli/chunks/{feature-flags-WBUKU54W.js → feature-flags-H4MSY26Z.js} +2 -2
  190. package/dist/cli/chunks/{feature-flags-DIE3Z2B4.js → feature-flags-MQYYRHIK.js} +2 -2
  191. package/dist/cli/chunks/{file-discovery-SKDETFS3.js → file-discovery-RMFVJNGL.js} +2 -2
  192. package/dist/cli/chunks/{fleet-WCWEPAVU.js → fleet-7KZQOTAC.js} +4 -4
  193. package/dist/cli/chunks/{gnn-wrapper-KWZOWBYS.js → gnn-wrapper-NMZFTGVH.js} +2 -2
  194. package/dist/cli/chunks/{heartbeat-handler-3AGYHVG2.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-6OJJDZHL.js → hnsw-legacy-bridge-TPPGBPKF.js} +2 -2
  199. package/dist/cli/chunks/{better-sqlite3-URULPKRF.js → hnswlib-node-E6NSZPP2.js} +2 -2
  200. package/dist/cli/chunks/{hooks-OXEBTLXV.js → hooks-CYZIUYSH.js} +48 -52
  201. package/dist/cli/chunks/hybrid-router-LXWG4MLH.js +2 -0
  202. package/dist/cli/chunks/{hypergraph-engine-NL74PRHD.js → hypergraph-engine-WC6DMTYQ.js} +2 -2
  203. package/dist/cli/chunks/{hypergraph-handler-KZ54AEEL.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-XKZXRXPG.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-WISQMJK7.js → kilocode-installer-FUX4V6II.js} +2 -2
  209. package/dist/cli/chunks/{kiro-installer-O7TBB3GM.js → kiro-installer-ZSNZT7ZR.js} +2 -2
  210. package/dist/cli/chunks/knowledge-graph-JFVT6SNN.js +2 -0
  211. package/dist/cli/chunks/{learning-6IZBGVRU.js → learning-UQY64COU.js} +3 -3
  212. package/dist/cli/chunks/{llm-router-QDMQPPQ7.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-KLAJJGL5.js → load-E6WH4QN2.js} +2 -2
  215. package/dist/cli/chunks/load-test-JEIFJKNN.js +2 -0
  216. package/dist/cli/chunks/{mcp-SZOPQZIZ.js → mcp-UM5VTW6N.js} +2 -2
  217. package/dist/cli/chunks/{memory-G3WY74C6.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-TDNQGTOT.js → multi-model-executor-LZENWVRR.js} +2 -2
  221. package/dist/cli/chunks/{opencode-installer-NGYGEDMV.js → opencode-installer-O2JAIPLF.js} +2 -2
  222. package/dist/cli/chunks/{orchestrator-KPI5DY2C.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-CSDCC675.js → pipeline-2VDLTR5J.js} +2 -2
  226. package/dist/cli/chunks/{platform-Q5XKEVKH.js → platform-4N4Q5XYX.js} +2 -2
  227. package/dist/cli/chunks/{plugin-XKKR3GVL.js → plugin-GY5AU5CS.js} +2 -2
  228. package/dist/cli/chunks/{prime-radiant-advanced-wasm-22QVNKEN.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-REQKTJGG.js → protocol-handler-T3LZ3WRG.js} +2 -2
  231. package/dist/cli/chunks/{prove-NOFUFSQN.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-3DQ2H5TK.js → quality-AXD4NLQA.js} +2 -2
  235. package/dist/cli/chunks/queen-coordinator-6RBHWCUG.js +2 -0
  236. package/dist/cli/chunks/{real-embeddings-FCGNYWLL.js → real-embeddings-2PUCC7FG.js} +2 -2
  237. package/dist/cli/chunks/{roocode-installer-HX3CNRIR.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-YRZ2LDCR.js → routing-handler-CU6657SZ.js} +2 -2
  241. package/dist/cli/chunks/{ruvector-commands-GCQVBJ4E.js → ruvector-commands-IIF6VSFW.js} +2 -2
  242. package/dist/cli/chunks/{rvf-dual-writer-B562P3ZC.js → rvf-dual-writer-YMQI7XO2.js} +2 -2
  243. package/dist/cli/chunks/{rvf-migration-adapter-NAGFKCMD.js → rvf-migration-adapter-HDE3PR2W.js} +2 -2
  244. package/dist/cli/chunks/{rvf-migration-coordinator-WWFBEJ5Q.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-IFOYTD75.js → security-UM3IGDSM.js} +3 -3
  250. package/dist/cli/chunks/{shared-rvf-adapter-TYD5TQ35.js → shared-rvf-adapter-I3SOJ6M4.js} +2 -2
  251. package/dist/cli/chunks/{shared-rvf-dual-writer-YGOOVDQZ.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-KZI6YMKV.js → structural-health-PYUMVBXJ.js} +2 -2
  255. package/dist/cli/chunks/{sync-Z5BDDBMK.js → sync-2TED3YTY.js} +2 -2
  256. package/dist/cli/chunks/{sync-ABZNNYRC.js → sync-VALFNTA6.js} +2 -2
  257. package/dist/cli/chunks/{task-handler-5ACZEPJ7.js → task-handler-VPGAJVPC.js} +2 -2
  258. package/dist/cli/chunks/{task-handlers-UZWDPL6A.js → task-handlers-IB4UAMU6.js} +3 -3
  259. package/dist/cli/chunks/{test-APO3MCVV.js → test-OMRJOZB6.js} +4 -4
  260. package/dist/cli/chunks/{test-scheduling-EFZA5G5C.js → test-scheduling-ZL3YFPBU.js} +3 -3
  261. package/dist/cli/chunks/{token-bootstrap-J2OPLNUK.js → token-bootstrap-DNWZI7SH.js} +2 -2
  262. package/dist/cli/chunks/{token-usage-VHWVNN4R.js → token-usage-IYO7RGFF.js} +2 -2
  263. package/dist/cli/chunks/{transformers-PX4HPO75.js → transformers-53ALC34T.js} +2 -2
  264. package/dist/cli/chunks/{tree-sitter-wasm-parser-44HA2Z3F.js → tree-sitter-wasm-parser-WUKJ2I2Q.js} +2 -2
  265. package/dist/cli/chunks/{types-IMOP7F4R.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-OZ3O6ZZI.js → upgrade-QPLMJA5Z.js} +2 -2
  270. package/dist/cli/chunks/{validate-DRY5BMWX.js → validate-3GVKZOVF.js} +2 -2
  271. package/dist/cli/chunks/{validate-swarm-QD3LYPUF.js → validate-swarm-XCRTLVM6.js} +2 -2
  272. package/dist/cli/chunks/{vibium-2J3H2ITD.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-KRNUOGKI.js → web-tree-sitter-JDBNAZTV.js} +2 -2
  275. package/dist/cli/chunks/{windsurf-installer-PQIPH3WP.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-HPLOYPS7.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-OAQ3FWCY.js → workflow-43EMD5FY.js} +4 -4
  280. package/dist/cli/chunks/workflow-orchestrator-RKMMPXNA.js +2 -0
  281. package/dist/cli/chunks/{wrappers-UPIU6S5S.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/mincut/queen-integration.js +24 -7
  291. package/dist/coordination/protocol-executor.js +2 -1
  292. package/dist/coordination/queen-lifecycle.js +4 -1
  293. package/dist/domains/code-intelligence/coordinator.js +10 -6
  294. package/dist/domains/code-intelligence/services/product-factors-bridge.js +3 -1
  295. package/dist/domains/defect-intelligence/services/defect-predictor.d.ts +6 -0
  296. package/dist/domains/defect-intelligence/services/defect-predictor.js +21 -0
  297. package/dist/domains/learning-optimization/interfaces.d.ts +7 -0
  298. package/dist/domains/learning-optimization/plugin.js +5 -0
  299. package/dist/domains/learning-optimization/services/learning-coordinator.d.ts +10 -0
  300. package/dist/domains/learning-optimization/services/learning-coordinator.js +57 -0
  301. package/dist/domains/test-execution/plugin.js +2 -2
  302. package/dist/domains/test-execution/services/flaky-detector.js +1 -1
  303. package/dist/domains/test-generation/coordinator.js +22 -8
  304. package/dist/domains/test-generation/interfaces.d.ts +3 -0
  305. package/dist/domains/test-generation/services/test-generator.js +9 -1
  306. package/dist/integrations/ruvector/delta-tracker.js +10 -1
  307. package/dist/integrations/ruvector/sona-persistence.d.ts +24 -0
  308. package/dist/integrations/ruvector/sona-persistence.js +76 -0
  309. package/dist/integrations/ruvector/sona-three-loop.d.ts +15 -0
  310. package/dist/integrations/ruvector/sona-three-loop.js +17 -0
  311. package/dist/kernel/unified-memory-schemas.d.ts +2 -2
  312. package/dist/kernel/unified-memory-schemas.js +48 -2
  313. package/dist/kernel/unified-memory.d.ts +22 -0
  314. package/dist/kernel/unified-memory.js +43 -0
  315. package/dist/learning/aqe-learning-engine.js +3 -1
  316. package/dist/learning/dream/concept-graph.d.ts +31 -1
  317. package/dist/learning/dream/concept-graph.js +109 -3
  318. package/dist/learning/dream/dream-engine.d.ts +13 -1
  319. package/dist/learning/dream/dream-engine.js +146 -10
  320. package/dist/learning/dream/index.d.ts +1 -1
  321. package/dist/learning/dream/types.d.ts +23 -0
  322. package/dist/learning/pattern-store.d.ts +2 -2
  323. package/dist/learning/pattern-store.js +14 -3
  324. package/dist/learning/qe-reasoning-bank.js +34 -31
  325. package/dist/learning/routing-topology-gate.d.ts +12 -2
  326. package/dist/learning/routing-topology-gate.js +15 -3
  327. package/dist/learning/rvf-pattern-store.d.ts +1 -1
  328. package/dist/learning/rvf-pattern-store.js +21 -8
  329. package/dist/learning/sqlite-persistence.js +12 -9
  330. package/dist/mcp/bundle.js +516 -442
  331. package/dist/mcp/qe-tool-bridge.js +7 -2
  332. package/dist/mcp/tools/base.d.ts +29 -0
  333. package/dist/mcp/tools/base.js +25 -0
  334. package/dist/mcp/tools/coverage-analysis/index.js +6 -4
  335. package/dist/mcp/tools/learning-optimization/dream.d.ts +4 -13
  336. package/dist/mcp/tools/learning-optimization/dream.js +10 -96
  337. package/dist/mcp/tools/planning/goap-execute.d.ts +13 -1
  338. package/dist/mcp/tools/planning/goap-execute.js +33 -18
  339. package/dist/mcp/tools/registry.js +7 -2
  340. package/dist/persistence/rvf-migration-coordinator.js +2 -1
  341. package/dist/planning/actions/qe-action-library.js +124 -1
  342. package/dist/planning/goap-planner.d.ts +14 -2
  343. package/dist/planning/goap-planner.js +51 -9
  344. package/dist/planning/index.d.ts +1 -1
  345. package/dist/planning/plan-executor.d.ts +84 -4
  346. package/dist/planning/plan-executor.js +221 -56
  347. package/dist/planning/types.d.ts +27 -0
  348. package/dist/shared/events/domain-events.d.ts +2 -0
  349. package/dist/workers/workers/learning-consolidation.js +21 -1
  350. package/package.json +1 -1
  351. package/dist/cli/chunks/adapter-2HMUXHWY.js +0 -2
  352. package/dist/cli/chunks/aqe-learning-engine-M2NKRVRE.js +0 -2
  353. package/dist/cli/chunks/audit-EPB7ETMT.js +0 -3
  354. package/dist/cli/chunks/base-CCHC2DAC.js +0 -2
  355. package/dist/cli/chunks/brain-handler-FBMYEERK.js +0 -89
  356. package/dist/cli/chunks/browser-workflow-4DGHFYY3.js +0 -2
  357. package/dist/cli/chunks/chunk-5AQ7FXYG.js +0 -27
  358. package/dist/cli/chunks/chunk-KYTFIP6R.js +0 -2
  359. package/dist/cli/chunks/chunk-MYMIEQSZ.js +0 -65
  360. package/dist/cli/chunks/chunk-XXRTWG7O.js +0 -2
  361. package/dist/cli/chunks/chunk-ZSA6V5FH.js +0 -2
  362. package/dist/cli/chunks/client-2OVEDWGU.js +0 -2
  363. package/dist/cli/chunks/core-handlers-UXRRYP52.js +0 -2
  364. package/dist/cli/chunks/cross-domain-router-PV3VQVLO.js +0 -2
  365. package/dist/cli/chunks/daemon-ESUEM6VB.js +0 -10
  366. package/dist/cli/chunks/domain-transfer-TQYO3SVG.js +0 -2
  367. package/dist/cli/chunks/dream-UFUXVJQC.js +0 -2
  368. package/dist/cli/chunks/heartbeat-scheduler-MBG3SARO.js +0 -2
  369. package/dist/cli/chunks/hnsw-adapter-5HXA3QB3.js +0 -2
  370. package/dist/cli/chunks/hnsw-index-PZRQWBRG.js +0 -2
  371. package/dist/cli/chunks/hybrid-router-NQRIE2GG.js +0 -2
  372. package/dist/cli/chunks/impact-analyzer-46347ZDV.js +0 -2
  373. package/dist/cli/chunks/init-wizard-CJYP4WKO.js +0 -2
  374. package/dist/cli/chunks/kernel-22KQZ56U.js +0 -2
  375. package/dist/cli/chunks/knowledge-graph-KM3JDBGR.js +0 -2
  376. package/dist/cli/chunks/llm-router-service-IFO6GRRO.js +0 -2
  377. package/dist/cli/chunks/load-test-TTKCYAPB.js +0 -2
  378. package/dist/cli/chunks/memory-backend-ELHCX2ZT.js +0 -2
  379. package/dist/cli/chunks/memory-handlers-3SKYQZTL.js +0 -2
  380. package/dist/cli/chunks/pattern-null-store-TMXAYD43.js +0 -2
  381. package/dist/cli/chunks/protocol-executor-BPLR5EJC.js +0 -2
  382. package/dist/cli/chunks/provider-manager-4MMD5QKL.js +0 -2
  383. package/dist/cli/chunks/qe-reasoning-bank-P7KNT3WZ.js +0 -2
  384. package/dist/cli/chunks/queen-coordinator-NBZZ4MGC.js +0 -2
  385. package/dist/cli/chunks/router-2RXR6J2Q.js +0 -2
  386. package/dist/cli/chunks/routing-feedback-AVAA76TK.js +0 -2
  387. package/dist/cli/chunks/rvf-native-adapter-X2YDJA55.js +0 -2
  388. package/dist/cli/chunks/safe-db-4PRU65BK.js +0 -2
  389. package/dist/cli/chunks/schedule-2AST5CHW.js +0 -2
  390. package/dist/cli/chunks/scheduler-SW6II7OU.js +0 -2
  391. package/dist/cli/chunks/sqlite-persistence-OB5NEGAK.js +0 -2
  392. package/dist/cli/chunks/status-handler-HFPWSCBY.js +0 -45
  393. package/dist/cli/chunks/unified-memory-X7OJYGSD.js +0 -2
  394. package/dist/cli/chunks/unified-memory-hnsw-O6HOD5YL.js +0 -2
  395. package/dist/cli/chunks/unified-persistence-C332CER2.js +0 -2
  396. package/dist/cli/chunks/visual-security-MPUG5HPI.js +0 -2
  397. package/dist/cli/chunks/witness-chain-Q4BZHPDF.js +0 -2
  398. package/dist/cli/chunks/workflow-orchestrator-4NDWECYK.js +0 -2
@@ -13,6 +13,15 @@
13
13
  */
14
14
  import type { GOAPPlan, ExecutionStep, V3WorldState } from './types.js';
15
15
  import type { GOAPPlanner } from './goap-planner.js';
16
+ import type { DomainName } from '../shared/types/index.js';
17
+ /**
18
+ * A14: resolves a real, initialized domain plugin's public API — the same
19
+ * shape `Kernel.getDomainAPI<T>()` returns and `DefaultProtocolExecutor`
20
+ * dispatches through. Returns undefined when the domain isn't loaded/no
21
+ * kernel is available; PlanExecutor must degrade to a clear "not
22
+ * available" error, never a fabricated result, when this returns undefined.
23
+ */
24
+ export type GetDomainAPIFn = (domain: DomainName) => unknown | undefined;
16
25
  /**
17
26
  * Configuration for plan execution
18
27
  */
@@ -34,6 +43,16 @@ export interface ExecutionConfig {
34
43
  * @default true
35
44
  */
36
45
  useUnified: boolean;
46
+ /**
47
+ * A14: when true, every step is simulated via the injected AgentSpawner
48
+ * regardless of an action's `implemented` flag — for previews/testing.
49
+ * When false (default), implemented actions dispatch to a real domain API
50
+ * method (via the constructor's `getDomainAPI`); actions with no real
51
+ * binding return a clear "not implemented" failure rather than a
52
+ * simulated success.
53
+ * @default false
54
+ */
55
+ dryRun: boolean;
37
56
  }
38
57
  /**
39
58
  * Result of executing a complete plan
@@ -118,6 +137,18 @@ export interface AgentSpawner {
118
137
  * ```
119
138
  */
120
139
  export declare class PlanExecutor {
140
+ /**
141
+ * A14: resolves real domain plugin APIs, mirroring
142
+ * DefaultProtocolExecutor's constructor-injected getDomainAPI. When
143
+ * provided (non-undefined), `implemented: true` actions dispatch to a
144
+ * real domain method instead of the simulated `spawner` — this is an
145
+ * opt-in so every EXISTING caller/test that constructs a PlanExecutor
146
+ * without this param keeps its current (simulated) behavior unchanged.
147
+ * `implemented: false` actions always fail clearly regardless of this
148
+ * param — fabricating success for a known-unimplemented action is
149
+ * exactly the problem this exists to eliminate.
150
+ */
151
+ private readonly getDomainAPI?;
121
152
  private db;
122
153
  private planner;
123
154
  private spawner;
@@ -133,13 +164,32 @@ export declare class PlanExecutor {
133
164
  * @param dbPath - Path to SQLite database (defaults to in-memory, ignored if useUnified=true)
134
165
  * @param config - Execution configuration options
135
166
  */
136
- constructor(planner: GOAPPlanner, spawner: AgentSpawner, dbPath?: string, config?: Partial<ExecutionConfig>);
167
+ constructor(planner: GOAPPlanner, spawner: AgentSpawner, dbPath?: string, config?: Partial<ExecutionConfig>,
168
+ /**
169
+ * A14: resolves real domain plugin APIs, mirroring
170
+ * DefaultProtocolExecutor's constructor-injected getDomainAPI. When
171
+ * provided (non-undefined), `implemented: true` actions dispatch to a
172
+ * real domain method instead of the simulated `spawner` — this is an
173
+ * opt-in so every EXISTING caller/test that constructs a PlanExecutor
174
+ * without this param keeps its current (simulated) behavior unchanged.
175
+ * `implemented: false` actions always fail clearly regardless of this
176
+ * param — fabricating success for a known-unimplemented action is
177
+ * exactly the problem this exists to eliminate.
178
+ */
179
+ getDomainAPI?: GetDomainAPIFn | undefined);
137
180
  /**
138
181
  * Initialize the executor - creates database tables
139
182
  */
140
183
  initialize(): Promise<void>;
141
184
  /**
142
- * Create execution tracking tables
185
+ * Create execution tracking tables.
186
+ *
187
+ * A14: previously invented parallel execution_results/executed_steps
188
+ * tables with no relationship to the canonical schema. Now uses the same
189
+ * goap_execution_steps table the unified-storage path relies on (created
190
+ * via unified-memory-schemas.ts's GOAP_SCHEMA + v11 migration) — this
191
+ * legacy (non-unified) path just needs to create it directly since it
192
+ * doesn't go through that migration chain.
143
193
  */
144
194
  private createTables;
145
195
  /**
@@ -164,6 +214,16 @@ export declare class PlanExecutor {
164
214
  * Execute a single step
165
215
  */
166
216
  private executeStep;
217
+ /**
218
+ * A14: dispatch an `implemented: true` action to its real domain API
219
+ * method — mirrors DefaultProtocolExecutor.executeAction()'s resolve →
220
+ * lookup → invoke pattern, but for GOAPActions instead of ProtocolActions.
221
+ * Every non-success path returns a clear, specific reason (no domain
222
+ * loaded, no such method, threw, timed out) rather than a generic
223
+ * failure — this is what a user should see instead of a fabricated
224
+ * `successRate: 0.95` roll.
225
+ */
226
+ private executeRealAction;
167
227
  /**
168
228
  * Build a task description for an agent
169
229
  */
@@ -186,19 +246,39 @@ export declare class PlanExecutor {
186
246
  */
187
247
  isExecuting(): boolean;
188
248
  /**
189
- * Get execution history
249
+ * Get execution history.
250
+ *
251
+ * A14: reconstructed from goap_execution_steps (grouped by execution_id)
252
+ * instead of read from an invented execution_results table. The
253
+ * execution-level `status` is derived, not stored directly — steps don't
254
+ * carry an execution-level concept of 'partial' (a replan-specific
255
+ * in-memory result of executeWithCallbacks' recursion), so a replanned
256
+ * execution that ultimately succeeded may read back here as 'completed'
257
+ * rather than 'partial'. 'cancelled' is inferred from recording fewer
258
+ * steps than the plan called for; 'failed' takes priority when any step
259
+ * failed.
190
260
  *
191
261
  * @param planId - Filter by plan ID (optional)
192
262
  * @param limit - Maximum number of results (default: 100)
193
263
  * @returns Array of execution results
194
264
  */
195
265
  getExecutionHistory(planId?: string, limit?: number): Promise<ExecutionResult[]>;
266
+ /** Number of actions in a saved plan, or null if the plan can't be found/parsed. */
267
+ private getPlannedActionCount;
196
268
  /**
197
269
  * Get executed steps for an execution
198
270
  */
199
271
  private getExecutedSteps;
200
272
  /**
201
- * Persist execution result to database
273
+ * Persist execution result to database.
274
+ *
275
+ * A14: writes to the canonical goap_execution_steps table (one row per
276
+ * step per execution attempt, grouped by executionId) instead of an
277
+ * invented execution_results/executed_steps pair. The execution-level
278
+ * summary (status/timing) that execution_results used to hold now lives
279
+ * on goap_plans itself — status/executed_at/completed_at were already
280
+ * part of that table's schema but never actually written by anything
281
+ * before this fix.
202
282
  */
203
283
  private persistExecutionResult;
204
284
  /**
@@ -27,7 +27,23 @@ const DEFAULT_CONFIG = {
27
27
  parallelExecution: false,
28
28
  recordWorldState: true,
29
29
  useUnified: true, // ADR-046: Default to unified storage
30
+ dryRun: false, // A14: real dispatch is the default going forward
30
31
  };
32
+ /**
33
+ * A14: safely render a real domain method's return value into
34
+ * ExecutedStep.agentOutput (a string field). Truncates to keep large
35
+ * results (e.g. a full coverage report) out of the execution log; never
36
+ * throws on circular references or non-serializable values.
37
+ */
38
+ function safeStringify(value, maxLength = 2000) {
39
+ try {
40
+ const str = typeof value === 'string' ? value : JSON.stringify(value);
41
+ return str.length > maxLength ? `${str.slice(0, maxLength)}...(truncated)` : str;
42
+ }
43
+ catch {
44
+ return String(value);
45
+ }
46
+ }
31
47
  // ============================================================================
32
48
  // Plan Executor Class
33
49
  // ============================================================================
@@ -50,6 +66,7 @@ const DEFAULT_CONFIG = {
50
66
  * ```
51
67
  */
52
68
  export class PlanExecutor {
69
+ getDomainAPI;
53
70
  db;
54
71
  planner;
55
72
  spawner;
@@ -65,7 +82,20 @@ export class PlanExecutor {
65
82
  * @param dbPath - Path to SQLite database (defaults to in-memory, ignored if useUnified=true)
66
83
  * @param config - Execution configuration options
67
84
  */
68
- constructor(planner, spawner, dbPath, config) {
85
+ constructor(planner, spawner, dbPath, config,
86
+ /**
87
+ * A14: resolves real domain plugin APIs, mirroring
88
+ * DefaultProtocolExecutor's constructor-injected getDomainAPI. When
89
+ * provided (non-undefined), `implemented: true` actions dispatch to a
90
+ * real domain method instead of the simulated `spawner` — this is an
91
+ * opt-in so every EXISTING caller/test that constructs a PlanExecutor
92
+ * without this param keeps its current (simulated) behavior unchanged.
93
+ * `implemented: false` actions always fail clearly regardless of this
94
+ * param — fabricating success for a known-unimplemented action is
95
+ * exactly the problem this exists to eliminate.
96
+ */
97
+ getDomainAPI) {
98
+ this.getDomainAPI = getDomainAPI;
69
99
  this.planner = planner;
70
100
  this.spawner = spawner;
71
101
  this.config = { ...DEFAULT_CONFIG, ...config };
@@ -110,49 +140,39 @@ export class PlanExecutor {
110
140
  this.initialized = true;
111
141
  }
112
142
  /**
113
- * Create execution tracking tables
143
+ * Create execution tracking tables.
144
+ *
145
+ * A14: previously invented parallel execution_results/executed_steps
146
+ * tables with no relationship to the canonical schema. Now uses the same
147
+ * goap_execution_steps table the unified-storage path relies on (created
148
+ * via unified-memory-schemas.ts's GOAP_SCHEMA + v11 migration) — this
149
+ * legacy (non-unified) path just needs to create it directly since it
150
+ * doesn't go through that migration chain.
114
151
  */
115
152
  createTables() {
116
- // Execution results table
117
153
  this.db.exec(`
118
- CREATE TABLE IF NOT EXISTS execution_results (
154
+ CREATE TABLE IF NOT EXISTS goap_execution_steps (
119
155
  id TEXT PRIMARY KEY,
120
156
  plan_id TEXT NOT NULL,
121
- status TEXT NOT NULL,
122
- steps_completed INTEGER DEFAULT 0,
123
- steps_failed INTEGER DEFAULT 0,
124
- total_duration_ms INTEGER DEFAULT 0,
125
- final_world_state TEXT,
126
- error_message TEXT,
127
- created_at TEXT DEFAULT (datetime('now'))
128
- )
129
- `);
130
- // Executed steps table
131
- this.db.exec(`
132
- CREATE TABLE IF NOT EXISTS executed_steps (
133
- id TEXT PRIMARY KEY,
134
157
  execution_id TEXT NOT NULL,
135
- plan_id TEXT NOT NULL,
136
158
  action_id TEXT NOT NULL,
137
159
  step_order INTEGER NOT NULL,
138
- status TEXT NOT NULL,
160
+ world_state_before TEXT,
161
+ world_state_after TEXT,
162
+ status TEXT NOT NULL DEFAULT 'pending',
139
163
  retries INTEGER DEFAULT 0,
140
- started_at TEXT NOT NULL,
141
- completed_at TEXT,
164
+ started_at TEXT,
142
165
  duration_ms INTEGER,
143
166
  agent_id TEXT,
144
167
  agent_output TEXT,
145
- world_state_before TEXT,
146
- world_state_after TEXT,
147
168
  error_message TEXT,
148
- FOREIGN KEY (execution_id) REFERENCES execution_results(id)
169
+ created_at TEXT DEFAULT (datetime('now'))
149
170
  )
150
171
  `);
151
- // Indexes
152
172
  this.db.exec(`
153
- CREATE INDEX IF NOT EXISTS idx_exec_results_plan ON execution_results(plan_id);
154
- CREATE INDEX IF NOT EXISTS idx_exec_steps_execution ON executed_steps(execution_id);
155
- CREATE INDEX IF NOT EXISTS idx_exec_steps_action ON executed_steps(action_id);
173
+ CREATE INDEX IF NOT EXISTS idx_goap_exec_steps_plan ON goap_execution_steps(plan_id);
174
+ CREATE INDEX IF NOT EXISTS idx_goap_exec_steps_execution ON goap_execution_steps(execution_id);
175
+ CREATE INDEX IF NOT EXISTS idx_goap_exec_steps_action ON goap_execution_steps(action_id);
156
176
  `);
157
177
  }
158
178
  // ==========================================================================
@@ -316,6 +336,25 @@ export class PlanExecutor {
316
336
  error: `Preconditions not met for action: ${action.name}`,
317
337
  };
318
338
  }
339
+ // A14: an action explicitly marked as having no real domain backing
340
+ // must never report a fabricated success — regardless of dryRun or
341
+ // whether a kernel is available. This is the actual fix for the "mock
342
+ // executor fabricates successRate: 0.95 results indistinguishable from
343
+ // real execution" problem: known-unimplemented actions now fail
344
+ // honestly instead of rolling dice.
345
+ if (action.implemented === false) {
346
+ return {
347
+ success: false,
348
+ newState: currentState,
349
+ error: `Action '${action.name}' has no real implementation yet (not simulated — see GOAPAction.implemented)`,
350
+ };
351
+ }
352
+ // A14: real dispatch — opt-in via constructor-injected getDomainAPI
353
+ // (mirrors DefaultProtocolExecutor). Existing callers that construct a
354
+ // PlanExecutor without it keep today's simulated behavior unchanged.
355
+ if (!this.config.dryRun && this.getDomainAPI && action.implemented === true) {
356
+ return this.executeRealAction(action, currentState);
357
+ }
319
358
  // Build task description
320
359
  const taskDescription = this.buildTaskDescription(action);
321
360
  try {
@@ -350,6 +389,76 @@ export class PlanExecutor {
350
389
  };
351
390
  }
352
391
  }
392
+ /**
393
+ * A14: dispatch an `implemented: true` action to its real domain API
394
+ * method — mirrors DefaultProtocolExecutor.executeAction()'s resolve →
395
+ * lookup → invoke pattern, but for GOAPActions instead of ProtocolActions.
396
+ * Every non-success path returns a clear, specific reason (no domain
397
+ * loaded, no such method, threw, timed out) rather than a generic
398
+ * failure — this is what a user should see instead of a fabricated
399
+ * `successRate: 0.95` roll.
400
+ */
401
+ async executeRealAction(action, currentState) {
402
+ if (!action.qeDomain) {
403
+ return {
404
+ success: false,
405
+ newState: currentState,
406
+ error: `Action '${action.name}' has no qeDomain to resolve a real API from`,
407
+ };
408
+ }
409
+ if (!action.method) {
410
+ return {
411
+ success: false,
412
+ newState: currentState,
413
+ error: `Action '${action.name}' is marked implemented but has no method binding`,
414
+ };
415
+ }
416
+ let api;
417
+ try {
418
+ api = this.getDomainAPI(action.qeDomain);
419
+ }
420
+ catch (error) {
421
+ return {
422
+ success: false,
423
+ newState: currentState,
424
+ error: `Failed to resolve domain '${action.qeDomain}': ${toErrorMessage(error)}`,
425
+ };
426
+ }
427
+ if (!api) {
428
+ return {
429
+ success: false,
430
+ newState: currentState,
431
+ error: `Domain '${action.qeDomain}' is not available (kernel not initialized, or the domain isn't loaded — try fleet_init)`,
432
+ };
433
+ }
434
+ const method = api[action.method];
435
+ if (typeof method !== 'function') {
436
+ return {
437
+ success: false,
438
+ newState: currentState,
439
+ error: `Domain '${action.qeDomain}' has no method '${action.method}'`,
440
+ };
441
+ }
442
+ try {
443
+ const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error(`Step timeout after ${this.config.stepTimeoutMs}ms`)), this.config.stepTimeoutMs));
444
+ const invokePromise = method.call(api, action.params ?? {});
445
+ const result = await Promise.race([invokePromise, timeoutPromise]);
446
+ const newState = this.applyEffects(currentState, action.effects);
447
+ return {
448
+ success: true,
449
+ newState,
450
+ output: safeStringify(result),
451
+ agentId: `domain:${action.qeDomain}`,
452
+ };
453
+ }
454
+ catch (error) {
455
+ return {
456
+ success: false,
457
+ newState: currentState,
458
+ error: toErrorMessage(error),
459
+ };
460
+ }
461
+ }
353
462
  /**
354
463
  * Build a task description for an agent
355
464
  */
@@ -420,7 +529,17 @@ export class PlanExecutor {
420
529
  // Execution History
421
530
  // ==========================================================================
422
531
  /**
423
- * Get execution history
532
+ * Get execution history.
533
+ *
534
+ * A14: reconstructed from goap_execution_steps (grouped by execution_id)
535
+ * instead of read from an invented execution_results table. The
536
+ * execution-level `status` is derived, not stored directly — steps don't
537
+ * carry an execution-level concept of 'partial' (a replan-specific
538
+ * in-memory result of executeWithCallbacks' recursion), so a replanned
539
+ * execution that ultimately succeeded may read back here as 'completed'
540
+ * rather than 'partial'. 'cancelled' is inferred from recording fewer
541
+ * steps than the plan called for; 'failed' takes priority when any step
542
+ * failed.
424
543
  *
425
544
  * @param planId - Filter by plan ID (optional)
426
545
  * @param limit - Maximum number of results (default: 100)
@@ -428,37 +547,65 @@ export class PlanExecutor {
428
547
  */
429
548
  async getExecutionHistory(planId, limit = 100) {
430
549
  await this.initialize();
431
- let query = 'SELECT * FROM execution_results';
550
+ let query = `
551
+ SELECT
552
+ execution_id,
553
+ plan_id,
554
+ MIN(created_at) as started_at,
555
+ SUM(CASE WHEN status = 'completed' THEN 1 ELSE 0 END) as steps_completed,
556
+ SUM(CASE WHEN status = 'failed' THEN 1 ELSE 0 END) as steps_failed,
557
+ SUM(COALESCE(duration_ms, 0)) as total_duration_ms,
558
+ COUNT(*) as steps_recorded,
559
+ MAX(CASE WHEN status = 'failed' THEN error_message END) as last_error
560
+ FROM goap_execution_steps
561
+ `;
432
562
  const params = [];
433
563
  if (planId) {
434
564
  query += ' WHERE plan_id = ?';
435
565
  params.push(planId);
436
566
  }
437
- query += ' ORDER BY created_at DESC LIMIT ?';
567
+ query += ' GROUP BY execution_id, plan_id ORDER BY started_at DESC LIMIT ?';
438
568
  params.push(limit);
439
569
  const rows = this.db.prepare(query).all(...params);
440
570
  return Promise.all(rows.map(async (row) => {
441
- const steps = await this.getExecutedSteps(row.id);
571
+ const steps = await this.getExecutedSteps(row.execution_id);
572
+ const finalWorldState = [...steps].reverse().find((s) => s.worldStateAfter)?.worldStateAfter;
573
+ const plannedStepCount = this.getPlannedActionCount(row.plan_id);
574
+ let status;
575
+ if (row.steps_failed > 0)
576
+ status = 'failed';
577
+ else if (plannedStepCount != null && row.steps_recorded < plannedStepCount)
578
+ status = 'cancelled';
579
+ else
580
+ status = 'completed';
442
581
  return {
443
582
  planId: row.plan_id,
444
- status: row.status,
583
+ status,
445
584
  stepsCompleted: row.steps_completed,
446
585
  stepsFailed: row.steps_failed,
447
586
  totalDurationMs: row.total_duration_ms,
448
- finalWorldState: row.final_world_state
449
- ? safeJsonParse(row.final_world_state)
450
- : undefined,
451
- error: row.error_message ?? undefined,
587
+ finalWorldState,
588
+ error: row.last_error ?? undefined,
452
589
  steps,
453
590
  };
454
591
  }));
455
592
  }
593
+ /** Number of actions in a saved plan, or null if the plan can't be found/parsed. */
594
+ getPlannedActionCount(planId) {
595
+ const row = this.db
596
+ .prepare('SELECT action_sequence FROM goap_plans WHERE id = ?')
597
+ .get(planId);
598
+ if (!row)
599
+ return null;
600
+ const actionIds = safeJsonParse(row.action_sequence);
601
+ return Array.isArray(actionIds) ? actionIds.length : null;
602
+ }
456
603
  /**
457
604
  * Get executed steps for an execution
458
605
  */
459
606
  async getExecutedSteps(executionId) {
460
607
  const rows = this.db
461
- .prepare(`SELECT * FROM executed_steps WHERE execution_id = ? ORDER BY step_order`)
608
+ .prepare(`SELECT * FROM goap_execution_steps WHERE execution_id = ? ORDER BY step_order`)
462
609
  .all(executionId);
463
610
  return rows.map((row) => ({
464
611
  id: row.id,
@@ -480,8 +627,10 @@ export class PlanExecutor {
480
627
  agentId: row.agent_id ?? undefined,
481
628
  error: row.error_message ?? undefined,
482
629
  retries: row.retries,
483
- startedAt: new Date(row.started_at),
484
- completedAt: row.completed_at ? new Date(row.completed_at) : undefined,
630
+ startedAt: row.started_at ? new Date(row.started_at) : new Date(row.created_at),
631
+ completedAt: row.started_at && row.duration_ms != null
632
+ ? new Date(new Date(row.started_at).getTime() + row.duration_ms)
633
+ : undefined,
485
634
  agentOutput: row.agent_output ?? undefined,
486
635
  worldStateBefore: row.world_state_before
487
636
  ? safeJsonParse(row.world_state_before)
@@ -495,28 +644,44 @@ export class PlanExecutor {
495
644
  // Persistence
496
645
  // ==========================================================================
497
646
  /**
498
- * Persist execution result to database
647
+ * Persist execution result to database.
648
+ *
649
+ * A14: writes to the canonical goap_execution_steps table (one row per
650
+ * step per execution attempt, grouped by executionId) instead of an
651
+ * invented execution_results/executed_steps pair. The execution-level
652
+ * summary (status/timing) that execution_results used to hold now lives
653
+ * on goap_plans itself — status/executed_at/completed_at were already
654
+ * part of that table's schema but never actually written by anything
655
+ * before this fix.
499
656
  */
500
657
  async persistExecutionResult(executionId, result) {
501
- // Insert execution result
502
- this.db
503
- .prepare(`
504
- INSERT INTO execution_results (
505
- id, plan_id, status, steps_completed, steps_failed,
506
- total_duration_ms, final_world_state, error_message
507
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
508
- `)
509
- .run(executionId, result.planId, result.status, result.stepsCompleted, result.stepsFailed, result.totalDurationMs, result.finalWorldState ? JSON.stringify(result.finalWorldState) : null, result.error ?? null);
510
- // Insert executed steps
511
658
  const insertStep = this.db.prepare(`
512
- INSERT INTO executed_steps (
513
- id, execution_id, plan_id, action_id, step_order, status,
514
- retries, started_at, completed_at, duration_ms, agent_id,
659
+ INSERT INTO goap_execution_steps (
660
+ id, plan_id, execution_id, action_id, step_order, status,
661
+ retries, started_at, duration_ms, agent_id,
515
662
  agent_output, world_state_before, world_state_after, error_message
516
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
663
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
517
664
  `);
518
665
  for (const step of result.steps) {
519
- insertStep.run(step.id, executionId, step.planId, step.action.id, step.stepOrder, step.status, step.retries, step.startedAt.toISOString(), step.completedAt?.toISOString() ?? null, step.durationMs ?? null, step.agentId ?? null, step.agentOutput ?? null, step.worldStateBefore ? JSON.stringify(step.worldStateBefore) : null, step.worldStateAfter ? JSON.stringify(step.worldStateAfter) : null, step.error ?? null);
666
+ insertStep.run(step.id, step.planId, executionId, step.action.id, step.stepOrder, step.status, step.retries, step.startedAt.toISOString(), step.durationMs ?? null, step.agentId ?? null, step.agentOutput ?? null, step.worldStateBefore ? JSON.stringify(step.worldStateBefore) : null, step.worldStateAfter ? JSON.stringify(step.worldStateAfter) : null, step.error ?? null);
667
+ }
668
+ // Reflects only the most recent execution attempt for this plan — a
669
+ // deliberate, documented scope limit: goap_plans is one row per plan,
670
+ // not per attempt. Full per-attempt history remains queryable via
671
+ // goap_execution_steps grouped by execution_id (see getExecutionHistory).
672
+ try {
673
+ this.db.prepare(`
674
+ UPDATE goap_plans SET status = ?, executed_at = COALESCE(executed_at, ?), completed_at = ?
675
+ WHERE id = ?
676
+ `).run(result.status === 'completed' ? 'completed'
677
+ : result.status === 'cancelled' ? 'cancelled'
678
+ : 'failed', new Date(Date.now() - result.totalDurationMs).toISOString(), new Date().toISOString(), result.planId);
679
+ }
680
+ catch (error) {
681
+ // Best-effort — a plan row might not exist yet in edge cases (e.g.
682
+ // executing a plan object that was never saved). Must not fail the
683
+ // execution result the caller is waiting on.
684
+ console.warn('[PlanExecutor] Failed to update goap_plans status (non-fatal):', error);
520
685
  }
521
686
  }
522
687
  /**
@@ -123,6 +123,27 @@ export interface GOAPAction {
123
123
  category: 'test' | 'security' | 'performance' | 'analysis' | 'coverage' | 'fleet' | 'quality';
124
124
  /** QE domain this action belongs to */
125
125
  qeDomain?: QEDomain;
126
+ /**
127
+ * A14: real domain API method to invoke when this action is executed —
128
+ * `kernel.getDomainAPI(qeDomain)[method](params)`, mirroring how
129
+ * DefaultProtocolExecutor dispatches ProtocolActions. Undefined when
130
+ * `implemented` is not true.
131
+ */
132
+ method?: string;
133
+ /**
134
+ * Static params template passed to `method`. GOAP actions are abstract
135
+ * plan steps (not bound to concrete files/targets at definition time),
136
+ * so this is often `{}` — many real domain methods need runtime context
137
+ * a plan step doesn't carry, and will legitimately error on missing
138
+ * required params rather than being fabricated a plausible-looking value.
139
+ */
140
+ params?: Record<string, unknown>;
141
+ /**
142
+ * True only when `method` names a real, non-stub domain API method.
143
+ * Actions without a real implementation MUST report "not implemented"
144
+ * when executed, not a fabricated success/failure — see GOAPExecutor.
145
+ */
146
+ implemented?: boolean;
126
147
  }
127
148
  /**
128
149
  * GOAP Goal - Target state to achieve through planning
@@ -240,6 +261,12 @@ export interface GOAPActionRecord {
240
261
  qe_domain: string | null;
241
262
  created_at: string;
242
263
  updated_at: string;
264
+ /** A14: real domain API method binding, null when not implemented */
265
+ method: string | null;
266
+ /** A14: JSON params template */
267
+ params: string | null;
268
+ /** A14: 1 when `method` is a real (non-stub) domain API binding, else 0 */
269
+ implemented: number;
243
270
  }
244
271
  /**
245
272
  * Database record for goap_plans table
@@ -10,6 +10,8 @@ export interface TestGeneratedPayload {
10
10
  framework: string;
11
11
  sourceFile: string;
12
12
  testType: 'unit' | 'integration' | 'e2e' | 'property';
13
+ /** ReasoningBank pattern IDs applied across the generation request (ADR-110). */
14
+ patternsUsed?: string[];
13
15
  }
14
16
  export interface TestSuiteCreatedPayload {
15
17
  suiteId: string;
@@ -17,11 +17,12 @@ import { ALL_DOMAINS } from '../../shared/types';
17
17
  import { TimeRange } from '../../shared/value-objects/index.js';
18
18
  import { DreamEngine } from '../../learning/dream/index.js';
19
19
  import { createPatternLifecycleManager, } from '../../learning/pattern-lifecycle.js';
20
- import { getUnifiedMemory } from '../../kernel/unified-memory.js';
20
+ import { getUnifiedMemory, findProjectRoot } from '../../kernel/unified-memory.js';
21
21
  import { toErrorMessage } from '../../shared/error-utils.js';
22
22
  import { ExperienceConsolidator } from '../../learning/experience-consolidation.js';
23
23
  import { recordLoopHealth } from '../../learning/loop-health.js';
24
24
  import { pruneStaleDreamInsights } from '../../learning/dream/dream-insights-pruner.js';
25
+ import { createLearningMetricsTracker } from '../../learning/metrics-tracker.js';
25
26
  const CONFIG = {
26
27
  id: 'learning-consolidation',
27
28
  name: 'Learning Consolidation',
@@ -202,6 +203,25 @@ export class LearningConsolidationWorker extends BaseWorker {
202
203
  error: recordErr instanceof Error ? recordErr.message : String(recordErr),
203
204
  });
204
205
  }
206
+ // A18: learning_daily_snapshots previously only populated via the
207
+ // manual `aqe learning dashboard --save-snapshot` flag — it never
208
+ // advanced on its own. Piggyback on this worker's existing ~30-min
209
+ // cadence instead of adding a new timer. Best-effort, own DB handle
210
+ // closed every tick (LearningMetricsTracker opens a connection
211
+ // separate from the shared unified-memory one context.memory uses).
212
+ const tracker = createLearningMetricsTracker(findProjectRoot());
213
+ try {
214
+ await tracker.initialize();
215
+ await tracker.saveSnapshot();
216
+ }
217
+ catch (snapshotErr) {
218
+ context.logger.warn('learning_daily_snapshots saveSnapshot failed (non-fatal)', {
219
+ error: snapshotErr instanceof Error ? snapshotErr.message : String(snapshotErr),
220
+ });
221
+ }
222
+ finally {
223
+ tracker.close();
224
+ }
205
225
  }
206
226
  }
207
227
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentic-qe",
3
- "version": "3.11.4",
3
+ "version": "3.11.5",
4
4
  "description": "Agentic Quality Engineering V3 - Domain-Driven Design Architecture with 13 Bounded Contexts, O(log n) coverage analysis, ReasoningBank learning, 60 specialized QE agents, mathematical Coherence verification, deep Claude Flow integration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,2 +0,0 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.11.4");process.exit(0)}
2
- import{a,b,c}from"./chunk-N2BJN6AO.js";import"./chunk-6JUOH6L4.js";import"./chunk-AYGEWPN4.js";import"./chunk-VJGHRWMH.js";import"./chunk-PEIQDQXN.js";import"./chunk-Y4AXOHW4.js";export{a as AgentBoosterAdapter,b as createAgentBoosterAdapter,c as createAgentBoosterAdapterSync};
@@ -1,2 +0,0 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.11.4");process.exit(0)}
2
- import{a,b,c,d,e,f}from"./chunk-3SRPFBU7.js";import"./chunk-QEVX4GWF.js";import"./chunk-HWBMYR5W.js";import"./chunk-QSDIY3E2.js";import"./chunk-MYMIEQSZ.js";import"./chunk-DNOU2HVQ.js";import"./chunk-2WPSMQIL.js";import"./chunk-IF3HPQNV.js";import"./chunk-HT6WAYIR.js";import"./chunk-HJO4RNOW.js";import"./chunk-5AQ7FXYG.js";import"./chunk-YNK6SUPU.js";import"./chunk-YKSWC7I4.js";import"./chunk-54B6P2WS.js";import"./chunk-TPMBFARK.js";import"./chunk-LW5DHT3Z.js";import"./chunk-XXRTWG7O.js";import"./chunk-6GYGAW53.js";import"./chunk-LLUPRGOR.js";import"./chunk-VJGHRWMH.js";import"./chunk-IB3ZPLFA.js";import"./chunk-TSWF3AGQ.js";import"./chunk-NSPCZPTB.js";import"./chunk-O7PVZ32A.js";import"./chunk-PEIQDQXN.js";import"./chunk-BMQDELPA.js";import"./chunk-TCWR6TDN.js";import"./chunk-YUHM72VQ.js";import"./chunk-PQUXFSN6.js";import"./chunk-7AWK43JN.js";import"./chunk-VCUCD3B5.js";import"./chunk-QJ5NCYJ3.js";import"./chunk-TQ373GGI.js";import"./chunk-7QTB5XIQ.js";import"./chunk-7ADD2ZQL.js";import"./chunk-Y4AXOHW4.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};
@@ -1,3 +0,0 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.11.4");process.exit(0)}
2
- import{d as c,e as u,f as h,g as m}from"./chunk-BRLUNIR4.js";import{m as p}from"./chunk-TPMBFARK.js";import"./chunk-LW5DHT3Z.js";import"./chunk-XXRTWG7O.js";import"./chunk-6GYGAW53.js";import{b as s}from"./chunk-LLUPRGOR.js";import"./chunk-VJGHRWMH.js";import"./chunk-NSPCZPTB.js";import"./chunk-PEIQDQXN.js";import"./chunk-TCWR6TDN.js";import{p as l,q as d}from"./chunk-YUHM72VQ.js";import"./chunk-PQUXFSN6.js";import"./chunk-7AWK43JN.js";import"./chunk-VCUCD3B5.js";import"./chunk-QJ5NCYJ3.js";import"./chunk-TQ373GGI.js";import"./chunk-7QTB5XIQ.js";import"./chunk-7ADD2ZQL.js";import{g as f}from"./chunk-Y4AXOHW4.js";import{Command as g}from"commander";import a from"chalk";p();import{existsSync as y}from"node:fs";import b from"node:path";function C(n,i){let t=[];t.push(a.bold("Witness Chain Audit Verification")),t.push("");let e=i?a.green("ENABLED"):a.yellow("DISABLED");t.push(` Feature Flag: ${e}`),t.push(` Chain Length: ${n.length} receipts`);let r=n.valid?a.green("VALID"):a.red("BROKEN");return t.push(` Integrity: ${r}`),n.length>0&&t.push(` Last Hash: ${n.lastHash.slice(0,16)}...`),!n.valid&&n.brokenAt>=0&&(t.push(""),t.push(a.red(` Break detected at index ${n.brokenAt}`)),t.push(a.red(` ${n.message}`))),t.push(""),t.join(`
3
- `)}function x(){try{let n=s(),i=b.join(n,".agentic-qe","memory.db");if(!y(i))return null;let t=(d(),f(l)),e=new t(i),r=c(e),o=h(r);return e.close(),o}catch{return null}}async function A(n){let i=m(),e=(x()??u()).verifyChain(),r={featureEnabled:i,chainLength:e.length,integrity:e.valid,brokenAt:e.brokenAt,lastHash:e.lastHash,message:e.message};return n.format==="json"?console.log(JSON.stringify(r,null,2)):console.log(C(e,i)),r}function v(n,i,t){let e=new g("audit").description("Witness chain audit trail management");return e.command("verify").description("Verify witness chain integrity").option("-F, --format <format>","Output format (json|text)","text").action(async r=>{try{await A({format:r.format}),await i(0)}catch(o){console.error("Failed to verify witness chain:",o),await i(1)}}),e}export{v as createAuditCommand,C as formatVerificationText,A as handleAuditVerify};
@@ -1,2 +0,0 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.11.4");process.exit(0)}
2
- import{a,b,c,d,e,f,g,h,i,j,k}from"./chunk-ZSA6V5FH.js";import"./chunk-IQBZBUP5.js";import"./chunk-TPMBFARK.js";import"./chunk-LW5DHT3Z.js";import"./chunk-XXRTWG7O.js";import"./chunk-6GYGAW53.js";import"./chunk-LLUPRGOR.js";import"./chunk-VJGHRWMH.js";import"./chunk-NSPCZPTB.js";import"./chunk-PEIQDQXN.js";import"./chunk-BMQDELPA.js";import"./chunk-ICCTQ5LO.js";import"./chunk-TCWR6TDN.js";import"./chunk-YUHM72VQ.js";import"./chunk-PQUXFSN6.js";import"./chunk-7AWK43JN.js";import"./chunk-VCUCD3B5.js";import"./chunk-QJ5NCYJ3.js";import"./chunk-TQ373GGI.js";import"./chunk-7QTB5XIQ.js";import"./chunk-7ADD2ZQL.js";import"./chunk-Y4AXOHW4.js";export{k as MCPToolBase,j as defaultToolLogger,i as getLLMRouter,e as getMemoryBackend,g as getSharedLLMRouter,c as getSharedMemoryBackend,a as isMemoryOnlyMode,b as registerRvfResetFn,h as resetSharedLLMRouter,d as resetSharedMemoryBackend,f as setSharedLLMRouter};