agentic-qe 3.10.1 → 3.10.2

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 (325) hide show
  1. package/.claude/hooks/README.txt +17 -0
  2. package/.claude/hooks/aqe-hook.cjs +98 -0
  3. package/.claude/hooks/cross-phase-memory.yaml +296 -0
  4. package/.claude/hooks/post-task-sync.sh +113 -0
  5. package/.claude/hooks/v3-domain-workers.json +121 -0
  6. package/.claude/skills/skills-manifest.json +1 -1
  7. package/CHANGELOG.md +76 -0
  8. package/dist/cli/bundle.js +5 -5
  9. package/dist/cli/chunks/adapter-CR6J5C76.js +2 -0
  10. package/dist/cli/chunks/{agent-booster-wasm-FZLWOPSX.js → agent-booster-wasm-DHSIPFTH.js} +2 -2
  11. package/dist/cli/chunks/{agent-handler-KAGRVCKS.js → agent-handler-FPQVHGGT.js} +2 -2
  12. package/dist/cli/chunks/{agent-memory-branch-JJKFEXQW.js → agent-memory-branch-OLOF5ZHV.js} +2 -2
  13. package/dist/cli/chunks/aqe-learning-engine-2MNTHMB6.js +2 -0
  14. package/dist/cli/chunks/{audit-DN5SY4JJ.js → audit-ALRYPHGP.js} +2 -2
  15. package/dist/cli/chunks/base-AOQNGMTL.js +2 -0
  16. package/dist/cli/chunks/{hnswlib-node-YX6OOBN6.js → better-sqlite3-5BT5FO64.js} +2 -2
  17. package/dist/cli/chunks/{brain-handler-O7MP5BGY.js → brain-handler-ROZUHCOT.js} +3 -3
  18. package/dist/cli/chunks/{branch-enumerator-ZPTN5J6V.js → branch-enumerator-VK7G4NKJ.js} +2 -2
  19. package/dist/cli/chunks/{browser-PAZE2JSD.js → browser-Q2S75M2F.js} +2 -2
  20. package/dist/cli/chunks/browser-workflow-UJ4A2ZXO.js +2 -0
  21. package/dist/cli/chunks/{chunk-WDTCCPK4.js → chunk-2244IFZA.js} +1 -1
  22. package/dist/cli/chunks/{chunk-WPNZSL4S.js → chunk-22D6VBPD.js} +1 -1
  23. package/dist/cli/chunks/{chunk-2KTRRSKD.js → chunk-24LUQICS.js} +2 -2
  24. package/dist/cli/chunks/{chunk-IHDUWPFY.js → chunk-2EDWGHDA.js} +2 -2
  25. package/dist/cli/chunks/{chunk-TP77PNN6.js → chunk-2JDLQWSV.js} +2 -2
  26. package/dist/cli/chunks/{chunk-GTGONWGX.js → chunk-2OH3ALYB.js} +1 -1
  27. package/dist/cli/chunks/{chunk-WMG5F6R6.js → chunk-3RHHKYUR.js} +2 -2
  28. package/dist/cli/chunks/{chunk-6E7GI2UB.js → chunk-3Z4FHA2E.js} +1 -1
  29. package/dist/cli/chunks/{chunk-JLKHPIQF.js → chunk-4BXGVM2C.js} +1 -1
  30. package/dist/cli/chunks/{chunk-6D57DWQ6.js → chunk-4F3ZTXHP.js} +2 -2
  31. package/dist/cli/chunks/{chunk-3YOPJ7DY.js → chunk-4GTDW2XL.js} +2 -2
  32. package/dist/cli/chunks/{chunk-W2DT3CDE.js → chunk-5HB54RUS.js} +2 -2
  33. package/dist/cli/chunks/{chunk-LF7URN2X.js → chunk-5PL7WTCU.js} +2 -2
  34. package/dist/cli/chunks/{chunk-Y357YFLF.js → chunk-5PRFFHFV.js} +2 -2
  35. package/dist/cli/chunks/{chunk-GXJ4BCGC.js → chunk-5QHSLWLP.js} +2 -2
  36. package/dist/cli/chunks/{chunk-TL5F2S3Z.js → chunk-5WJ3FWL4.js} +2 -2
  37. package/dist/cli/chunks/{chunk-ZTMWJQTZ.js → chunk-6KSCXPPL.js} +2 -2
  38. package/dist/cli/chunks/{chunk-SQBB2DC6.js → chunk-6NZHEM4V.js} +1 -1
  39. package/dist/cli/chunks/{chunk-EUJHHXE6.js → chunk-6ZFHIKQG.js} +2 -2
  40. package/dist/cli/chunks/{chunk-YPOTBXPU.js → chunk-7DKYCVJI.js} +2 -2
  41. package/dist/cli/chunks/{chunk-DQIS6J77.js → chunk-7IVQ6OVR.js} +2 -2
  42. package/dist/cli/chunks/{chunk-DMIYWPQQ.js → chunk-7IZ2OPC2.js} +2 -2
  43. package/dist/cli/chunks/{chunk-VOIWDPIU.js → chunk-7QRMARM7.js} +2 -2
  44. package/dist/cli/chunks/{chunk-KEC5FBAW.js → chunk-7SJX4CFK.js} +1 -1
  45. package/dist/cli/chunks/{chunk-2S4XHK26.js → chunk-7SWD3D6Y.js} +2 -2
  46. package/dist/cli/chunks/{chunk-RRLQFFCO.js → chunk-7V5UHLNY.js} +2 -2
  47. package/dist/cli/chunks/{chunk-G3BQU3Q6.js → chunk-7Z46RDDV.js} +2 -2
  48. package/dist/cli/chunks/{chunk-TNVYKYTO.js → chunk-A5RMQG4N.js} +3 -3
  49. package/dist/cli/chunks/{chunk-PXFQSVA2.js → chunk-AH7FXNFE.js} +3 -3
  50. package/dist/cli/chunks/{chunk-K22TPWOJ.js → chunk-AIUSZC6K.js} +2 -2
  51. package/dist/cli/chunks/{chunk-IK6AJX3C.js → chunk-AOI67HA3.js} +1 -1
  52. package/dist/cli/chunks/{chunk-6VQ5MFJ6.js → chunk-AV7KYE5P.js} +7 -7
  53. package/dist/cli/chunks/{chunk-GTRXZJNX.js → chunk-AWFIEGR3.js} +2 -2
  54. package/dist/cli/chunks/{chunk-6A2NIR2E.js → chunk-BQCSCAUC.js} +2 -2
  55. package/dist/cli/chunks/{chunk-NQZYUH6S.js → chunk-C2M74HCN.js} +1 -1
  56. package/dist/cli/chunks/{chunk-5EU2VQK3.js → chunk-CIRPP7RQ.js} +2 -2
  57. package/dist/cli/chunks/{chunk-Q5VHBI4U.js → chunk-CMACGG4Z.js} +1 -1
  58. package/dist/cli/chunks/{chunk-YGRTMAWB.js → chunk-CTDLI2ON.js} +1 -1
  59. package/dist/cli/chunks/{chunk-P7T5Y735.js → chunk-CV2SBMBW.js} +2 -2
  60. package/dist/cli/chunks/{chunk-UDFLR7GR.js → chunk-DMQPO43S.js} +1 -1
  61. package/dist/cli/chunks/{chunk-XKOKMS5A.js → chunk-DRWGK3YO.js} +2 -2
  62. package/dist/cli/chunks/{chunk-EBQ6YKP2.js → chunk-DZZEHPSJ.js} +2 -2
  63. package/dist/cli/chunks/{chunk-7SQD2TTQ.js → chunk-EA7ZSN3V.js} +1 -1
  64. package/dist/cli/chunks/{chunk-KKNBYXYA.js → chunk-EQBEGDTG.js} +1 -1
  65. package/dist/cli/chunks/{chunk-2UN4DOBJ.js → chunk-ETN5563K.js} +2 -2
  66. package/dist/cli/chunks/{chunk-BECU52UY.js → chunk-EVCOCGVJ.js} +3 -3
  67. package/dist/cli/chunks/{chunk-OC3OJWLB.js → chunk-FO43SQXP.js} +2 -2
  68. package/dist/cli/chunks/{chunk-CKECJH2A.js → chunk-FO73PZVU.js} +2 -2
  69. package/dist/cli/chunks/{chunk-Y2DPXMOR.js → chunk-FPAW77XV.js} +1 -1
  70. package/dist/cli/chunks/{chunk-UDVX34ZG.js → chunk-FY3CUPNN.js} +20 -17
  71. package/dist/cli/chunks/{chunk-EIROAH6N.js → chunk-G5U6Q42D.js} +2 -2
  72. package/dist/cli/chunks/{chunk-VKRMVTWU.js → chunk-HA63NBFK.js} +9 -9
  73. package/dist/cli/chunks/{chunk-2ETDES5W.js → chunk-HHCYSAH3.js} +2 -2
  74. package/dist/cli/chunks/{chunk-57NJQV57.js → chunk-HJME6G5M.js} +1 -1
  75. package/dist/cli/chunks/{chunk-BN7ERYXI.js → chunk-HJORBNXW.js} +1 -1
  76. package/dist/cli/chunks/{chunk-5KFCH7RH.js → chunk-HO37VP4O.js} +1 -1
  77. package/dist/cli/chunks/{chunk-622MIAOR.js → chunk-I677W5BT.js} +3 -3
  78. package/dist/cli/chunks/chunk-IAZEDWRX.js +2 -0
  79. package/dist/cli/chunks/{chunk-KRXKU54J.js → chunk-IICTTDAA.js} +2 -2
  80. package/dist/cli/chunks/{chunk-BGBSYF3K.js → chunk-JF53LRBL.js} +2 -2
  81. package/dist/cli/chunks/{chunk-RPL6K623.js → chunk-KB5L5TTF.js} +3 -3
  82. package/dist/cli/chunks/{chunk-Q24OJX44.js → chunk-L7VIX22Y.js} +2 -2
  83. package/dist/cli/chunks/{chunk-TFNLXAK5.js → chunk-LQTWPSYL.js} +1 -1
  84. package/dist/cli/chunks/{chunk-ECPB7IAH.js → chunk-LZCBSFAU.js} +4 -4
  85. package/dist/cli/chunks/{chunk-G5DTENO3.js → chunk-MCOFJHSJ.js} +2 -2
  86. package/dist/cli/chunks/{chunk-XRK7FBTY.js → chunk-MCZHKXB4.js} +2 -2
  87. package/dist/cli/chunks/{chunk-H44WD7QX.js → chunk-MEY43PIQ.js} +2 -2
  88. package/dist/cli/chunks/{chunk-WL2J6ECN.js → chunk-MMIQ5DMA.js} +2 -2
  89. package/dist/cli/chunks/{chunk-PUXDXIUE.js → chunk-MNUTRAUV.js} +1 -1
  90. package/dist/cli/chunks/{chunk-KCTH5MHE.js → chunk-MNV3E5KY.js} +2 -2
  91. package/dist/cli/chunks/{chunk-EO4B5GS4.js → chunk-MYWQTCS4.js} +1 -1
  92. package/dist/cli/chunks/{chunk-32R7EA7B.js → chunk-NZO4WUSO.js} +3 -3
  93. package/dist/cli/chunks/{chunk-NOCYYXK4.js → chunk-OIEQF7PG.js} +2 -2
  94. package/dist/cli/chunks/{chunk-IPRDHKSI.js → chunk-OIRZJCZY.js} +2 -2
  95. package/dist/cli/chunks/{chunk-ELZ67OHQ.js → chunk-ON4D4TJ4.js} +2 -2
  96. package/dist/cli/chunks/chunk-OPFN5LFT.js +95 -0
  97. package/dist/cli/chunks/{chunk-4AWJ5PE4.js → chunk-ORF2UKQH.js} +1 -1
  98. package/dist/cli/chunks/{chunk-6LRCMFLV.js → chunk-OWQ6HEYI.js} +2 -2
  99. package/dist/cli/chunks/{chunk-GRG3OP34.js → chunk-OXCEUR5F.js} +2 -2
  100. package/dist/cli/chunks/{chunk-SLNGJW4G.js → chunk-PEK6NGVJ.js} +1 -1
  101. package/dist/cli/chunks/{chunk-5ZCVMR5E.js → chunk-PIZYRPMT.js} +2 -2
  102. package/dist/cli/chunks/{chunk-K4T3RDCB.js → chunk-PXTDEO65.js} +2 -2
  103. package/dist/cli/chunks/{chunk-GRYXNWPF.js → chunk-PYIHZXCI.js} +12 -12
  104. package/dist/cli/chunks/{chunk-HRDGN3OK.js → chunk-QBRHKTFT.js} +1 -1
  105. package/dist/cli/chunks/{chunk-COZDJLIL.js → chunk-QEPFXY6G.js} +1 -1
  106. package/dist/cli/chunks/{chunk-HPNEZ7YN.js → chunk-QJ2EHLJ2.js} +1 -1
  107. package/dist/cli/chunks/{chunk-GMKGLZJU.js → chunk-QQNCSEZG.js} +2 -2
  108. package/dist/cli/chunks/{chunk-CR4ERDS2.js → chunk-QSE67XJO.js} +2 -2
  109. package/dist/cli/chunks/{chunk-7CKVAYP3.js → chunk-R2O6OKT2.js} +1 -1
  110. package/dist/cli/chunks/{chunk-OVENSL64.js → chunk-RLXTBL3H.js} +8 -8
  111. package/dist/cli/chunks/{chunk-PW6MOFXG.js → chunk-RNREAOY4.js} +2 -2
  112. package/dist/cli/chunks/{chunk-YYWIA5FX.js → chunk-S3OZ7XSY.js} +1 -1
  113. package/dist/cli/chunks/{chunk-KZJXVIAW.js → chunk-S3ZO7JXS.js} +2 -2
  114. package/dist/cli/chunks/{chunk-ZEMXMDD3.js → chunk-SJH3HYNC.js} +2 -2
  115. package/dist/cli/chunks/{chunk-5OTYBWRL.js → chunk-STEGWLH5.js} +2 -2
  116. package/dist/cli/chunks/{chunk-F3OVFA6W.js → chunk-SVYTN2GT.js} +2 -2
  117. package/dist/cli/chunks/{chunk-QNW335PD.js → chunk-SW4OKUTC.js} +2 -2
  118. package/dist/cli/chunks/{chunk-WS4XVJHI.js → chunk-THRTUW4Z.js} +1 -1
  119. package/dist/cli/chunks/{chunk-NPSBMDVU.js → chunk-TJKDATEU.js} +2 -2
  120. package/dist/cli/chunks/{chunk-H22MMMYY.js → chunk-U3EUH6LX.js} +2 -2
  121. package/dist/cli/chunks/{chunk-FJSR2U65.js → chunk-UUFOHMUG.js} +2 -2
  122. package/dist/cli/chunks/{chunk-RWYW573C.js → chunk-UVU7XLJY.js} +3 -3
  123. package/dist/cli/chunks/{chunk-BF7MUYWC.js → chunk-UWXH2UQK.js} +2 -2
  124. package/dist/cli/chunks/{chunk-UU2Q6XWF.js → chunk-UYYBPWU3.js} +1 -1
  125. package/dist/cli/chunks/{chunk-AUVC3DDB.js → chunk-VSUTI4G6.js} +2 -2
  126. package/dist/cli/chunks/{chunk-25QGPRWN.js → chunk-WDMPJ2M2.js} +2 -2
  127. package/dist/cli/chunks/{chunk-MVGVD6LS.js → chunk-WNR2KAUH.js} +2 -2
  128. package/dist/cli/chunks/{chunk-NDCPEXDN.js → chunk-WSVUSIAZ.js} +2 -2
  129. package/dist/cli/chunks/{chunk-T3UXMPXX.js → chunk-WZJUMJ2S.js} +1 -1
  130. package/dist/cli/chunks/{chunk-TX7SNQKL.js → chunk-X2VAOIUY.js} +1 -1
  131. package/dist/cli/chunks/{chunk-DVOH75S4.js → chunk-XDSA7YUQ.js} +1 -1
  132. package/dist/cli/chunks/{chunk-TNGGVMPQ.js → chunk-XDU624HU.js} +1 -1
  133. package/dist/cli/chunks/{chunk-6ZRMQXVL.js → chunk-XGBAHAGC.js} +2 -2
  134. package/dist/cli/chunks/{chunk-IITKJCPK.js → chunk-XMJTTF5N.js} +2 -2
  135. package/dist/cli/chunks/{chunk-2TDWCXZ6.js → chunk-XPCNUX2U.js} +2 -2
  136. package/dist/cli/chunks/{chunk-W6ZF2CPN.js → chunk-XRJECWZE.js} +1 -1
  137. package/dist/cli/chunks/{chunk-MQYTW2IN.js → chunk-XTCUN36Z.js} +2 -2
  138. package/dist/cli/chunks/{chunk-7MSYTHZM.js → chunk-Y63MBMOV.js} +2 -2
  139. package/dist/cli/chunks/{chunk-6QFONVEE.js → chunk-YACT5WFC.js} +2 -2
  140. package/dist/cli/chunks/{chunk-PLRSKAFZ.js → chunk-YI6GNRQM.js} +2 -2
  141. package/dist/cli/chunks/chunk-YNNOY3XN.js +62 -0
  142. package/dist/cli/chunks/{chunk-XGUQYVJR.js → chunk-YWZHMXTO.js} +2 -2
  143. package/dist/cli/chunks/{chunk-OQP5OFRR.js → chunk-ZDHMZPSL.js} +1 -1
  144. package/dist/cli/chunks/{chunk-NRLT44YB.js → chunk-ZGNZJJFF.js} +1 -1
  145. package/dist/cli/chunks/{chunk-ELUERFGA.js → chunk-ZK2BH23O.js} +2 -2
  146. package/dist/cli/chunks/{chunk-AABKTWXC.js → chunk-ZQUXNG5X.js} +2 -2
  147. package/dist/cli/chunks/{chunk-WQEZKAUR.js → chunk-ZXTO4C7R.js} +2 -2
  148. package/dist/cli/chunks/{ci-EHRUN7O6.js → ci-PYCRCL7G.js} +2 -2
  149. package/dist/cli/chunks/{ci-output-EXDXVXKB.js → ci-output-EKQQFE2D.js} +2 -2
  150. package/dist/cli/chunks/{circuit-breaker-LM4QRAAL.js → circuit-breaker-RH3Q2MJO.js} +2 -2
  151. package/dist/cli/chunks/{claude-flow-setup-ZHUCZVW7.js → claude-flow-setup-DUDXB4VV.js} +2 -2
  152. package/dist/cli/chunks/client-RDPWGOSA.js +2 -0
  153. package/dist/cli/chunks/{cline-installer-WMFLQOW2.js → cline-installer-3Q4WIWUG.js} +2 -2
  154. package/dist/cli/chunks/{code-L7KRLU5E.js → code-E4Q6DGOO.js} +2 -2
  155. package/dist/cli/chunks/{code-index-extractor-FTMUYQC6.js → code-index-extractor-2PCISUOW.js} +2 -2
  156. package/dist/cli/chunks/{codex-installer-B3F6WI3Z.js → codex-installer-YNNNOLJ6.js} +2 -2
  157. package/dist/cli/chunks/{completions-3JZQRNB6.js → completions-2F7TUFBD.js} +2 -2
  158. package/dist/cli/chunks/{complexity-analyzer-LB2FFEKX.js → complexity-analyzer-2B6MHO7W.js} +2 -2
  159. package/dist/cli/chunks/{continuedev-installer-WH6IMV7R.js → continuedev-installer-ENOKRU5M.js} +2 -2
  160. package/dist/cli/chunks/{copilot-installer-NOIEOFJM.js → copilot-installer-6YD2KM5F.js} +2 -2
  161. package/dist/cli/chunks/{cost-tracker-IKX2VYSA.js → cost-tracker-FCH4QOEA.js} +2 -2
  162. package/dist/cli/chunks/{coverage-TD37CYSY.js → coverage-JTOXZE3T.js} +3 -3
  163. package/dist/cli/chunks/cross-domain-router-4K5ZVZEZ.js +2 -0
  164. package/dist/cli/chunks/{cursor-installer-4NSVGRM5.js → cursor-installer-QZFBUGLQ.js} +2 -2
  165. package/dist/cli/chunks/{daemon-LYDV7NRW.js → daemon-K4QFB5FQ.js} +3 -3
  166. package/dist/cli/chunks/{daemon-UWEBUIDT.js → daemon-M422U3ZA.js} +4 -4
  167. package/dist/cli/chunks/{dag-attention-scheduler-NECJGCHC.js → dag-attention-scheduler-BXAAW33V.js} +2 -2
  168. package/dist/cli/chunks/{detect-4XGC7ILO.js → detect-UGSWIOAD.js} +2 -2
  169. package/dist/cli/chunks/{dist-node-GGJDXRKJ.js → dist-node-FN3HX3OK.js} +2 -2
  170. package/dist/cli/chunks/{domain-handler-UOFONAUT.js → domain-handler-7PP7VYA7.js} +2 -2
  171. package/dist/cli/chunks/{domain-transfer-6JLNOYPA.js → domain-transfer-XZM44W7I.js} +2 -2
  172. package/dist/cli/chunks/dream-RPNWM7VS.js +2 -0
  173. package/dist/cli/chunks/{embed-and-insert-pattern-ZM75DQ4J.js → embed-and-insert-pattern-JZVERJ5L.js} +2 -2
  174. package/dist/cli/chunks/{eval-CYZJTHEB.js → eval-466NFF2D.js} +2 -2
  175. package/dist/cli/chunks/{experience-capture-middleware-RBOJLDUB.js → experience-capture-middleware-I7IQCC7V.js} +3 -3
  176. package/dist/cli/chunks/{fast-paths-S5BWZR3L.js → fast-paths-34OICNZA.js} +2 -2
  177. package/dist/cli/chunks/{feature-flags-6E7H3NYP.js → feature-flags-6UBIVTAD.js} +2 -2
  178. package/dist/cli/chunks/{feature-flags-DUNQPDU3.js → feature-flags-X5WBBWSO.js} +2 -2
  179. package/dist/cli/chunks/{file-discovery-PFFKDGYG.js → file-discovery-NLMDBWXX.js} +2 -2
  180. package/dist/cli/chunks/{fleet-RCDZZFXN.js → fleet-W7CYCHDI.js} +3 -3
  181. package/dist/cli/chunks/{gnn-wrapper-5AG3WDWF.js → gnn-wrapper-K4VTAG5X.js} +2 -2
  182. package/dist/cli/chunks/{heartbeat-handler-O2KAEX4Y.js → heartbeat-handler-ZGKF2Z6T.js} +4 -4
  183. package/dist/cli/chunks/heartbeat-scheduler-JBCXMMZO.js +2 -0
  184. package/dist/cli/chunks/hnsw-adapter-3SC2HZIG.js +2 -0
  185. package/dist/cli/chunks/hnsw-index-FQORAR6K.js +2 -0
  186. package/dist/cli/chunks/{hnsw-legacy-bridge-C7FG6YGW.js → hnsw-legacy-bridge-ELDRLKK5.js} +2 -2
  187. package/dist/cli/chunks/{better-sqlite3-XGPW4HK5.js → hnswlib-node-ZGSUMHDC.js} +2 -2
  188. package/dist/cli/chunks/{hooks-FUHNE2P7.js → hooks-T4CBINAV.js} +13 -13
  189. package/dist/cli/chunks/hybrid-router-6CBFDXPR.js +2 -0
  190. package/dist/cli/chunks/{hypergraph-engine-LQRYBNPV.js → hypergraph-engine-UWFW3XP5.js} +2 -2
  191. package/dist/cli/chunks/{hypergraph-handler-AFFNLZVD.js → hypergraph-handler-PK2BI46K.js} +3 -3
  192. package/dist/cli/chunks/impact-analyzer-SOEFVZWG.js +2 -0
  193. package/dist/cli/chunks/{init-handler-BQ6IDBX4.js → init-handler-HNG6KJOU.js} +6 -6
  194. package/dist/cli/chunks/init-wizard-3E4IU5M4.js +2 -0
  195. package/dist/cli/chunks/kernel-GFZP4G5J.js +2 -0
  196. package/dist/cli/chunks/{kilocode-installer-KS72HUSG.js → kilocode-installer-25V7FEJ4.js} +2 -2
  197. package/dist/cli/chunks/{kiro-installer-2ZEFLGRX.js → kiro-installer-7RMTTCQB.js} +2 -2
  198. package/dist/cli/chunks/knowledge-graph-BKRKBU26.js +2 -0
  199. package/dist/cli/chunks/{learning-GGHGJ6B6.js → learning-XQC2MG2R.js} +3 -3
  200. package/dist/cli/chunks/{llm-router-LP6K5BJF.js → llm-router-6KTTONH4.js} +4 -4
  201. package/dist/cli/chunks/llm-router-service-KE4IGZPP.js +2 -0
  202. package/dist/cli/chunks/{load-2MLKXOT2.js → load-BV64P3AL.js} +2 -2
  203. package/dist/cli/chunks/load-test-VSYJV2AO.js +2 -0
  204. package/dist/cli/chunks/{mcp-CDJBJG5H.js → mcp-U5ZN77TA.js} +2 -2
  205. package/dist/cli/chunks/{memory-4LAX7JZS.js → memory-WB5BNBK7.js} +5 -5
  206. package/dist/cli/chunks/memory-backend-B72RGHRF.js +2 -0
  207. package/dist/cli/chunks/{memory-handlers-OBAFR4WV.js → memory-handlers-NWCH7AUO.js} +2 -2
  208. package/dist/cli/chunks/{multi-model-executor-SLJV73HE.js → multi-model-executor-3X3W3UTY.js} +2 -2
  209. package/dist/cli/chunks/{opencode-installer-M76SONWV.js → opencode-installer-TTTMG7ZZ.js} +2 -2
  210. package/dist/cli/chunks/{orchestrator-TJPUDJMP.js → orchestrator-BLCGSHMZ.js} +18 -18
  211. package/dist/cli/chunks/{pipeline-2PVNFT6J.js → pipeline-DZPGMRG7.js} +2 -2
  212. package/dist/cli/chunks/{platform-KCSEDKEE.js → platform-EVMZAUNV.js} +2 -2
  213. package/dist/cli/chunks/{plugin-QX47QF5U.js → plugin-OR55K4HT.js} +2 -2
  214. package/dist/cli/chunks/{prime-radiant-advanced-wasm-L6VWL7VR.js → prime-radiant-advanced-wasm-4ODV27HD.js} +2 -2
  215. package/dist/cli/chunks/protocol-executor-V3F37FPO.js +2 -0
  216. package/dist/cli/chunks/{protocol-handler-WDNJDEUE.js → protocol-handler-ZOTI5PID.js} +2 -2
  217. package/dist/cli/chunks/{prove-3B75DA3S.js → prove-DIMBYJ7V.js} +2 -2
  218. package/dist/cli/chunks/provider-manager-2PN72TT6.js +2 -0
  219. package/dist/cli/chunks/qe-reasoning-bank-P665QNIR.js +2 -0
  220. package/dist/cli/chunks/{quality-UGASS5WM.js → quality-7MX4VL6M.js} +2 -2
  221. package/dist/cli/chunks/queen-coordinator-XD4F7BGB.js +2 -0
  222. package/dist/cli/chunks/{real-embeddings-COBP2LHS.js → real-embeddings-YPUHWRN2.js} +2 -2
  223. package/dist/cli/chunks/{roocode-installer-TOZ4VLFT.js → roocode-installer-WG5AU4QM.js} +2 -2
  224. package/dist/cli/chunks/router-4SSNWDJC.js +2 -0
  225. package/dist/cli/chunks/routing-feedback-O2JSIBW6.js +2 -0
  226. package/dist/cli/chunks/{routing-handler-5TDVSILX.js → routing-handler-LZB4MN2K.js} +2 -2
  227. package/dist/cli/chunks/{ruvector-commands-AM63KWQN.js → ruvector-commands-YE4ADBMC.js} +2 -2
  228. package/dist/cli/chunks/{rvf-dual-writer-UANIFE2M.js → rvf-dual-writer-QS5ATW4C.js} +2 -2
  229. package/dist/cli/chunks/{rvf-migration-adapter-LNPYWAPI.js → rvf-migration-adapter-YIGKSBD3.js} +2 -2
  230. package/dist/cli/chunks/{rvf-migration-coordinator-U47L63DQ.js → rvf-migration-coordinator-2NDCWP7F.js} +2 -2
  231. package/dist/cli/chunks/rvf-native-adapter-WIUHYXRB.js +2 -0
  232. package/dist/cli/chunks/safe-db-WL5Y7ZNS.js +2 -0
  233. package/dist/cli/chunks/schedule-U7QDGU5A.js +2 -0
  234. package/dist/cli/chunks/scheduler-LXKGQYXA.js +2 -0
  235. package/dist/cli/chunks/{security-KDQ2AH7G.js → security-HT4SUT24.js} +3 -3
  236. package/dist/cli/chunks/{shared-rvf-adapter-5MAGLLYJ.js → shared-rvf-adapter-4IZOJL33.js} +2 -2
  237. package/dist/cli/chunks/{shared-rvf-dual-writer-GF2OPPM5.js → shared-rvf-dual-writer-ZKFO7CBY.js} +2 -2
  238. package/dist/cli/chunks/sqlite-persistence-4KFO3SEB.js +2 -0
  239. package/dist/cli/chunks/{status-handler-XZKEL7LO.js → status-handler-AMEMKBI4.js} +2 -2
  240. package/dist/cli/chunks/{structural-health-27QKWW25.js → structural-health-RBADRLC3.js} +2 -2
  241. package/dist/cli/chunks/{sync-V3HGPEJT.js → sync-ARDDLQBS.js} +2 -2
  242. package/dist/cli/chunks/{sync-INNKS6UK.js → sync-PCB23M4K.js} +2 -2
  243. package/dist/cli/chunks/{task-handler-LDUVOM6G.js → task-handler-J26FSCH5.js} +2 -2
  244. package/dist/cli/chunks/{task-handlers-HTCPV7OO.js → task-handlers-AQRLR6BL.js} +3 -3
  245. package/dist/cli/chunks/{test-PCUVGVJL.js → test-YXWSIOSB.js} +4 -4
  246. package/dist/cli/chunks/{test-scheduling-GYVXWCAA.js → test-scheduling-XY532GI4.js} +3 -3
  247. package/dist/cli/chunks/{token-bootstrap-MJ2ANC4P.js → token-bootstrap-KL2QIQ36.js} +2 -2
  248. package/dist/cli/chunks/{token-usage-ZREHROTF.js → token-usage-2MJVE4DT.js} +2 -2
  249. package/dist/cli/chunks/{transformers-6B3FWFYL.js → transformers-QSNTOD2Z.js} +2 -2
  250. package/dist/cli/chunks/{tree-sitter-wasm-parser-JVV234MN.js → tree-sitter-wasm-parser-QJOKHOIW.js} +2 -2
  251. package/dist/cli/chunks/{types-MVZTJI2F.js → types-RNKRSYMO.js} +2 -2
  252. package/dist/cli/chunks/unified-memory-7AS4LIEF.js +2 -0
  253. package/dist/cli/chunks/unified-memory-hnsw-GREESNJX.js +2 -0
  254. package/dist/cli/chunks/unified-persistence-BPJOMZOA.js +2 -0
  255. package/dist/cli/chunks/{upgrade-MKTFEILD.js → upgrade-EKJHIFWP.js} +2 -2
  256. package/dist/cli/chunks/{validate-IABGALSW.js → validate-KS4T7LWC.js} +2 -2
  257. package/dist/cli/chunks/{validate-swarm-RHF53RF6.js → validate-swarm-SKKWRP2H.js} +2 -2
  258. package/dist/cli/chunks/{vibium-RAKW6FMF.js → vibium-FLUQO4IF.js} +2 -2
  259. package/dist/cli/chunks/visual-security-BW662FHQ.js +2 -0
  260. package/dist/cli/chunks/{web-tree-sitter-PYK7F4JZ.js → web-tree-sitter-UMC63DWD.js} +2 -2
  261. package/dist/cli/chunks/{windsurf-installer-S3U2HWZ4.js → windsurf-installer-V3FQGJIQ.js} +2 -2
  262. package/dist/cli/chunks/{witness-chain-435NKQLB.js → witness-chain-GE74TLSO.js} +2 -2
  263. package/dist/cli/chunks/witness-chain-OXVDLNVT.js +2 -0
  264. package/dist/cli/chunks/{workflow-5UHJCZ6J.js → workflow-4YZ2RPWA.js} +4 -4
  265. package/dist/cli/chunks/workflow-orchestrator-KKNR46XV.js +2 -0
  266. package/dist/cli/chunks/{wrappers-RD3NCMLK.js → wrappers-37NLMKPE.js} +2 -2
  267. package/dist/cli/commands/hooks-handlers/command-hooks.js +1 -1
  268. package/dist/cli/commands/hooks-handlers/routing-hooks.js +1 -1
  269. package/dist/cli/commands/hooks-handlers/task-hooks.js +1 -1
  270. package/dist/init/init-wizard-hooks.js +271 -271
  271. package/dist/init/phases/07-hooks.d.ts +7 -0
  272. package/dist/init/phases/07-hooks.js +132 -96
  273. package/dist/learning/agent-routing.d.ts +19 -0
  274. package/dist/learning/agent-routing.js +27 -1
  275. package/dist/learning/dream/dream-scheduler.d.ts +11 -36
  276. package/dist/learning/dream/dream-scheduler.js +44 -0
  277. package/dist/learning/experience-consolidation.d.ts +16 -0
  278. package/dist/learning/experience-consolidation.js +55 -11
  279. package/dist/learning/pattern-lifecycle.d.ts +21 -0
  280. package/dist/learning/pattern-lifecycle.js +70 -6
  281. package/dist/mcp/bundle.js +352 -349
  282. package/dist/mcp/protocol-server.js +13 -14
  283. package/dist/mcp/transport/stdio.d.ts +20 -0
  284. package/dist/mcp/transport/stdio.js +35 -2
  285. package/dist/shared/utils/rabitq.d.ts +133 -0
  286. package/dist/shared/utils/rabitq.js +201 -0
  287. package/package.json +8 -2
  288. package/dist/cli/chunks/adapter-3JS2CN7C.js +0 -2
  289. package/dist/cli/chunks/aqe-learning-engine-Q4GFNGU6.js +0 -2
  290. package/dist/cli/chunks/base-Q3MAL22Y.js +0 -2
  291. package/dist/cli/chunks/browser-workflow-JX3M2UWG.js +0 -2
  292. package/dist/cli/chunks/chunk-IJ4BUSJN.js +0 -95
  293. package/dist/cli/chunks/chunk-VPCE5CIT.js +0 -2
  294. package/dist/cli/chunks/chunk-WO7KYT3X.js +0 -62
  295. package/dist/cli/chunks/client-PA3UJIHH.js +0 -2
  296. package/dist/cli/chunks/cross-domain-router-BVJRP2ZX.js +0 -2
  297. package/dist/cli/chunks/dream-BXZUEIW2.js +0 -2
  298. package/dist/cli/chunks/heartbeat-scheduler-LEKAWFJF.js +0 -2
  299. package/dist/cli/chunks/hnsw-adapter-2TCEG5M2.js +0 -2
  300. package/dist/cli/chunks/hnsw-index-VDPUTEES.js +0 -2
  301. package/dist/cli/chunks/hybrid-router-2EMDIYIG.js +0 -2
  302. package/dist/cli/chunks/impact-analyzer-HFD6CPWC.js +0 -2
  303. package/dist/cli/chunks/init-wizard-552QIVRC.js +0 -2
  304. package/dist/cli/chunks/kernel-5DN6O6EE.js +0 -2
  305. package/dist/cli/chunks/knowledge-graph-76Y77MB6.js +0 -2
  306. package/dist/cli/chunks/llm-router-service-4O6GCEFH.js +0 -2
  307. package/dist/cli/chunks/load-test-FCI2IWRJ.js +0 -2
  308. package/dist/cli/chunks/memory-backend-MKNCBNDE.js +0 -2
  309. package/dist/cli/chunks/protocol-executor-IA7WNT23.js +0 -2
  310. package/dist/cli/chunks/provider-manager-3K5KB5A6.js +0 -2
  311. package/dist/cli/chunks/qe-reasoning-bank-V5Z3BBYY.js +0 -2
  312. package/dist/cli/chunks/queen-coordinator-QOMPA27Z.js +0 -2
  313. package/dist/cli/chunks/router-P5RZUPC4.js +0 -2
  314. package/dist/cli/chunks/routing-feedback-3PS3OZQC.js +0 -2
  315. package/dist/cli/chunks/rvf-native-adapter-TT7OJPKM.js +0 -2
  316. package/dist/cli/chunks/safe-db-PEW7VBAE.js +0 -2
  317. package/dist/cli/chunks/schedule-QHOTHBQE.js +0 -2
  318. package/dist/cli/chunks/scheduler-KXJBYTRT.js +0 -2
  319. package/dist/cli/chunks/sqlite-persistence-TPXJK34J.js +0 -2
  320. package/dist/cli/chunks/unified-memory-ROS2NKR5.js +0 -2
  321. package/dist/cli/chunks/unified-memory-hnsw-FLEUF3XO.js +0 -2
  322. package/dist/cli/chunks/unified-persistence-QC5L7UNQ.js +0 -2
  323. package/dist/cli/chunks/visual-security-NLIOUQCR.js +0 -2
  324. package/dist/cli/chunks/witness-chain-U7X6JX5J.js +0 -2
  325. package/dist/cli/chunks/workflow-orchestrator-APE6BAXH.js +0 -2
@@ -0,0 +1,17 @@
1
+ AQE Hooks Directory
2
+ ====================
3
+
4
+ Claude Code hooks are configured in .claude/settings.json (not as files here).
5
+ This directory contains supporting infrastructure for the learning system.
6
+
7
+ Configured hook types: PreToolUse, PostToolUse, UserPromptSubmit, SessionStart, Stop
8
+
9
+ Files:
10
+ settings.json — Hook definitions (in parent .claude/ directory)
11
+ helpers/brain-checkpoint.cjs — Auto-exports brain to aqe.rvf on session end
12
+ cross-phase-memory.yaml — QCSD feedback loop configuration
13
+
14
+ Manual testing:
15
+ npx agentic-qe hooks session-start --session-id test --json
16
+ npx agentic-qe hooks route --task "generate tests" --json
17
+ npx agentic-qe hooks post-edit --file src/example.ts --success --json
@@ -0,0 +1,98 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Resilient AQE hook shim (#510 item 5 — ports ruflo's hook-shim contract).
4
+ *
5
+ * Written in Node (CommonJS) so ONE file is cross-platform — Node is already a
6
+ * hard dependency of AQE (the CLI is Node >= 20), so this runs identically on
7
+ * Windows / macOS / Linux with no POSIX `.sh` + `.cjs` twin. (It replaced an
8
+ * earlier `aqe-hook.sh`, which forced a Windows twin and a `node_modules/.bin`
9
+ * shell-wrapper spawn — see PR #512 discussion.)
10
+ *
11
+ * Claude Code runs project hooks every turn / tool use. Without this shim the
12
+ * AQE hook commands print init diagnostics to STDOUT before the JSON (e.g.
13
+ * `[hooks] CoherenceService initialized`, `[RVF] Migration adapter active`),
14
+ * polluting the transcript, and a crash/slow init can surface a hook error.
15
+ *
16
+ * Contract:
17
+ * * resolve a PROJECT-LOCAL AQE bundle and run it via THIS node (no shell, no
18
+ * .bin/.cmd wrapper) — or fall back to `npx agentic-qe` for npx-only installs
19
+ * (disable that fallback with AQE_HOOK_NPX=0);
20
+ * * if nothing resolves, no-op (a hook must never block a turn);
21
+ * * SWALLOW stderr;
22
+ * * emit ONLY the top-level JSON object on stdout (drop leading init noise AND
23
+ * trailing async daemon logs) so the --json contract stays parseable;
24
+ * * ALWAYS exit 0.
25
+ *
26
+ * SCOPE: shipped in the npm package (`files` includes `.claude/hooks`) and
27
+ * copied into each user project by `aqe init`, which generates settings.json
28
+ * hooks of the form `node "${CLAUDE_PROJECT_DIR}/.claude/hooks/aqe-hook.cjs"
29
+ * <cmd> ...`. This repo's own .claude/settings.json dogfoods the same file.
30
+ *
31
+ * Usage (from .claude/settings.json):
32
+ * node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" <subcommand> [args...] --json
33
+ */
34
+
35
+ 'use strict';
36
+
37
+ const { spawnSync } = require('node:child_process');
38
+ const fs = require('node:fs');
39
+ const path = require('node:path');
40
+
41
+ const PROJECT = process.env.CLAUDE_PROJECT_DIR || '.';
42
+ const args = process.argv.slice(2); // hook subcommand + its args
43
+
44
+ // Resolve how to run `<runner> hooks <args>`, in priority order:
45
+ // 1. installed dependency bundle (a user's project: node_modules/agentic-qe)
46
+ // 2. local source build (this repo: ./dist)
47
+ // -> run either directly via process.execPath (this node): no shell, no
48
+ // node_modules/.bin/aqe(.cmd) wrapper, fully cross-platform.
49
+ // 3. npx fallback (npx-only installs with no project-local
50
+ // bundle) — `npx -y --prefer-offline agentic-qe hooks ...`. Disable with
51
+ // AQE_HOOK_NPX=0 (used by tests and by anyone who never wants a network
52
+ // reach). When disabled and no local bundle exists, we no-op.
53
+ const candidates = [
54
+ path.join(PROJECT, 'node_modules', 'agentic-qe', 'dist', 'cli', 'bundle.js'),
55
+ path.join(PROJECT, 'dist', 'cli', 'bundle.js'),
56
+ ];
57
+
58
+ let cmd;
59
+ let cmdArgs;
60
+ let bundle;
61
+ for (const p of candidates) {
62
+ try { if (fs.existsSync(p)) { bundle = p; break; } } catch { /* ignore */ }
63
+ }
64
+ if (bundle) {
65
+ cmd = process.execPath;
66
+ cmdArgs = [bundle, 'hooks', ...args];
67
+ } else if (process.env.AQE_HOOK_NPX !== '0') {
68
+ cmd = process.platform === 'win32' ? 'npx.cmd' : 'npx';
69
+ cmdArgs = ['-y', '--prefer-offline', 'agentic-qe', 'hooks', ...args];
70
+ } else {
71
+ process.exit(0); // no project-local AQE and npx disabled -> no-op, never block
72
+ }
73
+
74
+ let out = '';
75
+ try {
76
+ const res = spawnSync(cmd, cmdArgs, {
77
+ stdio: ['ignore', 'pipe', 'ignore'], // swallow stdin + stderr
78
+ encoding: 'utf8',
79
+ maxBuffer: 16 * 1024 * 1024,
80
+ });
81
+ out = (res && res.stdout) || '';
82
+ } catch { /* never block a turn */ }
83
+
84
+ // Emit only the top-level JSON object: the first line beginning with '{' through
85
+ // the first line beginning with '}' (pretty-printed JSON closes at column 0;
86
+ // nested closes are indented). Drops leading init-noise lines AND any async log
87
+ // lines printed after the JSON.
88
+ const lines = out.split('\n');
89
+ const start = lines.findIndex((l) => l.startsWith('{'));
90
+ if (start !== -1) {
91
+ let end = lines.length - 1;
92
+ for (let i = start; i < lines.length; i++) {
93
+ if (lines[i].startsWith('}')) { end = i; break; }
94
+ }
95
+ process.stdout.write(lines.slice(start, end + 1).join('\n') + '\n');
96
+ }
97
+
98
+ process.exit(0);
@@ -0,0 +1,296 @@
1
+ # Cross-Phase Memory Hooks Configuration
2
+ #
3
+ # Defines automatic triggers for storing and querying cross-phase signals.
4
+ # These hooks enable the 5 QCSD feedback loops to operate automatically.
5
+ #
6
+ # Version: 1.0.0
7
+ # Last Updated: 2026-01-25
8
+
9
+ version: "1.0"
10
+ enabled: true
11
+
12
+ # =============================================================================
13
+ # Hook Definitions
14
+ # =============================================================================
15
+
16
+ hooks:
17
+ # ---------------------------------------------------------------------------
18
+ # Loop 1: Production → Ideation (Strategic)
19
+ # ---------------------------------------------------------------------------
20
+
21
+ post-defect-analysis:
22
+ description: "Store risk weights after production defect analysis"
23
+ trigger:
24
+ event: "agent-complete"
25
+ agent: "qe-defect-predictor"
26
+ conditions:
27
+ - "result.defects.length > 0"
28
+ actions:
29
+ - type: "store-signal"
30
+ loop: "strategic"
31
+ namespace: "qcsd-memory/production-patterns/defect-weights"
32
+ extract:
33
+ riskWeights: "result.riskWeights"
34
+ recommendations: "result.recommendations"
35
+ - type: "notify-agent"
36
+ target: "qe-learning-coordinator"
37
+ message: "New risk weights available from production"
38
+
39
+ pre-ideation:
40
+ description: "Query production signals before ideation phase"
41
+ trigger:
42
+ event: "phase-start"
43
+ phase: "ideation"
44
+ actions:
45
+ - type: "query-signals"
46
+ namespace: "qcsd-memory/production-patterns/defect-weights"
47
+ maxAge: "90d"
48
+ injectInto:
49
+ - "qe-risk-assessor"
50
+ - "qe-quality-criteria-recommender"
51
+
52
+ # ---------------------------------------------------------------------------
53
+ # Loop 2: Production → Refinement (Tactical)
54
+ # ---------------------------------------------------------------------------
55
+
56
+ post-pattern-analysis:
57
+ description: "Store SFDIPOT weights after pattern learning"
58
+ trigger:
59
+ event: "agent-complete"
60
+ agent: "qe-pattern-learner"
61
+ conditions:
62
+ - "result.patterns.length > 0"
63
+ actions:
64
+ - type: "store-signal"
65
+ loop: "tactical"
66
+ namespace: "qcsd-memory/production-patterns/failure-modes"
67
+ extract:
68
+ factorWeights: "result.factorWeights"
69
+ featureContext: "result.featureContext"
70
+ recommendations: "result.recommendations"
71
+
72
+ pre-refinement-tactical:
73
+ description: "Query SFDIPOT weights before refinement"
74
+ trigger:
75
+ event: "phase-start"
76
+ phase: "refinement"
77
+ actions:
78
+ - type: "query-signals"
79
+ namespace: "qcsd-memory/production-patterns/failure-modes"
80
+ maxAge: "90d"
81
+ filterBy: "featureContext"
82
+ injectInto:
83
+ - "qe-product-factors-assessor"
84
+
85
+ # ---------------------------------------------------------------------------
86
+ # Loop 3: CI/CD → Development (Operational)
87
+ # ---------------------------------------------------------------------------
88
+
89
+ post-quality-gate:
90
+ description: "Store test health signals after quality gate"
91
+ trigger:
92
+ event: "agent-complete"
93
+ agent: "qe-quality-gate"
94
+ actions:
95
+ - type: "store-signal"
96
+ loop: "operational"
97
+ namespace: "qcsd-memory/cicd-patterns/flaky-tests"
98
+ extract:
99
+ flakyPatterns: "result.flakyTests"
100
+ gateFailures: "result.failures"
101
+ recommendations: "result.testRecommendations"
102
+ - type: "conditional"
103
+ condition: "result.flakyTests.length > 5"
104
+ action:
105
+ type: "notify-agent"
106
+ target: "qe-flaky-hunter"
107
+ priority: "high"
108
+ message: "High flaky test count detected"
109
+
110
+ post-flaky-analysis:
111
+ description: "Update test health with flaky analysis results"
112
+ trigger:
113
+ event: "agent-complete"
114
+ agent: "qe-flaky-hunter"
115
+ actions:
116
+ - type: "update-signal"
117
+ namespace: "qcsd-memory/cicd-patterns/flaky-tests"
118
+ merge:
119
+ flakyPatterns: "result.patterns"
120
+ recommendations.antiPatterns: "result.antiPatterns"
121
+
122
+ pre-development:
123
+ description: "Query CI/CD signals before development"
124
+ trigger:
125
+ event: "phase-start"
126
+ phase: "development"
127
+ actions:
128
+ - type: "query-signals"
129
+ namespace: "qcsd-memory/cicd-patterns/flaky-tests"
130
+ maxAge: "30d"
131
+ injectInto:
132
+ - "qe-test-architect"
133
+ - "qe-tdd-specialist"
134
+
135
+ # ---------------------------------------------------------------------------
136
+ # Loop 4: Development → Refinement (Quality Criteria)
137
+ # ---------------------------------------------------------------------------
138
+
139
+ post-coverage-analysis:
140
+ description: "Store AC quality signals after coverage analysis"
141
+ trigger:
142
+ event: "agent-complete"
143
+ agent: "qe-coverage-specialist"
144
+ conditions:
145
+ - "result.coveragePercentage < 80"
146
+ actions:
147
+ - type: "invoke-agent"
148
+ agent: "qe-gap-detector"
149
+ input:
150
+ coverageData: "result"
151
+ findACProblems: true
152
+
153
+ post-gap-detection:
154
+ description: "Store untestable patterns after gap detection"
155
+ trigger:
156
+ event: "agent-complete"
157
+ agent: "qe-gap-detector"
158
+ actions:
159
+ - type: "store-signal"
160
+ loop: "quality-criteria"
161
+ namespace: "qcsd-memory/development-patterns/ac-problems"
162
+ extract:
163
+ untestablePatterns: "result.untestablePatterns"
164
+ coverageGaps: "result.gaps"
165
+ recommendations: "result.acRecommendations"
166
+
167
+ pre-refinement-quality:
168
+ description: "Query AC quality signals before refinement"
169
+ trigger:
170
+ event: "phase-start"
171
+ phase: "refinement"
172
+ actions:
173
+ - type: "query-signals"
174
+ namespace: "qcsd-memory/development-patterns/ac-problems"
175
+ maxAge: "60d"
176
+ injectInto:
177
+ - "qe-requirements-validator"
178
+ - "qe-bdd-generator"
179
+
180
+ # ---------------------------------------------------------------------------
181
+ # Loop 5: CI/CD → Production (Deploy Trigger)
182
+ # ---------------------------------------------------------------------------
183
+
184
+ post-release-decision:
185
+ description: "Store release signal after CI/CD RELEASE decision for production consumption"
186
+ trigger:
187
+ event: "agent-complete"
188
+ agent: "qe-deployment-advisor"
189
+ conditions:
190
+ - "result.recommendation == 'RELEASE'"
191
+ actions:
192
+ - type: "store-signal"
193
+ loop: "deploy-trigger"
194
+ namespace: "qcsd-memory/cicd-patterns/release-signals"
195
+ extract:
196
+ releaseDecision: "result.recommendation"
197
+ deploymentRisk: "result.deploymentRiskScore"
198
+ qualityGateStatus: "result.qualityGateStatus"
199
+ knownIssues: "result.knownIssues"
200
+ monitoringRecommendations: "result.monitoringRecommendations"
201
+ - type: "notify-agent"
202
+ target: "qe-metrics-optimizer"
203
+ message: "New release deployed - production health assessment recommended"
204
+
205
+ pre-production:
206
+ description: "Query CI/CD release signals and GHA telemetry before production assessment"
207
+ trigger:
208
+ event: "phase-start"
209
+ phase: "production"
210
+ actions:
211
+ - type: "query-signals"
212
+ namespace: "qcsd-memory/cicd-patterns/release-signals"
213
+ maxAge: "7d"
214
+ injectInto:
215
+ - "qe-metrics-optimizer"
216
+ - "qe-defect-predictor"
217
+ - "qe-root-cause-analyzer"
218
+
219
+ # =============================================================================
220
+ # Cleanup Schedule
221
+ # =============================================================================
222
+
223
+ cleanup:
224
+ enabled: true
225
+ schedule: "0 3 * * 0" # Every Sunday at 3 AM
226
+ actions:
227
+ - type: "delete-expired"
228
+ namespaces: "all"
229
+ - type: "report"
230
+ destination: ".agentic-qe/logs/memory-cleanup.log"
231
+
232
+ # =============================================================================
233
+ # Monitoring
234
+ # =============================================================================
235
+
236
+ monitoring:
237
+ enabled: true
238
+ metrics:
239
+ - name: "signals_stored"
240
+ type: "counter"
241
+ labels: ["loop", "namespace"]
242
+ - name: "signals_queried"
243
+ type: "counter"
244
+ labels: ["loop", "namespace", "phase"]
245
+ - name: "signal_age_seconds"
246
+ type: "histogram"
247
+ labels: ["loop"]
248
+ - name: "cleanup_deleted"
249
+ type: "counter"
250
+ labels: ["namespace"]
251
+
252
+ # =============================================================================
253
+ # Signal Routing
254
+ # =============================================================================
255
+
256
+ routing:
257
+ # Which agents can receive injected signals
258
+ authorized_receivers:
259
+ strategic:
260
+ - "qe-risk-assessor"
261
+ - "qe-quality-criteria-recommender"
262
+ tactical:
263
+ - "qe-product-factors-assessor"
264
+ - "qe-bdd-generator"
265
+ operational:
266
+ - "qe-test-architect"
267
+ - "qe-tdd-specialist"
268
+ - "qe-parallel-executor"
269
+ quality-criteria:
270
+ - "qe-requirements-validator"
271
+ - "qe-bdd-generator"
272
+ - "qe-gap-detector"
273
+ deploy-trigger:
274
+ - "qe-metrics-optimizer"
275
+ - "qe-defect-predictor"
276
+ - "qe-root-cause-analyzer"
277
+
278
+ # Signal injection format
279
+ injection_format: |
280
+ ## CROSS-PHASE LEARNING SIGNALS
281
+
282
+ The following signals have been automatically injected from previous phases.
283
+ Apply these learnings to your analysis.
284
+
285
+ {{#each signals}}
286
+ ### Signal: {{this.id}}
287
+ - **From:** {{this.source}} phase
288
+ - **Loop:** {{this.loopType}}
289
+ - **Timestamp:** {{this.timestamp}}
290
+
291
+ **Recommendations:**
292
+ {{#each this.recommendations}}
293
+ - {{this}}
294
+ {{/each}}
295
+
296
+ {{/each}}
@@ -0,0 +1,113 @@
1
+ #!/bin/bash
2
+ #
3
+ # Post-Task Sync Hook
4
+ # Syncs Claude Flow memories to AQE V3 database after task completion
5
+ #
6
+ # This ensures all learning captured by Claude Code tasks
7
+ # is persisted to AQE's database for cross-session learning.
8
+ #
9
+ # Install in settings.json:
10
+ # "hooks": {
11
+ # "post-task": {
12
+ # "command": "bash .claude/hooks/post-task-sync.sh"
13
+ # }
14
+ # }
15
+
16
+ # Configuration
17
+ PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
18
+ CLAUDE_FLOW_STORE="$PROJECT_ROOT/.claude-flow/memory/store.json"
19
+ AQE_V3_DB="$PROJECT_ROOT/.agentic-qe/memory.db"
20
+ SYNC_LOG="$PROJECT_ROOT/.agentic-qe/sync.log"
21
+
22
+ # Create log directory if needed
23
+ mkdir -p "$(dirname "$SYNC_LOG")"
24
+
25
+ log() {
26
+ echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$SYNC_LOG"
27
+ }
28
+
29
+ # Check if files exist
30
+ if [[ ! -f "$CLAUDE_FLOW_STORE" ]]; then
31
+ log "SKIP: Claude Flow store not found"
32
+ exit 0
33
+ fi
34
+
35
+ if [[ ! -f "$AQE_V3_DB" ]]; then
36
+ log "SKIP: AQE V3 database not found"
37
+ exit 0
38
+ fi
39
+
40
+ # Get entry counts before sync
41
+ CF_ENTRIES=$(cat "$CLAUDE_FLOW_STORE" 2>/dev/null | jq '.entries | length // (keys | length)' 2>/dev/null || echo "0")
42
+ AQE_CF_ENTRIES=$(sqlite3 "$AQE_V3_DB" "SELECT COUNT(*) FROM kv_store WHERE key LIKE 'cf:%'" 2>/dev/null || echo "0")
43
+
44
+ # Skip if already in sync
45
+ if [[ "$CF_ENTRIES" == "$AQE_CF_ENTRIES" ]]; then
46
+ log "SKIP: Already in sync ($CF_ENTRIES entries)"
47
+ exit 0
48
+ fi
49
+
50
+ log "SYNC: Claude Flow has $CF_ENTRIES entries, AQE has $AQE_CF_ENTRIES synced"
51
+
52
+ # Run sync via Node.js if available
53
+ if command -v node &> /dev/null; then
54
+ # Try TypeScript sync first
55
+ if [[ -f "$PROJECT_ROOT/dist/sync/claude-flow-bridge.js" ]]; then
56
+ node -e "
57
+ const { syncClaudeFlowToAQE } = require('$PROJECT_ROOT/dist/sync/claude-flow-bridge.js');
58
+ syncClaudeFlowToAQE({ projectRoot: '$PROJECT_ROOT' })
59
+ .then(r => console.log('Synced:', r.entriesSynced))
60
+ .catch(e => console.error('Sync error:', e.message));
61
+ " 2>> "$SYNC_LOG"
62
+ log "DONE: Node.js sync completed"
63
+ exit 0
64
+ fi
65
+ fi
66
+
67
+ # Fallback: Direct SQLite sync
68
+ log "FALLBACK: Using SQLite direct sync"
69
+
70
+ # Read Claude Flow entries and insert into AQE
71
+ node << 'EOFNODE'
72
+ const fs = require('fs');
73
+ const path = require('path');
74
+
75
+ const projectRoot = process.env.PROJECT_ROOT || process.cwd();
76
+ const claudeFlowPath = path.join(projectRoot, '.claude-flow', 'memory', 'store.json');
77
+ const aqeDbPath = path.join(projectRoot, '.agentic-qe', 'memory.db');
78
+
79
+ try {
80
+ const store = JSON.parse(fs.readFileSync(claudeFlowPath, 'utf-8'));
81
+ const entries = store.entries || store;
82
+
83
+ const Database = require('better-sqlite3');
84
+ const db = new Database(aqeDbPath);
85
+ db.pragma('busy_timeout = 5000');
86
+ db.pragma('journal_mode = WAL');
87
+
88
+ const insert = db.prepare(`
89
+ INSERT OR REPLACE INTO kv_store (key, namespace, value, created_at)
90
+ VALUES (?, ?, ?, ?)
91
+ `);
92
+
93
+ let count = 0;
94
+ for (const [key, value] of Object.entries(entries)) {
95
+ if (key.startsWith('_') || key === 'version') continue;
96
+ insert.run(
97
+ 'cf:' + key,
98
+ 'claude-flow',
99
+ JSON.stringify(value),
100
+ Date.now()
101
+ );
102
+ count++;
103
+ }
104
+
105
+ db.close();
106
+ console.log('Synced', count, 'entries');
107
+ } catch (e) {
108
+ console.error('Sync failed:', e.message);
109
+ process.exit(1);
110
+ }
111
+ EOFNODE
112
+
113
+ log "DONE: Fallback sync completed"
@@ -0,0 +1,121 @@
1
+ {
2
+ "description": "V3 DDD Domain-Specific Workers for AQE Self-Learning",
3
+ "version": "3.0.0",
4
+ "domains": {
5
+ "test-generation": {
6
+ "id": "test-generation",
7
+ "displayName": "Test Generation",
8
+ "priority": "high",
9
+ "agents": ["qe-test-generator", "qe-test-architect", "v3-qe-test-architect"],
10
+ "triggers": ["test", "spec", "tdd", "bdd", "unit", "integration"],
11
+ "hooks": ["qe:pre-test-generation", "qe:post-test-generation"],
12
+ "learningEnabled": true
13
+ },
14
+ "test-execution": {
15
+ "id": "test-execution",
16
+ "displayName": "Test Execution",
17
+ "priority": "high",
18
+ "agents": ["qe-test-executor", "qe-flaky-hunter", "v3-qe-parallel-executor"],
19
+ "triggers": ["run", "execute", "parallel", "retry", "flaky"],
20
+ "hooks": ["qe:test-execution-result"],
21
+ "learningEnabled": true
22
+ },
23
+ "coverage-analysis": {
24
+ "id": "coverage-analysis",
25
+ "displayName": "Coverage Analysis",
26
+ "priority": "high",
27
+ "agents": ["qe-coverage-analyzer", "v3-qe-coverage-specialist", "qe-coverage-gap-analyzer"],
28
+ "triggers": ["coverage", "gap", "uncovered", "branch", "line"],
29
+ "hooks": ["qe:pre-coverage-analysis", "qe:post-coverage-analysis", "qe:coverage-gap-identified"],
30
+ "learningEnabled": true
31
+ },
32
+ "quality-assessment": {
33
+ "id": "quality-assessment",
34
+ "displayName": "Quality Assessment",
35
+ "priority": "critical",
36
+ "agents": ["qe-quality-gate", "qe-quality-analyzer", "v3-qe-quality-gate"],
37
+ "triggers": ["quality", "gate", "deploy", "release", "score"],
38
+ "hooks": ["qe:quality-score", "qe:risk-assessment"],
39
+ "learningEnabled": true
40
+ },
41
+ "defect-intelligence": {
42
+ "id": "defect-intelligence",
43
+ "displayName": "Defect Intelligence",
44
+ "priority": "high",
45
+ "agents": ["v3-qe-defect-predictor", "v3-qe-root-cause-analyzer", "qe-flaky-investigator"],
46
+ "triggers": ["bug", "defect", "predict", "root-cause", "flaky"],
47
+ "hooks": ["qe:pattern-learned", "qe:pattern-applied"],
48
+ "learningEnabled": true
49
+ },
50
+ "learning-optimization": {
51
+ "id": "learning-optimization",
52
+ "displayName": "Learning Optimization",
53
+ "priority": "medium",
54
+ "agents": ["v3-qe-learning-coordinator", "v3-qe-pattern-learner", "sona-learning-optimizer"],
55
+ "triggers": ["learn", "train", "pattern", "optimize", "neural"],
56
+ "hooks": ["qe:pattern-learned", "qe:pattern-applied", "qe:pattern-promoted"],
57
+ "learningEnabled": true
58
+ },
59
+ "requirements-validation": {
60
+ "id": "requirements-validation",
61
+ "displayName": "Requirements Validation",
62
+ "priority": "medium",
63
+ "agents": ["qe-requirements-validator", "v3-qe-tdd-specialist"],
64
+ "triggers": ["requirements", "bdd", "gherkin", "feature", "scenario"],
65
+ "hooks": ["qe:pre-test-generation"],
66
+ "learningEnabled": true
67
+ },
68
+ "code-intelligence": {
69
+ "id": "code-intelligence",
70
+ "displayName": "Code Intelligence",
71
+ "priority": "medium",
72
+ "agents": ["qe-code-intelligence", "qe-code-complexity", "code-analyzer"],
73
+ "triggers": ["code", "complexity", "analyze", "semantic", "graph"],
74
+ "hooks": ["qe:agent-routing", "qe:agent-completion"],
75
+ "learningEnabled": true
76
+ },
77
+ "security-compliance": {
78
+ "id": "security-compliance",
79
+ "displayName": "Security & Compliance",
80
+ "priority": "critical",
81
+ "agents": ["qe-security-auditor", "qe-security-scanner", "security-architect"],
82
+ "triggers": ["security", "audit", "sast", "dast", "owasp", "compliance"],
83
+ "hooks": ["qe:risk-assessment"],
84
+ "learningEnabled": true
85
+ },
86
+ "contract-testing": {
87
+ "id": "contract-testing",
88
+ "displayName": "Contract Testing",
89
+ "priority": "high",
90
+ "agents": ["qe-api-contract-validator", "v3-qe-integration-tester"],
91
+ "triggers": ["contract", "api", "pact", "openapi", "graphql", "schema"],
92
+ "hooks": ["qe:pre-test-generation", "qe:post-test-generation"],
93
+ "learningEnabled": true
94
+ },
95
+ "visual-accessibility": {
96
+ "id": "visual-accessibility",
97
+ "displayName": "Visual & Accessibility",
98
+ "priority": "medium",
99
+ "agents": ["qe-visual-tester", "qe-a11y-ally"],
100
+ "triggers": ["visual", "screenshot", "a11y", "wcag", "accessibility", "percy"],
101
+ "hooks": ["qe:pre-test-generation", "qe:quality-score"],
102
+ "learningEnabled": true
103
+ },
104
+ "chaos-resilience": {
105
+ "id": "chaos-resilience",
106
+ "displayName": "Chaos & Resilience",
107
+ "priority": "medium",
108
+ "agents": ["qe-chaos-engineer", "qe-performance-tester", "qe-performance-validator"],
109
+ "triggers": ["chaos", "resilience", "load", "stress", "performance", "fault"],
110
+ "hooks": ["qe:test-execution-result", "qe:quality-score"],
111
+ "learningEnabled": true
112
+ }
113
+ },
114
+ "globalSettings": {
115
+ "enableCrossDomainLearning": true,
116
+ "patternPromotionThreshold": 3,
117
+ "successRateThreshold": 0.7,
118
+ "maxPatternsPerDomain": 1000,
119
+ "cleanupIntervalHours": 24
120
+ }
121
+ }
@@ -939,7 +939,7 @@
939
939
  },
940
940
  "metadata": {
941
941
  "generatedBy": "Agentic QE Fleet",
942
- "fleetVersion": "3.10.1",
942
+ "fleetVersion": "3.10.2",
943
943
  "manifestVersion": "1.4.0",
944
944
  "lastUpdated": "2026-04-13T00:00:00.000Z",
945
945
  "contributors": [