agentic-qe 3.15.8 → 3.15.10

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 (642) hide show
  1. package/.claude/skills/skills-manifest.json +1 -1
  2. package/CHANGELOG.md +434 -0
  3. package/assets/skills/skills-manifest.json +1 -1
  4. package/dist/adapters/a2ui/catalog/component-schemas.js +2 -1
  5. package/dist/adapters/a2ui/data/json-pointer-resolver.js +10 -5
  6. package/dist/adapters/a2ui/integration/agui-sync.js +10 -6
  7. package/dist/adapters/a2ui/integration/surface-state-bridge.js +9 -5
  8. package/dist/adapters/ag-ui/json-patch.js +10 -6
  9. package/dist/agents/claim-verifier/claim-verifier-service.js +13 -8
  10. package/dist/audit/witness-chain.d.ts +1 -1
  11. package/dist/bridge/captured-experience-bridge.js +12 -13
  12. package/dist/cli/bundle.js +6 -6
  13. package/dist/cli/chunks/adapter-TR5SLAZC.js +2 -0
  14. package/dist/cli/chunks/agent-booster-wasm-H7ANGXW4.js +2 -0
  15. package/dist/cli/chunks/{agent-handler-2NQFHAWE.js → agent-handler-SVXSHEET.js} +2 -2
  16. package/dist/cli/chunks/{agent-memory-branch-457ECHHK.js → agent-memory-branch-WKQH36XL.js} +2 -2
  17. package/dist/cli/chunks/aqe-learning-engine-DXWKCHY2.js +2 -0
  18. package/dist/cli/chunks/{arena-JV3WSEHU.js → arena-EKOOFVST.js} +2 -2
  19. package/dist/cli/chunks/{arena-IYBQ3GPY.js → arena-OPS36NFZ.js} +4 -4
  20. package/dist/cli/chunks/{audit-5OS3T3K6.js → audit-AO5NDZRI.js} +3 -3
  21. package/dist/cli/chunks/base-GTB6POYE.js +2 -0
  22. package/dist/cli/chunks/{better-sqlite3-IQKBFVAO.js → better-sqlite3-TFLVEMMY.js} +2 -2
  23. package/dist/cli/chunks/{brain-handler-KA3SGAFM.js → brain-handler-ADBBJPYW.js} +3 -3
  24. package/dist/cli/chunks/{branch-enumerator-QZDU2VOQ.js → branch-enumerator-HGHUYYL5.js} +2 -2
  25. package/dist/cli/chunks/browser-5LU6P4SZ.js +4 -0
  26. package/dist/cli/chunks/browser-workflow-MSBOLYUY.js +2 -0
  27. package/dist/cli/chunks/{chunk-CRUQ6RXU.js → chunk-2SXBBUM6.js} +2 -2
  28. package/dist/cli/chunks/{chunk-4GUVVGJX.js → chunk-2T7RRL6G.js} +1 -1
  29. package/dist/cli/chunks/{chunk-OJWEZYLR.js → chunk-2XGVTYVX.js} +2 -2
  30. package/dist/cli/chunks/{chunk-LVHZK7GW.js → chunk-2ZI5FKSF.js} +2 -2
  31. package/dist/cli/chunks/chunk-2ZMF4NCF.js +4 -0
  32. package/dist/cli/chunks/{chunk-62T7U25U.js → chunk-37OWRCUN.js} +1 -1
  33. package/dist/cli/chunks/{chunk-UQLAN5TX.js → chunk-3P34JFQH.js} +5 -5
  34. package/dist/cli/chunks/{chunk-UDCYQLTD.js → chunk-3Y7SPD72.js} +2 -2
  35. package/dist/cli/chunks/{chunk-PPIM7B5G.js → chunk-4G63WT4F.js} +2 -2
  36. package/dist/cli/chunks/chunk-4SJYIX54.js +3 -0
  37. package/dist/cli/chunks/chunk-5E6GHSTY.js +3 -0
  38. package/dist/cli/chunks/{chunk-4TZLZRZ4.js → chunk-5LPYV3TK.js} +1 -1
  39. package/dist/cli/chunks/{chunk-YUP3APSN.js → chunk-62OAY5KJ.js} +1 -1
  40. package/dist/cli/chunks/{chunk-VQRBBR27.js → chunk-6C3II5OM.js} +2 -2
  41. package/dist/cli/chunks/{chunk-RG42LDOB.js → chunk-6GP6W46M.js} +2 -2
  42. package/dist/cli/chunks/{chunk-KMZW2P3R.js → chunk-6KIL6CMD.js} +2 -2
  43. package/dist/cli/chunks/{chunk-UKKFZJME.js → chunk-6MVVSSID.js} +1 -1
  44. package/dist/cli/chunks/{chunk-VVK4ECVJ.js → chunk-6P7424AO.js} +2 -2
  45. package/dist/cli/chunks/{chunk-A2UGPKCS.js → chunk-6PX4OXQO.js} +2 -2
  46. package/dist/cli/chunks/{chunk-JLTGO5BB.js → chunk-6S3WJGUV.js} +2 -2
  47. package/dist/cli/chunks/{chunk-GSOK4M6V.js → chunk-6TB6YOCZ.js} +1 -1
  48. package/dist/cli/chunks/{chunk-VWRNG3UK.js → chunk-6X5DHU6Q.js} +1 -1
  49. package/dist/cli/chunks/{chunk-5YOO5QSE.js → chunk-6XCMKIZN.js} +1 -1
  50. package/dist/cli/chunks/{chunk-4C3RYBTT.js → chunk-7LFZ4CHM.js} +2 -2
  51. package/dist/cli/chunks/{chunk-O4RRVTXN.js → chunk-7OZVZIBE.js} +2 -2
  52. package/dist/cli/chunks/{chunk-2JCLACCS.js → chunk-7PJIR4ST.js} +2 -2
  53. package/dist/cli/chunks/{chunk-NWFBF3KT.js → chunk-7TB6FK4B.js} +1 -1
  54. package/dist/cli/chunks/{chunk-FJAO4UX2.js → chunk-7ZCDZHDB.js} +2 -2
  55. package/dist/cli/chunks/chunk-A55QKKT2.js +2 -0
  56. package/dist/cli/chunks/{chunk-ZOVAZTXE.js → chunk-ABFFWZPC.js} +273 -278
  57. package/dist/cli/chunks/{chunk-FWXNFPLS.js → chunk-ACWFKES2.js} +2 -2
  58. package/dist/cli/chunks/{chunk-IJSFZO7P.js → chunk-AH3ZD3NJ.js} +2 -2
  59. package/dist/cli/chunks/{chunk-7SLEUVPZ.js → chunk-AI4VYSFS.js} +2 -2
  60. package/dist/cli/chunks/chunk-APSRPR4W.js +2 -0
  61. package/dist/cli/chunks/chunk-ATHWDAXB.js +3 -0
  62. package/dist/cli/chunks/{chunk-2GSAAUW3.js → chunk-B6LTH6YV.js} +2 -2
  63. package/dist/cli/chunks/chunk-BQUAE3CP.js +3 -0
  64. package/dist/cli/chunks/{chunk-7XGM7Q2N.js → chunk-C522H7XR.js} +54 -33
  65. package/dist/cli/chunks/{chunk-7DHSHD5B.js → chunk-CESIR27V.js} +2 -2
  66. package/dist/cli/chunks/{chunk-V7VZSNDK.js → chunk-CFBEBXLO.js} +3 -3
  67. package/dist/cli/chunks/{chunk-NZATJ2C6.js → chunk-CMBLM26R.js} +2 -2
  68. package/dist/cli/chunks/{chunk-7CVMT64N.js → chunk-CZ2IF6MC.js} +1 -1
  69. package/dist/cli/chunks/{chunk-YVWMJZ6O.js → chunk-CZGOSJQ4.js} +2 -2
  70. package/dist/cli/chunks/{chunk-TMNEK7TP.js → chunk-D6DA2KFD.js} +2 -2
  71. package/dist/cli/chunks/{chunk-UTNKMPTC.js → chunk-DBMNJSBV.js} +1 -1
  72. package/dist/cli/chunks/{chunk-JFWQFB3S.js → chunk-DE4YJQJF.js} +2 -2
  73. package/dist/cli/chunks/{chunk-767SR7WH.js → chunk-DEF34AFL.js} +2 -2
  74. package/dist/cli/chunks/{chunk-ZWMFKZEQ.js → chunk-DKAC3E3B.js} +2 -2
  75. package/dist/cli/chunks/{chunk-CDLG3Q2O.js → chunk-DMFTELBS.js} +2 -2
  76. package/dist/cli/chunks/{chunk-P4UT4LBE.js → chunk-DNRWGATA.js} +10 -10
  77. package/dist/cli/chunks/{chunk-PUYQ6EKC.js → chunk-DT7SIJOA.js} +2 -2
  78. package/dist/cli/chunks/{chunk-ST7ASEJO.js → chunk-DURHK377.js} +69 -69
  79. package/dist/cli/chunks/{chunk-V4QJ3MMT.js → chunk-EAU5KDFO.js} +1 -1
  80. package/dist/cli/chunks/{chunk-BLZEOGQE.js → chunk-EDLFX4ZB.js} +2 -2
  81. package/dist/cli/chunks/{chunk-ZBI7PJFX.js → chunk-EN2QSKFF.js} +2 -2
  82. package/dist/cli/chunks/{chunk-U7CIY3YR.js → chunk-ERQKYIP7.js} +2 -2
  83. package/dist/cli/chunks/{chunk-X7ZQIFES.js → chunk-ESUO3GTJ.js} +2 -2
  84. package/dist/cli/chunks/{chunk-SHEVM5PF.js → chunk-EWFECZ2U.js} +2 -2
  85. package/dist/cli/chunks/{chunk-JWPYMRIX.js → chunk-FAUCT5KR.js} +3 -3
  86. package/dist/cli/chunks/{chunk-KMVFBYJO.js → chunk-FB6TI3BH.js} +2 -2
  87. package/dist/cli/chunks/{chunk-22DOS3PM.js → chunk-FBXTQNRH.js} +2 -2
  88. package/dist/cli/chunks/{chunk-W5A36V3Z.js → chunk-FESZBPUB.js} +2 -2
  89. package/dist/cli/chunks/chunk-FFTPAWM6.js +141 -0
  90. package/dist/cli/chunks/{chunk-VWSGWYRB.js → chunk-FKL3R5JQ.js} +2 -2
  91. package/dist/cli/chunks/{chunk-2DPHFCMW.js → chunk-FPUDRSFJ.js} +2 -2
  92. package/dist/cli/chunks/{chunk-VKFVJCIH.js → chunk-FZOWULMH.js} +1 -1
  93. package/dist/cli/chunks/{chunk-HXCGV5UJ.js → chunk-G3CZCUPM.js} +2 -2
  94. package/dist/cli/chunks/{chunk-GENNJRNK.js → chunk-G5I6KGMW.js} +22 -22
  95. package/dist/cli/chunks/{chunk-J7FLNP5L.js → chunk-GHBNRMSJ.js} +2 -2
  96. package/dist/cli/chunks/{chunk-I77D65X5.js → chunk-GJHWY3ZX.js} +2 -2
  97. package/dist/cli/chunks/{chunk-DKFSCJEF.js → chunk-GJMLK5UT.js} +2 -2
  98. package/dist/cli/chunks/{chunk-52YRSWPS.js → chunk-GRCIBCJ2.js} +2 -2
  99. package/dist/cli/chunks/{chunk-NW7HTOSN.js → chunk-GWZZ7DAO.js} +2 -2
  100. package/dist/cli/chunks/{chunk-D4IBIMWI.js → chunk-GZLZCZ42.js} +2 -2
  101. package/dist/cli/chunks/{chunk-FEN2DHFM.js → chunk-H2PYU7MN.js} +1 -1
  102. package/dist/cli/chunks/{chunk-4I35ARWW.js → chunk-H32EPIR2.js} +1 -1
  103. package/dist/cli/chunks/{chunk-MUDBF2JC.js → chunk-H74Q7TJN.js} +1 -1
  104. package/dist/cli/chunks/chunk-HOZUDE4C.js +2 -0
  105. package/dist/cli/chunks/{chunk-MMY52Y6R.js → chunk-I33O4BRQ.js} +2 -2
  106. package/dist/cli/chunks/{chunk-ZG7UKWBB.js → chunk-IKISCIGH.js} +2 -2
  107. package/dist/cli/chunks/{chunk-SFPGLUXS.js → chunk-IPJ7Q3AJ.js} +1 -1
  108. package/dist/cli/chunks/{chunk-2ZRNXEVI.js → chunk-IU2IV4NE.js} +1 -1
  109. package/dist/cli/chunks/{chunk-XOOBLZXR.js → chunk-JHIY4VCC.js} +2 -2
  110. package/dist/cli/chunks/{chunk-PJGQ2TKN.js → chunk-KG336OV3.js} +2 -2
  111. package/dist/cli/chunks/{chunk-YRH7KMTU.js → chunk-KI73QCR5.js} +2 -2
  112. package/dist/cli/chunks/{chunk-FAYXES7R.js → chunk-KNQ2ERFX.js} +2 -2
  113. package/dist/cli/chunks/{chunk-CQ3SBRDP.js → chunk-KOBVYY6H.js} +2 -2
  114. package/dist/cli/chunks/{chunk-3N627QRU.js → chunk-KSIWGGJI.js} +8 -8
  115. package/dist/cli/chunks/{chunk-2UN4JOTN.js → chunk-LMS3Y7JD.js} +2 -2
  116. package/dist/cli/chunks/{chunk-RSMPJWQH.js → chunk-LQEURY7C.js} +1 -1
  117. package/dist/cli/chunks/{chunk-NQDYOF35.js → chunk-LRZY4KS2.js} +2 -2
  118. package/dist/cli/chunks/{chunk-U3BWBP6B.js → chunk-M2QV7PT7.js} +2 -2
  119. package/dist/cli/chunks/{chunk-WLXGUQOZ.js → chunk-MA7JIQ6U.js} +2 -2
  120. package/dist/cli/chunks/{chunk-Y5ZBF7MA.js → chunk-MG27QY4D.js} +2 -2
  121. package/dist/cli/chunks/chunk-MNN5J4GU.js +12 -0
  122. package/dist/cli/chunks/chunk-N6PIIK6G.js +3 -0
  123. package/dist/cli/chunks/chunk-NAXGWDVM.js +12 -0
  124. package/dist/cli/chunks/{chunk-DCYUHCPK.js → chunk-NGKNYIQZ.js} +1 -1
  125. package/dist/cli/chunks/chunk-NNFZUTDH.js +2 -0
  126. package/dist/cli/chunks/{chunk-UTFMMZ57.js → chunk-NPPHWFA2.js} +3 -3
  127. package/dist/cli/chunks/chunk-NSHU347M.js +2 -0
  128. package/dist/cli/chunks/{chunk-NF63NHJH.js → chunk-NVYIZCSR.js} +2 -2
  129. package/dist/cli/chunks/{chunk-YNQPHRUZ.js → chunk-NW5JUCCG.js} +1 -1
  130. package/dist/cli/chunks/{chunk-G6CLO74Q.js → chunk-NZYLNXT6.js} +3 -3
  131. package/dist/cli/chunks/{chunk-R2NHGESM.js → chunk-OBAREPDC.js} +2 -2
  132. package/dist/cli/chunks/{chunk-X3HM7SV4.js → chunk-ODJNUMV3.js} +2 -2
  133. package/dist/cli/chunks/{chunk-OCLAMZJG.js → chunk-OEKP73MC.js} +2 -2
  134. package/dist/cli/chunks/{chunk-5MBNRTT5.js → chunk-OPFGRS5S.js} +2 -2
  135. package/dist/cli/chunks/{chunk-K5R3WUJP.js → chunk-OY2AHLSF.js} +1 -1
  136. package/dist/cli/chunks/{chunk-KJNUETCB.js → chunk-OY3NJNP2.js} +1 -1
  137. package/dist/cli/chunks/{chunk-P2EA62YS.js → chunk-PCEW6Q2C.js} +1 -1
  138. package/dist/cli/chunks/{chunk-HNGNRIZZ.js → chunk-PFG6VQ5Z.js} +2 -2
  139. package/dist/cli/chunks/{chunk-DN3AKAPY.js → chunk-PGYMKGOE.js} +2 -2
  140. package/dist/cli/chunks/{chunk-BEVWCF3Q.js → chunk-PPSAMXYN.js} +3 -3
  141. package/dist/cli/chunks/chunk-RK73HB2F.js +2 -0
  142. package/dist/cli/chunks/{chunk-6E7EOHMN.js → chunk-RPHY2DU6.js} +2 -2
  143. package/dist/cli/chunks/{chunk-7C6FMLQR.js → chunk-RWWOHCMG.js} +25 -20
  144. package/dist/cli/chunks/{chunk-5ONJ7AV6.js → chunk-S75EYIJG.js} +1 -1
  145. package/dist/cli/chunks/chunk-SKQUUE4F.js +5 -0
  146. package/dist/cli/chunks/chunk-SO45NA4D.js +180 -0
  147. package/dist/cli/chunks/{chunk-SWY6KGMF.js → chunk-SU5H66SD.js} +2 -2
  148. package/dist/cli/chunks/{chunk-ZOHS32SI.js → chunk-SY2IB442.js} +2 -2
  149. package/dist/cli/chunks/{chunk-MV4S3TEC.js → chunk-TBLI254A.js} +2 -2
  150. package/dist/cli/chunks/{chunk-5DZDLOY6.js → chunk-TNMBRDCA.js} +3 -3
  151. package/dist/cli/chunks/{chunk-FEPFXXI7.js → chunk-TYFZXDGZ.js} +2 -2
  152. package/dist/cli/chunks/{chunk-A6GCO6ZU.js → chunk-U4OICXV2.js} +2 -2
  153. package/dist/cli/chunks/{chunk-G77Q22EN.js → chunk-U53ZB4IX.js} +2 -2
  154. package/dist/cli/chunks/chunk-UARKIZAS.js +2 -0
  155. package/dist/cli/chunks/{chunk-6GIC2263.js → chunk-UCJMVXO4.js} +2 -2
  156. package/dist/cli/chunks/{chunk-DAFMHM64.js → chunk-UHTTW3IT.js} +2 -2
  157. package/dist/cli/chunks/{chunk-2QRGIEQV.js → chunk-V2M2XCR5.js} +1 -1
  158. package/dist/cli/chunks/{chunk-XZQVC3GD.js → chunk-V2RSNVMW.js} +1 -1
  159. package/dist/cli/chunks/{chunk-GGSTLKY5.js → chunk-V6JBOIMX.js} +1 -1
  160. package/dist/cli/chunks/{chunk-BTMEOZYY.js → chunk-VFKF2XO7.js} +1 -1
  161. package/dist/cli/chunks/{chunk-4C7KE2EL.js → chunk-VFSYMOAL.js} +2 -2
  162. package/dist/cli/chunks/{chunk-D4O3TJI7.js → chunk-VJQYDYAJ.js} +2 -2
  163. package/dist/cli/chunks/{chunk-PZ7FJ4UG.js → chunk-VKRTTFB6.js} +2 -2
  164. package/dist/cli/chunks/{chunk-CQ5G64EA.js → chunk-VWNFAW2M.js} +2 -2
  165. package/dist/cli/chunks/{chunk-DY37YMMQ.js → chunk-WBM6N6IM.js} +1 -1
  166. package/dist/cli/chunks/{chunk-K4N2MBCE.js → chunk-WDQ7IEZY.js} +2 -2
  167. package/dist/cli/chunks/{chunk-HI6OBDDY.js → chunk-WDVRE6GN.js} +2 -2
  168. package/dist/cli/chunks/{chunk-PICEGWGB.js → chunk-WQ4PYWSW.js} +1 -1
  169. package/dist/cli/chunks/{chunk-NHOMVBCI.js → chunk-WSF24I3D.js} +2 -2
  170. package/dist/cli/chunks/{chunk-LPSMVBB3.js → chunk-XBVUVFJK.js} +2 -2
  171. package/dist/cli/chunks/{chunk-J6LL25QJ.js → chunk-XEB3NLJR.js} +2 -2
  172. package/dist/cli/chunks/{chunk-SJMZZMHP.js → chunk-XFVTGAAJ.js} +2 -2
  173. package/dist/cli/chunks/{chunk-KVMKYUOE.js → chunk-XLZYRTNO.js} +2 -2
  174. package/dist/cli/chunks/chunk-XUZDBQ5X.js +6 -0
  175. package/dist/cli/chunks/{chunk-WAWKAYPY.js → chunk-Y76IAYQD.js} +1 -1
  176. package/dist/cli/chunks/{chunk-3LFLO2WK.js → chunk-YAKGBHO4.js} +2 -2
  177. package/dist/cli/chunks/{chunk-TC52M542.js → chunk-YBSBABOS.js} +2 -2
  178. package/dist/cli/chunks/{chunk-BQUIZ5QT.js → chunk-YCGP5VFP.js} +2 -2
  179. package/dist/cli/chunks/{chunk-T2TDTBFV.js → chunk-YDAQK5UF.js} +1 -1
  180. package/dist/cli/chunks/{chunk-LHRVSK44.js → chunk-YK3BVZY6.js} +2 -2
  181. package/dist/cli/chunks/{chunk-QFYUZYRA.js → chunk-YK7JN5N7.js} +4 -4
  182. package/dist/cli/chunks/{chunk-IMSRWNWF.js → chunk-YKMU4LBV.js} +1 -1
  183. package/dist/cli/chunks/{chunk-NLYUC63R.js → chunk-YYTGXD3R.js} +2 -2
  184. package/dist/cli/chunks/{chunk-OWBFVAEH.js → chunk-Z2O2YJAF.js} +2 -2
  185. package/dist/cli/chunks/{chunk-KITKQUBX.js → chunk-Z7IYW5U7.js} +1 -1
  186. package/dist/cli/chunks/{chunk-4NTLGGXO.js → chunk-ZG5666GJ.js} +1 -1
  187. package/dist/cli/chunks/{chunk-4YUBWU3E.js → chunk-ZXPY654C.js} +1 -1
  188. package/dist/cli/chunks/{ci-7NUCRGWO.js → ci-MSKMVH5X.js} +2 -2
  189. package/dist/cli/chunks/{ci-config-VQVECCFI.js → ci-config-7ODMNAUM.js} +2 -2
  190. package/dist/cli/chunks/{ci-output-P7GQ6TKF.js → ci-output-FXZ7ZZW3.js} +2 -2
  191. package/dist/cli/chunks/{circuit-breaker-5YP6N6HE.js → circuit-breaker-4VOUEPOX.js} +2 -2
  192. package/dist/cli/chunks/{claude-flow-setup-W5H7CMU6.js → claude-flow-setup-7D4SGLM4.js} +2 -2
  193. package/dist/cli/chunks/client-POSVREVS.js +2 -0
  194. package/dist/cli/chunks/{cline-installer-OYANSZ54.js → cline-installer-WRRT7BGQ.js} +2 -2
  195. package/dist/cli/chunks/{code-OMT4UEZI.js → code-ZDJRIL3S.js} +25 -24
  196. package/dist/cli/chunks/{code-index-extractor-M2JEWKNF.js → code-index-extractor-4S4SHM56.js} +2 -2
  197. package/dist/cli/chunks/{codex-installer-YBS6N5O3.js → codex-installer-YTRHNDWR.js} +2 -2
  198. package/dist/cli/chunks/{completions-U7GS5RG6.js → completions-6N64JUXJ.js} +2 -2
  199. package/dist/cli/chunks/{complexity-analyzer-QSXPIUIU.js → complexity-analyzer-I4A26VCJ.js} +2 -2
  200. package/dist/cli/chunks/{continuedev-installer-W5TTT743.js → continuedev-installer-IIDR66LB.js} +2 -2
  201. package/dist/cli/chunks/{copilot-installer-KC2RT24C.js → copilot-installer-SVVFY3S2.js} +2 -2
  202. package/dist/cli/chunks/core-handlers-V243GY7X.js +2 -0
  203. package/dist/cli/chunks/{cost-tracker-OQPVR6V4.js → cost-tracker-VGFS6IBX.js} +2 -2
  204. package/dist/cli/chunks/{coverage-TCO2A2NX.js → coverage-B7MCGNTE.js} +3 -3
  205. package/dist/cli/chunks/cross-domain-router-N3AIEM3B.js +2 -0
  206. package/dist/cli/chunks/{cursor-installer-MH7GWD4L.js → cursor-installer-UPETT57E.js} +2 -2
  207. package/dist/cli/chunks/daemon-7BDJHEIJ.js +18 -0
  208. package/dist/cli/chunks/{daemon-UJEARJZ2.js → daemon-CQFNZLXU.js} +7 -7
  209. package/dist/cli/chunks/{dag-attention-scheduler-F3SUJU5O.js → dag-attention-scheduler-PJVABHON.js} +2 -2
  210. package/dist/cli/chunks/{detect-5QTCRB32.js → detect-56SKAGWX.js} +2 -2
  211. package/dist/cli/chunks/{dist-node-XKZPHDBO.js → dist-node-UYTYUMLN.js} +2 -2
  212. package/dist/cli/chunks/{domain-handler-V3UEADKW.js → domain-handler-YOYLBYJE.js} +2 -2
  213. package/dist/cli/chunks/{domain-plugins-7PES4UHZ.js → domain-plugins-7TARX2XF.js} +2 -2
  214. package/dist/cli/chunks/domain-transfer-AKVSBD6E.js +2 -0
  215. package/dist/cli/chunks/dream-UA7MKOPQ.js +2 -0
  216. package/dist/cli/chunks/{embed-and-insert-pattern-D2HWORHF.js → embed-and-insert-pattern-IS6HSR66.js} +2 -2
  217. package/dist/cli/chunks/{eval-UF2UBAUC.js → eval-GNB574IM.js} +2 -2
  218. package/dist/cli/chunks/{experience-capture-middleware-2OUCEHHM.js → experience-capture-middleware-RCAOCKM7.js} +3 -3
  219. package/dist/cli/chunks/{fast-paths-KV5DKKHC.js → fast-paths-KTZ5SF54.js} +2 -2
  220. package/dist/cli/chunks/{feature-flags-MTW6NMR3.js → feature-flags-ITX5LQ57.js} +2 -2
  221. package/dist/cli/chunks/{feature-flags-6YWMTNO5.js → feature-flags-KFHSR5YF.js} +2 -2
  222. package/dist/cli/chunks/file-discovery-YCMNKZAK.js +2 -0
  223. package/dist/cli/chunks/fleet-2Y3ZE6CE.js +46 -0
  224. package/dist/cli/chunks/{gnn-wrapper-52V6ANOY.js → gnn-wrapper-RLFW3GSX.js} +2 -2
  225. package/dist/cli/chunks/{heartbeat-handler-X7NHNRC7.js → heartbeat-handler-EM2URCYZ.js} +4 -4
  226. package/dist/cli/chunks/heartbeat-scheduler-QH5V6G2P.js +2 -0
  227. package/dist/cli/chunks/hnsw-adapter-OJNFAGJS.js +2 -0
  228. package/dist/cli/chunks/hnsw-index-DFUNARVD.js +2 -0
  229. package/dist/cli/chunks/{hnsw-legacy-bridge-DZBE3KMK.js → hnsw-legacy-bridge-JMHEOIBH.js} +2 -2
  230. package/dist/cli/chunks/{hnswlib-node-2AWWUJAZ.js → hnswlib-node-CBP73QHY.js} +2 -2
  231. package/dist/cli/chunks/{hooks-XLPVROL3.js → hooks-IP7XE34Z.js} +34 -34
  232. package/dist/cli/chunks/hybrid-backend-SSGQQEQ2.js +2 -0
  233. package/dist/cli/chunks/{hypergraph-engine-6TI7YP6P.js → hypergraph-engine-ONAYHU25.js} +2 -2
  234. package/dist/cli/chunks/{hypergraph-handler-DBIBBOXS.js → hypergraph-handler-VINJRAID.js} +3 -3
  235. package/dist/cli/chunks/impact-analyzer-CRGCA7ZD.js +2 -0
  236. package/dist/cli/chunks/{init-guard-OSO6MIDD.js → init-guard-RYVV5R3Z.js} +2 -2
  237. package/dist/cli/chunks/{init-handler-7S7IHMUF.js → init-handler-MPRGWMOE.js} +6 -6
  238. package/dist/cli/chunks/init-wizard-NIMZ4J55.js +2 -0
  239. package/dist/cli/chunks/kernel-JQK7PRAI.js +2 -0
  240. package/dist/cli/chunks/{kilocode-installer-2KBRFXMA.js → kilocode-installer-OPD7JBRL.js} +2 -2
  241. package/dist/cli/chunks/{kiro-installer-5VFR4OQZ.js → kiro-installer-M4OPUNK2.js} +2 -2
  242. package/dist/cli/chunks/knowledge-graph-YPVVIKEU.js +2 -0
  243. package/dist/cli/chunks/{learning-G5NHL3DV.js → learning-4UWTQLMF.js} +24 -24
  244. package/dist/cli/chunks/{llm-router-4EAPPMHS.js → llm-router-SQ56FF6Z.js} +4 -4
  245. package/dist/cli/chunks/llm-router-service-5OGAUOXF.js +2 -0
  246. package/dist/cli/chunks/{load-UYMZPEY6.js → load-HPHKDGGL.js} +2 -2
  247. package/dist/cli/chunks/load-test-UKNV5MWW.js +2 -0
  248. package/dist/cli/chunks/mcp-TELMAC7Z.js +2 -0
  249. package/dist/cli/chunks/{memory-QL53YIHP.js → memory-PFQ3KPVJ.js} +5 -5
  250. package/dist/cli/chunks/memory-backend-ZW4BTRNK.js +2 -0
  251. package/dist/cli/chunks/memory-handlers-FCXN437E.js +2 -0
  252. package/dist/cli/chunks/{multi-model-executor-PDDDXF2B.js → multi-model-executor-3VDRX6TZ.js} +2 -2
  253. package/dist/cli/chunks/{opencode-installer-75D2SKOT.js → opencode-installer-PJ576R63.js} +2 -2
  254. package/dist/cli/chunks/{orchestrator-3WIZBV4T.js → orchestrator-72QP4UU7.js} +64 -19
  255. package/dist/cli/chunks/pattern-null-store-4DUV6MQC.js +2 -0
  256. package/dist/cli/chunks/{pattern-usage-recorder-TEX2JGHA.js → pattern-usage-recorder-754YQW7C.js} +2 -2
  257. package/dist/cli/chunks/pipeline-AVXY4MVB.js +19 -0
  258. package/dist/cli/chunks/{platform-WPSKRJE7.js → platform-3E3DXLYB.js} +2 -2
  259. package/dist/cli/chunks/{plugin-UUFOVVMU.js → plugin-7FUQAKRE.js} +2 -2
  260. package/dist/cli/chunks/{prime-radiant-advanced-wasm-PDFSYWKZ.js → prime-radiant-advanced-wasm-NIB4F5NV.js} +2 -2
  261. package/dist/cli/chunks/project-root-JCAUNL6O.js +2 -0
  262. package/dist/cli/chunks/protocol-executor-RNZNZP3A.js +2 -0
  263. package/dist/cli/chunks/{protocol-handler-3VRYRIQB.js → protocol-handler-BQRYMUTG.js} +2 -2
  264. package/dist/cli/chunks/{prove-2NAUROGF.js → prove-H52QGC6B.js} +2 -2
  265. package/dist/cli/chunks/qe-reasoning-bank-WK6TQOG2.js +2 -0
  266. package/dist/cli/chunks/{quality-ZIEI2WGA.js → quality-QO4XPAUM.js} +2 -2
  267. package/dist/cli/chunks/{quality-gate-KWJO4SWQ.js → quality-gate-FBKE5E6F.js} +3 -3
  268. package/dist/cli/chunks/queen-coordinator-4452SXZQ.js +2 -0
  269. package/dist/cli/chunks/{real-embeddings-TSZ4UIAE.js → real-embeddings-RWGOVOXO.js} +2 -2
  270. package/dist/cli/chunks/{ref-validation-DWFFRETJ.js → ref-validation-LF76ZOBD.js} +2 -2
  271. package/dist/cli/chunks/{roocode-installer-XTZHLUBO.js → roocode-installer-3BYEBTQ7.js} +2 -2
  272. package/dist/cli/chunks/router-3DIS5X4R.js +2 -0
  273. package/dist/cli/chunks/routing-feedback-OPXRCXM7.js +2 -0
  274. package/dist/cli/chunks/{routing-handler-GG525TDM.js → routing-handler-DST7BVCU.js} +2 -2
  275. package/dist/cli/chunks/{ruvector-commands-QKRJDM7Z.js → ruvector-commands-XE32PGKC.js} +2 -2
  276. package/dist/cli/chunks/rvf-dual-writer-JL6T727I.js +2 -0
  277. package/dist/cli/chunks/rvf-migration-adapter-V7IBDUCS.js +2 -0
  278. package/dist/cli/chunks/{rvf-migration-coordinator-FF52OS6Q.js → rvf-migration-coordinator-VP32XC75.js} +2 -2
  279. package/dist/cli/chunks/rvf-native-adapter-O3UQTEBK.js +2 -0
  280. package/dist/cli/chunks/{rvf-store-integrity-M6DXTAZ4.js → rvf-store-integrity-SH2AMVI7.js} +2 -2
  281. package/dist/cli/chunks/safe-db-EVB4ZC7T.js +2 -0
  282. package/dist/cli/chunks/schedule-ORDDXXY4.js +2 -0
  283. package/dist/cli/chunks/scheduler-XFLJSFIU.js +2 -0
  284. package/dist/cli/chunks/{security-EHXSW22U.js → security-VSPNKCDS.js} +3 -3
  285. package/dist/cli/chunks/{shared-rvf-adapter-6EH7UVJL.js → shared-rvf-adapter-HX6AHL3P.js} +2 -2
  286. package/dist/cli/chunks/{shared-rvf-dual-writer-WML274E7.js → shared-rvf-dual-writer-MX4FC2JE.js} +2 -2
  287. package/dist/cli/chunks/sqlite-persistence-Y7B42CJ3.js +2 -0
  288. package/dist/cli/chunks/{standalone-memory-C7QKAXS4.js → standalone-memory-O4QUTK6L.js} +2 -2
  289. package/dist/cli/chunks/{status-handler-VLI7MRLM.js → status-handler-Z2BP6EOG.js} +2 -2
  290. package/dist/cli/chunks/{structural-health-3LPG6MQN.js → structural-health-R36WNLQG.js} +2 -2
  291. package/dist/cli/chunks/sync-2ELWUFQU.js +2 -0
  292. package/dist/cli/chunks/{sync-JFJEJBVK.js → sync-QF5Y3EMZ.js} +2 -2
  293. package/dist/cli/chunks/{task-handler-IED3K6E4.js → task-handler-43PYE75J.js} +13 -7
  294. package/dist/cli/chunks/task-handlers-KPWAEMKH.js +9 -0
  295. package/dist/cli/chunks/{test-GPKT3CKZ.js → test-UWA377D4.js} +16 -16
  296. package/dist/cli/chunks/test-runner-process-3XZUYST2.js +2 -0
  297. package/dist/cli/chunks/{test-scheduling-Z42XXZP6.js → test-scheduling-YQZPJRRN.js} +3 -3
  298. package/dist/cli/chunks/token-bootstrap-F7C6UKTC.js +2 -0
  299. package/dist/cli/chunks/{token-usage-6Y2ERYIY.js → token-usage-DO6WLMXP.js} +2 -2
  300. package/dist/cli/chunks/{transformers-MB63T2XO.js → transformers-H5RGFKVO.js} +2 -2
  301. package/dist/cli/chunks/tree-sitter-wasm-parser-YTBCBHUO.js +2 -0
  302. package/dist/cli/chunks/{types-J4J6QV3I.js → types-PJS2FGPF.js} +2 -2
  303. package/dist/cli/chunks/unified-memory-EHD4VNFW.js +2 -0
  304. package/dist/cli/chunks/unified-memory-hnsw-ZODGM4UK.js +2 -0
  305. package/dist/cli/chunks/unified-persistence-MHSI7ABK.js +2 -0
  306. package/dist/cli/chunks/{upgrade-U4XU7LFM.js → upgrade-4IC4F6AB.js} +2 -2
  307. package/dist/cli/chunks/{validate-B57HA4YK.js → validate-DHUWW7PF.js} +2 -2
  308. package/dist/cli/chunks/{validate-swarm-UPPA4M6T.js → validate-swarm-OERQNOX5.js} +2 -2
  309. package/dist/cli/chunks/visual-security-54MLFKWY.js +2 -0
  310. package/dist/cli/chunks/{web-tree-sitter-GDZMUKOZ.js → web-tree-sitter-TV7DMKES.js} +2 -2
  311. package/dist/cli/chunks/{windsurf-installer-VJRWCHXP.js → windsurf-installer-QZPWSH37.js} +2 -2
  312. package/dist/cli/chunks/witness-chain-LC6Q2W27.js +2 -0
  313. package/dist/cli/chunks/witness-chain-QUIBAF3W.js +2 -0
  314. package/dist/cli/chunks/witness-chain-repair-RUXIOE7F.js +2 -0
  315. package/dist/cli/chunks/{witness-chain-verifier-Z23FVABW.js → witness-chain-verifier-YXENHB42.js} +2 -2
  316. package/dist/cli/chunks/{witness-key-manager-745MJ7WO.js → witness-key-manager-HL26AGFO.js} +2 -2
  317. package/dist/cli/chunks/{workflow-T245QNQM.js → workflow-EOVVCN2E.js} +4 -4
  318. package/dist/cli/chunks/workflow-orchestrator-UKHEJVSK.js +2 -0
  319. package/dist/cli/chunks/wrappers-AGODHBOO.js +2 -0
  320. package/dist/cli/commands/code.js +8 -0
  321. package/dist/cli/commands/daemon.js +8 -0
  322. package/dist/cli/commands/fleet.js +27 -15
  323. package/dist/cli/commands/hooks-handlers/hooks-dream-learning.js +9 -2
  324. package/dist/cli/commands/hooks-handlers/session-hooks.js +2 -2
  325. package/dist/cli/commands/hooks-handlers/stats-hooks.js +3 -2
  326. package/dist/cli/commands/learning.js +5 -3
  327. package/dist/cli/commands/ruvector-commands.js +2 -1
  328. package/dist/cli/commands/test.js +6 -0
  329. package/dist/cli/handlers/task-handler.js +21 -1
  330. package/dist/cli/utils/ci-output.d.ts +9 -0
  331. package/dist/cli/utils/fleet-operation.d.ts +32 -0
  332. package/dist/cli/utils/fleet-operation.js +71 -0
  333. package/dist/cli/utils/fleet-result.d.ts +31 -0
  334. package/dist/cli/utils/fleet-result.js +124 -0
  335. package/dist/context/sources/git-source.js +6 -2
  336. package/dist/coordination/handlers/code-intelligence-handlers.js +74 -7
  337. package/dist/coordination/handlers/coverage-collection.js +9 -10
  338. package/dist/coordination/handlers/coverage-handlers.js +31 -4
  339. package/dist/coordination/handlers/coverage-runner.d.ts +2 -1
  340. package/dist/coordination/handlers/coverage-runner.js +9 -2
  341. package/dist/coordination/handlers/coverage-target.d.ts +13 -3
  342. package/dist/coordination/handlers/coverage-target.js +224 -7
  343. package/dist/coordination/handlers/handler-types.d.ts +2 -0
  344. package/dist/coordination/handlers/requirements-handlers.js +16 -2
  345. package/dist/coordination/handlers/security-handlers.js +11 -1
  346. package/dist/coordination/handlers/test-execution-handlers.js +57 -12
  347. package/dist/coordination/index.d.ts +2 -2
  348. package/dist/coordination/index.js +1 -1
  349. package/dist/coordination/mincut/queen-integration.d.ts +39 -1
  350. package/dist/coordination/mincut/queen-integration.js +83 -6
  351. package/dist/coordination/protocols/learning-consolidation-archive.d.ts +35 -0
  352. package/dist/coordination/protocols/learning-consolidation-archive.js +34 -0
  353. package/dist/coordination/protocols/learning-consolidation.d.ts +62 -3
  354. package/dist/coordination/protocols/learning-consolidation.js +187 -60
  355. package/dist/coordination/queen-coordinator.d.ts +13 -2
  356. package/dist/coordination/queen-coordinator.js +43 -8
  357. package/dist/coordination/queen-event-handlers.js +15 -1
  358. package/dist/coordination/queen-lifecycle.js +9 -0
  359. package/dist/coordination/queen-task-management.d.ts +18 -24
  360. package/dist/coordination/queen-task-management.js +94 -127
  361. package/dist/coordination/queen-task-queue.d.ts +41 -0
  362. package/dist/coordination/queen-task-queue.js +194 -0
  363. package/dist/coordination/queen-types.d.ts +11 -1
  364. package/dist/coordination/queen-types.js +8 -0
  365. package/dist/coordination/queen-work-stealing.d.ts +6 -1
  366. package/dist/coordination/queen-work-stealing.js +7 -4
  367. package/dist/coordination/result-saver-adapters.d.ts +15 -0
  368. package/dist/coordination/result-saver-adapters.js +57 -0
  369. package/dist/coordination/result-saver.d.ts +1 -1
  370. package/dist/coordination/result-saver.js +8 -5
  371. package/dist/coordination/task-dag/dag-algorithms.d.ts +33 -0
  372. package/dist/coordination/task-dag/dag-algorithms.js +162 -0
  373. package/dist/coordination/task-dag/dag-obligations.d.ts +21 -0
  374. package/dist/coordination/task-dag/dag-obligations.js +83 -0
  375. package/dist/coordination/task-dag/dag.d.ts +69 -19
  376. package/dist/coordination/task-dag/dag.js +215 -269
  377. package/dist/coordination/task-dag/index.d.ts +12 -4
  378. package/dist/coordination/task-dag/index.js +11 -3
  379. package/dist/coordination/task-dag/prerequisite-ledger.d.ts +84 -0
  380. package/dist/coordination/task-dag/prerequisite-ledger.js +252 -0
  381. package/dist/coordination/task-dag/scheduler.d.ts +19 -9
  382. package/dist/coordination/task-dag/scheduler.js +36 -12
  383. package/dist/coordination/task-dag/types.d.ts +160 -1
  384. package/dist/coordination/task-dag/types.js +2 -1
  385. package/dist/coordination/task-executability.d.ts +18 -0
  386. package/dist/coordination/task-executability.js +31 -0
  387. package/dist/coordination/task-executor.d.ts +1 -0
  388. package/dist/coordination/task-executor.js +5 -0
  389. package/dist/coordination/yaml-pipeline-loader.js +5 -2
  390. package/dist/domains/code-intelligence/coordinator.js +35 -9
  391. package/dist/domains/code-intelligence/index-path-guard.d.ts +52 -0
  392. package/dist/domains/code-intelligence/index-path-guard.js +95 -0
  393. package/dist/domains/code-intelligence/interfaces.d.ts +12 -0
  394. package/dist/domains/code-intelligence/plugin.js +5 -1
  395. package/dist/domains/code-intelligence/services/knowledge-graph.d.ts +6 -0
  396. package/dist/domains/code-intelligence/services/knowledge-graph.js +42 -5
  397. package/dist/domains/code-intelligence/services/metric-collector/index.d.ts +2 -2
  398. package/dist/domains/code-intelligence/services/metric-collector/index.js +2 -3
  399. package/dist/domains/code-intelligence/services/metric-collector/loc-counter.d.ts +1 -1
  400. package/dist/domains/code-intelligence/services/metric-collector/loc-counter.js +11 -36
  401. package/dist/domains/code-intelligence/services/metric-collector/test-counter.d.ts +1 -1
  402. package/dist/domains/code-intelligence/services/metric-collector/test-counter.js +45 -103
  403. package/dist/domains/contract-testing/coordinator.js +3 -1
  404. package/dist/domains/contract-testing/services/api-compatibility.js +7 -6
  405. package/dist/domains/contract-testing/services/contract-validator.js +6 -4
  406. package/dist/domains/contract-testing/services/schema-validator.js +8 -5
  407. package/dist/domains/defect-intelligence/interfaces.d.ts +2 -0
  408. package/dist/domains/defect-intelligence/plugin.js +11 -2
  409. package/dist/domains/defect-intelligence/prediction-history.d.ts +27 -0
  410. package/dist/domains/defect-intelligence/prediction-history.js +68 -0
  411. package/dist/domains/defect-intelligence/services/defect-predictor.js +29 -12
  412. package/dist/domains/enterprise-integration/services/message-broker-service.js +3 -2
  413. package/dist/domains/enterprise-integration/services/odata-service.js +2 -1
  414. package/dist/domains/enterprise-integration/services/sap-integration-service.js +3 -2
  415. package/dist/domains/learning-optimization/active-patterns.d.ts +14 -14
  416. package/dist/domains/learning-optimization/active-patterns.js +17 -14
  417. package/dist/domains/learning-optimization/coordinator-helpers.js +2 -3
  418. package/dist/domains/learning-optimization/coordinator.d.ts +0 -3
  419. package/dist/domains/learning-optimization/coordinator.js +52 -107
  420. package/dist/domains/learning-optimization/index.d.ts +1 -1
  421. package/dist/domains/learning-optimization/interfaces.d.ts +62 -6
  422. package/dist/domains/learning-optimization/pattern-archive.d.ts +31 -0
  423. package/dist/domains/learning-optimization/pattern-archive.js +56 -0
  424. package/dist/domains/learning-optimization/pattern-consolidation.d.ts +12 -0
  425. package/dist/domains/learning-optimization/pattern-consolidation.js +41 -0
  426. package/dist/domains/learning-optimization/plugin.js +11 -1
  427. package/dist/domains/learning-optimization/reward-source.d.ts +50 -0
  428. package/dist/domains/learning-optimization/reward-source.js +65 -0
  429. package/dist/domains/learning-optimization/services/learning-coordinator.d.ts +7 -5
  430. package/dist/domains/learning-optimization/services/learning-coordinator.js +98 -75
  431. package/dist/domains/learning-optimization/services/metrics-optimizer.d.ts +14 -4
  432. package/dist/domains/learning-optimization/services/metrics-optimizer.js +129 -63
  433. package/dist/domains/learning-optimization/services/transfer-specialist.js +25 -15
  434. package/dist/domains/security-compliance/plugin.js +17 -3
  435. package/dist/domains/security-compliance/sast-path-guard.d.ts +9 -0
  436. package/dist/domains/security-compliance/sast-path-guard.js +17 -0
  437. package/dist/domains/security-compliance/services/scanners/dast-auth-testing.js +46 -56
  438. package/dist/domains/security-compliance/services/scanners/dast-helpers.js +76 -91
  439. package/dist/domains/security-compliance/services/scanners/dast-injection-testing.js +52 -62
  440. package/dist/domains/security-compliance/services/scanners/dast-scanner.d.ts +21 -1
  441. package/dist/domains/security-compliance/services/scanners/dast-scanner.js +29 -24
  442. package/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js +4 -1
  443. package/dist/domains/test-execution/coordinator.d.ts +5 -0
  444. package/dist/domains/test-execution/coordinator.js +35 -20
  445. package/dist/domains/test-execution/interfaces.d.ts +41 -0
  446. package/dist/domains/test-execution/plugin.js +19 -4
  447. package/dist/domains/test-execution/services/flaky-detector.js +9 -7
  448. package/dist/domains/test-execution/services/retry-handler.js +46 -7
  449. package/dist/domains/test-execution/services/runner-test-cases.d.ts +32 -0
  450. package/dist/domains/test-execution/services/runner-test-cases.js +87 -0
  451. package/dist/domains/test-execution/services/test-executor.d.ts +5 -0
  452. package/dist/domains/test-execution/services/test-executor.js +31 -9
  453. package/dist/domains/test-generation/plugin.js +7 -2
  454. package/dist/domains/test-generation/services/test-data-generator.js +3 -1
  455. package/dist/domains/visual-accessibility/services/axe-core-audit.js +1 -1
  456. package/dist/hooks/cross-phase-hooks.js +2 -1
  457. package/dist/init/fleet-integration.js +2 -0
  458. package/dist/init/init-wizard-steps.js +2 -0
  459. package/dist/init/phases/06-code-intelligence.js +2 -0
  460. package/dist/init/phases/10-workers.js +51 -6
  461. package/dist/integrations/browser/agent-browser/client.js +37 -52
  462. package/dist/integrations/browser/agent-browser/command-executor.d.ts +33 -27
  463. package/dist/integrations/browser/agent-browser/command-executor.js +53 -54
  464. package/dist/integrations/browser/agent-browser/session-manager.d.ts +1 -1
  465. package/dist/integrations/browser/agent-browser/session-manager.js +8 -9
  466. package/dist/integrations/browser/web-content-fetcher.js +9 -3
  467. package/dist/integrations/vibium/client.js +2 -2
  468. package/dist/integrations/vibium/runtime.d.ts +1 -1
  469. package/dist/integrations/vibium/runtime.js +14 -11
  470. package/dist/kernel/anti-drift-middleware.d.ts +44 -5
  471. package/dist/kernel/anti-drift-middleware.js +147 -11
  472. package/dist/kernel/interfaces.d.ts +5 -0
  473. package/dist/kernel/unified-memory-schemas.d.ts +3 -2
  474. package/dist/kernel/unified-memory-schemas.js +3 -2
  475. package/dist/kernel/unified-memory.js +25 -6
  476. package/dist/learning/dream/dream-commit.d.ts +65 -0
  477. package/dist/learning/dream/dream-commit.js +104 -0
  478. package/dist/learning/dream/dream-engine.d.ts +81 -31
  479. package/dist/learning/dream/dream-engine.js +225 -168
  480. package/dist/learning/dream/dream-insights-pruner.d.ts +24 -4
  481. package/dist/learning/dream/dream-insights-pruner.js +85 -11
  482. package/dist/learning/dream/index.d.ts +3 -2
  483. package/dist/learning/dream/index.js +3 -1
  484. package/dist/learning/dream/rvcow-branch-manager.d.ts +8 -1
  485. package/dist/learning/dream/rvcow-branch-manager.js +8 -1
  486. package/dist/learning/dream/speculative-dreamer.d.ts +50 -74
  487. package/dist/learning/dream/speculative-dreamer.js +64 -111
  488. package/dist/learning/dream/spreading-activation.d.ts +2 -1
  489. package/dist/learning/dream/spreading-activation.js +15 -6
  490. package/dist/learning/experience-capture.d.ts +9 -0
  491. package/dist/learning/experience-capture.js +18 -4
  492. package/dist/learning/qe-reasoning-bank-types.d.ts +17 -2
  493. package/dist/learning/qe-reasoning-bank.js +22 -11
  494. package/dist/learning/skill-validation-learner.d.ts +2 -0
  495. package/dist/learning/skill-validation-learner.js +29 -21
  496. package/dist/learning/sqlite-persistence.d.ts +6 -0
  497. package/dist/learning/sqlite-persistence.js +16 -2
  498. package/dist/learning/usage-outcome.d.ts +68 -0
  499. package/dist/learning/usage-outcome.js +84 -0
  500. package/dist/mcp/background-workers.d.ts +13 -1
  501. package/dist/mcp/background-workers.js +23 -3
  502. package/dist/mcp/bundle.js +602 -551
  503. package/dist/mcp/handlers/core-handlers.js +11 -0
  504. package/dist/mcp/handlers/domain-handler-configs.d.ts +19 -0
  505. package/dist/mcp/handlers/domain-handler-configs.js +76 -30
  506. package/dist/mcp/handlers/handler-factory.d.ts +2 -1
  507. package/dist/mcp/handlers/handler-factory.js +37 -15
  508. package/dist/mcp/handlers/orchestrate-routes.d.ts +36 -0
  509. package/dist/mcp/handlers/orchestrate-routes.js +88 -0
  510. package/dist/mcp/handlers/task-handlers.d.ts +3 -0
  511. package/dist/mcp/handlers/task-handlers.js +69 -6
  512. package/dist/mcp/handlers/validation-pipeline-handler.js +6 -2
  513. package/dist/mcp/metrics/metrics-collector.d.ts +11 -9
  514. package/dist/mcp/metrics/metrics-collector.js +13 -26
  515. package/dist/mcp/protocol-server.js +10 -3
  516. package/dist/mcp/security/schema-validator.js +3 -2
  517. package/dist/mcp/tools/code-intelligence/c4.js +11 -1
  518. package/dist/mcp/tools/coverage-analysis/index.js +31 -2
  519. package/dist/mcp/tools/learning-optimization/dream.d.ts +8 -8
  520. package/dist/mcp/tools/learning-optimization/dream.js +38 -34
  521. package/dist/mcp/tools/learning-optimization/optimize.d.ts +52 -5
  522. package/dist/mcp/tools/learning-optimization/optimize.js +164 -80
  523. package/dist/mcp/tools/quality-assessment/gate.js +12 -1
  524. package/dist/mcp/tools/requirements-validation/quality-criteria.js +9 -2
  525. package/dist/memory/crdt/lww-register.js +11 -1
  526. package/dist/migration/agent-compat.js +7 -5
  527. package/dist/migrations/20261018_add_dream_insights_archive.d.ts +27 -0
  528. package/dist/migrations/20261018_add_dream_insights_archive.js +57 -0
  529. package/dist/routing/calibration/ema-calibrator.js +3 -1
  530. package/dist/shared/base-domain-plugin.d.ts +4 -0
  531. package/dist/shared/base-domain-plugin.js +6 -0
  532. package/dist/shared/git/git-analyzer.d.ts +49 -0
  533. package/dist/shared/git/git-analyzer.js +159 -319
  534. package/dist/shared/git/git-process.d.ts +22 -0
  535. package/dist/shared/git/git-process.js +37 -0
  536. package/dist/shared/git/index.d.ts +1 -0
  537. package/dist/shared/git/index.js +1 -0
  538. package/dist/shared/io/payload-path-guard.d.ts +75 -0
  539. package/dist/shared/io/payload-path-guard.js +190 -0
  540. package/dist/shared/llm/cache.js +4 -1
  541. package/dist/shared/llm/router/agent-router-config.js +2 -1
  542. package/dist/shared/llm/translation/tool-translator.js +2 -1
  543. package/dist/shared/security/compliance-patterns.js +3 -1
  544. package/dist/shared/test-runner-args.d.ts +5 -0
  545. package/dist/shared/test-runner-args.js +6 -1
  546. package/dist/shared/test-runner-process.d.ts +32 -0
  547. package/dist/shared/test-runner-process.js +105 -0
  548. package/dist/shared/test-runner-verdict.d.ts +9 -1
  549. package/dist/shared/test-runner-verdict.js +15 -4
  550. package/dist/shared/types/index.d.ts +9 -0
  551. package/dist/shared/types/index.js +13 -0
  552. package/dist/shared/utils/namespaced-search.d.ts +56 -0
  553. package/dist/shared/utils/namespaced-search.js +71 -0
  554. package/dist/shared/utils/safe-expression-evaluator.js +4 -3
  555. package/dist/strange-loop/infra-healing/infra-action-executor.js +7 -3
  556. package/dist/strange-loop/infra-healing/infra-healing-orchestrator.js +10 -9
  557. package/dist/strange-loop/infra-healing/recovery-playbook.js +13 -3
  558. package/dist/validation/gate-reexecute.js +7 -4
  559. package/dist/workers/daemon.d.ts +2 -0
  560. package/dist/workers/daemon.js +23 -6
  561. package/dist/workers/namespaced-keys.d.ts +4 -7
  562. package/dist/workers/namespaced-keys.js +4 -15
  563. package/dist/workers/quality-daemon/ci-monitor.js +9 -5
  564. package/dist/workers/quality-daemon/git-watcher.js +9 -9
  565. package/dist/workers/worker-env.d.ts +16 -8
  566. package/dist/workers/worker-env.js +25 -12
  567. package/dist/workers/worker-manager.js +4 -0
  568. package/dist/workers/workers/defect-predictor.d.ts +8 -3
  569. package/dist/workers/workers/defect-predictor.js +48 -49
  570. package/dist/workers/workers/learning-consolidation.d.ts +3 -1
  571. package/dist/workers/workers/learning-consolidation.js +22 -8
  572. package/dist/workflows/browser/workflow-loader.js +8 -5
  573. package/package.json +1 -1
  574. package/dist/cli/chunks/adapter-FC4EY447.js +0 -2
  575. package/dist/cli/chunks/agent-booster-wasm-W3V5P7LE.js +0 -2
  576. package/dist/cli/chunks/aqe-learning-engine-AUAL6UBL.js +0 -2
  577. package/dist/cli/chunks/base-2XML4WH7.js +0 -2
  578. package/dist/cli/chunks/browser-ZL7OLKJQ.js +0 -4
  579. package/dist/cli/chunks/browser-workflow-2IFEUAAK.js +0 -2
  580. package/dist/cli/chunks/chunk-4GYFONJB.js +0 -4
  581. package/dist/cli/chunks/chunk-6CKTLVYV.js +0 -2
  582. package/dist/cli/chunks/chunk-7H3GNRNA.js +0 -4
  583. package/dist/cli/chunks/chunk-EUVSSIGR.js +0 -12
  584. package/dist/cli/chunks/chunk-I4U7YCXG.js +0 -180
  585. package/dist/cli/chunks/chunk-J7RCI25Q.js +0 -2
  586. package/dist/cli/chunks/chunk-KNHLOANK.js +0 -4
  587. package/dist/cli/chunks/chunk-KNQUHGNY.js +0 -2
  588. package/dist/cli/chunks/chunk-LZWBUVCK.js +0 -5
  589. package/dist/cli/chunks/chunk-PIEKGKW6.js +0 -12
  590. package/dist/cli/chunks/chunk-PWA6XBW4.js +0 -120
  591. package/dist/cli/chunks/chunk-X6VYQVUM.js +0 -2
  592. package/dist/cli/chunks/chunk-YTYS2XSY.js +0 -2
  593. package/dist/cli/chunks/chunk-Z3LDUPLQ.js +0 -6
  594. package/dist/cli/chunks/client-RFUSQRUZ.js +0 -2
  595. package/dist/cli/chunks/core-handlers-ZC7QB432.js +0 -2
  596. package/dist/cli/chunks/cross-domain-router-GRBK7YFZ.js +0 -2
  597. package/dist/cli/chunks/daemon-JER6HE2J.js +0 -12
  598. package/dist/cli/chunks/domain-transfer-NF7UJW7B.js +0 -2
  599. package/dist/cli/chunks/dream-VALD726W.js +0 -2
  600. package/dist/cli/chunks/file-discovery-VL73ASNI.js +0 -2
  601. package/dist/cli/chunks/fleet-GJ66QFXK.js +0 -43
  602. package/dist/cli/chunks/heartbeat-scheduler-FSX7A3ZA.js +0 -2
  603. package/dist/cli/chunks/hnsw-adapter-UX2QT6RL.js +0 -2
  604. package/dist/cli/chunks/hnsw-index-WRDDAMXH.js +0 -2
  605. package/dist/cli/chunks/hybrid-backend-O67NGIB5.js +0 -2
  606. package/dist/cli/chunks/impact-analyzer-6VXWWYWM.js +0 -2
  607. package/dist/cli/chunks/init-wizard-VH34J4TL.js +0 -2
  608. package/dist/cli/chunks/kernel-KJD24NO7.js +0 -2
  609. package/dist/cli/chunks/knowledge-graph-343O2HEZ.js +0 -2
  610. package/dist/cli/chunks/llm-router-service-2M4BT2AO.js +0 -2
  611. package/dist/cli/chunks/load-test-OTQ2JQ5F.js +0 -2
  612. package/dist/cli/chunks/mcp-NOTDZBW5.js +0 -2
  613. package/dist/cli/chunks/memory-backend-4QSNRRV6.js +0 -2
  614. package/dist/cli/chunks/memory-handlers-YFFYRSM6.js +0 -2
  615. package/dist/cli/chunks/pattern-null-store-5USH5MNR.js +0 -2
  616. package/dist/cli/chunks/pipeline-7ATPA6LU.js +0 -19
  617. package/dist/cli/chunks/project-root-SRTA6TBL.js +0 -2
  618. package/dist/cli/chunks/protocol-executor-4WYPCNBS.js +0 -2
  619. package/dist/cli/chunks/qe-reasoning-bank-I4D6SFS4.js +0 -2
  620. package/dist/cli/chunks/queen-coordinator-24UMTZTE.js +0 -2
  621. package/dist/cli/chunks/router-AUD4GATI.js +0 -2
  622. package/dist/cli/chunks/routing-feedback-2FE6SIKQ.js +0 -2
  623. package/dist/cli/chunks/rvf-dual-writer-P5LEUF25.js +0 -2
  624. package/dist/cli/chunks/rvf-migration-adapter-ZCYD5YJS.js +0 -2
  625. package/dist/cli/chunks/rvf-native-adapter-QGV6BW2W.js +0 -2
  626. package/dist/cli/chunks/safe-db-Q6JUKG2A.js +0 -2
  627. package/dist/cli/chunks/schedule-44OSMGE5.js +0 -2
  628. package/dist/cli/chunks/scheduler-V3HO2QQT.js +0 -2
  629. package/dist/cli/chunks/sqlite-persistence-N5T7DWMR.js +0 -2
  630. package/dist/cli/chunks/sync-4IMMQEPT.js +0 -2
  631. package/dist/cli/chunks/task-handlers-FH6DNTHW.js +0 -9
  632. package/dist/cli/chunks/token-bootstrap-HMM3AHXM.js +0 -2
  633. package/dist/cli/chunks/tree-sitter-wasm-parser-56GDQCMR.js +0 -2
  634. package/dist/cli/chunks/unified-memory-RQ3Q4CU3.js +0 -2
  635. package/dist/cli/chunks/unified-memory-hnsw-ZOP5FEYX.js +0 -2
  636. package/dist/cli/chunks/unified-persistence-72OCJJKK.js +0 -2
  637. package/dist/cli/chunks/visual-security-7F5UV23J.js +0 -2
  638. package/dist/cli/chunks/witness-chain-KZ57QUFE.js +0 -2
  639. package/dist/cli/chunks/witness-chain-LFASSMZK.js +0 -2
  640. package/dist/cli/chunks/witness-chain-repair-TPHN4DXN.js +0 -2
  641. package/dist/cli/chunks/workflow-orchestrator-ZNWEUYBN.js +0 -2
  642. package/dist/cli/chunks/wrappers-WCAYIQUX.js +0 -2
@@ -3,7 +3,9 @@
3
3
  * Orchestrates learning workflows across all QE domains
4
4
  */
5
5
  import { LoggerFactory } from '../../logging/index.js';
6
- import { readActivePatterns } from './active-patterns.js';
6
+ import { readActivePatterns, LEARNING_NS } from './active-patterns.js';
7
+ import { partitionByRewardSource } from './reward-source.js';
8
+ import { searchAllKeys } from '../../shared/utils/namespaced-search.js';
7
9
  import { v4 as uuidv4 } from 'uuid';
8
10
  import { toError } from '../../shared/error-utils.js';
9
11
  import { rehydrateDates } from '../../shared/utils/kv-date-rehydrate.js';
@@ -19,7 +21,6 @@ import { BaseDomainCoordinator, } from '../base-domain-coordinator.js';
19
21
  // CQ-004: Extracted modules
20
22
  import * as LearningHelpers from './coordinator-helpers.js';
21
23
  import * as ConsensusHelpers from './coordinator-consensus.js';
22
- import { isMeasuredGapPayload } from '../../shared/events/domain-events.js';
23
24
  const DEFAULT_CONFIG = {
24
25
  maxConcurrentWorkflows: 3,
25
26
  defaultTimeout: 120000, // 2 minutes
@@ -200,7 +201,10 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
200
201
  // Get experiences from the last cycle
201
202
  const timeRange = TimeRange.lastNDays(1);
202
203
  const experiencesResult = await this.getExperiencesForDomain(domain, timeRange);
203
- const experiences = experiencesResult.success ? experiencesResult.value : [];
204
+ // #1109: the reported `before` value and the optimizer use measured outcomes only.
205
+ const experiences = experiencesResult.success
206
+ ? partitionByRewardSource(experiencesResult.value).measured
207
+ : [];
204
208
  this.updateWorkflowProgress(workflowId, 20);
205
209
  // Mine experiences for patterns
206
210
  const insightsResult = await this.learningService.mineExperiences(domain, timeRange);
@@ -221,12 +225,19 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
221
225
  const optimizationResult = await this.optimizerService.optimizeStrategy(currentStrategy, objective, experiences);
222
226
  if (optimizationResult.success) {
223
227
  strategiesOptimized = 1;
224
- improvements.push({
225
- metric: objective.metric,
226
- before: this.calculateMetricValue(experiences, objective.metric),
227
- after: optimizationResult.value.optimizedStrategy.expectedOutcome[objective.metric] || 0,
228
- percentChange: optimizationResult.value.improvement * 100,
229
- });
228
+ // #1099: `after` is the fitted expectation and `percentChange` the
229
+ // optimizer's estimate; neither was observed. Report no improvement
230
+ // rather than a 0 stand-in when the metric was never predicted.
231
+ const after = optimizationResult.value.optimizedStrategy.expectedOutcome[objective.metric];
232
+ if (typeof after === 'number') {
233
+ improvements.push({
234
+ metric: objective.metric,
235
+ before: this.calculateMetricValue(experiences, objective.metric),
236
+ after,
237
+ percentChange: optimizationResult.value.improvement * 100,
238
+ estimated: true,
239
+ });
240
+ }
230
241
  }
231
242
  }
232
243
  this.updateWorkflowProgress(workflowId, 80);
@@ -319,6 +330,7 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
319
330
  domainsOptimized,
320
331
  totalStrategies,
321
332
  avgImprovement: totalStrategies > 0 ? totalImprovement / totalStrategies : 0,
333
+ improvementEstimated: true,
322
334
  byDomain,
323
335
  };
324
336
  // Publish event
@@ -400,7 +412,8 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
400
412
  const report = {
401
413
  knowledgeShared,
402
414
  domainsUpdated,
403
- transferSuccessRate: totalTransfers > 0 ? successfulTransfers / totalTransfers : 1,
415
+ // #1121: with no transfer attempted there is no rate, not 100%.
416
+ transferSuccessRate: totalTransfers > 0 ? successfulTransfers / totalTransfers : null,
404
417
  newPatternsCreated,
405
418
  };
406
419
  // Publish event
@@ -448,10 +461,12 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
448
461
  const recentMilestones = milestonesResult.success
449
462
  ? milestonesResult.value
450
463
  : [];
451
- // Calculate overall learning rate
452
- const overallLearningRate = patternStats
464
+ // Calculate overall learning rate. #1121: when pattern stats cannot be
465
+ // read, or no measured pattern exists, there is no rate to report; the
466
+ // former 0.5 fallback was an invented value.
467
+ const overallLearningRate = patternStats && patternStats.totalPatterns > 0
453
468
  ? patternStats.avgSuccessRate * 0.6 + (patternStats.avgConfidence * 0.4)
454
- : 0.5;
469
+ : null;
455
470
  // Determine top performing domains
456
471
  const topPerformingDomains = [];
457
472
  if (patternStats) {
@@ -743,19 +758,18 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
743
758
  // Export patterns (#1055: active patterns only — creation provenance
744
759
  // and archives share the `learning:pattern:` prefix). One read covers
745
760
  // every target domain; the previous per-domain loop exported each
746
- // pattern once per target domain.
747
- const activePatterns = await readActivePatterns(this.memory, {
748
- onTruncated: (scanned) => logger.warn('Pattern export key scan hit its cap; export may be incomplete', { scanned }),
749
- });
761
+ // pattern once per target domain. #1071: every key is read, no cap.
762
+ const activePatterns = await readActivePatterns(this.memory, { retrieve: LEARNING_NS });
750
763
  for (const pattern of activePatterns) {
751
764
  if (targetDomains.includes(pattern.domain)) {
752
765
  patterns.push(pattern);
753
766
  }
754
767
  }
755
768
  this.updateWorkflowProgress(workflowId, 30);
756
- // Export knowledge
769
+ // Export knowledge. #1071: no result cap; queryKnowledge reads every
770
+ // shared item before filtering, so other domains cannot crowd these out.
757
771
  const knowledgeResult = await this.transferService.queryKnowledge({
758
- limit: 1000,
772
+ limit: Number.POSITIVE_INFINITY,
759
773
  });
760
774
  if (knowledgeResult.success) {
761
775
  for (const item of knowledgeResult.value) {
@@ -765,10 +779,13 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
765
779
  }
766
780
  }
767
781
  this.updateWorkflowProgress(workflowId, 60);
768
- // Export strategies
769
- const strategyKeys = await this.memory.search(`learning:strategy:optimized:*`, 200);
782
+ // Export strategies from the namespace their writers use (#1071), every
783
+ // key, in key order.
784
+ const strategyKeys = await searchAllKeys(this.memory, 'learning:strategy:optimized:*', {
785
+ retrieve: LEARNING_NS,
786
+ });
770
787
  for (const key of strategyKeys) {
771
- const strategy = await this.memory.get(key);
788
+ const strategy = await this.memory.get(key, LEARNING_NS);
772
789
  if (strategy && targetDomains.includes(strategy.domain)) {
773
790
  strategies.push(strategy);
774
791
  }
@@ -811,7 +828,7 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
811
828
  const conflicts = [];
812
829
  // Import patterns
813
830
  for (const pattern of modelExport.patterns) {
814
- const existing = await this.memory.get(`learning:pattern:${pattern.id}`);
831
+ const existing = await this.memory.get(`learning:pattern:${pattern.id}`, { namespace: 'learning-optimization' });
815
832
  if (existing) {
816
833
  if (existing.confidence < pattern.confidence) {
817
834
  // Overwrite with better pattern
@@ -847,7 +864,8 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
847
864
  }
848
865
  // Import knowledge
849
866
  for (const item of modelExport.knowledge) {
850
- const existing = await this.memory.get(`learning:knowledge:shared:${item.id}`);
867
+ // #1071: compare against the record in the namespace written below.
868
+ const existing = await this.memory.get(`learning:knowledge:shared:${item.id}`, LEARNING_NS);
851
869
  if (existing) {
852
870
  if (item.version > existing.version) {
853
871
  await this.memory.set(`learning:knowledge:shared:${item.id}`, item, {
@@ -882,7 +900,8 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
882
900
  }
883
901
  // Import strategies
884
902
  for (const strategy of modelExport.strategies) {
885
- const existing = await this.memory.get(`learning:strategy:optimized:${strategy.id}`);
903
+ // #1071: compare against the record in the namespace written below.
904
+ const existing = await this.memory.get(`learning:strategy:optimized:${strategy.id}`, LEARNING_NS);
886
905
  if (existing) {
887
906
  if (strategy.confidence > existing.confidence) {
888
907
  await this.memory.set(`learning:strategy:optimized:${strategy.id}`, strategy, { namespace: 'learning-optimization', persist: true });
@@ -928,87 +947,13 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
928
947
  // Event Handling
929
948
  // ============================================================================
930
949
  subscribeToEvents() {
931
- // Subscribe to test execution events for learning
932
- this.eventBus.subscribe('test-execution.TestRunCompleted', this.handleTestRunCompleted.bind(this));
933
- // Subscribe to coverage gap events
934
- this.eventBus.subscribe('coverage-analysis.CoverageGapDetected', this.handleCoverageGap.bind(this));
935
- // Subscribe to quality assessment events
936
- this.eventBus.subscribe('quality-assessment.QualityGateEvaluated', this.handleQualityGate.bind(this));
950
+ // #1110: TestRunCompleted, CoverageGapDetected and QualityGateEvaluated are
951
+ // recorded by LearningOptimizationPlugin, which owns this coordinator and
952
+ // also records the test-run production metric. Subscribing here as well
953
+ // stored every such event twice.
937
954
  // Subscribe to experience capture events (Phase 4 integration)
938
955
  this.eventBus.subscribe('learning.ExperienceCaptured', this.handleExperienceCaptured.bind(this));
939
956
  }
940
- async handleTestRunCompleted(event) {
941
- // Record experience from test run
942
- const { runId, passed, failed, duration } = event.payload;
943
- const successRate = (passed + failed) > 0 ? passed / (passed + failed) : 0;
944
- await this.learningService.recordExperience({
945
- agentId: {
946
- value: 'test-execution',
947
- domain: 'test-execution',
948
- type: 'tester',
949
- },
950
- domain: 'test-execution',
951
- action: 'test-run',
952
- state: {
953
- context: { runId },
954
- metrics: { passed, failed, duration },
955
- },
956
- result: {
957
- success: successRate > 0.8,
958
- outcome: { success_rate: successRate, passed, failed },
959
- duration,
960
- },
961
- reward: successRate,
962
- });
963
- }
964
- async handleCoverageGap(event) {
965
- // #1014: only a gap found in MEASURED coverage is acted on / learned from.
966
- if (!isMeasuredGapPayload(event.payload))
967
- return;
968
- // Record as experience for learning
969
- const { gapId, file, riskScore } = event.payload;
970
- await this.learningService.recordExperience({
971
- agentId: {
972
- value: 'coverage-analysis',
973
- domain: 'coverage-analysis',
974
- type: 'analyzer',
975
- },
976
- domain: 'coverage-analysis',
977
- action: 'gap-detection',
978
- state: {
979
- context: { gapId, file },
980
- metrics: { riskScore },
981
- },
982
- result: {
983
- success: true,
984
- outcome: { risk_score: riskScore },
985
- duration: 0,
986
- },
987
- reward: 1 - riskScore, // Lower risk = higher reward
988
- });
989
- }
990
- async handleQualityGate(event) {
991
- const { gateId, passed } = event.payload;
992
- await this.learningService.recordExperience({
993
- agentId: {
994
- value: 'quality-assessment',
995
- domain: 'quality-assessment',
996
- type: 'validator',
997
- },
998
- domain: 'quality-assessment',
999
- action: 'gate-evaluation',
1000
- state: {
1001
- context: { gateId },
1002
- metrics: { passed: passed ? 1 : 0 },
1003
- },
1004
- result: {
1005
- success: passed,
1006
- outcome: { gate_passed: passed ? 1 : 0 },
1007
- duration: 0,
1008
- },
1009
- reward: passed ? 1 : 0,
1010
- });
1011
- }
1012
957
  /**
1013
958
  * Handle experience captured from ExperienceCaptureService
1014
959
  * This is the bridge between Phase 4 experience capture and the coordinator
@@ -1120,7 +1065,8 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
1120
1065
  sourceProject: 'current',
1121
1066
  targetProject: 'current',
1122
1067
  patternsTransferred: report.knowledgeShared,
1123
- successRate: report.transferSuccessRate,
1068
+ // Published only after a transfer succeeded, so the rate is measured.
1069
+ successRate: report.transferSuccessRate ?? 0,
1124
1070
  };
1125
1071
  const event = createEvent(LearningOptimizationEvents.TransferCompleted, 'learning-optimization', payload);
1126
1072
  await this.eventBus.publish(event);
@@ -1232,9 +1178,8 @@ export class LearningOptimizationCoordinator extends BaseDomainCoordinator {
1232
1178
  retryCount: 3,
1233
1179
  concurrency: 4,
1234
1180
  },
1235
- expectedOutcome: {
1236
- success_rate: 0.8,
1237
- },
1181
+ // #1099: the default strategy has never run, so no outcome is expected.
1182
+ expectedOutcome: {},
1238
1183
  };
1239
1184
  }
1240
1185
  async storeStrategy(domain, strategy) {
@@ -10,5 +10,5 @@ export { LearningCoordinatorService, type LearningCoordinatorConfig as LearningS
10
10
  export { TransferSpecialistService, type TransferSpecialistConfig, type TransferResult, } from './services/transfer-specialist.js';
11
11
  export { MetricsOptimizerService, type MetricsOptimizerConfig, type MetricsSnapshot, } from './services/metrics-optimizer.js';
12
12
  export { ProductionIntelService, type ProductionIntelConfig, type ProductionMetric, type ProductionIncident, type ProductionHealth, } from './services/production-intel.js';
13
- export type { ILearningOptimizationCoordinator, LearningCycleReport, OptimizationReport, CrossDomainSharingReport, LearningDashboard, ModelExport, ImportReport, ImportConflict, Improvement, DomainOptimizationResult, TrendPoint, Milestone, LearnedPattern, PatternType, PatternContext, PatternTemplate, TemplateVariable, PatternStats, IPatternLearningService, Experience, ExperienceResult, StateSnapshot, ResourceUsage, MinedInsights, ExperienceCluster, ExperienceAnomaly, IExperienceMiningService, Knowledge, KnowledgeType, KnowledgeContent, KnowledgeQuery, IKnowledgeSynthesisService, Strategy, OptimizedStrategy, OptimizationObjective, Constraint, ValidationResult, ABTestConfig, ABTestResult, StrategyEvaluation, IStrategyOptimizerService, IPatternRepository, IExperienceRepository, IKnowledgeRepository, IStrategyRepository, PatternLearnedEvent, KnowledgeSharedEvent, StrategyOptimizedEvent, ExperienceRecordedEvent, LearningMilestoneReachedEvent, } from './interfaces.js';
13
+ export type { ILearningOptimizationCoordinator, LearningCycleReport, OptimizationReport, CrossDomainSharingReport, LearningDashboard, ModelExport, ImportReport, ImportConflict, Improvement, DomainOptimizationResult, TrendPoint, Milestone, LearnedPattern, PatternType, PatternContext, PatternTemplate, TemplateVariable, PatternStats, IPatternLearningService, Experience, ExperienceResult, StateSnapshot, ResourceUsage, MinedInsights, ExperienceCluster, ExperienceAnomaly, IExperienceMiningService, Knowledge, KnowledgeType, KnowledgeContent, KnowledgeQuery, IKnowledgeSynthesisService, Strategy, OptimizedStrategy, OptimizationEvaluation, OptimizationObjective, Constraint, ValidationResult, ABTestConfig, ABTestResult, StrategyEvaluation, IStrategyOptimizerService, IPatternRepository, IExperienceRepository, IKnowledgeRepository, IStrategyRepository, PatternLearnedEvent, KnowledgeSharedEvent, StrategyOptimizedEvent, ExperienceRecordedEvent, LearningMilestoneReachedEvent, } from './interfaces.js';
14
14
  //# sourceMappingURL=index.d.ts.map
@@ -23,6 +23,11 @@ export interface LearnedPattern {
23
23
  readonly template: PatternTemplate;
24
24
  readonly createdAt: Date;
25
25
  readonly lastUsedAt: Date;
26
+ /**
27
+ * #1109: 'assigned' when the pattern's rates were learned from assigned
28
+ * rewards. Untagged patterns are read by `patternRewardSourceOf`.
29
+ */
30
+ readonly rewardSource?: 'measured' | 'assigned';
26
31
  }
27
32
  export type PatternType = 'test-pattern' | 'fix-pattern' | 'optimization-pattern' | 'detection-pattern' | 'workflow-pattern' | 'failure-pattern';
28
33
  export interface PatternContext {
@@ -63,6 +68,13 @@ export interface Experience {
63
68
  * when real matched-pattern data exists, never a placeholder.
64
69
  */
65
70
  readonly appliedPatternIds?: readonly string[];
71
+ /**
72
+ * #1109: whether `result.success` and `reward` come from an observed
73
+ * outcome ('measured') or were assigned by the recorder before any outcome
74
+ * existed ('assigned'). Assigned experiences are kept but excluded from
75
+ * every reported rate. Untagged rows are read by `rewardSourceOf`.
76
+ */
77
+ readonly rewardSource?: 'measured' | 'assigned';
66
78
  }
67
79
  export interface StateSnapshot {
68
80
  readonly context: Record<string, unknown>;
@@ -110,9 +122,25 @@ export interface OptimizedStrategy {
110
122
  readonly objective: OptimizationObjective;
111
123
  readonly currentStrategy: Strategy;
112
124
  readonly optimizedStrategy: Strategy;
125
+ /** Relative improvement; an estimate, see `evaluation.estimated` (#1099). */
113
126
  readonly improvement: number;
127
+ /** Share of held-out experiences matching the fitted expectation. */
114
128
  readonly confidence: number;
115
129
  readonly validationResults: ValidationResult[];
130
+ readonly evaluation?: OptimizationEvaluation;
131
+ }
132
+ /**
133
+ * How an optimization's figures were derived (#1099). The optimizer fits on
134
+ * the older experiences and validates on the most recent ones it never saw.
135
+ */
136
+ export interface OptimizationEvaluation {
137
+ readonly method: 'held-out';
138
+ readonly trainingSamples: number;
139
+ readonly heldOutSamples: number;
140
+ /** Figures that were modelled, not observed: the optimized strategy never ran. */
141
+ readonly estimated: string[];
142
+ /** Figures that could not be computed from the experiences given. */
143
+ readonly unmeasured?: string[];
116
144
  }
117
145
  export interface OptimizationObjective {
118
146
  readonly metric: string;
@@ -205,6 +233,10 @@ export interface PatternStats {
205
233
  readonly avgConfidence: number;
206
234
  readonly avgSuccessRate: number;
207
235
  readonly topPatterns: LearnedPattern[];
236
+ /** #1109: patterns left out of every figure because they were learned from assigned rewards. */
237
+ readonly assignedPatternsExcluded?: number;
238
+ /** #1121: untagged patterns mined before #1120 (rate selected over successes); left out likewise. */
239
+ readonly legacyPatternsExcluded?: number;
208
240
  }
209
241
  /**
210
242
  * Experience Mining Service
@@ -233,9 +265,16 @@ export interface IExperienceMiningService {
233
265
  clusterExperiences(experiences: Experience[]): Promise<Result<ExperienceCluster[]>>;
234
266
  }
235
267
  export interface MinedInsights {
268
+ /** Every experience recorded in the range, measured or assigned. */
236
269
  readonly experienceCount: number;
237
- readonly successRate: number;
238
- readonly avgReward: number;
270
+ /** #1109: experiences with a measured outcome; the rates below use only these. */
271
+ readonly measuredExperienceCount?: number;
272
+ /** #1109: experiences left out of the rates because their reward was assigned. */
273
+ readonly assignedRewardsExcluded?: number;
274
+ /** Set when no measured experience exists; the rates are then null. */
275
+ readonly evidenceStatus?: 'insufficient-evidence';
276
+ readonly successRate: number | null;
277
+ readonly avgReward: number | null;
239
278
  readonly patterns: LearnedPattern[];
240
279
  readonly anomalies: ExperienceAnomaly[];
241
280
  readonly recommendations: string[];
@@ -245,7 +284,8 @@ export interface ExperienceCluster {
245
284
  readonly centroid: StateSnapshot;
246
285
  readonly experiences: Experience[];
247
286
  readonly commonActions: string[];
248
- readonly avgReward: number;
287
+ /** Over members with a measured outcome; null when every member's reward was assigned. */
288
+ readonly avgReward: number | null;
249
289
  }
250
290
  export interface ExperienceAnomaly {
251
291
  readonly experienceId: string;
@@ -283,9 +323,15 @@ export interface ABTestConfig {
283
323
  }
284
324
  export interface ABTestResult {
285
325
  readonly winner: 'A' | 'B' | 'inconclusive';
326
+ /** Set when either strategy has fewer recorded samples than `minSamples`. */
327
+ readonly evidenceStatus?: 'insufficient-evidence';
328
+ readonly unmeasured?: string[];
286
329
  readonly strategyAMetrics: Record<string, number>;
287
330
  readonly strategyBMetrics: Record<string, number>;
288
- readonly pValue: number;
331
+ /** Absent when there was not enough recorded evidence to test. */
332
+ readonly pValue?: number;
333
+ /** Why pValue is absent although both arms had enough samples. */
334
+ readonly pValueUnavailableReason?: 'zero-variance';
289
335
  readonly sampleSizeA: number;
290
336
  readonly sampleSizeB: number;
291
337
  }
@@ -295,6 +341,9 @@ export interface StrategyEvaluation {
295
341
  readonly strengths: string[];
296
342
  readonly weaknesses: string[];
297
343
  readonly improvementAreas: string[];
344
+ /** #1109: no measured experience was available, so no metric is reported. */
345
+ readonly evidenceStatus?: 'insufficient-evidence';
346
+ readonly assignedRewardsExcluded?: number;
298
347
  }
299
348
  /**
300
349
  * Knowledge Synthesis Service
@@ -419,26 +468,33 @@ export interface Improvement {
419
468
  readonly before: number;
420
469
  readonly after: number;
421
470
  readonly percentChange: number;
471
+ /** True when `after` and `percentChange` were modelled, not observed (#1099). */
472
+ readonly estimated?: boolean;
422
473
  }
423
474
  export interface OptimizationReport {
424
475
  readonly domainsOptimized: number;
425
476
  readonly totalStrategies: number;
477
+ /** Mean of the optimizers' estimated improvements (#1099). */
426
478
  readonly avgImprovement: number;
479
+ readonly improvementEstimated?: boolean;
427
480
  readonly byDomain: Record<DomainName, DomainOptimizationResult>;
428
481
  }
429
482
  export interface DomainOptimizationResult {
430
483
  readonly strategiesOptimized: number;
484
+ /** Estimated, see OptimizedStrategy.evaluation (#1099). */
431
485
  readonly avgImprovement: number;
432
486
  readonly bestStrategy: Strategy;
433
487
  }
434
488
  export interface CrossDomainSharingReport {
435
489
  readonly knowledgeShared: number;
436
490
  readonly domainsUpdated: DomainName[];
437
- readonly transferSuccessRate: number;
491
+ /** Null when no transfer was attempted (#1121). */
492
+ readonly transferSuccessRate: number | null;
438
493
  readonly newPatternsCreated: number;
439
494
  }
440
495
  export interface LearningDashboard {
441
- readonly overallLearningRate: number;
496
+ /** Null when pattern stats are unavailable or no measured pattern exists (#1121). */
497
+ readonly overallLearningRate: number | null;
442
498
  readonly totalPatterns: number;
443
499
  readonly totalKnowledge: number;
444
500
  readonly experiencesLast24h: number;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Agentic QE v3 - Archiving one learned pattern (#1071, #1106)
3
+ *
4
+ * Archiving is a move inside the `learning-optimization` namespace:
5
+ *
6
+ * learning:pattern:<id> -> learning:pattern:archived:<id>
7
+ *
8
+ * Both callers use it: the consolidation protocol's trim path (#1071) and the
9
+ * merge path in `LearningCoordinatorService.consolidatePatterns` (#1106).
10
+ *
11
+ * Safety rules:
12
+ * - Only the active key of the given pattern is deleted.
13
+ * - The active record must still be that pattern (same id, and the same scores
14
+ * and last use) when the archive runs, or nothing is written or deleted.
15
+ * - The archive copy is read back before the active key is deleted, so a
16
+ * failed or partial write never loses the pattern.
17
+ */
18
+ import type { MemoryBackend } from '../../kernel/interfaces.js';
19
+ import type { LearnedPattern } from './interfaces.js';
20
+ export type ArchiveOutcome = 'archived' | 'missing' | 'failed';
21
+ /**
22
+ * Write the archive copy of one pattern and read it back, without touching
23
+ * the active key. `copied` means the copy is verified and the active record
24
+ * is still the given pattern.
25
+ */
26
+ export declare function copyPatternToArchive(memory: MemoryBackend, pattern: LearnedPattern, archivedAt?: Date): Promise<'copied' | Exclude<ArchiveOutcome, 'archived'>>;
27
+ /** Remove the active key of a pattern whose archive copy was verified. */
28
+ export declare function removeArchivedPattern(memory: MemoryBackend, pattern: LearnedPattern): Promise<void>;
29
+ /** Move one pattern to its archive key in the learning namespace. */
30
+ export declare function archiveSelectedPattern(memory: MemoryBackend, pattern: LearnedPattern, archivedAt?: Date): Promise<ArchiveOutcome>;
31
+ //# sourceMappingURL=pattern-archive.d.ts.map
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Agentic QE v3 - Archiving one learned pattern (#1071, #1106)
3
+ *
4
+ * Archiving is a move inside the `learning-optimization` namespace:
5
+ *
6
+ * learning:pattern:<id> -> learning:pattern:archived:<id>
7
+ *
8
+ * Both callers use it: the consolidation protocol's trim path (#1071) and the
9
+ * merge path in `LearningCoordinatorService.consolidatePatterns` (#1106).
10
+ *
11
+ * Safety rules:
12
+ * - Only the active key of the given pattern is deleted.
13
+ * - The active record must still be that pattern (same id, and the same scores
14
+ * and last use) when the archive runs, or nothing is written or deleted.
15
+ * - The archive copy is read back before the active key is deleted, so a
16
+ * failed or partial write never loses the pattern.
17
+ */
18
+ import { LEARNING_NS, LEARNING_PATTERN_KEY_PREFIX, isActivePatternKey } from './active-patterns.js';
19
+ /**
20
+ * Write the archive copy of one pattern and read it back, without touching
21
+ * the active key. `copied` means the copy is verified and the active record
22
+ * is still the given pattern.
23
+ */
24
+ export async function copyPatternToArchive(memory, pattern, archivedAt = new Date()) {
25
+ const activeKey = `${LEARNING_PATTERN_KEY_PREFIX}${pattern.id}`;
26
+ if (!isActivePatternKey(activeKey))
27
+ return 'missing';
28
+ const current = await memory.get(activeKey, LEARNING_NS);
29
+ if (!current || current.id !== pattern.id || changedSinceSelection(current, pattern))
30
+ return 'missing';
31
+ const archiveKey = `${LEARNING_PATTERN_KEY_PREFIX}archived:${pattern.id}`;
32
+ await memory.set(archiveKey, { ...pattern, archivedAt }, { ...LEARNING_NS, persist: true });
33
+ const copy = await memory.get(archiveKey, LEARNING_NS);
34
+ return copy && copy.id === pattern.id ? 'copied' : 'failed';
35
+ }
36
+ /** Remove the active key of a pattern whose archive copy was verified. */
37
+ export async function removeArchivedPattern(memory, pattern) {
38
+ await memory.delete(`${LEARNING_PATTERN_KEY_PREFIX}${pattern.id}`, LEARNING_NS);
39
+ }
40
+ /** Move one pattern to its archive key in the learning namespace. */
41
+ export async function archiveSelectedPattern(memory, pattern, archivedAt = new Date()) {
42
+ const copied = await copyPatternToArchive(memory, pattern, archivedAt);
43
+ if (copied !== 'copied')
44
+ return copied;
45
+ await removeArchivedPattern(memory, pattern);
46
+ return 'archived';
47
+ }
48
+ /** True when the stored record's scores or last use differ from the selected snapshot. */
49
+ function changedSinceSelection(current, selected) {
50
+ const time = (value) => new Date(value).getTime();
51
+ return (!Object.is(current.usageCount, selected.usageCount) ||
52
+ !Object.is(current.confidence, selected.confidence) ||
53
+ !Object.is(current.successRate, selected.successRate) ||
54
+ !Object.is(time(current.lastUsedAt), time(selected.lastUsedAt)));
55
+ }
56
+ //# sourceMappingURL=pattern-archive.js.map
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Agentic QE v3 - Building a consolidated pattern (#1106)
3
+ *
4
+ * Pure: no reads or writes. `LearningCoordinatorService.consolidatePatterns`
5
+ * stores what this returns, and the consolidation protocol's dry run uses it
6
+ * to predict the merged pattern, so a dry run selects the same trims as a
7
+ * real run.
8
+ */
9
+ import type { LearnedPattern } from './interfaces.js';
10
+ /** Merge similar patterns: best template, combined contexts, weighted scores. */
11
+ export declare function buildConsolidatedPattern(patterns: readonly LearnedPattern[], id: string, now?: Date): LearnedPattern;
12
+ //# sourceMappingURL=pattern-consolidation.d.ts.map
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Agentic QE v3 - Building a consolidated pattern (#1106)
3
+ *
4
+ * Pure: no reads or writes. `LearningCoordinatorService.consolidatePatterns`
5
+ * stores what this returns, and the consolidation protocol's dry run uses it
6
+ * to predict the merged pattern, so a dry run selects the same trims as a
7
+ * real run.
8
+ */
9
+ import { isMeasuredPattern } from './reward-source.js';
10
+ /** Usage-weighted mean of one score (equal weights when nothing was used). */
11
+ function usageWeighted(patterns, score) {
12
+ const totalUsage = patterns.reduce((sum, p) => sum + p.usageCount, 0);
13
+ return patterns.reduce((sum, p) => sum + score(p) * (totalUsage > 0 ? p.usageCount / totalUsage : 1 / patterns.length), 0);
14
+ }
15
+ /** Merge similar patterns: best template, combined contexts, weighted scores. */
16
+ export function buildConsolidatedPattern(patterns, id, now = new Date()) {
17
+ const bestPattern = patterns.reduce((best, current) => current.successRate > best.successRate ? current : best);
18
+ const mergedContext = {
19
+ language: bestPattern.context.language,
20
+ framework: bestPattern.context.framework,
21
+ testType: bestPattern.context.testType,
22
+ codeContext: bestPattern.context.codeContext,
23
+ tags: [...new Set(patterns.flatMap((p) => p.context.tags))],
24
+ };
25
+ return {
26
+ id,
27
+ type: bestPattern.type,
28
+ domain: bestPattern.domain,
29
+ name: `consolidated-${bestPattern.name}`,
30
+ description: `Consolidated from ${patterns.length} patterns`,
31
+ confidence: usageWeighted(patterns, (p) => p.confidence),
32
+ usageCount: patterns.reduce((sum, p) => sum + p.usageCount, 0),
33
+ successRate: usageWeighted(patterns, (p) => p.successRate),
34
+ context: mergedContext,
35
+ template: bestPattern.template,
36
+ createdAt: now,
37
+ lastUsedAt: now,
38
+ rewardSource: patterns.every(isMeasuredPattern) ? 'measured' : 'assigned',
39
+ };
40
+ }
41
+ //# sourceMappingURL=pattern-consolidation.js.map
@@ -397,6 +397,8 @@ export class LearningOptimizationPlugin extends BaseDomainPlugin {
397
397
  duration: 0,
398
398
  },
399
399
  reward: 0.8,
400
+ // #1109: generation is recorded before any run, so no outcome exists yet.
401
+ rewardSource: 'assigned',
400
402
  // ADR-110: real matched-pattern IDs from test-generation/coordinator.ts's
401
403
  // GeneratedTests.patternsUsed. This event always represents a successful
402
404
  // generation, so nulls won't fire from here in practice — threaded for
@@ -435,6 +437,7 @@ export class LearningOptimizationPlugin extends BaseDomainPlugin {
435
437
  duration: payload.duration,
436
438
  },
437
439
  reward: successRate,
440
+ rewardSource: 'measured',
438
441
  });
439
442
  // Record production metric
440
443
  await this.productionIntel.recordMetric('test_success_rate', successRate, 'ratio', 'test-execution', ['automated']);
@@ -462,6 +465,8 @@ export class LearningOptimizationPlugin extends BaseDomainPlugin {
462
465
  duration: 0,
463
466
  },
464
467
  reward: 1 - payload.riskScore,
468
+ // #1109: finding a gap is not an observed success of the detection.
469
+ rewardSource: 'assigned',
465
470
  });
466
471
  }
467
472
  async handleQualityGate(event) {
@@ -484,6 +489,7 @@ export class LearningOptimizationPlugin extends BaseDomainPlugin {
484
489
  duration: 0,
485
490
  },
486
491
  reward: payload.passed ? 1 : 0,
492
+ rewardSource: 'measured',
487
493
  });
488
494
  }
489
495
  async handleDefectPredicted(event) {
@@ -505,7 +511,9 @@ export class LearningOptimizationPlugin extends BaseDomainPlugin {
505
511
  outcome: { probability: payload.probability },
506
512
  duration: 0,
507
513
  },
508
- reward: 0.7, // Predictions are valuable
514
+ reward: 0.7,
515
+ // #1109: the prediction has not been confirmed or refuted yet.
516
+ rewardSource: 'assigned',
509
517
  });
510
518
  }
511
519
  async handleImpactAnalysis(event) {
@@ -534,6 +542,8 @@ export class LearningOptimizationPlugin extends BaseDomainPlugin {
534
542
  duration: 0,
535
543
  },
536
544
  reward: 0.8,
545
+ // #1109: the analysis has no observed outcome to score.
546
+ rewardSource: 'assigned',
537
547
  });
538
548
  }
539
549
  // ============================================================================