agentic-qe 3.9.36 → 3.10.1

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 (382) hide show
  1. package/.claude/skills/skills-manifest.json +1 -1
  2. package/CHANGELOG.md +147 -0
  3. package/README.md +35 -8
  4. package/assets/skills/skills-manifest.json +1 -1
  5. package/dist/cli/bundle.js +5 -5
  6. package/dist/cli/chunks/adapter-3JS2CN7C.js +2 -0
  7. package/dist/cli/chunks/{agent-booster-wasm-L6D36M77.js → agent-booster-wasm-FZLWOPSX.js} +2 -2
  8. package/dist/cli/chunks/{agent-handler-3JNKP4OI.js → agent-handler-KAGRVCKS.js} +2 -2
  9. package/dist/cli/chunks/{agent-memory-branch-QBRBX7O4.js → agent-memory-branch-JJKFEXQW.js} +2 -2
  10. package/dist/cli/chunks/aqe-learning-engine-Q4GFNGU6.js +2 -0
  11. package/dist/cli/chunks/{audit-M4W43TXQ.js → audit-DN5SY4JJ.js} +2 -2
  12. package/dist/cli/chunks/base-Q3MAL22Y.js +2 -0
  13. package/dist/cli/chunks/{hnswlib-node-NN6GB2YD.js → better-sqlite3-XGPW4HK5.js} +2 -2
  14. package/dist/cli/chunks/{brain-handler-WQN7C55Z.js → brain-handler-O7MP5BGY.js} +3 -3
  15. package/dist/cli/chunks/{branch-enumerator-BOTGLI7M.js → branch-enumerator-ZPTN5J6V.js} +2 -2
  16. package/dist/cli/chunks/{browser-ZFZCR7LP.js → browser-PAZE2JSD.js} +2 -2
  17. package/dist/cli/chunks/browser-workflow-JX3M2UWG.js +2 -0
  18. package/dist/cli/chunks/{chunk-DTJHO3WI.js → chunk-25QGPRWN.js} +2 -2
  19. package/dist/cli/chunks/{chunk-IF4ZZ2HD.js → chunk-2ETDES5W.js} +2 -2
  20. package/dist/cli/chunks/{chunk-556GYKN5.js → chunk-2KTRRSKD.js} +2 -2
  21. package/dist/cli/chunks/{chunk-TOZ6WUAB.js → chunk-2S4XHK26.js} +2 -2
  22. package/dist/cli/chunks/{chunk-O4C3JEOR.js → chunk-2TDWCXZ6.js} +2 -2
  23. package/dist/cli/chunks/{chunk-YUFUGGXY.js → chunk-2UN4DOBJ.js} +2 -2
  24. package/dist/cli/chunks/{chunk-CLATNP57.js → chunk-32R7EA7B.js} +3 -3
  25. package/dist/cli/chunks/{chunk-NYU4YD5V.js → chunk-3YOPJ7DY.js} +2 -2
  26. package/dist/cli/chunks/{chunk-SCBWRKPE.js → chunk-4AWJ5PE4.js} +1 -1
  27. package/dist/cli/chunks/{chunk-TCDGJYM2.js → chunk-57NJQV57.js} +1 -1
  28. package/dist/cli/chunks/{chunk-ZK6GXL5J.js → chunk-5EU2VQK3.js} +2 -2
  29. package/dist/cli/chunks/{chunk-6M2POFDF.js → chunk-5KFCH7RH.js} +1 -1
  30. package/dist/cli/chunks/{chunk-CSDGFQKW.js → chunk-5OTYBWRL.js} +2 -2
  31. package/dist/cli/chunks/{chunk-I7BXATQ6.js → chunk-5ZCVMR5E.js} +2 -2
  32. package/dist/cli/chunks/{chunk-MEQ4OPSL.js → chunk-622MIAOR.js} +3 -3
  33. package/dist/cli/chunks/{chunk-YKZ3ZJWT.js → chunk-6A2NIR2E.js} +2 -2
  34. package/dist/cli/chunks/{chunk-BI54GWTK.js → chunk-6D57DWQ6.js} +2 -2
  35. package/dist/cli/chunks/{chunk-CK5TGFII.js → chunk-6E7GI2UB.js} +1 -1
  36. package/dist/cli/chunks/{chunk-6BHUKCLI.js → chunk-6LRCMFLV.js} +2 -2
  37. package/dist/cli/chunks/{chunk-2AANIKDG.js → chunk-6QFONVEE.js} +2 -2
  38. package/dist/cli/chunks/{chunk-OO2JHVMS.js → chunk-6VQ5MFJ6.js} +3 -3
  39. package/dist/cli/chunks/{chunk-Z5A2ENBC.js → chunk-6ZRMQXVL.js} +2 -2
  40. package/dist/cli/chunks/{chunk-QYUWWTE3.js → chunk-7CKVAYP3.js} +1 -1
  41. package/dist/cli/chunks/{chunk-TG44VKO3.js → chunk-7MSYTHZM.js} +2 -2
  42. package/dist/cli/chunks/{chunk-EAMKH35X.js → chunk-7SQD2TTQ.js} +1 -1
  43. package/dist/cli/chunks/{chunk-GLI5EN6O.js → chunk-AABKTWXC.js} +2 -2
  44. package/dist/cli/chunks/{chunk-AJ2VFSLX.js → chunk-AUVC3DDB.js} +2 -2
  45. package/dist/cli/chunks/{chunk-P4VQTIJE.js → chunk-BECU52UY.js} +3 -3
  46. package/dist/cli/chunks/chunk-BF7MUYWC.js +2 -0
  47. package/dist/cli/chunks/{chunk-VENEJ3UI.js → chunk-BGBSYF3K.js} +2 -2
  48. package/dist/cli/chunks/{chunk-W2DF6FNE.js → chunk-BN7ERYXI.js} +1 -1
  49. package/dist/cli/chunks/{chunk-LPVRFVSC.js → chunk-CKECJH2A.js} +2 -2
  50. package/dist/cli/chunks/{chunk-FK4B2HIW.js → chunk-COZDJLIL.js} +1 -1
  51. package/dist/cli/chunks/{chunk-2EWOYVH3.js → chunk-CR4ERDS2.js} +2 -2
  52. package/dist/cli/chunks/chunk-DMIYWPQQ.js +2 -0
  53. package/dist/cli/chunks/{chunk-QXM3PRVR.js → chunk-DQIS6J77.js} +2 -2
  54. package/dist/cli/chunks/{chunk-P7IOH7L4.js → chunk-DVOH75S4.js} +1 -1
  55. package/dist/cli/chunks/{chunk-DKBBMZWB.js → chunk-EBQ6YKP2.js} +2 -2
  56. package/dist/cli/chunks/{chunk-SJ3SHZUC.js → chunk-ECPB7IAH.js} +4 -4
  57. package/dist/cli/chunks/{chunk-QH7K2UPP.js → chunk-EIROAH6N.js} +2 -2
  58. package/dist/cli/chunks/{chunk-AH3TKDVW.js → chunk-ELUERFGA.js} +2 -2
  59. package/dist/cli/chunks/{chunk-ZBY4HSHR.js → chunk-ELZ67OHQ.js} +2 -2
  60. package/dist/cli/chunks/{chunk-HHGZ4LXC.js → chunk-EO4B5GS4.js} +1 -1
  61. package/dist/cli/chunks/{chunk-5ZTY5JJX.js → chunk-EUJHHXE6.js} +2 -2
  62. package/dist/cli/chunks/{chunk-MFPVS2KP.js → chunk-F3OVFA6W.js} +9 -9
  63. package/dist/cli/chunks/{chunk-RDXIRE2I.js → chunk-FJSR2U65.js} +2 -2
  64. package/dist/cli/chunks/{chunk-TU2PSEDW.js → chunk-G3BQU3Q6.js} +2 -2
  65. package/dist/cli/chunks/{chunk-BNFW4LMD.js → chunk-G5DTENO3.js} +2 -2
  66. package/dist/cli/chunks/{chunk-IMP43AXO.js → chunk-GMKGLZJU.js} +2 -2
  67. package/dist/cli/chunks/{chunk-Y4ERDIPP.js → chunk-GRG3OP34.js} +2 -2
  68. package/dist/cli/chunks/{chunk-PYCYZYIL.js → chunk-GRYXNWPF.js} +4 -4
  69. package/dist/cli/chunks/{chunk-GW7HWFWQ.js → chunk-GTGONWGX.js} +1 -1
  70. package/dist/cli/chunks/{chunk-AH3UC4IV.js → chunk-GTRXZJNX.js} +2 -2
  71. package/dist/cli/chunks/{chunk-QAGAEAKM.js → chunk-GXJ4BCGC.js} +2 -2
  72. package/dist/cli/chunks/{chunk-EXBJCDFM.js → chunk-H22MMMYY.js} +2 -2
  73. package/dist/cli/chunks/{chunk-FZA674BT.js → chunk-H44WD7QX.js} +2 -2
  74. package/dist/cli/chunks/{chunk-NKBCAW27.js → chunk-HPNEZ7YN.js} +1 -1
  75. package/dist/cli/chunks/{chunk-EXUT2LCP.js → chunk-HRDGN3OK.js} +1 -1
  76. package/dist/cli/chunks/{chunk-O5JNHH2D.js → chunk-IHDUWPFY.js} +2 -2
  77. package/dist/cli/chunks/{chunk-GFMSAL5Y.js → chunk-IITKJCPK.js} +2 -2
  78. package/dist/cli/chunks/{chunk-AY2LLGZN.js → chunk-IJ4BUSJN.js} +4 -4
  79. package/dist/cli/chunks/{chunk-NKA3X6VT.js → chunk-IK6AJX3C.js} +1 -1
  80. package/dist/cli/chunks/{chunk-D5CLABLM.js → chunk-IPRDHKSI.js} +2 -2
  81. package/dist/cli/chunks/{chunk-BGD65PL4.js → chunk-JLKHPIQF.js} +1 -1
  82. package/dist/cli/chunks/chunk-K22TPWOJ.js +3 -0
  83. package/dist/cli/chunks/{chunk-6DACR7QY.js → chunk-K4T3RDCB.js} +2 -2
  84. package/dist/cli/chunks/{chunk-LUFY3GGI.js → chunk-KCTH5MHE.js} +2 -2
  85. package/dist/cli/chunks/{chunk-7ZCDG3IM.js → chunk-KEC5FBAW.js} +1 -1
  86. package/dist/cli/chunks/{chunk-PY4B37U3.js → chunk-KKNBYXYA.js} +1 -1
  87. package/dist/cli/chunks/{chunk-X6UGFKHW.js → chunk-KRXKU54J.js} +2 -2
  88. package/dist/cli/chunks/{provider-manager-VPS4W7KG.js → chunk-KZJXVIAW.js} +13 -13
  89. package/dist/cli/chunks/{chunk-C2JK5O55.js → chunk-LF7URN2X.js} +2 -2
  90. package/dist/cli/chunks/{chunk-CAGRQR2U.js → chunk-MQYTW2IN.js} +2 -2
  91. package/dist/cli/chunks/{chunk-KI6RXKP4.js → chunk-MVGVD6LS.js} +2 -2
  92. package/dist/cli/chunks/{chunk-U6QAKKNB.js → chunk-NDCPEXDN.js} +2 -2
  93. package/dist/cli/chunks/{chunk-PUZAIRMY.js → chunk-NOCYYXK4.js} +2 -2
  94. package/dist/cli/chunks/{chunk-L3JJ52N6.js → chunk-NPSBMDVU.js} +2 -2
  95. package/dist/cli/chunks/{chunk-U7B4WCBY.js → chunk-NQZYUH6S.js} +1 -1
  96. package/dist/cli/chunks/{chunk-4R3WXD4U.js → chunk-NRLT44YB.js} +1 -1
  97. package/dist/cli/chunks/{chunk-FSDUNGYM.js → chunk-OC3OJWLB.js} +2 -2
  98. package/dist/cli/chunks/{chunk-5ECOD4O6.js → chunk-OQP5OFRR.js} +1 -1
  99. package/dist/cli/chunks/{chunk-7TO7NTLT.js → chunk-OVENSL64.js} +210 -210
  100. package/dist/cli/chunks/{chunk-5SYH5QMQ.js → chunk-P7T5Y735.js} +2 -2
  101. package/dist/cli/chunks/{chunk-RCU5L7FF.js → chunk-PLRSKAFZ.js} +2 -2
  102. package/dist/cli/chunks/{chunk-74DA4P5K.js → chunk-PUXDXIUE.js} +1 -1
  103. package/dist/cli/chunks/{chunk-A3TOJ4KN.js → chunk-PW6MOFXG.js} +2 -2
  104. package/dist/cli/chunks/chunk-PXFQSVA2.js +12 -0
  105. package/dist/cli/chunks/{chunk-5MSZREOD.js → chunk-Q24OJX44.js} +2 -2
  106. package/dist/cli/chunks/{chunk-XNXFEMWT.js → chunk-Q5VHBI4U.js} +1 -1
  107. package/dist/cli/chunks/{chunk-HOZNVDFF.js → chunk-QNW335PD.js} +2 -2
  108. package/dist/cli/chunks/{chunk-ESIE3MT5.js → chunk-RPL6K623.js} +3 -3
  109. package/dist/cli/chunks/{chunk-JFDNNXIX.js → chunk-RRLQFFCO.js} +4 -4
  110. package/dist/cli/chunks/{chunk-G6Q66YLG.js → chunk-RWYW573C.js} +3 -3
  111. package/dist/cli/chunks/{chunk-CJQT3MYN.js → chunk-SLNGJW4G.js} +1 -1
  112. package/dist/cli/chunks/{chunk-PGRDHDEJ.js → chunk-SQBB2DC6.js} +1 -1
  113. package/dist/cli/chunks/{chunk-GWLLNJ64.js → chunk-T3UXMPXX.js} +1 -1
  114. package/dist/cli/chunks/{chunk-MJJAHA2T.js → chunk-TFNLXAK5.js} +1 -1
  115. package/dist/cli/chunks/{chunk-YE42UTLT.js → chunk-TL5F2S3Z.js} +2 -2
  116. package/dist/cli/chunks/{chunk-JA7YARLP.js → chunk-TNGGVMPQ.js} +1 -1
  117. package/dist/cli/chunks/{chunk-YMB4YVFX.js → chunk-TNVYKYTO.js} +3 -3
  118. package/dist/cli/chunks/{chunk-FYJE4QLL.js → chunk-TP77PNN6.js} +2 -2
  119. package/dist/cli/chunks/{chunk-2KMCRASK.js → chunk-TX7SNQKL.js} +1 -1
  120. package/dist/cli/chunks/{chunk-TK7TGVVQ.js → chunk-UDFLR7GR.js} +1 -1
  121. package/dist/cli/chunks/{chunk-G7YDYXQH.js → chunk-UDVX34ZG.js} +2 -2
  122. package/dist/cli/chunks/{chunk-5RPHV7Y3.js → chunk-UU2Q6XWF.js} +1 -1
  123. package/dist/cli/chunks/{chunk-27FNROZ2.js → chunk-VKRMVTWU.js} +49 -49
  124. package/dist/cli/chunks/{chunk-AWC7G2D3.js → chunk-VOIWDPIU.js} +2 -2
  125. package/dist/cli/chunks/chunk-VPCE5CIT.js +2 -0
  126. package/dist/cli/chunks/{chunk-6M44C43I.js → chunk-W2DT3CDE.js} +2 -2
  127. package/dist/cli/chunks/{chunk-GAC4MD6S.js → chunk-W6ZF2CPN.js} +1 -1
  128. package/dist/cli/chunks/{chunk-5OAAJUGO.js → chunk-WDTCCPK4.js} +1 -1
  129. package/dist/cli/chunks/{chunk-NMHULQAV.js → chunk-WL2J6ECN.js} +2 -2
  130. package/dist/cli/chunks/chunk-WMG5F6R6.js +2 -0
  131. package/dist/cli/chunks/{chunk-MAHLTWGV.js → chunk-WO7KYT3X.js} +2 -2
  132. package/dist/cli/chunks/{chunk-5M63H6RY.js → chunk-WPNZSL4S.js} +1 -1
  133. package/dist/cli/chunks/{chunk-X6IEQVSF.js → chunk-WQEZKAUR.js} +2 -2
  134. package/dist/cli/chunks/{chunk-BUVY7IGM.js → chunk-WS4XVJHI.js} +1 -1
  135. package/dist/cli/chunks/{chunk-66636UWH.js → chunk-XGUQYVJR.js} +2 -2
  136. package/dist/cli/chunks/{chunk-3CIQ6CQ4.js → chunk-XKOKMS5A.js} +2 -2
  137. package/dist/cli/chunks/{chunk-TXSVZYFA.js → chunk-XRK7FBTY.js} +2 -2
  138. package/dist/cli/chunks/{chunk-QMUTKI34.js → chunk-Y2DPXMOR.js} +1 -1
  139. package/dist/cli/chunks/{chunk-F57OUXHJ.js → chunk-Y357YFLF.js} +2 -2
  140. package/dist/cli/chunks/{chunk-EDG4NEET.js → chunk-YGRTMAWB.js} +1 -1
  141. package/dist/cli/chunks/{chunk-LIE24NRL.js → chunk-YPOTBXPU.js} +2 -2
  142. package/dist/cli/chunks/{chunk-F5IVWV2P.js → chunk-YYWIA5FX.js} +1 -1
  143. package/dist/cli/chunks/{chunk-OLBYILKU.js → chunk-ZEMXMDD3.js} +2 -2
  144. package/dist/cli/chunks/{chunk-DCXFHBHS.js → chunk-ZTMWJQTZ.js} +2 -2
  145. package/dist/cli/chunks/{ci-YA6SQ3PU.js → ci-EHRUN7O6.js} +2 -2
  146. package/dist/cli/chunks/{ci-output-KKHXCQI4.js → ci-output-EXDXVXKB.js} +2 -2
  147. package/dist/cli/chunks/{circuit-breaker-RTBCXGKA.js → circuit-breaker-LM4QRAAL.js} +2 -2
  148. package/dist/cli/chunks/{claude-flow-setup-CRV3Y6LO.js → claude-flow-setup-ZHUCZVW7.js} +2 -2
  149. package/dist/cli/chunks/client-PA3UJIHH.js +2 -0
  150. package/dist/cli/chunks/{cline-installer-IS2VLXQS.js → cline-installer-WMFLQOW2.js} +2 -2
  151. package/dist/cli/chunks/{code-3CSNTK5O.js → code-L7KRLU5E.js} +2 -2
  152. package/dist/cli/chunks/{code-index-extractor-P2YXEJGV.js → code-index-extractor-FTMUYQC6.js} +2 -2
  153. package/dist/cli/chunks/{codex-installer-QGDV2CAQ.js → codex-installer-B3F6WI3Z.js} +2 -2
  154. package/dist/cli/chunks/{completions-TYECEYHY.js → completions-3JZQRNB6.js} +2 -2
  155. package/dist/cli/chunks/{complexity-analyzer-GA5KSFF2.js → complexity-analyzer-LB2FFEKX.js} +2 -2
  156. package/dist/cli/chunks/{continuedev-installer-NW5Y4ZMI.js → continuedev-installer-WH6IMV7R.js} +2 -2
  157. package/dist/cli/chunks/{copilot-installer-E5BIBYG6.js → copilot-installer-NOIEOFJM.js} +2 -2
  158. package/dist/cli/chunks/{cost-tracker-JLSEY4ID.js → cost-tracker-IKX2VYSA.js} +2 -2
  159. package/dist/cli/chunks/{coverage-4TH275AN.js → coverage-TD37CYSY.js} +3 -3
  160. package/dist/cli/chunks/cross-domain-router-BVJRP2ZX.js +2 -0
  161. package/dist/cli/chunks/{cursor-installer-4SXSE5YT.js → cursor-installer-4NSVGRM5.js} +2 -2
  162. package/dist/cli/chunks/{daemon-7T4RZQH6.js → daemon-LYDV7NRW.js} +3 -3
  163. package/dist/cli/chunks/{daemon-U6MP4P6S.js → daemon-UWEBUIDT.js} +4 -4
  164. package/dist/cli/chunks/{dag-attention-scheduler-DT2V46XR.js → dag-attention-scheduler-NECJGCHC.js} +2 -2
  165. package/dist/cli/chunks/{detect-WHSTB4QT.js → detect-4XGC7ILO.js} +2 -2
  166. package/dist/cli/chunks/{dist-node-4LC2RJXW.js → dist-node-GGJDXRKJ.js} +2 -2
  167. package/dist/cli/chunks/{domain-handler-A2LOOU7Y.js → domain-handler-UOFONAUT.js} +2 -2
  168. package/dist/cli/chunks/{domain-transfer-4RJTMB3Y.js → domain-transfer-6JLNOYPA.js} +2 -2
  169. package/dist/cli/chunks/dream-BXZUEIW2.js +2 -0
  170. package/dist/cli/chunks/{embed-and-insert-pattern-PR3KTT24.js → embed-and-insert-pattern-ZM75DQ4J.js} +2 -2
  171. package/dist/cli/chunks/{eval-2HRBMOOB.js → eval-CYZJTHEB.js} +2 -2
  172. package/dist/cli/chunks/{experience-capture-middleware-X46IYOSD.js → experience-capture-middleware-RBOJLDUB.js} +3 -3
  173. package/dist/cli/chunks/{fast-paths-LYYYU362.js → fast-paths-S5BWZR3L.js} +2 -2
  174. package/dist/cli/chunks/{feature-flags-RNAMQPUN.js → feature-flags-6E7H3NYP.js} +2 -2
  175. package/dist/cli/chunks/{feature-flags-TKDXIHOH.js → feature-flags-DUNQPDU3.js} +2 -2
  176. package/dist/cli/chunks/{file-discovery-MKGGMDIW.js → file-discovery-PFFKDGYG.js} +2 -2
  177. package/dist/cli/chunks/{fleet-OY4IBCZG.js → fleet-RCDZZFXN.js} +3 -3
  178. package/dist/cli/chunks/{gnn-wrapper-G5OGHVAQ.js → gnn-wrapper-5AG3WDWF.js} +2 -2
  179. package/dist/cli/chunks/{heartbeat-handler-N7IUATSD.js → heartbeat-handler-O2KAEX4Y.js} +4 -4
  180. package/dist/cli/chunks/heartbeat-scheduler-LEKAWFJF.js +2 -0
  181. package/dist/cli/chunks/hnsw-adapter-2TCEG5M2.js +2 -0
  182. package/dist/cli/chunks/hnsw-index-VDPUTEES.js +2 -0
  183. package/dist/cli/chunks/{hnsw-legacy-bridge-TMCMZDVF.js → hnsw-legacy-bridge-C7FG6YGW.js} +2 -2
  184. package/dist/cli/chunks/{better-sqlite3-SPABZYYQ.js → hnswlib-node-YX6OOBN6.js} +2 -2
  185. package/dist/cli/chunks/{hooks-5QDXEZ25.js → hooks-FUHNE2P7.js} +10 -10
  186. package/dist/cli/chunks/hybrid-router-2EMDIYIG.js +2 -0
  187. package/dist/cli/chunks/{hypergraph-engine-QQYKS2F3.js → hypergraph-engine-LQRYBNPV.js} +2 -2
  188. package/dist/cli/chunks/{hypergraph-handler-YXFNXMRF.js → hypergraph-handler-AFFNLZVD.js} +3 -3
  189. package/dist/cli/chunks/impact-analyzer-HFD6CPWC.js +2 -0
  190. package/dist/cli/chunks/{init-handler-SFFSDGEF.js → init-handler-BQ6IDBX4.js} +6 -6
  191. package/dist/cli/chunks/init-wizard-552QIVRC.js +2 -0
  192. package/dist/cli/chunks/kernel-5DN6O6EE.js +2 -0
  193. package/dist/cli/chunks/{kilocode-installer-QFRYXQYY.js → kilocode-installer-KS72HUSG.js} +2 -2
  194. package/dist/cli/chunks/{kiro-installer-7L2EYEOR.js → kiro-installer-2ZEFLGRX.js} +2 -2
  195. package/dist/cli/chunks/knowledge-graph-76Y77MB6.js +2 -0
  196. package/dist/cli/chunks/{learning-7TVVL5UH.js → learning-GGHGJ6B6.js} +3 -3
  197. package/dist/cli/chunks/llm-router-LP6K5BJF.js +36 -0
  198. package/dist/cli/chunks/llm-router-service-4O6GCEFH.js +2 -0
  199. package/dist/cli/chunks/{load-Y46RO7BF.js → load-2MLKXOT2.js} +2 -2
  200. package/dist/cli/chunks/load-test-FCI2IWRJ.js +2 -0
  201. package/dist/cli/chunks/{mcp-PYNP2S5O.js → mcp-CDJBJG5H.js} +2 -2
  202. package/dist/cli/chunks/{memory-DAVXW5OP.js → memory-4LAX7JZS.js} +5 -5
  203. package/dist/cli/chunks/memory-backend-MKNCBNDE.js +2 -0
  204. package/dist/cli/chunks/memory-handlers-OBAFR4WV.js +2 -0
  205. package/dist/cli/chunks/{multi-model-executor-7ECJRCM3.js → multi-model-executor-SLJV73HE.js} +2 -2
  206. package/dist/cli/chunks/{opencode-installer-H7QOONUC.js → opencode-installer-M76SONWV.js} +2 -2
  207. package/dist/cli/chunks/{orchestrator-TSJ2F3MG.js → orchestrator-TJPUDJMP.js} +5 -5
  208. package/dist/cli/chunks/{pipeline-SXR4MRY7.js → pipeline-2PVNFT6J.js} +2 -2
  209. package/dist/cli/chunks/{platform-7NOS56VD.js → platform-KCSEDKEE.js} +2 -2
  210. package/dist/cli/chunks/{plugin-VLSWBGJN.js → plugin-QX47QF5U.js} +2 -2
  211. package/dist/cli/chunks/{prime-radiant-advanced-wasm-7ZHSOP7H.js → prime-radiant-advanced-wasm-L6VWL7VR.js} +2 -2
  212. package/dist/cli/chunks/protocol-executor-IA7WNT23.js +2 -0
  213. package/dist/cli/chunks/{protocol-handler-LWNYDM4D.js → protocol-handler-WDNJDEUE.js} +2 -2
  214. package/dist/cli/chunks/{prove-JYFW3OBB.js → prove-3B75DA3S.js} +2 -2
  215. package/dist/cli/chunks/provider-manager-3K5KB5A6.js +2 -0
  216. package/dist/cli/chunks/qe-reasoning-bank-V5Z3BBYY.js +2 -0
  217. package/dist/cli/chunks/{quality-FCAOFXZ2.js → quality-UGASS5WM.js} +2 -2
  218. package/dist/cli/chunks/queen-coordinator-QOMPA27Z.js +2 -0
  219. package/dist/cli/chunks/real-embeddings-COBP2LHS.js +2 -0
  220. package/dist/cli/chunks/{roocode-installer-ZVGJSAWD.js → roocode-installer-TOZ4VLFT.js} +2 -2
  221. package/dist/cli/chunks/router-P5RZUPC4.js +2 -0
  222. package/dist/cli/chunks/routing-feedback-3PS3OZQC.js +2 -0
  223. package/dist/cli/chunks/{routing-handler-AGDHK3A2.js → routing-handler-5TDVSILX.js} +2 -2
  224. package/dist/cli/chunks/{ruvector-commands-UGZINDCN.js → ruvector-commands-AM63KWQN.js} +2 -2
  225. package/dist/cli/chunks/{rvf-dual-writer-PW7H6G4V.js → rvf-dual-writer-UANIFE2M.js} +2 -2
  226. package/dist/cli/chunks/{rvf-migration-adapter-ZKOTVCHJ.js → rvf-migration-adapter-LNPYWAPI.js} +2 -2
  227. package/dist/cli/chunks/{rvf-migration-coordinator-SCBEMOP3.js → rvf-migration-coordinator-U47L63DQ.js} +2 -2
  228. package/dist/cli/chunks/rvf-native-adapter-TT7OJPKM.js +2 -0
  229. package/dist/cli/chunks/safe-db-PEW7VBAE.js +2 -0
  230. package/dist/cli/chunks/schedule-QHOTHBQE.js +2 -0
  231. package/dist/cli/chunks/scheduler-KXJBYTRT.js +2 -0
  232. package/dist/cli/chunks/{security-H7QX46VA.js → security-KDQ2AH7G.js} +3 -3
  233. package/dist/cli/chunks/{shared-rvf-adapter-LWYHWJIA.js → shared-rvf-adapter-5MAGLLYJ.js} +2 -2
  234. package/dist/cli/chunks/{shared-rvf-dual-writer-P2U424FB.js → shared-rvf-dual-writer-GF2OPPM5.js} +2 -2
  235. package/dist/cli/chunks/sqlite-persistence-TPXJK34J.js +2 -0
  236. package/dist/cli/chunks/{status-handler-UNX3RA3S.js → status-handler-XZKEL7LO.js} +2 -2
  237. package/dist/cli/chunks/{structural-health-65YV3M5E.js → structural-health-27QKWW25.js} +2 -2
  238. package/dist/cli/chunks/{sync-OZ7CHYYO.js → sync-INNKS6UK.js} +2 -2
  239. package/dist/cli/chunks/{sync-B4O3NDJ6.js → sync-V3HGPEJT.js} +2 -2
  240. package/dist/cli/chunks/{task-handler-NIG3USPG.js → task-handler-LDUVOM6G.js} +2 -2
  241. package/dist/cli/chunks/{task-handlers-Z2PI7BTO.js → task-handlers-HTCPV7OO.js} +3 -3
  242. package/dist/cli/chunks/{test-MNLYS3WS.js → test-PCUVGVJL.js} +4 -4
  243. package/dist/cli/chunks/{test-scheduling-VCL6D6T7.js → test-scheduling-GYVXWCAA.js} +3 -3
  244. package/dist/cli/chunks/{token-bootstrap-DGMEU3W4.js → token-bootstrap-MJ2ANC4P.js} +2 -2
  245. package/dist/cli/chunks/{token-usage-IXTYAV5K.js → token-usage-ZREHROTF.js} +2 -2
  246. package/dist/cli/chunks/{transformers-5CWLXT2M.js → transformers-6B3FWFYL.js} +2 -2
  247. package/dist/cli/chunks/{tree-sitter-wasm-parser-W3FKJLJG.js → tree-sitter-wasm-parser-JVV234MN.js} +2 -2
  248. package/dist/cli/chunks/{types-NVOCAZCQ.js → types-MVZTJI2F.js} +2 -2
  249. package/dist/cli/chunks/unified-memory-ROS2NKR5.js +2 -0
  250. package/dist/cli/chunks/unified-memory-hnsw-FLEUF3XO.js +2 -0
  251. package/dist/cli/chunks/unified-persistence-QC5L7UNQ.js +2 -0
  252. package/dist/cli/chunks/{upgrade-VJYD4U4X.js → upgrade-MKTFEILD.js} +2 -2
  253. package/dist/cli/chunks/{validate-CAKTCZ3T.js → validate-IABGALSW.js} +2 -2
  254. package/dist/cli/chunks/{validate-swarm-H24JHUTN.js → validate-swarm-RHF53RF6.js} +2 -2
  255. package/dist/cli/chunks/{vibium-247XN6V3.js → vibium-RAKW6FMF.js} +2 -2
  256. package/dist/cli/chunks/visual-security-NLIOUQCR.js +2 -0
  257. package/dist/cli/chunks/{web-tree-sitter-3DOMHLRH.js → web-tree-sitter-PYK7F4JZ.js} +2 -2
  258. package/dist/cli/chunks/{windsurf-installer-S2MOA5TQ.js → windsurf-installer-S3U2HWZ4.js} +2 -2
  259. package/dist/cli/chunks/{witness-chain-CKLVPFLG.js → witness-chain-435NKQLB.js} +2 -2
  260. package/dist/cli/chunks/witness-chain-U7X6JX5J.js +2 -0
  261. package/dist/cli/chunks/{workflow-GU3IV2OD.js → workflow-5UHJCZ6J.js} +4 -4
  262. package/dist/cli/chunks/workflow-orchestrator-APE6BAXH.js +2 -0
  263. package/dist/cli/chunks/{wrappers-74Y4EKW3.js → wrappers-RD3NCMLK.js} +2 -2
  264. package/dist/cli/commands/llm-router.js +83 -26
  265. package/dist/domains/chaos-resilience/coordinator.d.ts +2 -1
  266. package/dist/domains/chaos-resilience/coordinator.js +3 -2
  267. package/dist/domains/chaos-resilience/plugin.d.ts +4 -2
  268. package/dist/domains/chaos-resilience/plugin.js +8 -5
  269. package/dist/domains/code-intelligence/coordinator.d.ts +2 -1
  270. package/dist/domains/code-intelligence/coordinator.js +3 -2
  271. package/dist/domains/code-intelligence/plugin.d.ts +4 -2
  272. package/dist/domains/code-intelligence/plugin.js +8 -5
  273. package/dist/domains/contract-testing/coordinator.d.ts +2 -1
  274. package/dist/domains/contract-testing/coordinator.js +3 -2
  275. package/dist/domains/contract-testing/plugin.d.ts +4 -2
  276. package/dist/domains/contract-testing/plugin.js +8 -5
  277. package/dist/domains/coverage-analysis/coordinator.d.ts +2 -1
  278. package/dist/domains/coverage-analysis/coordinator.js +4 -3
  279. package/dist/domains/coverage-analysis/plugin.d.ts +3 -2
  280. package/dist/domains/coverage-analysis/plugin.js +4 -4
  281. package/dist/domains/defect-intelligence/coordinator.d.ts +2 -1
  282. package/dist/domains/defect-intelligence/coordinator.js +4 -3
  283. package/dist/domains/defect-intelligence/plugin.d.ts +4 -2
  284. package/dist/domains/defect-intelligence/plugin.js +9 -6
  285. package/dist/domains/learning-optimization/coordinator.d.ts +2 -1
  286. package/dist/domains/learning-optimization/coordinator.js +3 -2
  287. package/dist/domains/learning-optimization/plugin.d.ts +4 -2
  288. package/dist/domains/learning-optimization/plugin.js +8 -5
  289. package/dist/domains/quality-assessment/coordinator.d.ts +2 -1
  290. package/dist/domains/quality-assessment/coordinator.js +4 -3
  291. package/dist/domains/quality-assessment/plugin.d.ts +4 -2
  292. package/dist/domains/quality-assessment/plugin.js +10 -6
  293. package/dist/domains/requirements-validation/coordinator.d.ts +2 -1
  294. package/dist/domains/requirements-validation/coordinator.js +3 -2
  295. package/dist/domains/requirements-validation/plugin.d.ts +4 -2
  296. package/dist/domains/requirements-validation/plugin.js +8 -5
  297. package/dist/domains/security-compliance/coordinator.d.ts +2 -1
  298. package/dist/domains/security-compliance/coordinator.js +4 -2
  299. package/dist/domains/security-compliance/plugin.d.ts +4 -2
  300. package/dist/domains/security-compliance/plugin.js +11 -6
  301. package/dist/domains/test-execution/coordinator.d.ts +3 -2
  302. package/dist/domains/test-execution/coordinator.js +6 -5
  303. package/dist/domains/test-execution/plugin.d.ts +4 -2
  304. package/dist/domains/test-execution/plugin.js +6 -4
  305. package/dist/domains/test-generation/coordinator.d.ts +2 -1
  306. package/dist/domains/test-generation/coordinator.js +4 -3
  307. package/dist/domains/test-generation/plugin.d.ts +4 -2
  308. package/dist/domains/test-generation/plugin.js +12 -7
  309. package/dist/domains/visual-accessibility/coordinator.d.ts +2 -1
  310. package/dist/domains/visual-accessibility/coordinator.js +4 -3
  311. package/dist/domains/visual-accessibility/plugin.d.ts +4 -2
  312. package/dist/domains/visual-accessibility/plugin.js +9 -6
  313. package/dist/kernel/interfaces.d.ts +37 -0
  314. package/dist/kernel/kernel.d.ts +39 -0
  315. package/dist/kernel/kernel.js +157 -17
  316. package/dist/learning/embedder-endpoint-client.d.ts +133 -0
  317. package/dist/learning/embedder-endpoint-client.js +426 -0
  318. package/dist/learning/embedder-identity-store.d.ts +30 -0
  319. package/dist/learning/embedder-identity-store.js +136 -0
  320. package/dist/learning/qe-reasoning-bank.js +11 -3
  321. package/dist/learning/real-embeddings.d.ts +28 -0
  322. package/dist/learning/real-embeddings.js +130 -19
  323. package/dist/learning/sqlite-persistence.js +16 -3
  324. package/dist/mcp/bundle.js +455 -423
  325. package/dist/mcp/qe-tool-bridge.js +8 -1
  326. package/dist/mcp/tools/base.d.ts +56 -0
  327. package/dist/mcp/tools/base.js +104 -1
  328. package/dist/mcp/tools/chaos-resilience/inject.js +4 -2
  329. package/dist/mcp/tools/code-intelligence/analyze.js +5 -3
  330. package/dist/mcp/tools/contract-testing/validate.js +4 -2
  331. package/dist/mcp/tools/coverage-analysis/index.js +11 -5
  332. package/dist/mcp/tools/defect-intelligence/predict.js +5 -10
  333. package/dist/mcp/tools/learning-optimization/optimize.js +4 -2
  334. package/dist/mcp/tools/registry.js +8 -1
  335. package/dist/mcp/tools/test-generation/generate.js +10 -6
  336. package/dist/mcp/tools/visual-accessibility/index.js +7 -4
  337. package/dist/shared/llm/llm-router-service.d.ts +77 -0
  338. package/dist/shared/llm/llm-router-service.js +166 -0
  339. package/dist/shared/llm/providers/gemini.js +5 -2
  340. package/dist/shared/llm/router/config-store.d.ts +89 -0
  341. package/dist/shared/llm/router/config-store.js +261 -0
  342. package/dist/shared/llm/router/hybrid-router.js +33 -11
  343. package/package.json +1 -1
  344. package/dist/cli/chunks/adapter-MISKG4JY.js +0 -2
  345. package/dist/cli/chunks/aqe-learning-engine-NDLBNM6C.js +0 -2
  346. package/dist/cli/chunks/base-OMDJAHGF.js +0 -2
  347. package/dist/cli/chunks/browser-workflow-XUG5Z5CJ.js +0 -2
  348. package/dist/cli/chunks/chunk-JD3VV2BD.js +0 -2
  349. package/dist/cli/chunks/chunk-USLHYNYG.js +0 -2
  350. package/dist/cli/chunks/chunk-ZYPSXPQ5.js +0 -2
  351. package/dist/cli/chunks/client-VXJRAW3W.js +0 -2
  352. package/dist/cli/chunks/cross-domain-router-AKHC7TFO.js +0 -2
  353. package/dist/cli/chunks/dream-FPWIC7KF.js +0 -2
  354. package/dist/cli/chunks/heartbeat-scheduler-WHGMTRT7.js +0 -2
  355. package/dist/cli/chunks/hnsw-adapter-IA2M5KDH.js +0 -2
  356. package/dist/cli/chunks/hnsw-index-UBXTXXLQ.js +0 -2
  357. package/dist/cli/chunks/hybrid-router-IY62NN7G.js +0 -2
  358. package/dist/cli/chunks/impact-analyzer-6PVCOS33.js +0 -2
  359. package/dist/cli/chunks/init-wizard-XHP5C6RD.js +0 -2
  360. package/dist/cli/chunks/kernel-YM5PY5SS.js +0 -2
  361. package/dist/cli/chunks/knowledge-graph-LTUOUHO7.js +0 -2
  362. package/dist/cli/chunks/llm-router-S3HHVPH4.js +0 -36
  363. package/dist/cli/chunks/load-test-CYCAQI3F.js +0 -2
  364. package/dist/cli/chunks/memory-backend-RW2OPAJU.js +0 -2
  365. package/dist/cli/chunks/memory-handlers-6COHVON7.js +0 -2
  366. package/dist/cli/chunks/protocol-executor-CREUYOBZ.js +0 -2
  367. package/dist/cli/chunks/qe-reasoning-bank-J4DLHRJY.js +0 -2
  368. package/dist/cli/chunks/queen-coordinator-MGLNSTPY.js +0 -2
  369. package/dist/cli/chunks/real-embeddings-LE6YXNPZ.js +0 -2
  370. package/dist/cli/chunks/router-CXGPFUT2.js +0 -2
  371. package/dist/cli/chunks/routing-feedback-MZ73LFBP.js +0 -2
  372. package/dist/cli/chunks/rvf-native-adapter-T6JBPHTE.js +0 -2
  373. package/dist/cli/chunks/safe-db-DS4SKPYB.js +0 -2
  374. package/dist/cli/chunks/schedule-H2Q7XWAK.js +0 -2
  375. package/dist/cli/chunks/scheduler-PMZMKQIF.js +0 -2
  376. package/dist/cli/chunks/sqlite-persistence-ONKEAMTQ.js +0 -2
  377. package/dist/cli/chunks/unified-memory-PNHI6I3R.js +0 -2
  378. package/dist/cli/chunks/unified-memory-hnsw-CDV3UMBD.js +0 -2
  379. package/dist/cli/chunks/unified-persistence-FMCHCEZV.js +0 -2
  380. package/dist/cli/chunks/visual-security-3WRJQDUY.js +0 -2
  381. package/dist/cli/chunks/witness-chain-5ZKCKNRJ.js +0 -2
  382. package/dist/cli/chunks/workflow-orchestrator-OBSFY7YK.js +0 -2
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{a as ie,b as ae}from"./chunk-X6UGFKHW.js";import{S as oe,i as j,p as q}from"./chunk-ZBY4HSHR.js";import{c as g,e as D,g as $}from"./chunk-SCBWRKPE.js";var I,E=g(()=>{"use strict";I={dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"}});function se(){if(z)return A!==null;try{let i=(ae(),$(ie));if(A=i.differentiableSearch,P=i.init,P)try{P()}catch{}return z=!0,!0}catch{return z=!0,!1}}function B(i){let e=0;for(let r=0;r<i.length;r++)e+=i[r]*i[r];return Math.sqrt(e)}function ce(i,e,r,t){let n=r*t;if(n===0)return 0;let a=0,o=Math.min(i.length,e.length);for(let c=0;c<o;c++)a+=i[c]*e[c];return a/n}function U(i,e){let r=0,t=Math.min(i.length,e.length);for(let n=0;n<t;n++){let a=i[n]-e[n];r+=a*a}return Math.sqrt(r)}function le(i,e){if(i.length===e)return i;let r=new Float32Array(e);if(i.length>e){let t=i.length/e;for(let n=0;n<e;n++){let a=Math.floor(n*t),o=Math.floor((n+1)*t),c=0;for(let s=a;s<o;s++)c+=i[s];r[n]=c/(o-a)}}else for(let t=0;t<i.length;t++)r[t]=i[t];return r}var A,P,z,S,O=g(()=>{"use strict";E();A=null,P=null,z=!1;S=class{config;entries=[];idToIndex=new Map;hasRuvector=!1;loaded=!1;constructor(e){this.config={...I,...e}}ensureLoaded(){this.loaded||(this.hasRuvector=se(),this.loaded=!0)}normalizeVector(e){return e.length===this.config.dimensions?e:le(e,this.config.dimensions)}add(e,r,t){this.ensureLoaded();let n=this.normalizeVector(r),a=B(n);if(this.idToIndex.has(e)){let c=this.idToIndex.get(e);this.entries[c]={id:e,vector:n,norm:a,metadata:t};return}let o=this.entries.length;this.entries.push({id:e,vector:n,norm:a,metadata:t}),this.idToIndex.set(e,o)}search(e,r){if(this.ensureLoaded(),this.entries.length===0)return[];let t=this.normalizeVector(e),n=B(t),a=Math.min(r,this.entries.length),o=this.entries.length>0?this.entries[0].vector.length:0,c=t.length===o;if(this.config.metric==="cosine")return this.bruteForcSearch(t,n,a);if(this.hasRuvector&&c&&A)try{let s=this.entries.map(u=>u.vector),l=A(t,s,a,1).indices.map(u=>{let h=this.entries[u],m=-U(t,h.vector);return{id:h.id,score:m,metadata:h.metadata}});return l.sort((u,h)=>h.score-u.score),l}catch{}return this.bruteForcSearch(t,n,a)}bruteForcSearch(e,r,t){let n=[];for(let a of this.entries){let o;this.config.metric==="cosine"?o=ce(e,a.vector,r,a.norm):o=-U(e,a.vector),n.push({id:a.id,score:o,metadata:a.metadata})}return n.sort((a,o)=>o.score-a.score),n.slice(0,t)}remove(e){let r=this.idToIndex.get(e);if(r===void 0)return!1;let t=this.entries.length-1;if(r!==t){let n=this.entries[t];this.entries[r]=n,this.idToIndex.set(n.id,r)}return this.entries.pop(),this.idToIndex.delete(e),!0}size(){return this.entries.length}dimensions(){return this.config.dimensions}recall(){return this.hasRuvector,1}isRuvectorAvailable(){return this.ensureLoaded(),this.hasRuvector}getConfig(){return{...this.config}}clear(){this.entries=[],this.idToIndex.clear()}dispose(){this.clear()}}});import{createRequire as he}from"module";function de(){if(K){if(k)return k;throw new b(J??"Unknown load error")}K=!0;try{let i=ue("hnswlib-node");if(!i.HierarchicalNSW)throw new Error("hnswlib-node module missing HierarchicalNSW export");return k=i,k}catch(i){let e=i instanceof Error?i.message:String(i);throw J=e,new b(e)}}function me(i,e){if(i.length===e)return i;let r=new Float32Array(e);if(i.length>e){let t=i.length/e;for(let n=0;n<e;n++){let a=Math.floor(n*t),o=Math.floor((n+1)*t),c=0;for(let s=a;s<o;s++)c+=i[s];r[n]=c/(o-a)}}else for(let t=0;t<i.length;t++)r[t]=i[t];return r}function Q(i){let e=new Array(i.length);for(let r=0;r<i.length;r++)e[r]=i[r];return e}var ue,b,k,K,J,X,H,Y=g(()=>{"use strict";E();ue=he(import.meta.url),b=class extends Error{constructor(e){super(`Native HNSW backend unavailable: ${e}`),this.name="NativeHnswUnavailableError"}},k=null,K=!1,J=null;X=1e4,H=class{config;nativeIndex=null;currentMaxElements=X;liveIds=new Set;metadataStore=new Map;_metrics={totalSearches:0,totalAdds:0,totalRemoves:0,avgSearchLatencyMs:0,maxSearchLatencyMs:0,lastSearchLatencyMs:0,fallbackSearchCount:0,bruteForceSearchCount:0,nativeSearchCount:0,fallbackRate:0,allSearchesBruteForce:!1};constructor(e){this.config={...I,...e},this.nativeIndex=this.createFreshIndex()}createFreshIndex(){let e=de(),r=this.config.metric==="euclidean"?"l2":"cosine";try{let t=new e.HierarchicalNSW(r,this.config.dimensions);return t.initIndex(this.currentMaxElements,this.config.M,this.config.efConstruction,100,!0),t.setEf(this.config.efSearch),t}catch(t){let n=t instanceof Error?t.message:String(t);throw new b(`HierarchicalNSW init failed: ${n}`)}}add(e,r,t){if(!this.nativeIndex)throw new Error("NativeHnswBackend has been disposed");let n=this.normalizeVector(r);if(!this.liveIds.has(e)&&this.liveIds.size>=this.currentMaxElements){let a=this.currentMaxElements*2;this.nativeIndex.resizeIndex(a),this.currentMaxElements=a}this.nativeIndex.addPoint(Q(n),e,!0),this.liveIds.add(e),t?this.metadataStore.set(e,t):this.metadataStore.delete(e),this._metrics.totalAdds++}search(e,r){if(!this.nativeIndex)throw new Error("NativeHnswBackend has been disposed");if(this.liveIds.size===0||r<=0)return[];let t=performance.now(),n=this.normalizeVector(e),a=Math.min(r,this.liveIds.size),o=Math.min(a*2,this.liveIds.size),c=this.nativeIndex.searchKnn(Q(n),o),s=this.config.metric==="cosine",d=new Map;for(let h=0;h<c.neighbors.length;h++){let m=c.neighbors[h];if(!this.liveIds.has(m))continue;let x=c.distances[h],f=s?1-x:-x,W=d.get(m);(W===void 0||f>W.score)&&d.set(m,{id:m,score:f,metadata:this.metadataStore.get(m)})}let l=Array.from(d.values());l.sort((h,m)=>m.score-h.score),l.length>a&&(l.length=a);let u=performance.now()-t;return this.updateSearchMetrics(u),this._metrics.nativeSearchCount=this._metrics.totalSearches,u>50&&console.warn(`[NativeHNSW] search took ${u.toFixed(1)}ms (k=${r}, results=${l.length})`),l}remove(e){if(!this.nativeIndex||!this.liveIds.has(e))return!1;try{this.nativeIndex.markDelete(e)}catch{return!1}return this.liveIds.delete(e),this.metadataStore.delete(e),this._metrics.totalRemoves++,!0}size(){return this.liveIds.size}dimensions(){return this.config.dimensions}recall(){return .99}getMetrics(){return{...this._metrics}}get lastSearchLatencyMs(){return this._metrics.lastSearchLatencyMs}getConfig(){return{...this.config}}clear(){this.nativeIndex&&(this.liveIds.clear(),this.metadataStore.clear(),this.currentMaxElements=X,this.nativeIndex=this.createFreshIndex())}dispose(){this.liveIds.clear(),this.metadataStore.clear(),this.nativeIndex=null}isNativeAvailable(){return this.nativeIndex!==null}normalizeVector(e){return e.length===this.config.dimensions?e:me(e,this.config.dimensions)}updateSearchMetrics(e){this._metrics.totalSearches++,this._metrics.lastSearchLatencyMs=e,e>this._metrics.maxSearchLatencyMs&&(this._metrics.maxSearchLatencyMs=e);let r=this._metrics.totalSearches;this._metrics.avgSearchLatencyMs=this._metrics.avgSearchLatencyMs*((r-1)/r)+e/r}}});function Z(i,e){let r=Array.from({length:e},()=>new Float64Array(e));for(let t=0;t<e;t++){let n=i[t].length;r[t][t]=n;for(let a of i[t])r[t][a]=-1}return r}function N(i,e){let r=e.length,t=new Float64Array(r);for(let n=0;n<r;n++){let a=i[n].length;t[n]=a*e[n];for(let o of i[n])t[n]-=e[o]}return t}function w(i){let e=0;for(let r=0;r<i.length;r++)e+=i[r]*i[r];return Math.sqrt(e)}function R(i){let e=w(i);if(e>0)for(let r=0;r<i.length;r++)i[r]/=e}function v(i,e){let r=0;for(let t=0;t<i.length;t++)r+=i[t]*e[t];for(let t=0;t<i.length;t++)i[t]-=r*e[t]}function y(i,e,r=100,t=1e-6){if(e<=1)return 0;if(e===2)return i[0].includes(1)?2:0;let n=new Float64Array(e).fill(1/Math.sqrt(e)),a=new Float64Array(e);for(let l=0;l<e;l++)a[l]=Math.random()-.5;v(a,n),R(a);let o=0;for(let l=0;l<30;l++){let u=N(i,a);if(v(u,n),o=w(u),o>0)for(let h=0;h<e;h++)a[h]=u[h]/o}if(o<t)return 0;let c=new Float64Array(e);for(let l=0;l<e;l++)c[l]=Math.random()-.5;v(c,n),R(c);let s=0;for(let l=0;l<r;l++){let u=N(i,c),h=new Float64Array(e);for(let f=0;f<e;f++)h[f]=o*c[f]-u[f];v(h,n);let m=w(h);if(m<t)break;let x=m;for(let f=0;f<e;f++)c[f]=h[f]/m;if(Math.abs(x-s)<t)break;s=x}let d=o-s;return Math.max(0,d)}function F(i,e,r=100,t=1e-6){return y(i,e,r,t)}function C(i,e,r=50,t){if(e<=1)return 0;let n=t??y(i,e);if(n<1e-10)return 1/0;let o=2*Math.max(...i.map(d=>d.length),1),s=2*(Math.log(o/n)/(o-n));return Math.max(0,s)}function M(i,e,r){let t=1-Math.exp(-i/.05),n=1-Math.exp(-e/.5),a=r===1/0?0:1/(1+r/5),o=.4*t+.3*n+.3*a;return Math.max(0,Math.min(1,o))}var _=g(()=>{"use strict"});var re={};D(re,{ALERT_THRESHOLDS:()=>fe,DEFAULT_HNSW_HEALTH_CONFIG:()=>ee,HnswHealthMonitor:()=>L,_resetNativeLoader:()=>be,approximateFiedlerValue:()=>y,approximateSpectralGap:()=>F,buildAdjacencyFromIndex:()=>te,buildLaplacian:()=>Z,computeCoherenceScore:()=>M,createHnswHealthMonitor:()=>ge,deflateVector:()=>v,estimateEffectiveResistance:()=>C,laplacianMultiply:()=>N,normalizeInPlace:()=>R,vectorNorm:()=>w});function pe(){return V?T:(V=!0,T=null,null)}function be(){T=null,V=!1}function te(i,e=16,r){let t=i.size();if(t===0)return{adjacency:[],nodeCount:0,adjacencySource:"approximate"};let n=Array.from({length:t},()=>[]),a=Math.min(e,t-1);if(a===0)return{adjacency:n,nodeCount:t,adjacencySource:"approximate"};if(r&&r.size>0){let o=Array.from(r.keys()).slice(0,t),c=new Map;for(let s=0;s<o.length;s++)c.set(o[s],s);for(let s=0;s<o.length;s++){let d=r.get(o[s]);if(!d)continue;let l=i.search(d,a+1);for(let u of l){if(u.id===o[s])continue;let h=c.get(u.id);h!==void 0&&(n[s].includes(h)||n[s].push(h),n[h].includes(s)||n[h].push(s))}}return{adjacency:n,nodeCount:t,adjacencySource:"actual-search"}}console.warn("[HnswHealthMonitor] No stored vectors provided \u2014 using approximate circular adjacency. Pass stored vectors for accurate health metrics.");for(let o=0;o<t;o++)for(let c=0;c<a;c++){let s=(o+c+1)%t;n[o].includes(s)||n[o].push(s),n[s].includes(o)||n[s].push(o)}return{adjacency:n,nodeCount:t,adjacencySource:"approximate"}}function ge(i){return new L(i)}var ee,fe,T,V,L,ne=g(()=>{"use strict";_();_();ee={fiedlerThreshold:.01,spectralGapThreshold:.1,resistanceThreshold:10,coherenceThreshold:.3,maxPowerIterations:100,convergenceTolerance:1e-6,resistanceSampleSize:50,maxHistoryEntries:200,minIndexSize:3},fe={FragileIndex:.01,PoorExpansion:.1,HighResistance:10,LowCoherence:.3},T=null,V=!1;L=class{config;alerts=[];history=[];lastReport=null;useNative=!1;nativeChecked=!1;constructor(e){this.config={...ee,...e}}checkHealth(e){let r=performance.now(),t=e.size();if(t<this.config.minIndexSize)return this.createSmallIndexReport(t,performance.now()-r);this.nativeChecked||(this.nativeChecked=!0,this.useNative=pe()!==null);let{adjacency:n,nodeCount:a,adjacencySource:o}=te(e),c=this.useNative?this.computeNativeMetrics(n):this.computeApproximateMetrics(n,a),s=this.generateAlerts(c);this.alerts.length=0,this.alerts.push(...s);let d=performance.now()-r,l={healthy:s.length===0,metrics:c,alerts:s,indexSize:t,usedNativeBackend:this.useNative,adjacencySource:o,checkDurationMs:d,checkedAt:new Date};return this.addHistoryPoint({coherenceScore:c.coherenceScore,fiedlerValue:c.fiedlerValue,indexSize:t,healthy:l.healthy,timestamp:l.checkedAt}),this.lastReport=l,l}getAlerts(){return[...this.alerts]}getMetricsHistory(e){let r=[...this.history];return e!==void 0&&e<r.length?r.slice(-e):r}isHealthy(){return this.lastReport===null?!0:this.lastReport.healthy}getLastReport(){return this.lastReport}clearHistory(){this.history.length=0,this.alerts.length=0,this.lastReport=null}computeNativeMetrics(e){let r=T,t=r.computeFiedlerValue(e),n=r.computeSpectralGap(e),a=r.computeEffectiveResistance(e),o=M(t,n,a);return{fiedlerValue:t,spectralGap:n,effectiveResistance:a,coherenceScore:o}}computeApproximateMetrics(e,r){let t=y(e,r,this.config.maxPowerIterations,this.config.convergenceTolerance),n=F(e,r,this.config.maxPowerIterations,this.config.convergenceTolerance),a=C(e,r,this.config.resistanceSampleSize,t),o=M(t,n,a);return{fiedlerValue:t,spectralGap:n,effectiveResistance:a,coherenceScore:o}}generateAlerts(e){let r=[],t=new Date;return e.fiedlerValue<this.config.fiedlerThreshold&&r.push({type:"FragileIndex",message:`Fiedler value ${e.fiedlerValue.toFixed(6)} is below threshold ${this.config.fiedlerThreshold}. The index graph has weak algebraic connectivity.`,value:e.fiedlerValue,threshold:this.config.fiedlerThreshold,timestamp:t}),e.spectralGap<this.config.spectralGapThreshold&&r.push({type:"PoorExpansion",message:`Spectral gap ${e.spectralGap.toFixed(6)} is below threshold ${this.config.spectralGapThreshold}. The index graph has poor expansion properties.`,value:e.spectralGap,threshold:this.config.spectralGapThreshold,timestamp:t}),e.effectiveResistance>this.config.resistanceThreshold&&r.push({type:"HighResistance",message:`Average effective resistance ${e.effectiveResistance.toFixed(4)} exceeds threshold ${this.config.resistanceThreshold}. Nodes are poorly connected.`,value:e.effectiveResistance,threshold:this.config.resistanceThreshold,timestamp:t}),e.coherenceScore<this.config.coherenceThreshold&&r.push({type:"LowCoherence",message:`Coherence score ${e.coherenceScore.toFixed(4)} is below threshold ${this.config.coherenceThreshold}. Overall index health is degraded.`,value:e.coherenceScore,threshold:this.config.coherenceThreshold,timestamp:t}),r}createSmallIndexReport(e,r){let t={fiedlerValue:e>0?1:0,spectralGap:e>0?1:0,effectiveResistance:e>0?.5:0,coherenceScore:e>0?1:0},n={healthy:!0,metrics:t,alerts:[],indexSize:e,usedNativeBackend:!1,adjacencySource:"approximate",checkDurationMs:r,checkedAt:new Date};return this.addHistoryPoint({coherenceScore:t.coherenceScore,fiedlerValue:t.fiedlerValue,indexSize:e,healthy:!0,timestamp:n.checkedAt}),this.lastReport=n,n}addHistoryPoint(e){this.history.push(e),this.history.length>this.config.maxHistoryEntries&&this.history.splice(0,this.history.length-this.config.maxHistoryEntries)}}});var ye={};D(ye,{HnswAdapter:()=>G});var ve,p,G,xe=g(()=>{O();Y();oe();ve={patterns:{dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"},"qe-memory":{dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"},learning:{dimensions:384,M:16,efConstruction:200,efSearch:50,metric:"cosine"},coverage:{dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"}},p=new Map,G=class i{backend;_isNativeBackend;indexName;stringToNumericId=new Map;numericToStringId=new Map;nextAutoId=0;healthMonitor=null;healthMonitorLoaded=!1;operationsSinceLastCheck=0;healthCheckFrequency=100;lastHealthReport=null;constructor(e,r){this.indexName=e;let n={...ve[e]??{},...r},{backend:a,isNative:o}=i.createBackend(n);this.backend=a,this._isNativeBackend=o}add(e,r,t){this.backend.add(e,r,t),this.maybeRunHealthCheck()}search(e,r){let t=performance.now(),n=this.backend.search(e,r),a=performance.now()-t;return a>50&&console.warn(`[HNSW] search took ${a.toFixed(1)}ms (k=${r}, results=${n.length})`),this._lastSearchLatencyMs=a,n}_lastSearchLatencyMs=0;get lastSearchLatencyMs(){return this._lastSearchLatencyMs}remove(e){return this.backend.remove(e)}size(){return this.backend.size()}dimensions(){return this.backend.dimensions()}recall(){return this.backend.recall()}addByStringId(e,r){let t=this.stringToNumericId.get(e);t!==void 0?this.backend.remove(t):(t=this.nextAutoId++,this.stringToNumericId.set(e,t),this.numericToStringId.set(t,e)),this.backend.add(t,new Float32Array(r))}searchByArray(e,r){return this.backend.search(new Float32Array(e),r).map(n=>({id:this.numericToStringId.get(n.id)??String(n.id),score:n.score}))}removeByStringId(e){let r=this.stringToNumericId.get(e);if(r===void 0)return!1;let t=this.backend.remove(r);return t&&(this.stringToNumericId.delete(e),this.numericToStringId.delete(r)),t}clear(){this.backend.clear?.(),this.stringToNumericId.clear(),this.numericToStringId.clear(),this.nextAutoId=0}dispose(){try{this.backend.dispose?.()}catch{}this.stringToNumericId.clear(),this.numericToStringId.clear(),this.nextAutoId=0}isRuvectorAvailable(){return this.backend instanceof S?this.backend.isRuvectorAvailable():this.backend instanceof H?this.backend.isNativeAvailable():!1}isNativeBackend(){return this._isNativeBackend}getName(){return this.indexName}setHealthCheckFrequency(e){this.healthCheckFrequency=Math.max(1,e)}getHealthCheckFrequency(){return this.healthCheckFrequency}getLastHealthReport(){return this.lastHealthReport}getHealthMonitor(){return this.healthMonitor}maybeRunHealthCheck(){if(q()&&(this.operationsSinceLastCheck++,!(this.operationsSinceLastCheck<this.healthCheckFrequency)&&(this.operationsSinceLastCheck=0,this.ensureHealthMonitor(),this.healthMonitor)))try{this.lastHealthReport=this.healthMonitor.checkHealth(this.backend),this.lastHealthReport.healthy||console.warn(`[HNSW-Health] Index "${this.indexName}" health check failed: ${this.lastHealthReport.alerts.length} alert(s). Coherence: ${this.lastHealthReport.metrics.coherenceScore.toFixed(3)}`)}catch(e){console.warn(`[HNSW-Health] Health check error for "${this.indexName}":`,e)}}ensureHealthMonitor(){if(!this.healthMonitorLoaded){this.healthMonitorLoaded=!0;try{let e=(ne(),$(re));this.healthMonitor=e.createHnswHealthMonitor()}catch(e){process.env.DEBUG&&console.debug("[HNSW-Health] Monitor module unavailable:",e instanceof Error?e.message:e),this.healthMonitor=null}}}static createBackend(e){if(j())try{return{backend:new H(e),isNative:!0}}catch(r){r instanceof b?console.info(`[HNSW] Native backend unavailable, falling back to JS: ${r.message}`):console.warn("[HNSW] Unexpected error creating native backend, falling back to JS:",r)}return{backend:new S(e),isNative:!1}}static create(e,r){let t=p.get(e);if(t instanceof i)return t;let n=new i(e,r);return p.set(e,n),n}static get(e){let r=p.get(e);return r instanceof i?r:void 0}static close(e){let r=p.get(e);r instanceof i&&r.dispose(),p.delete(e)}static closeAll(){for(let[e]of p)i.close(e);p.clear()}static listIndexes(){return Array.from(p.keys())}}});export{G as a,ye as b,xe as c};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{a as ie,b as ae}from"./chunk-KRXKU54J.js";import{S as oe,i as j,p as q}from"./chunk-ELZ67OHQ.js";import{c as g,e as D,g as $}from"./chunk-4AWJ5PE4.js";var I,E=g(()=>{"use strict";I={dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"}});function se(){if(z)return A!==null;try{let i=(ae(),$(ie));if(A=i.differentiableSearch,P=i.init,P)try{P()}catch{}return z=!0,!0}catch{return z=!0,!1}}function B(i){let e=0;for(let r=0;r<i.length;r++)e+=i[r]*i[r];return Math.sqrt(e)}function ce(i,e,r,t){let n=r*t;if(n===0)return 0;let a=0,o=Math.min(i.length,e.length);for(let c=0;c<o;c++)a+=i[c]*e[c];return a/n}function U(i,e){let r=0,t=Math.min(i.length,e.length);for(let n=0;n<t;n++){let a=i[n]-e[n];r+=a*a}return Math.sqrt(r)}function le(i,e){if(i.length===e)return i;let r=new Float32Array(e);if(i.length>e){let t=i.length/e;for(let n=0;n<e;n++){let a=Math.floor(n*t),o=Math.floor((n+1)*t),c=0;for(let s=a;s<o;s++)c+=i[s];r[n]=c/(o-a)}}else for(let t=0;t<i.length;t++)r[t]=i[t];return r}var A,P,z,S,O=g(()=>{"use strict";E();A=null,P=null,z=!1;S=class{config;entries=[];idToIndex=new Map;hasRuvector=!1;loaded=!1;constructor(e){this.config={...I,...e}}ensureLoaded(){this.loaded||(this.hasRuvector=se(),this.loaded=!0)}normalizeVector(e){return e.length===this.config.dimensions?e:le(e,this.config.dimensions)}add(e,r,t){this.ensureLoaded();let n=this.normalizeVector(r),a=B(n);if(this.idToIndex.has(e)){let c=this.idToIndex.get(e);this.entries[c]={id:e,vector:n,norm:a,metadata:t};return}let o=this.entries.length;this.entries.push({id:e,vector:n,norm:a,metadata:t}),this.idToIndex.set(e,o)}search(e,r){if(this.ensureLoaded(),this.entries.length===0)return[];let t=this.normalizeVector(e),n=B(t),a=Math.min(r,this.entries.length),o=this.entries.length>0?this.entries[0].vector.length:0,c=t.length===o;if(this.config.metric==="cosine")return this.bruteForcSearch(t,n,a);if(this.hasRuvector&&c&&A)try{let s=this.entries.map(u=>u.vector),l=A(t,s,a,1).indices.map(u=>{let h=this.entries[u],m=-U(t,h.vector);return{id:h.id,score:m,metadata:h.metadata}});return l.sort((u,h)=>h.score-u.score),l}catch{}return this.bruteForcSearch(t,n,a)}bruteForcSearch(e,r,t){let n=[];for(let a of this.entries){let o;this.config.metric==="cosine"?o=ce(e,a.vector,r,a.norm):o=-U(e,a.vector),n.push({id:a.id,score:o,metadata:a.metadata})}return n.sort((a,o)=>o.score-a.score),n.slice(0,t)}remove(e){let r=this.idToIndex.get(e);if(r===void 0)return!1;let t=this.entries.length-1;if(r!==t){let n=this.entries[t];this.entries[r]=n,this.idToIndex.set(n.id,r)}return this.entries.pop(),this.idToIndex.delete(e),!0}size(){return this.entries.length}dimensions(){return this.config.dimensions}recall(){return this.hasRuvector,1}isRuvectorAvailable(){return this.ensureLoaded(),this.hasRuvector}getConfig(){return{...this.config}}clear(){this.entries=[],this.idToIndex.clear()}dispose(){this.clear()}}});import{createRequire as he}from"module";function de(){if(K){if(k)return k;throw new b(J??"Unknown load error")}K=!0;try{let i=ue("hnswlib-node");if(!i.HierarchicalNSW)throw new Error("hnswlib-node module missing HierarchicalNSW export");return k=i,k}catch(i){let e=i instanceof Error?i.message:String(i);throw J=e,new b(e)}}function me(i,e){if(i.length===e)return i;let r=new Float32Array(e);if(i.length>e){let t=i.length/e;for(let n=0;n<e;n++){let a=Math.floor(n*t),o=Math.floor((n+1)*t),c=0;for(let s=a;s<o;s++)c+=i[s];r[n]=c/(o-a)}}else for(let t=0;t<i.length;t++)r[t]=i[t];return r}function Q(i){let e=new Array(i.length);for(let r=0;r<i.length;r++)e[r]=i[r];return e}var ue,b,k,K,J,X,H,Y=g(()=>{"use strict";E();ue=he(import.meta.url),b=class extends Error{constructor(e){super(`Native HNSW backend unavailable: ${e}`),this.name="NativeHnswUnavailableError"}},k=null,K=!1,J=null;X=1e4,H=class{config;nativeIndex=null;currentMaxElements=X;liveIds=new Set;metadataStore=new Map;_metrics={totalSearches:0,totalAdds:0,totalRemoves:0,avgSearchLatencyMs:0,maxSearchLatencyMs:0,lastSearchLatencyMs:0,fallbackSearchCount:0,bruteForceSearchCount:0,nativeSearchCount:0,fallbackRate:0,allSearchesBruteForce:!1};constructor(e){this.config={...I,...e},this.nativeIndex=this.createFreshIndex()}createFreshIndex(){let e=de(),r=this.config.metric==="euclidean"?"l2":"cosine";try{let t=new e.HierarchicalNSW(r,this.config.dimensions);return t.initIndex(this.currentMaxElements,this.config.M,this.config.efConstruction,100,!0),t.setEf(this.config.efSearch),t}catch(t){let n=t instanceof Error?t.message:String(t);throw new b(`HierarchicalNSW init failed: ${n}`)}}add(e,r,t){if(!this.nativeIndex)throw new Error("NativeHnswBackend has been disposed");let n=this.normalizeVector(r);if(!this.liveIds.has(e)&&this.liveIds.size>=this.currentMaxElements){let a=this.currentMaxElements*2;this.nativeIndex.resizeIndex(a),this.currentMaxElements=a}this.nativeIndex.addPoint(Q(n),e,!0),this.liveIds.add(e),t?this.metadataStore.set(e,t):this.metadataStore.delete(e),this._metrics.totalAdds++}search(e,r){if(!this.nativeIndex)throw new Error("NativeHnswBackend has been disposed");if(this.liveIds.size===0||r<=0)return[];let t=performance.now(),n=this.normalizeVector(e),a=Math.min(r,this.liveIds.size),o=Math.min(a*2,this.liveIds.size),c=this.nativeIndex.searchKnn(Q(n),o),s=this.config.metric==="cosine",d=new Map;for(let h=0;h<c.neighbors.length;h++){let m=c.neighbors[h];if(!this.liveIds.has(m))continue;let x=c.distances[h],f=s?1-x:-x,W=d.get(m);(W===void 0||f>W.score)&&d.set(m,{id:m,score:f,metadata:this.metadataStore.get(m)})}let l=Array.from(d.values());l.sort((h,m)=>m.score-h.score),l.length>a&&(l.length=a);let u=performance.now()-t;return this.updateSearchMetrics(u),this._metrics.nativeSearchCount=this._metrics.totalSearches,u>50&&console.warn(`[NativeHNSW] search took ${u.toFixed(1)}ms (k=${r}, results=${l.length})`),l}remove(e){if(!this.nativeIndex||!this.liveIds.has(e))return!1;try{this.nativeIndex.markDelete(e)}catch{return!1}return this.liveIds.delete(e),this.metadataStore.delete(e),this._metrics.totalRemoves++,!0}size(){return this.liveIds.size}dimensions(){return this.config.dimensions}recall(){return .99}getMetrics(){return{...this._metrics}}get lastSearchLatencyMs(){return this._metrics.lastSearchLatencyMs}getConfig(){return{...this.config}}clear(){this.nativeIndex&&(this.liveIds.clear(),this.metadataStore.clear(),this.currentMaxElements=X,this.nativeIndex=this.createFreshIndex())}dispose(){this.liveIds.clear(),this.metadataStore.clear(),this.nativeIndex=null}isNativeAvailable(){return this.nativeIndex!==null}normalizeVector(e){return e.length===this.config.dimensions?e:me(e,this.config.dimensions)}updateSearchMetrics(e){this._metrics.totalSearches++,this._metrics.lastSearchLatencyMs=e,e>this._metrics.maxSearchLatencyMs&&(this._metrics.maxSearchLatencyMs=e);let r=this._metrics.totalSearches;this._metrics.avgSearchLatencyMs=this._metrics.avgSearchLatencyMs*((r-1)/r)+e/r}}});function Z(i,e){let r=Array.from({length:e},()=>new Float64Array(e));for(let t=0;t<e;t++){let n=i[t].length;r[t][t]=n;for(let a of i[t])r[t][a]=-1}return r}function N(i,e){let r=e.length,t=new Float64Array(r);for(let n=0;n<r;n++){let a=i[n].length;t[n]=a*e[n];for(let o of i[n])t[n]-=e[o]}return t}function w(i){let e=0;for(let r=0;r<i.length;r++)e+=i[r]*i[r];return Math.sqrt(e)}function R(i){let e=w(i);if(e>0)for(let r=0;r<i.length;r++)i[r]/=e}function v(i,e){let r=0;for(let t=0;t<i.length;t++)r+=i[t]*e[t];for(let t=0;t<i.length;t++)i[t]-=r*e[t]}function y(i,e,r=100,t=1e-6){if(e<=1)return 0;if(e===2)return i[0].includes(1)?2:0;let n=new Float64Array(e).fill(1/Math.sqrt(e)),a=new Float64Array(e);for(let l=0;l<e;l++)a[l]=Math.random()-.5;v(a,n),R(a);let o=0;for(let l=0;l<30;l++){let u=N(i,a);if(v(u,n),o=w(u),o>0)for(let h=0;h<e;h++)a[h]=u[h]/o}if(o<t)return 0;let c=new Float64Array(e);for(let l=0;l<e;l++)c[l]=Math.random()-.5;v(c,n),R(c);let s=0;for(let l=0;l<r;l++){let u=N(i,c),h=new Float64Array(e);for(let f=0;f<e;f++)h[f]=o*c[f]-u[f];v(h,n);let m=w(h);if(m<t)break;let x=m;for(let f=0;f<e;f++)c[f]=h[f]/m;if(Math.abs(x-s)<t)break;s=x}let d=o-s;return Math.max(0,d)}function F(i,e,r=100,t=1e-6){return y(i,e,r,t)}function C(i,e,r=50,t){if(e<=1)return 0;let n=t??y(i,e);if(n<1e-10)return 1/0;let o=2*Math.max(...i.map(d=>d.length),1),s=2*(Math.log(o/n)/(o-n));return Math.max(0,s)}function M(i,e,r){let t=1-Math.exp(-i/.05),n=1-Math.exp(-e/.5),a=r===1/0?0:1/(1+r/5),o=.4*t+.3*n+.3*a;return Math.max(0,Math.min(1,o))}var _=g(()=>{"use strict"});var re={};D(re,{ALERT_THRESHOLDS:()=>fe,DEFAULT_HNSW_HEALTH_CONFIG:()=>ee,HnswHealthMonitor:()=>L,_resetNativeLoader:()=>be,approximateFiedlerValue:()=>y,approximateSpectralGap:()=>F,buildAdjacencyFromIndex:()=>te,buildLaplacian:()=>Z,computeCoherenceScore:()=>M,createHnswHealthMonitor:()=>ge,deflateVector:()=>v,estimateEffectiveResistance:()=>C,laplacianMultiply:()=>N,normalizeInPlace:()=>R,vectorNorm:()=>w});function pe(){return V?T:(V=!0,T=null,null)}function be(){T=null,V=!1}function te(i,e=16,r){let t=i.size();if(t===0)return{adjacency:[],nodeCount:0,adjacencySource:"approximate"};let n=Array.from({length:t},()=>[]),a=Math.min(e,t-1);if(a===0)return{adjacency:n,nodeCount:t,adjacencySource:"approximate"};if(r&&r.size>0){let o=Array.from(r.keys()).slice(0,t),c=new Map;for(let s=0;s<o.length;s++)c.set(o[s],s);for(let s=0;s<o.length;s++){let d=r.get(o[s]);if(!d)continue;let l=i.search(d,a+1);for(let u of l){if(u.id===o[s])continue;let h=c.get(u.id);h!==void 0&&(n[s].includes(h)||n[s].push(h),n[h].includes(s)||n[h].push(s))}}return{adjacency:n,nodeCount:t,adjacencySource:"actual-search"}}console.warn("[HnswHealthMonitor] No stored vectors provided \u2014 using approximate circular adjacency. Pass stored vectors for accurate health metrics.");for(let o=0;o<t;o++)for(let c=0;c<a;c++){let s=(o+c+1)%t;n[o].includes(s)||n[o].push(s),n[s].includes(o)||n[s].push(o)}return{adjacency:n,nodeCount:t,adjacencySource:"approximate"}}function ge(i){return new L(i)}var ee,fe,T,V,L,ne=g(()=>{"use strict";_();_();ee={fiedlerThreshold:.01,spectralGapThreshold:.1,resistanceThreshold:10,coherenceThreshold:.3,maxPowerIterations:100,convergenceTolerance:1e-6,resistanceSampleSize:50,maxHistoryEntries:200,minIndexSize:3},fe={FragileIndex:.01,PoorExpansion:.1,HighResistance:10,LowCoherence:.3},T=null,V=!1;L=class{config;alerts=[];history=[];lastReport=null;useNative=!1;nativeChecked=!1;constructor(e){this.config={...ee,...e}}checkHealth(e){let r=performance.now(),t=e.size();if(t<this.config.minIndexSize)return this.createSmallIndexReport(t,performance.now()-r);this.nativeChecked||(this.nativeChecked=!0,this.useNative=pe()!==null);let{adjacency:n,nodeCount:a,adjacencySource:o}=te(e),c=this.useNative?this.computeNativeMetrics(n):this.computeApproximateMetrics(n,a),s=this.generateAlerts(c);this.alerts.length=0,this.alerts.push(...s);let d=performance.now()-r,l={healthy:s.length===0,metrics:c,alerts:s,indexSize:t,usedNativeBackend:this.useNative,adjacencySource:o,checkDurationMs:d,checkedAt:new Date};return this.addHistoryPoint({coherenceScore:c.coherenceScore,fiedlerValue:c.fiedlerValue,indexSize:t,healthy:l.healthy,timestamp:l.checkedAt}),this.lastReport=l,l}getAlerts(){return[...this.alerts]}getMetricsHistory(e){let r=[...this.history];return e!==void 0&&e<r.length?r.slice(-e):r}isHealthy(){return this.lastReport===null?!0:this.lastReport.healthy}getLastReport(){return this.lastReport}clearHistory(){this.history.length=0,this.alerts.length=0,this.lastReport=null}computeNativeMetrics(e){let r=T,t=r.computeFiedlerValue(e),n=r.computeSpectralGap(e),a=r.computeEffectiveResistance(e),o=M(t,n,a);return{fiedlerValue:t,spectralGap:n,effectiveResistance:a,coherenceScore:o}}computeApproximateMetrics(e,r){let t=y(e,r,this.config.maxPowerIterations,this.config.convergenceTolerance),n=F(e,r,this.config.maxPowerIterations,this.config.convergenceTolerance),a=C(e,r,this.config.resistanceSampleSize,t),o=M(t,n,a);return{fiedlerValue:t,spectralGap:n,effectiveResistance:a,coherenceScore:o}}generateAlerts(e){let r=[],t=new Date;return e.fiedlerValue<this.config.fiedlerThreshold&&r.push({type:"FragileIndex",message:`Fiedler value ${e.fiedlerValue.toFixed(6)} is below threshold ${this.config.fiedlerThreshold}. The index graph has weak algebraic connectivity.`,value:e.fiedlerValue,threshold:this.config.fiedlerThreshold,timestamp:t}),e.spectralGap<this.config.spectralGapThreshold&&r.push({type:"PoorExpansion",message:`Spectral gap ${e.spectralGap.toFixed(6)} is below threshold ${this.config.spectralGapThreshold}. The index graph has poor expansion properties.`,value:e.spectralGap,threshold:this.config.spectralGapThreshold,timestamp:t}),e.effectiveResistance>this.config.resistanceThreshold&&r.push({type:"HighResistance",message:`Average effective resistance ${e.effectiveResistance.toFixed(4)} exceeds threshold ${this.config.resistanceThreshold}. Nodes are poorly connected.`,value:e.effectiveResistance,threshold:this.config.resistanceThreshold,timestamp:t}),e.coherenceScore<this.config.coherenceThreshold&&r.push({type:"LowCoherence",message:`Coherence score ${e.coherenceScore.toFixed(4)} is below threshold ${this.config.coherenceThreshold}. Overall index health is degraded.`,value:e.coherenceScore,threshold:this.config.coherenceThreshold,timestamp:t}),r}createSmallIndexReport(e,r){let t={fiedlerValue:e>0?1:0,spectralGap:e>0?1:0,effectiveResistance:e>0?.5:0,coherenceScore:e>0?1:0},n={healthy:!0,metrics:t,alerts:[],indexSize:e,usedNativeBackend:!1,adjacencySource:"approximate",checkDurationMs:r,checkedAt:new Date};return this.addHistoryPoint({coherenceScore:t.coherenceScore,fiedlerValue:t.fiedlerValue,indexSize:e,healthy:!0,timestamp:n.checkedAt}),this.lastReport=n,n}addHistoryPoint(e){this.history.push(e),this.history.length>this.config.maxHistoryEntries&&this.history.splice(0,this.history.length-this.config.maxHistoryEntries)}}});var ye={};D(ye,{HnswAdapter:()=>G});var ve,p,G,xe=g(()=>{O();Y();oe();ve={patterns:{dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"},"qe-memory":{dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"},learning:{dimensions:384,M:16,efConstruction:200,efSearch:50,metric:"cosine"},coverage:{dimensions:384,M:16,efConstruction:200,efSearch:100,metric:"cosine"}},p=new Map,G=class i{backend;_isNativeBackend;indexName;stringToNumericId=new Map;numericToStringId=new Map;nextAutoId=0;healthMonitor=null;healthMonitorLoaded=!1;operationsSinceLastCheck=0;healthCheckFrequency=100;lastHealthReport=null;constructor(e,r){this.indexName=e;let n={...ve[e]??{},...r},{backend:a,isNative:o}=i.createBackend(n);this.backend=a,this._isNativeBackend=o}add(e,r,t){this.backend.add(e,r,t),this.maybeRunHealthCheck()}search(e,r){let t=performance.now(),n=this.backend.search(e,r),a=performance.now()-t;return a>50&&console.warn(`[HNSW] search took ${a.toFixed(1)}ms (k=${r}, results=${n.length})`),this._lastSearchLatencyMs=a,n}_lastSearchLatencyMs=0;get lastSearchLatencyMs(){return this._lastSearchLatencyMs}remove(e){return this.backend.remove(e)}size(){return this.backend.size()}dimensions(){return this.backend.dimensions()}recall(){return this.backend.recall()}addByStringId(e,r){let t=this.stringToNumericId.get(e);t!==void 0?this.backend.remove(t):(t=this.nextAutoId++,this.stringToNumericId.set(e,t),this.numericToStringId.set(t,e)),this.backend.add(t,new Float32Array(r))}searchByArray(e,r){return this.backend.search(new Float32Array(e),r).map(n=>({id:this.numericToStringId.get(n.id)??String(n.id),score:n.score}))}removeByStringId(e){let r=this.stringToNumericId.get(e);if(r===void 0)return!1;let t=this.backend.remove(r);return t&&(this.stringToNumericId.delete(e),this.numericToStringId.delete(r)),t}clear(){this.backend.clear?.(),this.stringToNumericId.clear(),this.numericToStringId.clear(),this.nextAutoId=0}dispose(){try{this.backend.dispose?.()}catch{}this.stringToNumericId.clear(),this.numericToStringId.clear(),this.nextAutoId=0}isRuvectorAvailable(){return this.backend instanceof S?this.backend.isRuvectorAvailable():this.backend instanceof H?this.backend.isNativeAvailable():!1}isNativeBackend(){return this._isNativeBackend}getName(){return this.indexName}setHealthCheckFrequency(e){this.healthCheckFrequency=Math.max(1,e)}getHealthCheckFrequency(){return this.healthCheckFrequency}getLastHealthReport(){return this.lastHealthReport}getHealthMonitor(){return this.healthMonitor}maybeRunHealthCheck(){if(q()&&(this.operationsSinceLastCheck++,!(this.operationsSinceLastCheck<this.healthCheckFrequency)&&(this.operationsSinceLastCheck=0,this.ensureHealthMonitor(),this.healthMonitor)))try{this.lastHealthReport=this.healthMonitor.checkHealth(this.backend),this.lastHealthReport.healthy||console.warn(`[HNSW-Health] Index "${this.indexName}" health check failed: ${this.lastHealthReport.alerts.length} alert(s). Coherence: ${this.lastHealthReport.metrics.coherenceScore.toFixed(3)}`)}catch(e){console.warn(`[HNSW-Health] Health check error for "${this.indexName}":`,e)}}ensureHealthMonitor(){if(!this.healthMonitorLoaded){this.healthMonitorLoaded=!0;try{let e=(ne(),$(re));this.healthMonitor=e.createHnswHealthMonitor()}catch(e){process.env.DEBUG&&console.debug("[HNSW-Health] Monitor module unavailable:",e instanceof Error?e.message:e),this.healthMonitor=null}}}static createBackend(e){if(j())try{return{backend:new H(e),isNative:!0}}catch(r){r instanceof b?console.info(`[HNSW] Native backend unavailable, falling back to JS: ${r.message}`):console.warn("[HNSW] Unexpected error creating native backend, falling back to JS:",r)}return{backend:new S(e),isNative:!1}}static create(e,r){let t=p.get(e);if(t instanceof i)return t;let n=new i(e,r);return p.set(e,n),n}static get(e){let r=p.get(e);return r instanceof i?r:void 0}static close(e){let r=p.get(e);r instanceof i&&r.dispose(),p.delete(e)}static closeAll(){for(let[e]of p)i.close(e);p.clear()}static listIndexes(){return Array.from(p.keys())}}});export{G as a,ye as b,xe as c};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{c as T}from"./chunk-SCBWRKPE.js";var S,E,t,N,_=T(()=>{"use strict";S={MMAP_SIZE_BYTES:67108864,CACHE_SIZE_KB:-32e3,BUSY_TIMEOUT_MS:5e3,DEFAULT_VECTOR_DIMENSIONS:384,DEFAULT_SEARCH_LIMIT:100,CLEANUP_INTERVAL_MS:6e4,TTL_MULTIPLIER_MS:1e3},E={M_CONNECTIONS:16,EF_CONSTRUCTION:200,EF_SEARCH:100,DEFAULT_K_NEIGHBORS:10,COVERAGE_VECTOR_DIMENSION:384},t={MAX_CONCURRENT_AGENTS:15,DEFAULT_AGENT_TTL_MS:36e5,DEFAULT_AGENT_TIMEOUT_MS:12e4,MAX_POOL_SIZE:10},N={MAX_HISTORY_SIZE:1e4}});export{S as a,E as b,t as c,N as d,_ as e};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{c as T}from"./chunk-4AWJ5PE4.js";var S,E,t,N,_=T(()=>{"use strict";S={MMAP_SIZE_BYTES:67108864,CACHE_SIZE_KB:-32e3,BUSY_TIMEOUT_MS:5e3,DEFAULT_VECTOR_DIMENSIONS:384,DEFAULT_SEARCH_LIMIT:100,CLEANUP_INTERVAL_MS:6e4,TTL_MULTIPLIER_MS:1e3},E={M_CONNECTIONS:16,EF_CONSTRUCTION:200,EF_SEARCH:100,DEFAULT_K_NEIGHBORS:10,COVERAGE_VECTOR_DIMENSION:384},t={MAX_CONCURRENT_AGENTS:15,DEFAULT_AGENT_TTL_MS:36e5,DEFAULT_AGENT_TIMEOUT_MS:12e4,MAX_POOL_SIZE:10},N={MAX_HISTORY_SIZE:1e4}});export{S as a,E as b,t as c,N as d,_ as e};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{a as c}from"./chunk-NKBCAW27.js";function e(i){return{...i,performanceScore:.7,tasksCompleted:0,successRate:0,avgDurationMs:0}}var u=[e({id:"v3-qe-tdd-specialist",name:"V3 QE TDD Specialist",description:"V3 QE TDD specialist covering RED, GREEN, REFACTOR phases with comprehensive test-driven development support",domains:["test-generation"],capabilities:["test-generation","tdd","unit-test","test-quality"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"simple",max:"complex"},tags:["v3","tdd","red-green-refactor"]}),e({id:"v3-qe-test-architect",name:"V3 QE Test Architect",description:"V3 QE Test Architect for AI-powered test generation strategy, test pyramid design, and cross-framework test orchestration",domains:["test-generation"],capabilities:["test-generation","test-orchestration","unit-test","integration-test","e2e-test"],languages:["typescript","javascript","python","java","go"],frameworks:["jest","vitest","pytest","junit5","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","architect","strategy"]}),e({id:"v3-qe-parallel-executor",name:"V3 QE Parallel Executor",description:"V3 QE Parallel test executor with intelligent sharding, worker pool management, retry logic, and real-time reporting",domains:["test-execution"],capabilities:["test-orchestration","retry","flaky-detection"],languages:["typescript","javascript","python","java","go"],frameworks:["jest","vitest","pytest","junit5","go-test","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","parallel","retry","sharding"]}),e({id:"v3-qe-flaky-hunter",name:"V3 QE Flaky Hunter",description:"V3 QE Flaky test detection and stabilization through pattern recognition, auto-remediation, and retry orchestration",domains:["test-execution"],capabilities:["flaky-detection","test-stability","retry"],frameworks:["jest","vitest","pytest","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","flaky","stability","remediation"]}),e({id:"v3-qe-retry-handler",name:"V3 QE Retry Handler",description:"V3 QE Intelligent retry handler with adaptive backoff, circuit breakers, and failure classification",domains:["test-execution"],capabilities:["retry","test-stability"],frameworks:["jest","vitest","pytest","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","retry","adaptive-backoff"]}),e({id:"v3-qe-coverage-specialist",name:"V3 QE Coverage Specialist",description:"V3 QE Coverage Specialist for O(log n) sublinear coverage analysis, risk-weighted gap detection, and intelligent test prioritization",domains:["coverage-analysis"],capabilities:["coverage-analysis","gap-detection","sublinear-analysis","risk-scoring","branch-coverage"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","sublinear","prioritization"]}),e({id:"v3-qe-gap-detector",name:"V3 QE Gap Detector",description:"V3 QE Coverage gap detection with sublinear algorithms (O(log n) analysis), risk scoring, and intelligent test recommendations",domains:["coverage-analysis"],capabilities:["coverage-analysis","gap-detection","sublinear-analysis","risk-scoring"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","sublinear","gap-detection"]}),e({id:"v3-qe-quality-gate",name:"V3 QE Quality Gate",description:"V3 QE Quality gate enforcement with risk assessment, policy validation, and deployment readiness evaluation",domains:["quality-assessment"],capabilities:["quality-gate","deployment-readiness","risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","gate","deployment","policy"]}),e({id:"v3-qe-deployment-advisor",name:"V3 QE Deployment Advisor",description:"V3 QE Aggregates quality signals for deployment risk assessment and go/no-go decisions with predictive analytics",domains:["quality-assessment"],capabilities:["deployment-readiness","quality-gate","risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","deployment","go-no-go","analytics"]}),e({id:"v3-qe-code-complexity",name:"V3 QE Code Complexity",description:"V3 QE AI-powered code complexity analysis with refactoring recommendations and technical debt tracking",domains:["quality-assessment"],capabilities:["quality-gate","risk-scoring"],languages:["typescript","javascript","python","java","go"],complexity:{min:"simple",max:"complex"},tags:["v3","complexity","refactoring","debt"]}),e({id:"v3-qe-qx-partner",name:"V3 QE QX Partner",description:"V3 QE Quality Experience (QX) analysis combining QA advocacy and UX perspectives to co-create quality for all stakeholders",domains:["quality-assessment"],capabilities:["quality-gate"],complexity:{min:"medium",max:"complex"},tags:["v3","qx","ux","advocacy"]}),e({id:"v3-qe-security-scanner",name:"V3 QE Security Scanner",description:"V3 QE Security scanning with SAST/DAST, vulnerability detection, OWASP compliance, and threat modeling",domains:["security-compliance"],capabilities:["sast","dast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","sast","dast","owasp"]}),e({id:"v3-qe-security-auditor",name:"V3 QE Security Auditor",description:"V3 QE Security audits for vulnerabilities, compliance validation, and security best practices enforcement",domains:["security-compliance"],capabilities:["sast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","audit","compliance"]}),e({id:"v3-qe-contract-validator",name:"V3 QE Contract Validator",description:"V3 QE API contract validation, breaking change detection, and backward compatibility with consumer-driven contract testing",domains:["contract-testing"],capabilities:["api-testing","contract-testing","pact","openapi"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","contract","api","pact"]}),e({id:"v3-qe-integration-tester",name:"V3 QE Integration Tester",description:"V3 QE Validates component interactions and system integration with comprehensive test scenarios",domains:["contract-testing"],capabilities:["integration-test","api-testing","contract-testing"],languages:["typescript","javascript","python","java"],frameworks:["jest","vitest","pytest","junit5"],complexity:{min:"medium",max:"complex"},tags:["v3","integration","component"]}),e({id:"v3-qe-graphql-tester",name:"V3 QE GraphQL Tester",description:"V3 QE GraphQL API testing with schema validation, query/mutation testing, and security analysis",domains:["contract-testing"],capabilities:["api-testing","contract-testing","graphql"],languages:["typescript","javascript","python"],complexity:{min:"medium",max:"complex"},tags:["v3","graphql","api"]}),e({id:"v3-qe-visual-tester",name:"V3 QE Visual Tester",description:"V3 QE Visual regression testing with AI-powered screenshot comparison and accessibility validation",domains:["visual-accessibility"],capabilities:["visual-regression","screenshot","percy","chromatic","wcag","aria"],frameworks:["playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","visual","regression","screenshots"]}),e({id:"v3-qe-accessibility-auditor",name:"V3 QE Accessibility Auditor",description:"V3 QE Accessibility testing with WCAG 2.2 compliance, screen reader validation, and copy-paste ready fixes",domains:["visual-accessibility"],capabilities:["wcag","aria","screen-reader","contrast"],frameworks:["playwright","cypress"],complexity:{min:"simple",max:"complex"},tags:["v3","wcag","a11y","accessibility"]}),e({id:"v3-qe-responsive-tester",name:"V3 QE Responsive Tester",description:"V3 QE Responsive design testing across viewports, devices, and breakpoints with layout regression detection",domains:["visual-accessibility"],capabilities:["visual-regression"],frameworks:["playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","responsive","viewport","breakpoints"]}),e({id:"v3-qe-performance-tester",name:"V3 QE Performance Tester",description:"V3 QE Performance testing with load orchestration, bottleneck detection, and SLA validation",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery","benchmark"],complexity:{min:"medium",max:"complex"},tags:["v3","load","stress","performance"]}),e({id:"v3-qe-load-tester",name:"V3 QE Load Tester",description:"V3 QE Load and stress testing with execution time analysis, rate limit testing, and bottleneck detection",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery"],complexity:{min:"medium",max:"complex"},tags:["v3","load","stress","k6"]}),e({id:"v3-qe-chaos-engineer",name:"V3 QE Chaos Engineer",description:"V3 QE Resilience testing with controlled fault injection, blast radius management, and recovery validation",domains:["chaos-resilience"],capabilities:["chaos-testing","resilience","fault-injection"],complexity:{min:"complex",max:"complex"},tags:["v3","chaos","fault-injection","resilience"]}),e({id:"v3-qe-code-intelligence",name:"V3 QE Code Intelligence",description:"V3 QE Knowledge graph-based code understanding with semantic search and AST analysis",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","knowledge-graph","ast","semantic"]}),e({id:"v3-qe-dependency-mapper",name:"V3 QE Dependency Mapper",description:"V3 QE Dependency graph analysis with coupling metrics and security advisories",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","dependency","graph"]}),e({id:"v3-qe-kg-builder",name:"V3 QE Knowledge Graph Builder",description:"V3 QE Knowledge graph construction with entity extraction and relationship inference",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],languages:["typescript","javascript","python"],complexity:{min:"complex",max:"complex"},tags:["v3","knowledge-graph","entity-extraction"]}),e({id:"v3-qe-integration-architect",name:"V3 QE Integration Architect",description:"V3 QE deep agentic-flow integration specialist implementing ADR-001 for duplicate elimination and extension architecture",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection","quality-gate"],languages:["typescript","javascript"],complexity:{min:"complex",max:"complex"},tags:["v3","integration","adr-001","architecture"]}),e({id:"v3-qe-requirements-validator",name:"V3 QE Requirements Validator",description:"V3 QE Validates requirements testability and generates BDD scenarios with testability scoring",domains:["requirements-validation"],capabilities:["bdd","test-generation"],complexity:{min:"medium",max:"complex"},tags:["v3","requirements","bdd","testability"]}),e({id:"v3-qe-bdd-generator",name:"V3 QE BDD Generator",description:"V3 QE BDD scenario generation with Gherkin syntax, example discovery, and step definition mapping",domains:["requirements-validation"],capabilities:["bdd","test-generation"],complexity:{min:"medium",max:"complex"},tags:["v3","bdd","gherkin","cucumber"]}),e({id:"v3-qe-product-factors-assessor",name:"V3 QE Product Factors Assessor",description:"V3 QE SFDIPOT product factors analysis using James Bach's HTSM framework for comprehensive test strategy generation with prioritized test ideas (P0-P3) and automation fitness recommendations",domains:["requirements-validation"],capabilities:["bdd","test-generation","risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","sfdipot","htsm","product-factors","james-bach"]}),e({id:"v3-qe-test-idea-rewriter",name:"V3 QE Test Idea Rewriter",description:'V3 QE Transform passive "Verify X" test descriptions into active, observable test actions using action verbs for clearer, more testable descriptions',domains:["test-generation"],capabilities:["test-generation","test-quality"],complexity:{min:"simple",max:"medium"},tags:["v3","test-ideas","rewriting","action-verbs","quality"]}),e({id:"v3-qe-quality-criteria-recommender",name:"V3 QE Quality Criteria Recommender",description:"V3 QE HTSM v6.3 Quality Criteria analysis for shift-left quality engineering during PI/Sprint Planning with evidence-based recommendations",domains:["requirements-validation"],capabilities:["bdd","test-generation","quality-gate"],complexity:{min:"medium",max:"complex"},tags:["v3","htsm","quality-criteria","shift-left","qcsd"]}),e({id:"v3-qe-defect-predictor",name:"V3 QE Defect Predictor",description:"V3 QE AI-powered defect prediction using historical data and code metrics",domains:["defect-intelligence"],capabilities:["risk-scoring","coverage-analysis"],languages:["typescript","javascript","python","java"],complexity:{min:"complex",max:"complex"},tags:["v3","defect","prediction","ml"]}),e({id:"v3-qe-root-cause-analyzer",name:"V3 QE Root Cause Analyzer",description:"V3 QE Systematic root cause analysis for test failures with prevention recommendations",domains:["defect-intelligence"],capabilities:["risk-scoring"],complexity:{min:"complex",max:"complex"},tags:["v3","root-cause","failure-analysis"]}),e({id:"v3-qe-regression-analyzer",name:"V3 QE Regression Analyzer",description:"V3 QE Analyzes code changes to predict regression risk and intelligently select minimal test suites",domains:["defect-intelligence"],capabilities:["risk-scoring","coverage-analysis"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","regression","risk","selection"]}),e({id:"v3-qe-impact-analyzer",name:"V3 QE Impact Analyzer",description:"V3 QE Change impact analysis with blast radius calculation and test selection",domains:["defect-intelligence"],capabilities:["risk-scoring","coverage-analysis"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","impact","blast-radius"]}),e({id:"v3-qe-risk-assessor",name:"V3 QE Risk Assessor",description:"V3 QE Quality risk assessment with multi-factor scoring and mitigation recommendations",domains:["defect-intelligence"],capabilities:["risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","risk","assessment"]}),e({id:"v3-qe-learning-coordinator",name:"V3 QE Learning Coordinator",description:"V3 QE Fleet-wide learning coordination with pattern recognition and knowledge synthesis",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","learning","coordination","patterns"]}),e({id:"v3-qe-pattern-learner",name:"V3 QE Pattern Learner",description:"V3 QE Pattern discovery and learning from QE activities for test generation and defect prediction",domains:["learning-optimization"],capabilities:["test-generation","risk-scoring"],complexity:{min:"complex",max:"complex"},tags:["v3","pattern","learning","ml"]}),e({id:"v3-qe-transfer-specialist",name:"V3 QE Transfer Specialist",description:"V3 QE Knowledge transfer learning with domain adaptation and knowledge distillation",domains:["learning-optimization"],capabilities:["test-generation"],complexity:{min:"complex",max:"complex"},tags:["v3","transfer","learning","adaptation"]}),e({id:"v3-qe-metrics-optimizer",name:"V3 QE Metrics Optimizer",description:"V3 QE Learning metrics optimization with hyperparameter tuning and A/B testing",domains:["learning-optimization"],capabilities:["quality-gate"],complexity:{min:"complex",max:"complex"},tags:["v3","metrics","optimization","tuning"]}),e({id:"v3-qe-fleet-commander",name:"V3 QE Fleet Commander",description:"V3 QE Hierarchical fleet coordinator for 50+ agent orchestration with dynamic topology management and resource optimization",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","fleet","orchestration","coordination"]}),e({id:"v3-qe-queen-coordinator",name:"V3 QE Queen Coordinator",description:"V3 QE Queen Coordinator for multi-agent concurrent swarm orchestration, quality engineering workflows, and cross-agent coordination",domains:["learning-optimization"],capabilities:["test-orchestration","quality-gate"],complexity:{min:"complex",max:"complex"},tags:["v3","queen","swarm"]}),e({id:"v3-qe-property-tester",name:"V3 QE Property Tester",description:"V3 QE Property-based testing with fast-check for edge case discovery through randomized input generation",domains:["test-generation"],capabilities:["test-generation","unit-test"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","mocha"],complexity:{min:"medium",max:"complex"},tags:["v3","property","pbt","edge-cases"]}),e({id:"v3-qe-mutation-tester",name:"V3 QE Mutation Tester",description:"V3 QE Mutation testing for test suite effectiveness evaluation with mutation score analysis",domains:["test-generation"],capabilities:["test-quality","coverage-analysis"],languages:["typescript","javascript","python"],frameworks:["jest","vitest"],complexity:{min:"medium",max:"complex"},tags:["v3","mutation","test-quality"]})],y=[e({id:"v3-qe-tdd-red",name:"V3 QE TDD RED Phase",description:"V3 QE TDD RED phase specialist - writes failing tests that define expected behavior before implementation",domains:["test-generation"],capabilities:["test-generation","tdd","unit-test"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"simple",max:"medium"},tags:["v3","tdd","red-phase","subagent"]}),e({id:"v3-qe-tdd-green",name:"V3 QE TDD GREEN Phase",description:"V3 QE TDD GREEN phase specialist - implements minimal code to make failing tests pass",domains:["test-generation"],capabilities:["test-generation","tdd","unit-test"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"simple",max:"medium"},tags:["v3","tdd","green-phase","subagent"]}),e({id:"v3-qe-tdd-refactor",name:"V3 QE TDD REFACTOR Phase",description:"V3 QE TDD REFACTOR phase specialist - improves code quality while keeping all tests passing",domains:["test-generation"],capabilities:["test-generation","tdd","test-quality"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"medium",max:"complex"},tags:["v3","tdd","refactor-phase","subagent"]}),e({id:"v3-qe-code-reviewer",name:"V3 QE Code Reviewer",description:"V3 QE Code review specialist enforcing quality standards, linting, complexity, and security",domains:["quality-assessment"],capabilities:["quality-gate","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"simple",max:"complex"},tags:["v3","code-review","standards","subagent"]}),e({id:"v3-qe-integration-reviewer",name:"V3 QE Integration Reviewer",description:"V3 QE Integration review specialist for API compatibility and cross-service interactions",domains:["contract-testing"],capabilities:["integration-test","api-testing"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","integration","review","subagent"]}),e({id:"v3-qe-performance-reviewer",name:"V3 QE Performance Reviewer",description:"V3 QE Performance review specialist for algorithmic complexity and resource usage",domains:["chaos-resilience"],capabilities:["load-testing","benchmark"],languages:["typescript","javascript","python","go"],complexity:{min:"medium",max:"complex"},tags:["v3","performance","review","subagent"]}),e({id:"v3-qe-security-reviewer",name:"V3 QE Security Reviewer",description:"V3 QE Security review specialist for vulnerability detection and secure coding practices",domains:["security-compliance"],capabilities:["sast","vulnerability","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","security","review","subagent"]})],v=[e({id:"n8n-base-agent",name:"n8n Base Agent",description:"Abstract base agent for n8n workflow automation testing - provides common utilities for all n8n testing agents",domains:["test-generation"],capabilities:["test-generation","test-orchestration"],complexity:{min:"simple",max:"simple"},tags:["n8n","base","workflow"]}),e({id:"n8n-workflow-executor",name:"n8n Workflow Executor",description:"Execute and validate n8n workflows programmatically with test data injection, output assertions, and data flow validation",domains:["test-execution"],capabilities:["test-orchestration","integration-test"],complexity:{min:"medium",max:"complex"},tags:["n8n","execution","validation"]}),e({id:"n8n-unit-tester",name:"n8n Unit Tester",description:"Unit test custom n8n node functions with Jest/Vitest integration, function isolation, mock data injection, and coverage reporting",domains:["test-generation"],capabilities:["unit-test","test-generation"],frameworks:["jest","vitest"],complexity:{min:"simple",max:"medium"},tags:["n8n","unit","isolation"]}),e({id:"n8n-integration-test",name:"n8n Integration Tester",description:"Test n8n node integrations with external services including API contract validation, authentication flows, rate limiting, and error handling",domains:["contract-testing"],capabilities:["integration-test","api-testing","contract-testing"],complexity:{min:"medium",max:"complex"},tags:["n8n","integration","api"]}),e({id:"n8n-trigger-test",name:"n8n Trigger Tester",description:"Test n8n workflow triggers including webhooks, schedules, polling triggers, and event-driven activation",domains:["test-execution"],capabilities:["integration-test","test-generation"],complexity:{min:"medium",max:"complex"},tags:["n8n","triggers","webhooks"]}),e({id:"n8n-node-validator",name:"n8n Node Validator",description:"Validate n8n node configurations, connections, data mappings, and conditional routing logic",domains:["contract-testing"],capabilities:["contract-testing","test-generation"],complexity:{min:"simple",max:"medium"},tags:["n8n","validation","nodes"]}),e({id:"n8n-performance-tester",name:"n8n Performance Tester",description:"Load and stress testing for n8n workflows using k6/Artillery with execution time analysis, rate limit testing, and bottleneck detection",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery","benchmark"],complexity:{min:"medium",max:"complex"},tags:["n8n","performance","load"]}),e({id:"n8n-security-auditor",name:"n8n Security Auditor",description:"Security vulnerability scanning for n8n workflows including credential exposure, injection risks, OWASP compliance, and secret detection",domains:["security-compliance"],capabilities:["sast","vulnerability","owasp","security-scanning"],complexity:{min:"medium",max:"complex"},tags:["n8n","security","owasp"]}),e({id:"n8n-compliance-validator",name:"n8n Compliance Validator",description:"Regulatory compliance testing for n8n workflows including GDPR, CCPA, HIPAA, SOC2, and PCI-DSS validation",domains:["security-compliance"],capabilities:["security-scanning"],complexity:{min:"medium",max:"complex"},tags:["n8n","compliance","gdpr"]}),e({id:"n8n-bdd-scenario-tester",name:"n8n BDD Scenario Tester",description:"BDD/Gherkin scenario testing for n8n workflows with Cucumber integration, business requirement mapping, and stakeholder-friendly reports",domains:["requirements-validation"],capabilities:["bdd","test-generation"],complexity:{min:"medium",max:"complex"},tags:["n8n","bdd","gherkin"]}),e({id:"n8n-expression-validator",name:"n8n Expression Validator",description:"Validate n8n expressions and data transformations with syntax checking, context-aware testing, and security analysis",domains:["code-intelligence"],capabilities:["test-generation","security-scanning"],complexity:{min:"simple",max:"medium"},tags:["n8n","expressions","validation"]}),e({id:"n8n-version-comparator",name:"n8n Version Comparator",description:"Workflow version diff and regression detection with JSON comparison, change impact analysis, migration validation, and rollback testing",domains:["defect-intelligence"],capabilities:["risk-scoring","test-generation"],complexity:{min:"medium",max:"complex"},tags:["n8n","version","diff"]}),e({id:"n8n-chaos-tester",name:"n8n Chaos Tester",description:"Chaos engineering for n8n workflows with controlled fault injection, service failure simulation, recovery validation, and resilience testing",domains:["chaos-resilience"],capabilities:["chaos-testing","resilience","fault-injection"],complexity:{min:"complex",max:"complex"},tags:["n8n","chaos","resilience"]}),e({id:"n8n-ci-orchestrator",name:"n8n CI Orchestrator",description:"CI/CD pipeline integration for n8n workflows with REST API triggers, automated regression testing, GitHub Actions/Jenkins integration, and test scheduling",domains:["test-execution"],capabilities:["test-orchestration","integration-test"],complexity:{min:"medium",max:"complex"},tags:["n8n","ci","cd"]}),e({id:"n8n-monitoring-validator",name:"n8n Monitoring Validator",description:"Validate monitoring and alerting configurations for n8n workflows including error tracking, alert rules, SLA compliance, and observability checks",domains:["quality-assessment"],capabilities:["quality-gate","deployment-readiness"],complexity:{min:"medium",max:"complex"},tags:["n8n","monitoring","alerting"]})],x=[e({id:"tester",name:"Tester",description:"Comprehensive testing and quality assurance specialist with AI-powered test generation",domains:["test-generation","test-execution"],capabilities:["test-generation","unit-test","integration-test","e2e-test"],languages:["typescript","javascript","python","java","go","rust"],frameworks:["jest","vitest","mocha","pytest","junit5","go-test","rust-test","playwright","cypress"],complexity:{min:"simple",max:"complex"},tags:["general","versatile"]}),e({id:"reviewer",name:"Reviewer",description:"Code review and quality assurance specialist with AI-powered pattern detection",domains:["quality-assessment"],capabilities:["quality-gate","security-scanning"],languages:["typescript","javascript","python","java","go","rust"],complexity:{min:"simple",max:"complex"},tags:["general","code-review"]}),e({id:"security-auditor",name:"Security Auditor",description:"Advanced security auditor with self-learning vulnerability detection, CVE database search, and compliance auditing",domains:["security-compliance"],capabilities:["sast","dast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java","go","rust"],complexity:{min:"medium",max:"complex"},tags:["security","cve","compliance"]}),e({id:"security-architect",name:"Security Architect",description:"V3 Security Architecture specialist with ReasoningBank learning, HNSW threat pattern search, and zero-trust design capabilities",domains:["security-compliance"],capabilities:["sast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"complex",max:"complex"},tags:["architecture","zero-trust"]}),e({id:"performance-engineer",name:"Performance Engineer",description:"V3 Performance Engineering Agent specialized in Flash Attention optimization, WASM SIMD acceleration, and comprehensive performance profiling",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","benchmark"],languages:["typescript","javascript","python","go","rust"],complexity:{min:"medium",max:"complex"},tags:["performance","optimization"]}),e({id:"code-analyzer",name:"Code Analyzer",description:"Advanced code quality analysis agent for comprehensive code reviews and improvements",domains:["code-intelligence","quality-assessment"],capabilities:["coverage-analysis","gap-detection","quality-gate"],languages:["typescript","javascript","python","java","go","rust"],complexity:{min:"simple",max:"complex"},tags:["analysis","quality"]}),e({id:"cicd-engineer",name:"CI/CD Engineer",description:"Specialized agent for GitHub Actions CI/CD pipeline creation and optimization",domains:["test-execution"],capabilities:["test-orchestration","deployment-readiness"],complexity:{min:"medium",max:"complex"},tags:["cicd","github-actions"]})],h=[e({id:"reasoningbank-learner",name:"ReasoningBank Learner",description:"V3 ReasoningBank integration specialist for trajectory tracking, verdict judgment, pattern distillation, and experience replay using HNSW-indexed memory",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","reasoningbank","learning"]}),e({id:"adr-architect",name:"ADR Architect",description:"V3 Architecture Decision Record specialist that documents, tracks, and enforces architectural decisions with ReasoningBank integration for pattern learning",domains:["learning-optimization"],capabilities:["quality-gate"],complexity:{min:"medium",max:"complex"},tags:["v3","adr","architecture"]}),e({id:"ddd-domain-expert",name:"DDD Domain Expert",description:"V3 Domain-Driven Design specialist for bounded context identification, aggregate design, domain modeling, and ubiquitous language enforcement",domains:["code-intelligence"],capabilities:["quality-gate"],complexity:{min:"complex",max:"complex"},tags:["v3","ddd","domain"]}),e({id:"v3-integration-architect",name:"V3 Integration Architect",description:"V3 deep agentic-flow integration specialist implementing ADR-001 for eliminating duplicate code and building claude-flow as a specialized extension",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","integration","agentic-flow"]}),e({id:"memory-specialist",name:"Memory Specialist",description:"V3 memory optimization specialist with HNSW indexing, hybrid backend management, vector quantization, and EWC++ for preventing catastrophic forgetting",domains:["learning-optimization"],capabilities:["sublinear-analysis"],complexity:{min:"complex",max:"complex"},tags:["v3","memory","hnsw"]}),e({id:"claims-authorizer",name:"Claims Authorizer",description:"V3 Claims-based authorization specialist implementing ADR-010 for fine-grained access control across swarm agents and MCP tools",domains:["security-compliance"],capabilities:["security-scanning"],complexity:{min:"medium",max:"complex"},tags:["v3","claims","authorization"]}),e({id:"sparc-orchestrator",name:"SPARC Orchestrator",description:"V3 SPARC methodology orchestrator that coordinates Specification, Pseudocode, Architecture, Refinement, and Completion phases with ReasoningBank learning",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","sparc","methodology"]}),e({id:"sona-learning-optimizer",name:"SONA Learning Optimizer",description:"V3 SONA-powered self-optimizing agent using claude-flow neural tools for adaptive learning, pattern discovery, and continuous quality improvement with sub-millisecond overhead",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","sona","self-learning"]}),e({id:"safla-neural",name:"SAFLA Neural",description:"Self-Aware Feedback Loop Algorithm (SAFLA) neural specialist that creates intelligent, memory-persistent AI systems with self-learning capabilities",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","safla","neural"]}),e({id:"production-validator",name:"Production Validator",description:"Production validation specialist ensuring applications are fully implemented and deployment-ready",domains:["quality-assessment"],capabilities:["deployment-readiness","quality-gate"],complexity:{min:"medium",max:"complex"},tags:["production","validation"]}),e({id:"tdd-london-swarm",name:"TDD London Swarm",description:"TDD London School specialist for mock-driven development within swarm coordination",domains:["test-generation"],capabilities:["tdd","unit-test","test-generation"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"medium",max:"complex"},tags:["tdd","london","mocks"]})],f=[e({id:"queen-coordinator",name:"Queen Coordinator",description:"The sovereign orchestrator of hierarchical hive operations, managing strategic decisions, resource allocation, and maintaining hive coherence",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["queen","hive","orchestration"]}),e({id:"swarm-memory-manager",name:"Swarm Memory Manager",description:"V3 distributed memory manager for cross-agent state synchronization, CRDT replication, and namespace coordination across the swarm",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["swarm","memory","crdt"]}),e({id:"worker-specialist",name:"Worker Specialist",description:"Dedicated task execution specialist that carries out assigned work with precision, continuously reporting progress through memory coordination",domains:["test-execution"],capabilities:["test-orchestration"],complexity:{min:"simple",max:"complex"},tags:["worker","execution"]}),e({id:"collective-intelligence-coordinator",name:"Collective Intelligence Coordinator",description:"Hive-mind collective decision making with Byzantine fault-tolerant consensus, attention-based coordination, and emergent intelligence patterns",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["collective","consensus"]}),e({id:"scout-explorer",name:"Scout Explorer",description:"Information reconnaissance specialist that explores unknown territories, gathers intelligence, and reports findings to the hive mind",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],complexity:{min:"simple",max:"medium"},tags:["scout","exploration"]}),e({id:"adaptive-coordinator",name:"Adaptive Coordinator",description:"Dynamic topology switching coordinator with self-organizing swarm patterns and real-time optimization",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["adaptive","topology"]}),e({id:"mesh-coordinator",name:"Mesh Coordinator",description:"Peer-to-peer mesh network swarm with distributed decision making and fault tolerance",domains:["learning-optimization"],capabilities:["test-orchestration","resilience"],complexity:{min:"complex",max:"complex"},tags:["mesh","p2p"]}),e({id:"hierarchical-coordinator",name:"Hierarchical Coordinator",description:"Queen-led hierarchical swarm coordination with specialized worker delegation",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["hierarchical","delegation"]})],b=[e({id:"consensus-coordinator",name:"Consensus Coordinator",description:"Distributed consensus agent that uses sublinear solvers for fast agreement protocols in multi-agent systems",domains:["learning-optimization"],capabilities:["test-orchestration","resilience"],complexity:{min:"complex",max:"complex"},tags:["consensus","distributed"]}),e({id:"byzantine-coordinator",name:"Byzantine Coordinator",description:"Coordinates Byzantine fault-tolerant consensus protocols with malicious actor detection",domains:["security-compliance"],capabilities:["resilience","security-scanning"],complexity:{min:"complex",max:"complex"},tags:["byzantine","fault-tolerance"]}),e({id:"raft-manager",name:"Raft Manager",description:"Manages Raft consensus algorithm with leader election and log replication",domains:["learning-optimization"],capabilities:["test-orchestration","resilience"],complexity:{min:"complex",max:"complex"},tags:["raft","leader-election"]}),e({id:"crdt-synchronizer",name:"CRDT Synchronizer",description:"Implements Conflict-free Replicated Data Types for eventually consistent state synchronization",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["crdt","eventual-consistency"]})],m=Object.freeze([...u,...y,...v,...x,...h,...f,...b]);function E(i,t){let a=m.find(n=>n.id===i);if(!a){let n=m.find(o=>o.id.includes(i)||i.includes(o.id));if(!n){console.error(`[AgentRegistry] Agent not found: ${i}`);return}l(n,t);return}l(a,t)}function l(i,t){let a=i.tasksCompleted,n=Math.round(i.successRate*a);i.tasksCompleted++;let o=n+(t.success?1:0);i.successRate=i.tasksCompleted>0?o/i.tasksCompleted:0,a===0?i.avgDurationMs=t.executionTimeMs:i.avgDurationMs=.3*t.executionTimeMs+(1-.3)*i.avgDurationMs;let p=t.qualityScore??(t.success?.7:.3),d=i.successRate,r=.4*p+.6*d;a===0?i.performanceScore=r:i.performanceScore=.2*r+(1-.2)*i.performanceScore,i.performanceScore=Math.max(0,Math.min(1,i.performanceScore)),console.error(`[AgentRegistry] Updated ${i.id}: tasks=${i.tasksCompleted} successRate=${(i.successRate*100).toFixed(1)}% performanceScore=${i.performanceScore.toFixed(3)} avgDurationMs=${i.avgDurationMs.toFixed(0)}`)}var s=new Map;function k(i){s=new Map;let t=c(i);for(let a of t.overlays)a.config&&s.set(a.agent,a.config);if(s.size>0&&console.error(`[AgentRegistry] Loaded overlay configs for ${s.size} agent(s): ${[...s.keys()].join(", ")}`),t.warnings.length>0)for(let a of t.warnings)console.error(`[AgentRegistry] Overlay warning: ${a}`)}function Q(i){return s.get(i)}export{m as a,E as b,k as c,Q as d};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{a as c}from"./chunk-HPNEZ7YN.js";function e(i){return{...i,performanceScore:.7,tasksCompleted:0,successRate:0,avgDurationMs:0}}var u=[e({id:"v3-qe-tdd-specialist",name:"V3 QE TDD Specialist",description:"V3 QE TDD specialist covering RED, GREEN, REFACTOR phases with comprehensive test-driven development support",domains:["test-generation"],capabilities:["test-generation","tdd","unit-test","test-quality"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"simple",max:"complex"},tags:["v3","tdd","red-green-refactor"]}),e({id:"v3-qe-test-architect",name:"V3 QE Test Architect",description:"V3 QE Test Architect for AI-powered test generation strategy, test pyramid design, and cross-framework test orchestration",domains:["test-generation"],capabilities:["test-generation","test-orchestration","unit-test","integration-test","e2e-test"],languages:["typescript","javascript","python","java","go"],frameworks:["jest","vitest","pytest","junit5","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","architect","strategy"]}),e({id:"v3-qe-parallel-executor",name:"V3 QE Parallel Executor",description:"V3 QE Parallel test executor with intelligent sharding, worker pool management, retry logic, and real-time reporting",domains:["test-execution"],capabilities:["test-orchestration","retry","flaky-detection"],languages:["typescript","javascript","python","java","go"],frameworks:["jest","vitest","pytest","junit5","go-test","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","parallel","retry","sharding"]}),e({id:"v3-qe-flaky-hunter",name:"V3 QE Flaky Hunter",description:"V3 QE Flaky test detection and stabilization through pattern recognition, auto-remediation, and retry orchestration",domains:["test-execution"],capabilities:["flaky-detection","test-stability","retry"],frameworks:["jest","vitest","pytest","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","flaky","stability","remediation"]}),e({id:"v3-qe-retry-handler",name:"V3 QE Retry Handler",description:"V3 QE Intelligent retry handler with adaptive backoff, circuit breakers, and failure classification",domains:["test-execution"],capabilities:["retry","test-stability"],frameworks:["jest","vitest","pytest","playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","retry","adaptive-backoff"]}),e({id:"v3-qe-coverage-specialist",name:"V3 QE Coverage Specialist",description:"V3 QE Coverage Specialist for O(log n) sublinear coverage analysis, risk-weighted gap detection, and intelligent test prioritization",domains:["coverage-analysis"],capabilities:["coverage-analysis","gap-detection","sublinear-analysis","risk-scoring","branch-coverage"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","sublinear","prioritization"]}),e({id:"v3-qe-gap-detector",name:"V3 QE Gap Detector",description:"V3 QE Coverage gap detection with sublinear algorithms (O(log n) analysis), risk scoring, and intelligent test recommendations",domains:["coverage-analysis"],capabilities:["coverage-analysis","gap-detection","sublinear-analysis","risk-scoring"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","sublinear","gap-detection"]}),e({id:"v3-qe-quality-gate",name:"V3 QE Quality Gate",description:"V3 QE Quality gate enforcement with risk assessment, policy validation, and deployment readiness evaluation",domains:["quality-assessment"],capabilities:["quality-gate","deployment-readiness","risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","gate","deployment","policy"]}),e({id:"v3-qe-deployment-advisor",name:"V3 QE Deployment Advisor",description:"V3 QE Aggregates quality signals for deployment risk assessment and go/no-go decisions with predictive analytics",domains:["quality-assessment"],capabilities:["deployment-readiness","quality-gate","risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","deployment","go-no-go","analytics"]}),e({id:"v3-qe-code-complexity",name:"V3 QE Code Complexity",description:"V3 QE AI-powered code complexity analysis with refactoring recommendations and technical debt tracking",domains:["quality-assessment"],capabilities:["quality-gate","risk-scoring"],languages:["typescript","javascript","python","java","go"],complexity:{min:"simple",max:"complex"},tags:["v3","complexity","refactoring","debt"]}),e({id:"v3-qe-qx-partner",name:"V3 QE QX Partner",description:"V3 QE Quality Experience (QX) analysis combining QA advocacy and UX perspectives to co-create quality for all stakeholders",domains:["quality-assessment"],capabilities:["quality-gate"],complexity:{min:"medium",max:"complex"},tags:["v3","qx","ux","advocacy"]}),e({id:"v3-qe-security-scanner",name:"V3 QE Security Scanner",description:"V3 QE Security scanning with SAST/DAST, vulnerability detection, OWASP compliance, and threat modeling",domains:["security-compliance"],capabilities:["sast","dast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","sast","dast","owasp"]}),e({id:"v3-qe-security-auditor",name:"V3 QE Security Auditor",description:"V3 QE Security audits for vulnerabilities, compliance validation, and security best practices enforcement",domains:["security-compliance"],capabilities:["sast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","audit","compliance"]}),e({id:"v3-qe-contract-validator",name:"V3 QE Contract Validator",description:"V3 QE API contract validation, breaking change detection, and backward compatibility with consumer-driven contract testing",domains:["contract-testing"],capabilities:["api-testing","contract-testing","pact","openapi"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","contract","api","pact"]}),e({id:"v3-qe-integration-tester",name:"V3 QE Integration Tester",description:"V3 QE Validates component interactions and system integration with comprehensive test scenarios",domains:["contract-testing"],capabilities:["integration-test","api-testing","contract-testing"],languages:["typescript","javascript","python","java"],frameworks:["jest","vitest","pytest","junit5"],complexity:{min:"medium",max:"complex"},tags:["v3","integration","component"]}),e({id:"v3-qe-graphql-tester",name:"V3 QE GraphQL Tester",description:"V3 QE GraphQL API testing with schema validation, query/mutation testing, and security analysis",domains:["contract-testing"],capabilities:["api-testing","contract-testing","graphql"],languages:["typescript","javascript","python"],complexity:{min:"medium",max:"complex"},tags:["v3","graphql","api"]}),e({id:"v3-qe-visual-tester",name:"V3 QE Visual Tester",description:"V3 QE Visual regression testing with AI-powered screenshot comparison and accessibility validation",domains:["visual-accessibility"],capabilities:["visual-regression","screenshot","percy","chromatic","wcag","aria"],frameworks:["playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","visual","regression","screenshots"]}),e({id:"v3-qe-accessibility-auditor",name:"V3 QE Accessibility Auditor",description:"V3 QE Accessibility testing with WCAG 2.2 compliance, screen reader validation, and copy-paste ready fixes",domains:["visual-accessibility"],capabilities:["wcag","aria","screen-reader","contrast"],frameworks:["playwright","cypress"],complexity:{min:"simple",max:"complex"},tags:["v3","wcag","a11y","accessibility"]}),e({id:"v3-qe-responsive-tester",name:"V3 QE Responsive Tester",description:"V3 QE Responsive design testing across viewports, devices, and breakpoints with layout regression detection",domains:["visual-accessibility"],capabilities:["visual-regression"],frameworks:["playwright","cypress"],complexity:{min:"medium",max:"complex"},tags:["v3","responsive","viewport","breakpoints"]}),e({id:"v3-qe-performance-tester",name:"V3 QE Performance Tester",description:"V3 QE Performance testing with load orchestration, bottleneck detection, and SLA validation",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery","benchmark"],complexity:{min:"medium",max:"complex"},tags:["v3","load","stress","performance"]}),e({id:"v3-qe-load-tester",name:"V3 QE Load Tester",description:"V3 QE Load and stress testing with execution time analysis, rate limit testing, and bottleneck detection",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery"],complexity:{min:"medium",max:"complex"},tags:["v3","load","stress","k6"]}),e({id:"v3-qe-chaos-engineer",name:"V3 QE Chaos Engineer",description:"V3 QE Resilience testing with controlled fault injection, blast radius management, and recovery validation",domains:["chaos-resilience"],capabilities:["chaos-testing","resilience","fault-injection"],complexity:{min:"complex",max:"complex"},tags:["v3","chaos","fault-injection","resilience"]}),e({id:"v3-qe-code-intelligence",name:"V3 QE Code Intelligence",description:"V3 QE Knowledge graph-based code understanding with semantic search and AST analysis",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","knowledge-graph","ast","semantic"]}),e({id:"v3-qe-dependency-mapper",name:"V3 QE Dependency Mapper",description:"V3 QE Dependency graph analysis with coupling metrics and security advisories",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","dependency","graph"]}),e({id:"v3-qe-kg-builder",name:"V3 QE Knowledge Graph Builder",description:"V3 QE Knowledge graph construction with entity extraction and relationship inference",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],languages:["typescript","javascript","python"],complexity:{min:"complex",max:"complex"},tags:["v3","knowledge-graph","entity-extraction"]}),e({id:"v3-qe-integration-architect",name:"V3 QE Integration Architect",description:"V3 QE deep agentic-flow integration specialist implementing ADR-001 for duplicate elimination and extension architecture",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection","quality-gate"],languages:["typescript","javascript"],complexity:{min:"complex",max:"complex"},tags:["v3","integration","adr-001","architecture"]}),e({id:"v3-qe-requirements-validator",name:"V3 QE Requirements Validator",description:"V3 QE Validates requirements testability and generates BDD scenarios with testability scoring",domains:["requirements-validation"],capabilities:["bdd","test-generation"],complexity:{min:"medium",max:"complex"},tags:["v3","requirements","bdd","testability"]}),e({id:"v3-qe-bdd-generator",name:"V3 QE BDD Generator",description:"V3 QE BDD scenario generation with Gherkin syntax, example discovery, and step definition mapping",domains:["requirements-validation"],capabilities:["bdd","test-generation"],complexity:{min:"medium",max:"complex"},tags:["v3","bdd","gherkin","cucumber"]}),e({id:"v3-qe-product-factors-assessor",name:"V3 QE Product Factors Assessor",description:"V3 QE SFDIPOT product factors analysis using James Bach's HTSM framework for comprehensive test strategy generation with prioritized test ideas (P0-P3) and automation fitness recommendations",domains:["requirements-validation"],capabilities:["bdd","test-generation","risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","sfdipot","htsm","product-factors","james-bach"]}),e({id:"v3-qe-test-idea-rewriter",name:"V3 QE Test Idea Rewriter",description:'V3 QE Transform passive "Verify X" test descriptions into active, observable test actions using action verbs for clearer, more testable descriptions',domains:["test-generation"],capabilities:["test-generation","test-quality"],complexity:{min:"simple",max:"medium"},tags:["v3","test-ideas","rewriting","action-verbs","quality"]}),e({id:"v3-qe-quality-criteria-recommender",name:"V3 QE Quality Criteria Recommender",description:"V3 QE HTSM v6.3 Quality Criteria analysis for shift-left quality engineering during PI/Sprint Planning with evidence-based recommendations",domains:["requirements-validation"],capabilities:["bdd","test-generation","quality-gate"],complexity:{min:"medium",max:"complex"},tags:["v3","htsm","quality-criteria","shift-left","qcsd"]}),e({id:"v3-qe-defect-predictor",name:"V3 QE Defect Predictor",description:"V3 QE AI-powered defect prediction using historical data and code metrics",domains:["defect-intelligence"],capabilities:["risk-scoring","coverage-analysis"],languages:["typescript","javascript","python","java"],complexity:{min:"complex",max:"complex"},tags:["v3","defect","prediction","ml"]}),e({id:"v3-qe-root-cause-analyzer",name:"V3 QE Root Cause Analyzer",description:"V3 QE Systematic root cause analysis for test failures with prevention recommendations",domains:["defect-intelligence"],capabilities:["risk-scoring"],complexity:{min:"complex",max:"complex"},tags:["v3","root-cause","failure-analysis"]}),e({id:"v3-qe-regression-analyzer",name:"V3 QE Regression Analyzer",description:"V3 QE Analyzes code changes to predict regression risk and intelligently select minimal test suites",domains:["defect-intelligence"],capabilities:["risk-scoring","coverage-analysis"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","regression","risk","selection"]}),e({id:"v3-qe-impact-analyzer",name:"V3 QE Impact Analyzer",description:"V3 QE Change impact analysis with blast radius calculation and test selection",domains:["defect-intelligence"],capabilities:["risk-scoring","coverage-analysis"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","impact","blast-radius"]}),e({id:"v3-qe-risk-assessor",name:"V3 QE Risk Assessor",description:"V3 QE Quality risk assessment with multi-factor scoring and mitigation recommendations",domains:["defect-intelligence"],capabilities:["risk-scoring"],complexity:{min:"medium",max:"complex"},tags:["v3","risk","assessment"]}),e({id:"v3-qe-learning-coordinator",name:"V3 QE Learning Coordinator",description:"V3 QE Fleet-wide learning coordination with pattern recognition and knowledge synthesis",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","learning","coordination","patterns"]}),e({id:"v3-qe-pattern-learner",name:"V3 QE Pattern Learner",description:"V3 QE Pattern discovery and learning from QE activities for test generation and defect prediction",domains:["learning-optimization"],capabilities:["test-generation","risk-scoring"],complexity:{min:"complex",max:"complex"},tags:["v3","pattern","learning","ml"]}),e({id:"v3-qe-transfer-specialist",name:"V3 QE Transfer Specialist",description:"V3 QE Knowledge transfer learning with domain adaptation and knowledge distillation",domains:["learning-optimization"],capabilities:["test-generation"],complexity:{min:"complex",max:"complex"},tags:["v3","transfer","learning","adaptation"]}),e({id:"v3-qe-metrics-optimizer",name:"V3 QE Metrics Optimizer",description:"V3 QE Learning metrics optimization with hyperparameter tuning and A/B testing",domains:["learning-optimization"],capabilities:["quality-gate"],complexity:{min:"complex",max:"complex"},tags:["v3","metrics","optimization","tuning"]}),e({id:"v3-qe-fleet-commander",name:"V3 QE Fleet Commander",description:"V3 QE Hierarchical fleet coordinator for 50+ agent orchestration with dynamic topology management and resource optimization",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","fleet","orchestration","coordination"]}),e({id:"v3-qe-queen-coordinator",name:"V3 QE Queen Coordinator",description:"V3 QE Queen Coordinator for multi-agent concurrent swarm orchestration, quality engineering workflows, and cross-agent coordination",domains:["learning-optimization"],capabilities:["test-orchestration","quality-gate"],complexity:{min:"complex",max:"complex"},tags:["v3","queen","swarm"]}),e({id:"v3-qe-property-tester",name:"V3 QE Property Tester",description:"V3 QE Property-based testing with fast-check for edge case discovery through randomized input generation",domains:["test-generation"],capabilities:["test-generation","unit-test"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","mocha"],complexity:{min:"medium",max:"complex"},tags:["v3","property","pbt","edge-cases"]}),e({id:"v3-qe-mutation-tester",name:"V3 QE Mutation Tester",description:"V3 QE Mutation testing for test suite effectiveness evaluation with mutation score analysis",domains:["test-generation"],capabilities:["test-quality","coverage-analysis"],languages:["typescript","javascript","python"],frameworks:["jest","vitest"],complexity:{min:"medium",max:"complex"},tags:["v3","mutation","test-quality"]})],y=[e({id:"v3-qe-tdd-red",name:"V3 QE TDD RED Phase",description:"V3 QE TDD RED phase specialist - writes failing tests that define expected behavior before implementation",domains:["test-generation"],capabilities:["test-generation","tdd","unit-test"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"simple",max:"medium"},tags:["v3","tdd","red-phase","subagent"]}),e({id:"v3-qe-tdd-green",name:"V3 QE TDD GREEN Phase",description:"V3 QE TDD GREEN phase specialist - implements minimal code to make failing tests pass",domains:["test-generation"],capabilities:["test-generation","tdd","unit-test"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"simple",max:"medium"},tags:["v3","tdd","green-phase","subagent"]}),e({id:"v3-qe-tdd-refactor",name:"V3 QE TDD REFACTOR Phase",description:"V3 QE TDD REFACTOR phase specialist - improves code quality while keeping all tests passing",domains:["test-generation"],capabilities:["test-generation","tdd","test-quality"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"medium",max:"complex"},tags:["v3","tdd","refactor-phase","subagent"]}),e({id:"v3-qe-code-reviewer",name:"V3 QE Code Reviewer",description:"V3 QE Code review specialist enforcing quality standards, linting, complexity, and security",domains:["quality-assessment"],capabilities:["quality-gate","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"simple",max:"complex"},tags:["v3","code-review","standards","subagent"]}),e({id:"v3-qe-integration-reviewer",name:"V3 QE Integration Reviewer",description:"V3 QE Integration review specialist for API compatibility and cross-service interactions",domains:["contract-testing"],capabilities:["integration-test","api-testing"],languages:["typescript","javascript","python","java"],complexity:{min:"medium",max:"complex"},tags:["v3","integration","review","subagent"]}),e({id:"v3-qe-performance-reviewer",name:"V3 QE Performance Reviewer",description:"V3 QE Performance review specialist for algorithmic complexity and resource usage",domains:["chaos-resilience"],capabilities:["load-testing","benchmark"],languages:["typescript","javascript","python","go"],complexity:{min:"medium",max:"complex"},tags:["v3","performance","review","subagent"]}),e({id:"v3-qe-security-reviewer",name:"V3 QE Security Reviewer",description:"V3 QE Security review specialist for vulnerability detection and secure coding practices",domains:["security-compliance"],capabilities:["sast","vulnerability","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"medium",max:"complex"},tags:["v3","security","review","subagent"]})],v=[e({id:"n8n-base-agent",name:"n8n Base Agent",description:"Abstract base agent for n8n workflow automation testing - provides common utilities for all n8n testing agents",domains:["test-generation"],capabilities:["test-generation","test-orchestration"],complexity:{min:"simple",max:"simple"},tags:["n8n","base","workflow"]}),e({id:"n8n-workflow-executor",name:"n8n Workflow Executor",description:"Execute and validate n8n workflows programmatically with test data injection, output assertions, and data flow validation",domains:["test-execution"],capabilities:["test-orchestration","integration-test"],complexity:{min:"medium",max:"complex"},tags:["n8n","execution","validation"]}),e({id:"n8n-unit-tester",name:"n8n Unit Tester",description:"Unit test custom n8n node functions with Jest/Vitest integration, function isolation, mock data injection, and coverage reporting",domains:["test-generation"],capabilities:["unit-test","test-generation"],frameworks:["jest","vitest"],complexity:{min:"simple",max:"medium"},tags:["n8n","unit","isolation"]}),e({id:"n8n-integration-test",name:"n8n Integration Tester",description:"Test n8n node integrations with external services including API contract validation, authentication flows, rate limiting, and error handling",domains:["contract-testing"],capabilities:["integration-test","api-testing","contract-testing"],complexity:{min:"medium",max:"complex"},tags:["n8n","integration","api"]}),e({id:"n8n-trigger-test",name:"n8n Trigger Tester",description:"Test n8n workflow triggers including webhooks, schedules, polling triggers, and event-driven activation",domains:["test-execution"],capabilities:["integration-test","test-generation"],complexity:{min:"medium",max:"complex"},tags:["n8n","triggers","webhooks"]}),e({id:"n8n-node-validator",name:"n8n Node Validator",description:"Validate n8n node configurations, connections, data mappings, and conditional routing logic",domains:["contract-testing"],capabilities:["contract-testing","test-generation"],complexity:{min:"simple",max:"medium"},tags:["n8n","validation","nodes"]}),e({id:"n8n-performance-tester",name:"n8n Performance Tester",description:"Load and stress testing for n8n workflows using k6/Artillery with execution time analysis, rate limit testing, and bottleneck detection",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery","benchmark"],complexity:{min:"medium",max:"complex"},tags:["n8n","performance","load"]}),e({id:"n8n-security-auditor",name:"n8n Security Auditor",description:"Security vulnerability scanning for n8n workflows including credential exposure, injection risks, OWASP compliance, and secret detection",domains:["security-compliance"],capabilities:["sast","vulnerability","owasp","security-scanning"],complexity:{min:"medium",max:"complex"},tags:["n8n","security","owasp"]}),e({id:"n8n-compliance-validator",name:"n8n Compliance Validator",description:"Regulatory compliance testing for n8n workflows including GDPR, CCPA, HIPAA, SOC2, and PCI-DSS validation",domains:["security-compliance"],capabilities:["security-scanning"],complexity:{min:"medium",max:"complex"},tags:["n8n","compliance","gdpr"]}),e({id:"n8n-bdd-scenario-tester",name:"n8n BDD Scenario Tester",description:"BDD/Gherkin scenario testing for n8n workflows with Cucumber integration, business requirement mapping, and stakeholder-friendly reports",domains:["requirements-validation"],capabilities:["bdd","test-generation"],complexity:{min:"medium",max:"complex"},tags:["n8n","bdd","gherkin"]}),e({id:"n8n-expression-validator",name:"n8n Expression Validator",description:"Validate n8n expressions and data transformations with syntax checking, context-aware testing, and security analysis",domains:["code-intelligence"],capabilities:["test-generation","security-scanning"],complexity:{min:"simple",max:"medium"},tags:["n8n","expressions","validation"]}),e({id:"n8n-version-comparator",name:"n8n Version Comparator",description:"Workflow version diff and regression detection with JSON comparison, change impact analysis, migration validation, and rollback testing",domains:["defect-intelligence"],capabilities:["risk-scoring","test-generation"],complexity:{min:"medium",max:"complex"},tags:["n8n","version","diff"]}),e({id:"n8n-chaos-tester",name:"n8n Chaos Tester",description:"Chaos engineering for n8n workflows with controlled fault injection, service failure simulation, recovery validation, and resilience testing",domains:["chaos-resilience"],capabilities:["chaos-testing","resilience","fault-injection"],complexity:{min:"complex",max:"complex"},tags:["n8n","chaos","resilience"]}),e({id:"n8n-ci-orchestrator",name:"n8n CI Orchestrator",description:"CI/CD pipeline integration for n8n workflows with REST API triggers, automated regression testing, GitHub Actions/Jenkins integration, and test scheduling",domains:["test-execution"],capabilities:["test-orchestration","integration-test"],complexity:{min:"medium",max:"complex"},tags:["n8n","ci","cd"]}),e({id:"n8n-monitoring-validator",name:"n8n Monitoring Validator",description:"Validate monitoring and alerting configurations for n8n workflows including error tracking, alert rules, SLA compliance, and observability checks",domains:["quality-assessment"],capabilities:["quality-gate","deployment-readiness"],complexity:{min:"medium",max:"complex"},tags:["n8n","monitoring","alerting"]})],x=[e({id:"tester",name:"Tester",description:"Comprehensive testing and quality assurance specialist with AI-powered test generation",domains:["test-generation","test-execution"],capabilities:["test-generation","unit-test","integration-test","e2e-test"],languages:["typescript","javascript","python","java","go","rust"],frameworks:["jest","vitest","mocha","pytest","junit5","go-test","rust-test","playwright","cypress"],complexity:{min:"simple",max:"complex"},tags:["general","versatile"]}),e({id:"reviewer",name:"Reviewer",description:"Code review and quality assurance specialist with AI-powered pattern detection",domains:["quality-assessment"],capabilities:["quality-gate","security-scanning"],languages:["typescript","javascript","python","java","go","rust"],complexity:{min:"simple",max:"complex"},tags:["general","code-review"]}),e({id:"security-auditor",name:"Security Auditor",description:"Advanced security auditor with self-learning vulnerability detection, CVE database search, and compliance auditing",domains:["security-compliance"],capabilities:["sast","dast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java","go","rust"],complexity:{min:"medium",max:"complex"},tags:["security","cve","compliance"]}),e({id:"security-architect",name:"Security Architect",description:"V3 Security Architecture specialist with ReasoningBank learning, HNSW threat pattern search, and zero-trust design capabilities",domains:["security-compliance"],capabilities:["sast","vulnerability","owasp","security-scanning"],languages:["typescript","javascript","python","java","go"],complexity:{min:"complex",max:"complex"},tags:["architecture","zero-trust"]}),e({id:"performance-engineer",name:"Performance Engineer",description:"V3 Performance Engineering Agent specialized in Flash Attention optimization, WASM SIMD acceleration, and comprehensive performance profiling",domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","benchmark"],languages:["typescript","javascript","python","go","rust"],complexity:{min:"medium",max:"complex"},tags:["performance","optimization"]}),e({id:"code-analyzer",name:"Code Analyzer",description:"Advanced code quality analysis agent for comprehensive code reviews and improvements",domains:["code-intelligence","quality-assessment"],capabilities:["coverage-analysis","gap-detection","quality-gate"],languages:["typescript","javascript","python","java","go","rust"],complexity:{min:"simple",max:"complex"},tags:["analysis","quality"]}),e({id:"cicd-engineer",name:"CI/CD Engineer",description:"Specialized agent for GitHub Actions CI/CD pipeline creation and optimization",domains:["test-execution"],capabilities:["test-orchestration","deployment-readiness"],complexity:{min:"medium",max:"complex"},tags:["cicd","github-actions"]})],h=[e({id:"reasoningbank-learner",name:"ReasoningBank Learner",description:"V3 ReasoningBank integration specialist for trajectory tracking, verdict judgment, pattern distillation, and experience replay using HNSW-indexed memory",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","reasoningbank","learning"]}),e({id:"adr-architect",name:"ADR Architect",description:"V3 Architecture Decision Record specialist that documents, tracks, and enforces architectural decisions with ReasoningBank integration for pattern learning",domains:["learning-optimization"],capabilities:["quality-gate"],complexity:{min:"medium",max:"complex"},tags:["v3","adr","architecture"]}),e({id:"ddd-domain-expert",name:"DDD Domain Expert",description:"V3 Domain-Driven Design specialist for bounded context identification, aggregate design, domain modeling, and ubiquitous language enforcement",domains:["code-intelligence"],capabilities:["quality-gate"],complexity:{min:"complex",max:"complex"},tags:["v3","ddd","domain"]}),e({id:"v3-integration-architect",name:"V3 Integration Architect",description:"V3 deep agentic-flow integration specialist implementing ADR-001 for eliminating duplicate code and building claude-flow as a specialized extension",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","integration","agentic-flow"]}),e({id:"memory-specialist",name:"Memory Specialist",description:"V3 memory optimization specialist with HNSW indexing, hybrid backend management, vector quantization, and EWC++ for preventing catastrophic forgetting",domains:["learning-optimization"],capabilities:["sublinear-analysis"],complexity:{min:"complex",max:"complex"},tags:["v3","memory","hnsw"]}),e({id:"claims-authorizer",name:"Claims Authorizer",description:"V3 Claims-based authorization specialist implementing ADR-010 for fine-grained access control across swarm agents and MCP tools",domains:["security-compliance"],capabilities:["security-scanning"],complexity:{min:"medium",max:"complex"},tags:["v3","claims","authorization"]}),e({id:"sparc-orchestrator",name:"SPARC Orchestrator",description:"V3 SPARC methodology orchestrator that coordinates Specification, Pseudocode, Architecture, Refinement, and Completion phases with ReasoningBank learning",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","sparc","methodology"]}),e({id:"sona-learning-optimizer",name:"SONA Learning Optimizer",description:"V3 SONA-powered self-optimizing agent using claude-flow neural tools for adaptive learning, pattern discovery, and continuous quality improvement with sub-millisecond overhead",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","sona","self-learning"]}),e({id:"safla-neural",name:"SAFLA Neural",description:"Self-Aware Feedback Loop Algorithm (SAFLA) neural specialist that creates intelligent, memory-persistent AI systems with self-learning capabilities",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["v3","safla","neural"]}),e({id:"production-validator",name:"Production Validator",description:"Production validation specialist ensuring applications are fully implemented and deployment-ready",domains:["quality-assessment"],capabilities:["deployment-readiness","quality-gate"],complexity:{min:"medium",max:"complex"},tags:["production","validation"]}),e({id:"tdd-london-swarm",name:"TDD London Swarm",description:"TDD London School specialist for mock-driven development within swarm coordination",domains:["test-generation"],capabilities:["tdd","unit-test","test-generation"],languages:["typescript","javascript","python"],frameworks:["jest","vitest","pytest"],complexity:{min:"medium",max:"complex"},tags:["tdd","london","mocks"]})],f=[e({id:"queen-coordinator",name:"Queen Coordinator",description:"The sovereign orchestrator of hierarchical hive operations, managing strategic decisions, resource allocation, and maintaining hive coherence",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["queen","hive","orchestration"]}),e({id:"swarm-memory-manager",name:"Swarm Memory Manager",description:"V3 distributed memory manager for cross-agent state synchronization, CRDT replication, and namespace coordination across the swarm",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["swarm","memory","crdt"]}),e({id:"worker-specialist",name:"Worker Specialist",description:"Dedicated task execution specialist that carries out assigned work with precision, continuously reporting progress through memory coordination",domains:["test-execution"],capabilities:["test-orchestration"],complexity:{min:"simple",max:"complex"},tags:["worker","execution"]}),e({id:"collective-intelligence-coordinator",name:"Collective Intelligence Coordinator",description:"Hive-mind collective decision making with Byzantine fault-tolerant consensus, attention-based coordination, and emergent intelligence patterns",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["collective","consensus"]}),e({id:"scout-explorer",name:"Scout Explorer",description:"Information reconnaissance specialist that explores unknown territories, gathers intelligence, and reports findings to the hive mind",domains:["code-intelligence"],capabilities:["coverage-analysis","gap-detection"],complexity:{min:"simple",max:"medium"},tags:["scout","exploration"]}),e({id:"adaptive-coordinator",name:"Adaptive Coordinator",description:"Dynamic topology switching coordinator with self-organizing swarm patterns and real-time optimization",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["adaptive","topology"]}),e({id:"mesh-coordinator",name:"Mesh Coordinator",description:"Peer-to-peer mesh network swarm with distributed decision making and fault tolerance",domains:["learning-optimization"],capabilities:["test-orchestration","resilience"],complexity:{min:"complex",max:"complex"},tags:["mesh","p2p"]}),e({id:"hierarchical-coordinator",name:"Hierarchical Coordinator",description:"Queen-led hierarchical swarm coordination with specialized worker delegation",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["hierarchical","delegation"]})],b=[e({id:"consensus-coordinator",name:"Consensus Coordinator",description:"Distributed consensus agent that uses sublinear solvers for fast agreement protocols in multi-agent systems",domains:["learning-optimization"],capabilities:["test-orchestration","resilience"],complexity:{min:"complex",max:"complex"},tags:["consensus","distributed"]}),e({id:"byzantine-coordinator",name:"Byzantine Coordinator",description:"Coordinates Byzantine fault-tolerant consensus protocols with malicious actor detection",domains:["security-compliance"],capabilities:["resilience","security-scanning"],complexity:{min:"complex",max:"complex"},tags:["byzantine","fault-tolerance"]}),e({id:"raft-manager",name:"Raft Manager",description:"Manages Raft consensus algorithm with leader election and log replication",domains:["learning-optimization"],capabilities:["test-orchestration","resilience"],complexity:{min:"complex",max:"complex"},tags:["raft","leader-election"]}),e({id:"crdt-synchronizer",name:"CRDT Synchronizer",description:"Implements Conflict-free Replicated Data Types for eventually consistent state synchronization",domains:["learning-optimization"],capabilities:["test-orchestration"],complexity:{min:"complex",max:"complex"},tags:["crdt","eventual-consistency"]})],m=Object.freeze([...u,...y,...v,...x,...h,...f,...b]);function E(i,t){let a=m.find(n=>n.id===i);if(!a){let n=m.find(o=>o.id.includes(i)||i.includes(o.id));if(!n){console.error(`[AgentRegistry] Agent not found: ${i}`);return}l(n,t);return}l(a,t)}function l(i,t){let a=i.tasksCompleted,n=Math.round(i.successRate*a);i.tasksCompleted++;let o=n+(t.success?1:0);i.successRate=i.tasksCompleted>0?o/i.tasksCompleted:0,a===0?i.avgDurationMs=t.executionTimeMs:i.avgDurationMs=.3*t.executionTimeMs+(1-.3)*i.avgDurationMs;let p=t.qualityScore??(t.success?.7:.3),d=i.successRate,r=.4*p+.6*d;a===0?i.performanceScore=r:i.performanceScore=.2*r+(1-.2)*i.performanceScore,i.performanceScore=Math.max(0,Math.min(1,i.performanceScore)),console.error(`[AgentRegistry] Updated ${i.id}: tasks=${i.tasksCompleted} successRate=${(i.successRate*100).toFixed(1)}% performanceScore=${i.performanceScore.toFixed(3)} avgDurationMs=${i.avgDurationMs.toFixed(0)}`)}var s=new Map;function k(i){s=new Map;let t=c(i);for(let a of t.overlays)a.config&&s.set(a.agent,a.config);if(s.size>0&&console.error(`[AgentRegistry] Loaded overlay configs for ${s.size} agent(s): ${[...s.keys()].join(", ")}`),t.warnings.length>0)for(let a of t.warnings)console.error(`[AgentRegistry] Overlay warning: ${a}`)}function Q(i){return s.get(i)}export{m as a,E as b,k as c,Q as d};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{f as d}from"./chunk-JD3VV2BD.js";import{a as u,c as g}from"./chunk-O4C3JEOR.js";g();var m=[{type:"email",pattern:/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g,mask:n=>n[0]+"***@"+n.split("@")[1]},{type:"ssn",pattern:/\b\d{3}-\d{2}-\d{4}\b/g,mask:()=>"***-**-****"},{type:"credit-card",pattern:/\b(?:\d[ -]*?){13,19}\b/g,mask:n=>"****-****-****-"+n.replace(/\D/g,"").slice(-4)},{type:"phone",pattern:/\b(?:\+?1[-.\s]?)?(?:\(?\d{3}\)?[-.\s]?)?\d{3}[-.\s]?\d{4}\b/g,mask:n=>n.slice(0,3)+"***"+n.slice(-2)},{type:"api-key",pattern:/(?:key|token|api_key|apikey|secret|password|passwd|auth)=([A-Za-z0-9_\-]{16,})/gi,mask:()=>"***REDACTED***"}],y=class extends d{config={name:"qe/security/url-validate",description:"Validate URL security: checks for XSS/injection patterns, unsafe protocols, and scans URL query parameters for PII exposure (emails, SSNs, credit cards, API keys).",domain:"security-compliance",schema:this.buildSchema()};buildSchema(){return{type:"object",properties:{url:{type:"string",description:"URL to validate for security threats and PII exposure"},enablePII:{type:"boolean",description:"Enable PII exposure scanning in URL and query parameters",default:!0}},required:["url"]}}async execute(s,r){try{let e=this.validateURLSecurity(s.url),t=s.enablePII!==!1?this.scanForPII(s.url):{scanned:!1,found:!1,types:[],details:[]},c=e.issues.length+(t.found?t.types.length:0)===0?`URL passed all checks (security: clean, PII: ${t.scanned?"none found":"not scanned"})`:`URL has ${e.issues.length} security issue(s)${t.found?` and ${t.types.length} PII type(s) exposed in URL`:""}`;return{success:!0,data:{url:s.url,urlSecurity:e,piiExposure:t,summary:c}}}catch(e){return{success:!1,error:u(e)}}}validateURLSecurity(s){let r=[],e="none";try{let t=new URL(s);["http:","https:"].includes(t.protocol)||(r.push({type:"unsafe-protocol",description:`Protocol ${t.protocol} is not allowed`,severity:"high"}),e="high");let o=[/<script/i,/javascript:/i,/on\w+=/i,/data:text\/html/i];for(let i of o)if(i.test(s)){r.push({type:"xss",description:"Potential XSS pattern detected in URL",severity:"critical"}),e="critical";break}let c=[/'.*or.*'/i,/union.*select/i,/drop.*table/i,/;\s*--/i];for(let i of c)if(i.test(s)){r.push({type:"sql-injection",description:"Potential SQL injection pattern detected in URL",severity:"critical"}),e="critical";break}/\.\.[/\\]/.test(s)&&(r.push({type:"path-traversal",description:"Potential path traversal pattern (../) detected",severity:"high"}),e!=="critical"&&(e="high"));let a=["redirect","url","next","return","returnUrl","goto"];for(let i of a){let l=t.searchParams.get(i);l&&/^https?:\/\//.test(l)&&(r.push({type:"open-redirect",description:`Query parameter "${i}" contains an external URL \u2014 potential open redirect`,severity:"medium"}),e==="none"&&(e="medium"))}}catch{r.push({type:"invalid-url",description:"URL could not be parsed",severity:"critical"}),e="critical"}return{valid:r.length===0,riskLevel:e,issues:r}}scanForPII(s){let r=[],e=new Set,t;try{t=decodeURIComponent(s)}catch{t=s}let o="",c="";try{let a=new URL(t);o=a.search,c=a.pathname}catch{o=t}for(let{type:a,pattern:i,mask:l}of m){i.lastIndex=0;let p;for(;(p=i.exec(t))!==null;){e.add(a);let h=o.includes(p[0])?"query-parameter":c.includes(p[0])?"path":"url";r.push({type:a,location:h,masked:l(p[0])})}}return{scanned:!0,found:e.size>0,types:Array.from(e),details:r}}};export{y as a};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{j as d}from"./chunk-BF7MUYWC.js";import{a as u,c as g}from"./chunk-2TDWCXZ6.js";g();var m=[{type:"email",pattern:/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g,mask:n=>n[0]+"***@"+n.split("@")[1]},{type:"ssn",pattern:/\b\d{3}-\d{2}-\d{4}\b/g,mask:()=>"***-**-****"},{type:"credit-card",pattern:/\b(?:\d[ -]*?){13,19}\b/g,mask:n=>"****-****-****-"+n.replace(/\D/g,"").slice(-4)},{type:"phone",pattern:/\b(?:\+?1[-.\s]?)?(?:\(?\d{3}\)?[-.\s]?)?\d{3}[-.\s]?\d{4}\b/g,mask:n=>n.slice(0,3)+"***"+n.slice(-2)},{type:"api-key",pattern:/(?:key|token|api_key|apikey|secret|password|passwd|auth)=([A-Za-z0-9_\-]{16,})/gi,mask:()=>"***REDACTED***"}],y=class extends d{config={name:"qe/security/url-validate",description:"Validate URL security: checks for XSS/injection patterns, unsafe protocols, and scans URL query parameters for PII exposure (emails, SSNs, credit cards, API keys).",domain:"security-compliance",schema:this.buildSchema()};buildSchema(){return{type:"object",properties:{url:{type:"string",description:"URL to validate for security threats and PII exposure"},enablePII:{type:"boolean",description:"Enable PII exposure scanning in URL and query parameters",default:!0}},required:["url"]}}async execute(s,r){try{let e=this.validateURLSecurity(s.url),t=s.enablePII!==!1?this.scanForPII(s.url):{scanned:!1,found:!1,types:[],details:[]},c=e.issues.length+(t.found?t.types.length:0)===0?`URL passed all checks (security: clean, PII: ${t.scanned?"none found":"not scanned"})`:`URL has ${e.issues.length} security issue(s)${t.found?` and ${t.types.length} PII type(s) exposed in URL`:""}`;return{success:!0,data:{url:s.url,urlSecurity:e,piiExposure:t,summary:c}}}catch(e){return{success:!1,error:u(e)}}}validateURLSecurity(s){let r=[],e="none";try{let t=new URL(s);["http:","https:"].includes(t.protocol)||(r.push({type:"unsafe-protocol",description:`Protocol ${t.protocol} is not allowed`,severity:"high"}),e="high");let o=[/<script/i,/javascript:/i,/on\w+=/i,/data:text\/html/i];for(let i of o)if(i.test(s)){r.push({type:"xss",description:"Potential XSS pattern detected in URL",severity:"critical"}),e="critical";break}let c=[/'.*or.*'/i,/union.*select/i,/drop.*table/i,/;\s*--/i];for(let i of c)if(i.test(s)){r.push({type:"sql-injection",description:"Potential SQL injection pattern detected in URL",severity:"critical"}),e="critical";break}/\.\.[/\\]/.test(s)&&(r.push({type:"path-traversal",description:"Potential path traversal pattern (../) detected",severity:"high"}),e!=="critical"&&(e="high"));let a=["redirect","url","next","return","returnUrl","goto"];for(let i of a){let l=t.searchParams.get(i);l&&/^https?:\/\//.test(l)&&(r.push({type:"open-redirect",description:`Query parameter "${i}" contains an external URL \u2014 potential open redirect`,severity:"medium"}),e==="none"&&(e="medium"))}}catch{r.push({type:"invalid-url",description:"URL could not be parsed",severity:"critical"}),e="critical"}return{valid:r.length===0,riskLevel:e,issues:r}}scanForPII(s){let r=[],e=new Set,t;try{t=decodeURIComponent(s)}catch{t=s}let o="",c="";try{let a=new URL(t);o=a.search,c=a.pathname}catch{o=t}for(let{type:a,pattern:i,mask:l}of m){i.lastIndex=0;let p;for(;(p=i.exec(t))!==null;){e.add(a);let h=o.includes(p[0])?"query-parameter":c.includes(p[0])?"path":"url";r.push({type:a,location:h,masked:l(p[0])})}}return{scanned:!0,found:e.size>0,types:Array.from(e),details:r}}};export{y as a};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{c as r}from"./chunk-SCBWRKPE.js";function o(n){return n instanceof Error?n.message:String(n)}function e(n){return n instanceof Error?n:new Error(String(n))}var t=r(()=>{"use strict"});export{o as a,e as b,t as c};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{c as r}from"./chunk-4AWJ5PE4.js";function o(n){return n instanceof Error?n.message:String(n)}function e(n){return n instanceof Error?n:new Error(String(n))}var t=r(()=>{"use strict"});export{o as a,e as b,t as c};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{S as f,b as p}from"./chunk-ZBY4HSHR.js";f();var y={predictionWindowSize:10,compressionThreshold:.3,maxConcurrentStreams:8,oscillationFrequencyMs:100};function d(s){try{return JSON.stringify(s).length}catch{return 0}}function w(s,t){let e={},n=!1;for(let r of Object.keys(t))JSON.stringify(s[r])!==JSON.stringify(t[r])&&(e[r]=t[r],n=!0);for(let r of Object.keys(s))r in t||(e[r]=void 0,n=!0);return n?e:null}function v(s,t){let e={...s};for(let[n,r]of Object.entries(t))r===void 0?delete e[n]:e[n]=r;return e}var l=class{windowSize;windows=new Map;constructor(t){this.windowSize=Math.max(1,t)}predict(t){let e=this.windows.get(t);if(!e||e.length===0)return null;let n=e[e.length-1];return typeof n!="object"||n===null||Array.isArray(n)?null:{...n}}record(t,e){let n=this.windows.get(t);n||(n=[],this.windows.set(t,n)),n.push(e),n.length>this.windowSize&&n.shift()}removeStream(t){this.windows.delete(t)}},h=class{maxStreams;cycleMs;streamIds=[];currentIndex=0;constructor(t,e){this.maxStreams=Math.max(1,t),this.cycleMs=Math.max(1,e)}addStream(t){return this.streamIds.includes(t)||this.streamIds.length>=this.maxStreams?!1:(this.streamIds.push(t),!0)}removeStream(t){let e=this.streamIds.indexOf(t);return e===-1?!1:(this.streamIds.splice(e,1),this.currentIndex>=this.streamIds.length&&(this.currentIndex=0),!0)}nextStream(){if(this.streamIds.length===0)return null;let t=this.streamIds[this.currentIndex];return this.currentIndex=(this.currentIndex+1)%this.streamIds.length,t}getActiveStreams(){return[...this.streamIds]}get activeCount(){return this.streamIds.length}},g=class{config;predictor;router;lastPayloads=new Map;totalMessages=0;compressedMessages=0;totalOriginalBytes=0;totalCompressedBytes=0;constructor(t){this.config={...y,...t},this.predictor=new l(this.config.predictionWindowSize),this.router=new h(this.config.maxConcurrentStreams,this.config.oscillationFrequencyMs)}send(t,e,n,r){this.totalMessages++;let i=d(r);this.totalOriginalBytes+=i;let c=!1,o=r,a=i;if(typeof r=="object"&&r!==null&&!Array.isArray(r)){let m=this.predictor.predict(t);if(m){let u=w(m,r);u?1-d(u)/Math.max(i,1)>=this.config.compressionThreshold&&(o={__delta:!0,__changes:u},a=d(o),c=!0,this.compressedMessages++):(o={__delta:!0,__changes:{}},a=d(o),c=!0,this.compressedMessages++)}}return this.totalCompressedBytes+=a,this.predictor.record(t,r),this.lastPayloads.set(t,r),{streamId:t,senderId:e,receiverId:n,payload:o,compressed:c,originalSize:i,compressedSize:a,timestamp:Date.now()}}receive(t){if(!t.compressed||typeof t.payload!="object"||t.payload===null)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let e=t.payload;if(!e.__delta)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let n=this.predictor.predict(t.streamId),r=e.__changes??{};if(!n)return r;let i=v(n,r);return this.predictor.record(t.streamId,i),this.lastPayloads.set(t.streamId,i),i}getStats(){let t=this.totalOriginalBytes-this.totalCompressedBytes;return{totalMessages:this.totalMessages,compressedMessages:this.compressedMessages,bandwidthSavedBytes:Math.max(0,t),bandwidthReductionPercent:this.totalOriginalBytes>0?Math.max(0,t)/this.totalOriginalBytes*100:0,activeStreams:this.router.activeCount}}addStream(t){this.router.addStream(t)}removeStream(t){this.router.removeStream(t),this.predictor.removeStream(t),this.lastPayloads.delete(t)}};function M(s){return S()?new g(s):null}function S(){return p().useCognitiveRouting}export{M as a,S as b};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{S as f,b as p}from"./chunk-ELZ67OHQ.js";f();var y={predictionWindowSize:10,compressionThreshold:.3,maxConcurrentStreams:8,oscillationFrequencyMs:100};function d(s){try{return JSON.stringify(s).length}catch{return 0}}function w(s,t){let e={},n=!1;for(let r of Object.keys(t))JSON.stringify(s[r])!==JSON.stringify(t[r])&&(e[r]=t[r],n=!0);for(let r of Object.keys(s))r in t||(e[r]=void 0,n=!0);return n?e:null}function v(s,t){let e={...s};for(let[n,r]of Object.entries(t))r===void 0?delete e[n]:e[n]=r;return e}var l=class{windowSize;windows=new Map;constructor(t){this.windowSize=Math.max(1,t)}predict(t){let e=this.windows.get(t);if(!e||e.length===0)return null;let n=e[e.length-1];return typeof n!="object"||n===null||Array.isArray(n)?null:{...n}}record(t,e){let n=this.windows.get(t);n||(n=[],this.windows.set(t,n)),n.push(e),n.length>this.windowSize&&n.shift()}removeStream(t){this.windows.delete(t)}},h=class{maxStreams;cycleMs;streamIds=[];currentIndex=0;constructor(t,e){this.maxStreams=Math.max(1,t),this.cycleMs=Math.max(1,e)}addStream(t){return this.streamIds.includes(t)||this.streamIds.length>=this.maxStreams?!1:(this.streamIds.push(t),!0)}removeStream(t){let e=this.streamIds.indexOf(t);return e===-1?!1:(this.streamIds.splice(e,1),this.currentIndex>=this.streamIds.length&&(this.currentIndex=0),!0)}nextStream(){if(this.streamIds.length===0)return null;let t=this.streamIds[this.currentIndex];return this.currentIndex=(this.currentIndex+1)%this.streamIds.length,t}getActiveStreams(){return[...this.streamIds]}get activeCount(){return this.streamIds.length}},g=class{config;predictor;router;lastPayloads=new Map;totalMessages=0;compressedMessages=0;totalOriginalBytes=0;totalCompressedBytes=0;constructor(t){this.config={...y,...t},this.predictor=new l(this.config.predictionWindowSize),this.router=new h(this.config.maxConcurrentStreams,this.config.oscillationFrequencyMs)}send(t,e,n,r){this.totalMessages++;let i=d(r);this.totalOriginalBytes+=i;let c=!1,o=r,a=i;if(typeof r=="object"&&r!==null&&!Array.isArray(r)){let m=this.predictor.predict(t);if(m){let u=w(m,r);u?1-d(u)/Math.max(i,1)>=this.config.compressionThreshold&&(o={__delta:!0,__changes:u},a=d(o),c=!0,this.compressedMessages++):(o={__delta:!0,__changes:{}},a=d(o),c=!0,this.compressedMessages++)}}return this.totalCompressedBytes+=a,this.predictor.record(t,r),this.lastPayloads.set(t,r),{streamId:t,senderId:e,receiverId:n,payload:o,compressed:c,originalSize:i,compressedSize:a,timestamp:Date.now()}}receive(t){if(!t.compressed||typeof t.payload!="object"||t.payload===null)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let e=t.payload;if(!e.__delta)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let n=this.predictor.predict(t.streamId),r=e.__changes??{};if(!n)return r;let i=v(n,r);return this.predictor.record(t.streamId,i),this.lastPayloads.set(t.streamId,i),i}getStats(){let t=this.totalOriginalBytes-this.totalCompressedBytes;return{totalMessages:this.totalMessages,compressedMessages:this.compressedMessages,bandwidthSavedBytes:Math.max(0,t),bandwidthReductionPercent:this.totalOriginalBytes>0?Math.max(0,t)/this.totalOriginalBytes*100:0,activeStreams:this.router.activeCount}}addStream(t){this.router.addStream(t)}removeStream(t){this.router.removeStream(t),this.predictor.removeStream(t),this.lastPayloads.delete(t)}};function M(s){return S()?new g(s):null}function S(){return p().useCognitiveRouting}export{M as a,S as b};
@@ -1,6 +1,6 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{a as F}from"./chunk-AH3UC4IV.js";import{a as b,b as E,c as z,d as M,e as C,f as P,g as B}from"./chunk-W2DF6FNE.js";function W(s,e){let n=s.slice(0,e).split(`
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{a as F}from"./chunk-GTRXZJNX.js";import{a as b,b as E,c as z,d as M,e as C,f as P,g as B}from"./chunk-BN7ERYXI.js";function W(s,e){let n=s.slice(0,e).split(`
3
3
  `),r=n.length,o=(n[n.length-1]||"").length;return{line:r,column:o,offset:e}}function p(s,e,n,r,o){return{start:W(s,e),end:W(s,n),oldText:s.slice(e,n),newText:r,description:o}}function _(s,e){let n=[...e].sort((o,t)=>t.start.offset-o.start.offset),r=s;for(let o of n)r=r.slice(0,o.start.offset)+o.newText+r.slice(o.end.offset);return r}function U(s,e){if(s.length===0)return 1;let n=s.reduce((t,a)=>t+Math.abs(a.newText.length-a.oldText.length),0)/s.length,r=Math.max(.5,1-n/1e3),o=Math.max(.7,1-s.length/100);return Math.min(1,e*r*o)}function T(s,e,n,r,o=.9){let t=_(s,n),a=Date.now()-r;return{success:!0,transformType:e,originalCode:s,transformedCode:t,edits:n,changeCount:n.length,confidence:U(n,o),durationMs:a,implementationUsed:"typescript",usedFallback:!1,warnings:[]}}function w(s,e,n,r){return{success:!1,transformType:e,originalCode:s,transformedCode:s,edits:[],changeCount:0,confidence:0,durationMs:Date.now()-r,implementationUsed:"typescript",usedFallback:!1,error:n,warnings:[]}}function Z(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t=/\bvar\s+([a-zA-Z_$][a-zA-Z0-9_$]*)/g,a=/([a-zA-Z_$][a-zA-Z0-9_$]*)\s*(?:\+\+|--|[+\-*/%&|^]=|\?\?=|&&=|\|\|=|=(?!=))/g,i=[],l;for(;(l=t.exec(s))!==null;)i.push({name:l[1],offset:l.index});let m=new Set;for(;(l=a.exec(s))!==null;)m.add(l[1]);let u=/\bfor\s*\(\s*var\s+([a-zA-Z_$][a-zA-Z0-9_$]*)/g,c=new Set;for(;(l=u.exec(s))!==null;)c.add(l[1]);for(let g of i){let d=c.has(g.name)||m.has(g.name)?"let":"const";r.push(p(s,g.offset,g.offset+3,d,`Convert var ${g.name} to ${d}`))}e.debug("var-to-const transform completed",{declarations:i.length,reassigned:m.size,loopVars:c.size});let f=T(s,"var-to-const",r,n,.95);return f.warnings=o,f}catch(t){return e.error("var-to-const transform failed",t),w(s,"var-to-const",t instanceof Error?t.message:"Unknown error",n)}}function O(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t=/function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(([^)]*)\)/g,a=/(?:const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*\(([^)]*)\)\s*=>/g,i=/([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(([^)]*)\)\s*(?::\s*[^{]+)?\s*\{/g,l;for(;(l=t.exec(s))!==null;){let u=l[2].trim();if(u&&!u.includes(":")){let c=u.split(",").map(d=>{let h=d.trim().replace(/\s*=.*$/,"");return h&&!h.includes(":")?`${h}: unknown`:d.trim()}).join(", "),f=l.index+l[0].indexOf("(")+1,g=f+l[2].length;r.push(p(s,f,g,c,`Add types to function ${l[1]} parameters`))}}for(;(l=a.exec(s))!==null;){let u=l[2].trim();if(u&&!u.includes(":")){let c=u.split(",").map(d=>{let h=d.trim().replace(/\s*=.*$/,"");return h&&!h.includes(":")?`${h}: unknown`:d.trim()}).join(", "),f=l.index+l[0].indexOf("(")+1,g=f+l[2].length;r.push(p(s,f,g,c,`Add types to arrow function ${l[1]} parameters`))}}e.debug("add-types transform completed",{edits:r.length});let m=T(s,"add-types",r,n,.7);return m.warnings=o,r.length>0&&m.warnings.push('Type annotations use "unknown" - manual review recommended'),m}catch(t){return e.error("add-types transform failed",t),w(s,"add-types",t instanceof Error?t.message:"Unknown error",n)}}function I(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t=/^\s*console\.(log|warn|error|info|debug|trace|dir|table|time|timeEnd|group|groupEnd|assert)\s*\([^)]*\);?\s*$/gm,a=/console\.(log|warn|error|info|debug|trace|dir|table|time|timeEnd|group|groupEnd|assert)\s*\([^)]*\)/g,i,l=new Set;for(;(i=t.exec(s))!==null;)l.has(i.index)||(l.add(i.index),r.push(p(s,i.index,i.index+i[0].length,"",`Remove console.${i[1]}() statement`)));for(;(i=a.exec(s))!==null;){if(l.has(i.index))continue;let u=s.lastIndexOf(`
4
4
  `,i.index)+1,c=s.indexOf(`
5
5
  `,i.index),f=s.slice(u,c===-1?void 0:c);/^\s*console\./.test(f)||(l.add(i.index),o.push(`Inline console.${i[1]}() at offset ${i.index} - consider manual review`))}e.debug("remove-console transform completed",{removed:r.length,warnings:o.length});let m=T(s,"remove-console",r,n,.95);return m.warnings=o,m}catch(t){return e.error("remove-console transform failed",t),w(s,"remove-console",t instanceof Error?t.message:"Unknown error",n)}}function j(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t=/([a-zA-Z_$][a-zA-Z0-9_$]*(?:\([^)]*\))?)\s*\.then\s*\(\s*(?:async\s*)?\(?\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\)?\s*=>\s*([^)]+)\)/g,a;for(;(a=t.exec(s))!==null;){let[l,m,u,c]=a;if(c.includes(".then")||c.includes(".catch")){o.push(`Complex promise chain at offset ${a.index} - manual review recommended`);continue}let f=`const ${u} = await ${m};
6
- ${c.trim()}`;r.push(p(s,a.index,a.index+l.length,f,"Convert .then() to await"))}e.debug("promise-to-async transform completed",{converted:r.length,warnings:o.length});let i=T(s,"promise-to-async",r,n,.65);return i.warnings=o,r.length>0&&i.warnings.push("Promise chains converted to await - ensure containing function is async"),i}catch(t){return e.error("promise-to-async transform failed",t),w(s,"promise-to-async",t instanceof Error?t.message:"Unknown error",n)}}function N(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t,a=/(?:const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*require\s*\(\s*(['"`][^'"`]+['"`])\s*\)\s*;?/g;for(;(t=a.exec(s))!==null;){let[c,f,g]=t,d=`import ${f} from ${g};`;r.push(p(s,t.index,t.index+c.length,d,"Convert require to import"))}let i=/(?:const|let|var)\s+\{\s*([^}]+)\s*\}\s*=\s*require\s*\(\s*(['"`][^'"`]+['"`])\s*\)\s*;?/g;for(;(t=i.exec(s))!==null;){let[c,f,g]=t,d=`import { ${f.trim()} } from ${g};`;r.push(p(s,t.index,t.index+c.length,d,"Convert destructured require to import"))}let l=/module\.exports\s*=\s*([^;]+);?/g;for(;(t=l.exec(s))!==null;){let[c,f]=t,g=`export default ${f.trim()};`;r.push(p(s,t.index,t.index+c.length,g,"Convert module.exports to export default"))}let m=/exports\.([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*([^;]+);?/g;for(;(t=m.exec(s))!==null;){let[c,f,g]=t,d=g.trim(),h;d.startsWith("function")||d.startsWith("class")?h=`export ${d}`:d.startsWith("async function")?h=`export ${d}`:h=`export const ${f} = ${d};`,r.push(p(s,t.index,t.index+c.length,h,`Convert exports.${f} to named export`))}e.debug("cjs-to-esm transform completed",{edits:r.length});let u=T(s,"cjs-to-esm",r,n,.85);return u.warnings=o,u}catch(t){return e.error("cjs-to-esm transform failed",t),w(s,"cjs-to-esm",t instanceof Error?t.message:"Unknown error",n)}}function H(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t=/(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*function\s*\(([^)]*)\)\s*\{/g,a;for(;(a=t.exec(s))!==null;){let[m,u,c,f]=a,g=a.index,d=1,h=g+m.length;for(;d>0&&h<s.length;)s[h]==="{"&&d++,s[h]==="}"&&d--,h++;let S=s.slice(g,h);if(/\bthis\b/.test(S)){o.push(`Function ${c} uses 'this' - skipping arrow conversion (would change binding)`);continue}if(/\barguments\b/.test(S)){o.push(`Function ${c} uses 'arguments' - skipping arrow conversion (not available in arrow functions)`);continue}let D=`${u} ${c} = (${f}) => {`;r.push(p(s,a.index,a.index+m.length,D,`Convert function ${c} to arrow function`))}let i=/function\s*\(([^)]*)\)\s*\{\s*return\s+([^;]+);\s*\}/g;for(;(a=i.exec(s))!==null;){let[m,u,c]=a;if(/\b(this|arguments)\b/.test(m))continue;let f=u.includes(",")||u.trim()===""?`(${u}) => ${c}`:`${u.trim()} => ${c}`;r.push(p(s,a.index,a.index+m.length,f,"Convert callback to arrow function"))}e.debug("func-to-arrow transform completed",{converted:r.length,warnings:o.length});let l=T(s,"func-to-arrow",r,n,.85);return l.warnings=o,l}catch(t){return e.error("func-to-arrow transform failed",t),w(s,"func-to-arrow",t instanceof Error?t.message:"Unknown error",n)}}var V={"var-to-const":Z,"add-types":O,"remove-console":I,"promise-to-async":j,"cjs-to-esm":N,"func-to-arrow":H};function $(s,e,n){let r=V[e];return r?r(s,n):{success:!1,transformType:e,originalCode:s,transformedCode:s,edits:[],changeCount:0,confidence:0,durationMs:0,implementationUsed:"typescript",usedFallback:!1,error:`Unknown transform type: ${e}`,warnings:[]}}var q={JavaScript:0,TypeScript:1,Python:2,Rust:3,Go:4,Java:5,C:6,Cpp:7},y=null,A=null,x=null,R=!1,k=null;async function G(){if(R)return k===null;if(k)return!1;try{let s=await import("./agent-booster-wasm-L6D36M77.js");return y=s.transform,A=s.warmup,x=s.isWasmAvailable,R=!0,!0}catch(s){return k=s,R=!0,!1}}function K(s){return q.TypeScript}var L=class{cache=new Map;ttlMs;enabled;constructor(e,n){this.enabled=e,this.ttlMs=n}generateKey(e,n){let r=0;for(let o=0;o<e.length;o++){let t=e.charCodeAt(o);r=(r<<5)-r+t,r=r&r}return`${n}:${r}:${e.length}`}get(e,n){if(!this.enabled)return null;let r=this.generateKey(e,n),o=this.cache.get(r);return o?Date.now()>o.expiresAt?(this.cache.delete(r),null):o.result:null}set(e,n,r){if(!this.enabled)return;let o=this.generateKey(e,n);this.cache.set(o,{result:r,expiresAt:Date.now()+this.ttlMs})}clear(){this.cache.clear()}getStats(){return{size:this.cache.size,hitRate:0}}},v=class{config;logger;cache;enabledTransforms;metricsTracker;initialized=!1;wasmAvailable=!1;wasmModule=null;patternsLoaded=!1;totalTransforms=0;successfulTransforms=0;totalDurationMs=0;cacheHits=0;cacheMisses=0;constructor(e={},n,r){this.config={...z,...e},this.logger=n||{debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}},this.metricsTracker=r,this.cache=new L(this.config.cacheEnabled,this.config.cacheTtlMs),this.config.transforms.length===0?this.enabledTransforms=new Set(b):this.enabledTransforms=new Set(this.config.transforms)}setMetricsTracker(e){this.metricsTracker=e}async initialize(){this.initialized||(this.logger.info("Initializing Agent Booster adapter",{enabled:this.config.enabled,transforms:Array.from(this.enabledTransforms)}),this.config.transforms.length===0&&await this.loadEligibleTransformsFromPatterns(),this.config.enabled&&await this.tryLoadWasm(),this.initialized=!0,this.logger.info("Agent Booster adapter initialized",{wasmAvailable:this.wasmAvailable,enabledTransforms:Array.from(this.enabledTransforms),patternsLoaded:this.patternsLoaded}))}async loadEligibleTransformsFromPatterns(){try{let n=await F().getEligibleBoosterTransforms();if(n.length>0){let r=n.filter(o=>b.includes(o));if(r.length>0){this.enabledTransforms=new Set(r),this.patternsLoaded=!0,this.logger.info("Loaded eligible transforms from PatternLoader",{fromPatterns:r,invalidIgnored:n.length-r.length});return}}this.logger.debug("PatternLoader returned empty transforms, using defaults")}catch(e){this.logger.warn("Failed to load transforms from PatternLoader, using defaults",{error:e instanceof Error?e.message:"Unknown error"})}this.enabledTransforms=new Set(b),this.patternsLoaded=!1}async tryLoadWasm(){try{if(this.logger.debug("Loading WASM module"),!await G()||!x){this.logger.debug("WASM module could not be loaded, using TypeScript fallback"),this.wasmAvailable=!1;return}this.logger.debug("Checking WASM availability from local module"),await x()&&y&&A?(this.logger.debug("Warming up WASM module"),await A(),this.wasmModule={transform:y,warmup:A,isAvailable:x},this.wasmAvailable=!0,this.logger.info("WASM Agent Booster loaded and warmed up successfully",{source:"local-module"})):(this.logger.debug("WASM not available from local module, using TypeScript fallback"),this.wasmAvailable=!1)}catch(e){this.logger.warn("Failed to load WASM module",{error:e instanceof Error?e.message:"Unknown error"}),this.wasmAvailable=!1}}async dispose(){this.cache.clear(),this.wasmModule=null,this.wasmAvailable=!1,this.initialized=!1,this.logger.info("Agent Booster adapter disposed")}async transform(e,n){this.ensureInitialized(),this.ensureEnabled();let r=Date.now();if(this.totalTransforms++,!this.enabledTransforms.has(n))return this.createErrorResult(e,n,`Transform type '${n}' is not enabled`,r);let o=this.cache.get(e,n);if(o)return this.cacheHits++,this.logger.debug("Cache hit for transform",{type:n}),{...o,durationMs:Date.now()-r};this.cacheMisses++;let t;try{t=await this.executeWithFallback(e,n,r)}catch(a){return this.createErrorResult(e,n,a instanceof Error?a.message:"Unknown error",r)}return t.success&&(this.successfulTransforms++,this.cache.set(e,n,t)),this.totalDurationMs+=t.durationMs,await this.recordMetrics(t,n),t}async recordMetrics(e,n){if(this.metricsTracker)try{let r=`booster-${n}-${Date.now()}`;await this.metricsTracker.recordOutcome("booster",r,e.success,e.durationMs,{subType:n,confidence:e.confidence,usedFallback:e.usedFallback,implementationUsed:e.implementationUsed,itemCount:e.changeCount,errorMessage:e.error})}catch(r){this.logger.warn("Failed to record metrics",{error:r instanceof Error?r.message:"Unknown error"})}}async executeWithFallback(e,n,r){if(this.wasmAvailable)try{let t=await this.executeWasmTransform(e,n,r);if(t.success&&t.confidence>=this.config.confidenceThreshold)return t;this.logger.debug("WASM transform low confidence, trying TypeScript",{confidence:t.confidence,threshold:this.config.confidenceThreshold})}catch(t){this.logger.warn("WASM transform failed, falling back to TypeScript",{error:t instanceof Error?t.message:"Unknown error"})}let o=$(e,n,this.logger);return o.durationMs=Date.now()-r,this.config.fallbackToLLM&&o.confidence<this.config.confidenceThreshold&&(this.logger.debug("TypeScript transform low confidence, LLM fallback available",{confidence:o.confidence,threshold:this.config.confidenceThreshold}),o.warnings.push(`Confidence ${o.confidence.toFixed(2)} is below threshold ${this.config.confidenceThreshold}. LLM fallback recommended for review.`),o.usedFallback=!0),o}async executeWasmTransform(e,n,r){if(!this.wasmAvailable)throw new C;let o=K(n),t=$(e,n,this.logger);if(t.changeCount===0)return{...t,durationMs:Date.now()-r,implementationUsed:"wasm"};if(!y)throw new C("WASM transform function not loaded");let a=await Promise.race([y(e,t.transformedCode,o,{confidenceThreshold:this.config.confidenceThreshold,allowFallback:!0}),new Promise((m,u)=>setTimeout(()=>u(new P("WASM transform timed out",n,this.config.timeoutMs)),this.config.timeoutMs))]),i=Date.now()-r,l=a.success&&a.mergedCode!==e?t.changeCount:0;return{success:a.success,transformType:n,originalCode:e,transformedCode:a.mergedCode,edits:t.edits,changeCount:l,confidence:a.confidence,durationMs:i,implementationUsed:a.source==="wasm"?"wasm":"typescript",usedFallback:a.source!=="wasm",error:a.error,warnings:a.syntaxValid?[]:["WASM reported syntax may be invalid"]}}async batchTransform(e,n){this.ensureInitialized(),this.ensureEnabled();let r=Date.now(),o=[],t=[],a=0,i=0,l=0,m=0;for(let u of e){if(u.content.length>this.config.maxFileSizeBytes){let c=new B(u.path,u.content.length,this.config.maxFileSizeBytes);t.push({path:u.path,error:c.message}),i++;continue}try{let c=await this.transform(u.content,n);o.push({path:u.path,result:c}),c.success?c.changeCount>0?(a++,m+=c.changeCount):l++:(i++,c.error&&t.push({path:u.path,error:c.error}))}catch(c){i++,t.push({path:u.path,error:c instanceof Error?c.message:"Unknown error"})}}return{success:i===0,transformType:n,files:o,totalFiles:e.length,successCount:a,failureCount:i,noChangeCount:l,totalChanges:m,durationMs:Date.now()-r,errors:t}}async detectTransformOpportunities(e){this.ensureInitialized(),this.ensureEnabled();let n=Date.now(),r=[],o={},t=[];for(let a of b)o[a]=0;for(let a of Array.from(this.enabledTransforms))try{let i=await this.transform(e,a);if(i.changeCount>0)for(let l of i.edits){let m={type:a,confidence:i.confidence,location:l.start,codeSnippet:l.oldText.slice(0,100)+(l.oldText.length>100?"...":""),suggestedCode:l.newText.slice(0,100)+(l.newText.length>100?"...":""),reason:l.description,risk:this.confidenceToRisk(i.confidence),estimatedDurationMs:E[a].typicalLatencyMs};r.push(m),o[a]++}}catch(i){t.push(`Failed to analyze for ${a}: ${i instanceof Error?i.message:"Unknown error"}`)}return r.sort((a,i)=>i.confidence-a.confidence),{opportunities:r,totalCount:r.length,byType:o,durationMs:Date.now()-n,complete:t.length===0,warnings:t}}isTransformAvailable(e){return this.enabledTransforms.has(e)}getTransformMetadata(e){return E[e]}getAvailableTransforms(){return Array.from(this.enabledTransforms)}isWasmAvailable(){return this.wasmAvailable}getHealth(){let e=this.totalTransforms>0?this.totalDurationMs/this.totalTransforms:0,n=this.cacheHits+this.cacheMisses>0?this.cacheHits/(this.cacheHits+this.cacheMisses):0,r=[];return this.initialized||r.push("Adapter not initialized"),this.config.enabled||r.push("Adapter is disabled"),this.wasmAvailable||r.push("WASM module not loaded (using TypeScript fallback)"),this.patternsLoaded||r.push("Patterns not loaded from PatternLoader (using defaults)"),{ready:this.initialized&&this.config.enabled,wasmAvailable:this.wasmAvailable,patternsLoaded:this.patternsLoaded,availableTransforms:Array.from(this.enabledTransforms),lastChecked:new Date,issues:r,metrics:{totalTransforms:this.totalTransforms,successfulTransforms:this.successfulTransforms,averageDurationMs:e,cacheHitRate:n}}}ensureInitialized(){if(!this.initialized)throw new M("AgentBoosterAdapter not initialized. Call initialize() first.","var-to-const")}ensureEnabled(){if(!this.config.enabled)throw new M("AgentBoosterAdapter is disabled. Set enabled: true in config.","var-to-const")}createErrorResult(e,n,r,o){return{success:!1,transformType:n,originalCode:e,transformedCode:e,edits:[],changeCount:0,confidence:0,durationMs:Date.now()-o,implementationUsed:"typescript",usedFallback:!1,error:r,warnings:[]}}confidenceToRisk(e){return e>=.95?"info":e>=.85?"low":e>=.7?"medium":e>=.5?"high":"critical"}};async function ee(s={},e,n){let r=new v(s,e,n);return await r.initialize(),r}function re(s={},e,n){return new v(s,e,n)}export{v as a,ee as b,re as c};
6
+ ${c.trim()}`;r.push(p(s,a.index,a.index+l.length,f,"Convert .then() to await"))}e.debug("promise-to-async transform completed",{converted:r.length,warnings:o.length});let i=T(s,"promise-to-async",r,n,.65);return i.warnings=o,r.length>0&&i.warnings.push("Promise chains converted to await - ensure containing function is async"),i}catch(t){return e.error("promise-to-async transform failed",t),w(s,"promise-to-async",t instanceof Error?t.message:"Unknown error",n)}}function N(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t,a=/(?:const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*require\s*\(\s*(['"`][^'"`]+['"`])\s*\)\s*;?/g;for(;(t=a.exec(s))!==null;){let[c,f,g]=t,d=`import ${f} from ${g};`;r.push(p(s,t.index,t.index+c.length,d,"Convert require to import"))}let i=/(?:const|let|var)\s+\{\s*([^}]+)\s*\}\s*=\s*require\s*\(\s*(['"`][^'"`]+['"`])\s*\)\s*;?/g;for(;(t=i.exec(s))!==null;){let[c,f,g]=t,d=`import { ${f.trim()} } from ${g};`;r.push(p(s,t.index,t.index+c.length,d,"Convert destructured require to import"))}let l=/module\.exports\s*=\s*([^;]+);?/g;for(;(t=l.exec(s))!==null;){let[c,f]=t,g=`export default ${f.trim()};`;r.push(p(s,t.index,t.index+c.length,g,"Convert module.exports to export default"))}let m=/exports\.([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*([^;]+);?/g;for(;(t=m.exec(s))!==null;){let[c,f,g]=t,d=g.trim(),h;d.startsWith("function")||d.startsWith("class")?h=`export ${d}`:d.startsWith("async function")?h=`export ${d}`:h=`export const ${f} = ${d};`,r.push(p(s,t.index,t.index+c.length,h,`Convert exports.${f} to named export`))}e.debug("cjs-to-esm transform completed",{edits:r.length});let u=T(s,"cjs-to-esm",r,n,.85);return u.warnings=o,u}catch(t){return e.error("cjs-to-esm transform failed",t),w(s,"cjs-to-esm",t instanceof Error?t.message:"Unknown error",n)}}function H(s,e={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}){let n=Date.now(),r=[],o=[];try{let t=/(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*function\s*\(([^)]*)\)\s*\{/g,a;for(;(a=t.exec(s))!==null;){let[m,u,c,f]=a,g=a.index,d=1,h=g+m.length;for(;d>0&&h<s.length;)s[h]==="{"&&d++,s[h]==="}"&&d--,h++;let S=s.slice(g,h);if(/\bthis\b/.test(S)){o.push(`Function ${c} uses 'this' - skipping arrow conversion (would change binding)`);continue}if(/\barguments\b/.test(S)){o.push(`Function ${c} uses 'arguments' - skipping arrow conversion (not available in arrow functions)`);continue}let D=`${u} ${c} = (${f}) => {`;r.push(p(s,a.index,a.index+m.length,D,`Convert function ${c} to arrow function`))}let i=/function\s*\(([^)]*)\)\s*\{\s*return\s+([^;]+);\s*\}/g;for(;(a=i.exec(s))!==null;){let[m,u,c]=a;if(/\b(this|arguments)\b/.test(m))continue;let f=u.includes(",")||u.trim()===""?`(${u}) => ${c}`:`${u.trim()} => ${c}`;r.push(p(s,a.index,a.index+m.length,f,"Convert callback to arrow function"))}e.debug("func-to-arrow transform completed",{converted:r.length,warnings:o.length});let l=T(s,"func-to-arrow",r,n,.85);return l.warnings=o,l}catch(t){return e.error("func-to-arrow transform failed",t),w(s,"func-to-arrow",t instanceof Error?t.message:"Unknown error",n)}}var V={"var-to-const":Z,"add-types":O,"remove-console":I,"promise-to-async":j,"cjs-to-esm":N,"func-to-arrow":H};function $(s,e,n){let r=V[e];return r?r(s,n):{success:!1,transformType:e,originalCode:s,transformedCode:s,edits:[],changeCount:0,confidence:0,durationMs:0,implementationUsed:"typescript",usedFallback:!1,error:`Unknown transform type: ${e}`,warnings:[]}}var q={JavaScript:0,TypeScript:1,Python:2,Rust:3,Go:4,Java:5,C:6,Cpp:7},y=null,A=null,x=null,R=!1,k=null;async function G(){if(R)return k===null;if(k)return!1;try{let s=await import("./agent-booster-wasm-FZLWOPSX.js");return y=s.transform,A=s.warmup,x=s.isWasmAvailable,R=!0,!0}catch(s){return k=s,R=!0,!1}}function K(s){return q.TypeScript}var L=class{cache=new Map;ttlMs;enabled;constructor(e,n){this.enabled=e,this.ttlMs=n}generateKey(e,n){let r=0;for(let o=0;o<e.length;o++){let t=e.charCodeAt(o);r=(r<<5)-r+t,r=r&r}return`${n}:${r}:${e.length}`}get(e,n){if(!this.enabled)return null;let r=this.generateKey(e,n),o=this.cache.get(r);return o?Date.now()>o.expiresAt?(this.cache.delete(r),null):o.result:null}set(e,n,r){if(!this.enabled)return;let o=this.generateKey(e,n);this.cache.set(o,{result:r,expiresAt:Date.now()+this.ttlMs})}clear(){this.cache.clear()}getStats(){return{size:this.cache.size,hitRate:0}}},v=class{config;logger;cache;enabledTransforms;metricsTracker;initialized=!1;wasmAvailable=!1;wasmModule=null;patternsLoaded=!1;totalTransforms=0;successfulTransforms=0;totalDurationMs=0;cacheHits=0;cacheMisses=0;constructor(e={},n,r){this.config={...z,...e},this.logger=n||{debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}},this.metricsTracker=r,this.cache=new L(this.config.cacheEnabled,this.config.cacheTtlMs),this.config.transforms.length===0?this.enabledTransforms=new Set(b):this.enabledTransforms=new Set(this.config.transforms)}setMetricsTracker(e){this.metricsTracker=e}async initialize(){this.initialized||(this.logger.info("Initializing Agent Booster adapter",{enabled:this.config.enabled,transforms:Array.from(this.enabledTransforms)}),this.config.transforms.length===0&&await this.loadEligibleTransformsFromPatterns(),this.config.enabled&&await this.tryLoadWasm(),this.initialized=!0,this.logger.info("Agent Booster adapter initialized",{wasmAvailable:this.wasmAvailable,enabledTransforms:Array.from(this.enabledTransforms),patternsLoaded:this.patternsLoaded}))}async loadEligibleTransformsFromPatterns(){try{let n=await F().getEligibleBoosterTransforms();if(n.length>0){let r=n.filter(o=>b.includes(o));if(r.length>0){this.enabledTransforms=new Set(r),this.patternsLoaded=!0,this.logger.info("Loaded eligible transforms from PatternLoader",{fromPatterns:r,invalidIgnored:n.length-r.length});return}}this.logger.debug("PatternLoader returned empty transforms, using defaults")}catch(e){this.logger.warn("Failed to load transforms from PatternLoader, using defaults",{error:e instanceof Error?e.message:"Unknown error"})}this.enabledTransforms=new Set(b),this.patternsLoaded=!1}async tryLoadWasm(){try{if(this.logger.debug("Loading WASM module"),!await G()||!x){this.logger.debug("WASM module could not be loaded, using TypeScript fallback"),this.wasmAvailable=!1;return}this.logger.debug("Checking WASM availability from local module"),await x()&&y&&A?(this.logger.debug("Warming up WASM module"),await A(),this.wasmModule={transform:y,warmup:A,isAvailable:x},this.wasmAvailable=!0,this.logger.info("WASM Agent Booster loaded and warmed up successfully",{source:"local-module"})):(this.logger.debug("WASM not available from local module, using TypeScript fallback"),this.wasmAvailable=!1)}catch(e){this.logger.warn("Failed to load WASM module",{error:e instanceof Error?e.message:"Unknown error"}),this.wasmAvailable=!1}}async dispose(){this.cache.clear(),this.wasmModule=null,this.wasmAvailable=!1,this.initialized=!1,this.logger.info("Agent Booster adapter disposed")}async transform(e,n){this.ensureInitialized(),this.ensureEnabled();let r=Date.now();if(this.totalTransforms++,!this.enabledTransforms.has(n))return this.createErrorResult(e,n,`Transform type '${n}' is not enabled`,r);let o=this.cache.get(e,n);if(o)return this.cacheHits++,this.logger.debug("Cache hit for transform",{type:n}),{...o,durationMs:Date.now()-r};this.cacheMisses++;let t;try{t=await this.executeWithFallback(e,n,r)}catch(a){return this.createErrorResult(e,n,a instanceof Error?a.message:"Unknown error",r)}return t.success&&(this.successfulTransforms++,this.cache.set(e,n,t)),this.totalDurationMs+=t.durationMs,await this.recordMetrics(t,n),t}async recordMetrics(e,n){if(this.metricsTracker)try{let r=`booster-${n}-${Date.now()}`;await this.metricsTracker.recordOutcome("booster",r,e.success,e.durationMs,{subType:n,confidence:e.confidence,usedFallback:e.usedFallback,implementationUsed:e.implementationUsed,itemCount:e.changeCount,errorMessage:e.error})}catch(r){this.logger.warn("Failed to record metrics",{error:r instanceof Error?r.message:"Unknown error"})}}async executeWithFallback(e,n,r){if(this.wasmAvailable)try{let t=await this.executeWasmTransform(e,n,r);if(t.success&&t.confidence>=this.config.confidenceThreshold)return t;this.logger.debug("WASM transform low confidence, trying TypeScript",{confidence:t.confidence,threshold:this.config.confidenceThreshold})}catch(t){this.logger.warn("WASM transform failed, falling back to TypeScript",{error:t instanceof Error?t.message:"Unknown error"})}let o=$(e,n,this.logger);return o.durationMs=Date.now()-r,this.config.fallbackToLLM&&o.confidence<this.config.confidenceThreshold&&(this.logger.debug("TypeScript transform low confidence, LLM fallback available",{confidence:o.confidence,threshold:this.config.confidenceThreshold}),o.warnings.push(`Confidence ${o.confidence.toFixed(2)} is below threshold ${this.config.confidenceThreshold}. LLM fallback recommended for review.`),o.usedFallback=!0),o}async executeWasmTransform(e,n,r){if(!this.wasmAvailable)throw new C;let o=K(n),t=$(e,n,this.logger);if(t.changeCount===0)return{...t,durationMs:Date.now()-r,implementationUsed:"wasm"};if(!y)throw new C("WASM transform function not loaded");let a=await Promise.race([y(e,t.transformedCode,o,{confidenceThreshold:this.config.confidenceThreshold,allowFallback:!0}),new Promise((m,u)=>setTimeout(()=>u(new P("WASM transform timed out",n,this.config.timeoutMs)),this.config.timeoutMs))]),i=Date.now()-r,l=a.success&&a.mergedCode!==e?t.changeCount:0;return{success:a.success,transformType:n,originalCode:e,transformedCode:a.mergedCode,edits:t.edits,changeCount:l,confidence:a.confidence,durationMs:i,implementationUsed:a.source==="wasm"?"wasm":"typescript",usedFallback:a.source!=="wasm",error:a.error,warnings:a.syntaxValid?[]:["WASM reported syntax may be invalid"]}}async batchTransform(e,n){this.ensureInitialized(),this.ensureEnabled();let r=Date.now(),o=[],t=[],a=0,i=0,l=0,m=0;for(let u of e){if(u.content.length>this.config.maxFileSizeBytes){let c=new B(u.path,u.content.length,this.config.maxFileSizeBytes);t.push({path:u.path,error:c.message}),i++;continue}try{let c=await this.transform(u.content,n);o.push({path:u.path,result:c}),c.success?c.changeCount>0?(a++,m+=c.changeCount):l++:(i++,c.error&&t.push({path:u.path,error:c.error}))}catch(c){i++,t.push({path:u.path,error:c instanceof Error?c.message:"Unknown error"})}}return{success:i===0,transformType:n,files:o,totalFiles:e.length,successCount:a,failureCount:i,noChangeCount:l,totalChanges:m,durationMs:Date.now()-r,errors:t}}async detectTransformOpportunities(e){this.ensureInitialized(),this.ensureEnabled();let n=Date.now(),r=[],o={},t=[];for(let a of b)o[a]=0;for(let a of Array.from(this.enabledTransforms))try{let i=await this.transform(e,a);if(i.changeCount>0)for(let l of i.edits){let m={type:a,confidence:i.confidence,location:l.start,codeSnippet:l.oldText.slice(0,100)+(l.oldText.length>100?"...":""),suggestedCode:l.newText.slice(0,100)+(l.newText.length>100?"...":""),reason:l.description,risk:this.confidenceToRisk(i.confidence),estimatedDurationMs:E[a].typicalLatencyMs};r.push(m),o[a]++}}catch(i){t.push(`Failed to analyze for ${a}: ${i instanceof Error?i.message:"Unknown error"}`)}return r.sort((a,i)=>i.confidence-a.confidence),{opportunities:r,totalCount:r.length,byType:o,durationMs:Date.now()-n,complete:t.length===0,warnings:t}}isTransformAvailable(e){return this.enabledTransforms.has(e)}getTransformMetadata(e){return E[e]}getAvailableTransforms(){return Array.from(this.enabledTransforms)}isWasmAvailable(){return this.wasmAvailable}getHealth(){let e=this.totalTransforms>0?this.totalDurationMs/this.totalTransforms:0,n=this.cacheHits+this.cacheMisses>0?this.cacheHits/(this.cacheHits+this.cacheMisses):0,r=[];return this.initialized||r.push("Adapter not initialized"),this.config.enabled||r.push("Adapter is disabled"),this.wasmAvailable||r.push("WASM module not loaded (using TypeScript fallback)"),this.patternsLoaded||r.push("Patterns not loaded from PatternLoader (using defaults)"),{ready:this.initialized&&this.config.enabled,wasmAvailable:this.wasmAvailable,patternsLoaded:this.patternsLoaded,availableTransforms:Array.from(this.enabledTransforms),lastChecked:new Date,issues:r,metrics:{totalTransforms:this.totalTransforms,successfulTransforms:this.successfulTransforms,averageDurationMs:e,cacheHitRate:n}}}ensureInitialized(){if(!this.initialized)throw new M("AgentBoosterAdapter not initialized. Call initialize() first.","var-to-const")}ensureEnabled(){if(!this.config.enabled)throw new M("AgentBoosterAdapter is disabled. Set enabled: true in config.","var-to-const")}createErrorResult(e,n,r,o){return{success:!1,transformType:n,originalCode:e,transformedCode:e,edits:[],changeCount:0,confidence:0,durationMs:Date.now()-o,implementationUsed:"typescript",usedFallback:!1,error:r,warnings:[]}}confidenceToRisk(e){return e>=.95?"info":e>=.85?"low":e>=.7?"medium":e>=.5?"high":"critical"}};async function ee(s={},e,n){let r=new v(s,e,n);return await r.initialize(),r}function re(s={},e,n){return new v(s,e,n)}export{v as a,ee as b,re as c};
@@ -1,5 +1,5 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{a as v}from"./chunk-ZYPSXPQ5.js";import{c as l}from"./chunk-VENEJ3UI.js";import{S as R,b as g}from"./chunk-ZBY4HSHR.js";v();R();import{createHash as m,randomUUID as f}from"crypto";var a=l.create("witness-chain"),p=class{logLikelihoodRatio=0;upperBound;lowerBound;observations=0;constructor(t=.05,e=.05){this.upperBound=Math.log(1/t),this.lowerBound=Math.log(e)}addWeightedEvidence(t,e){return this.logLikelihoodRatio+=t?e:-e,this.observations++,this.logLikelihoodRatio>=this.upperBound?"PASS":this.logLikelihoodRatio<=this.lowerBound?"FAIL":"INCONCLUSIVE"}addEvidence(t){return this.addWeightedEvidence(t,.5)}getRatio(){return this.logLikelihoodRatio}getObservations(){return this.observations}getBounds(){return{upper:this.upperBound,lower:this.lowerBound}}reset(){this.logLikelihoodRatio=0,this.observations=0}},c="0".repeat(64),h=class{receipts=[];lastHash=c;sprtAccumulators=new Map;appendWitness(t){let e=f(),i=Date.now(),s=this.receipts.length,n=this.lastHash+JSON.stringify(t)+i,o=m("sha256").update(n).digest("hex"),u={id:e,timestamp:i,previousHash:this.lastHash,hash:o,decision:t,chainIndex:s};return this.receipts.push(u),this.lastHash=o,this.updateSPRT(t),a.debug("Witness appended",{chainIndex:s,type:t.type,decision:t.decision,hash:o.slice(0,16)+"..."}),u}verifyChain(){if(this.receipts.length===0)return{valid:!0,length:0,brokenAt:-1,message:"Chain is empty (valid)",lastHash:c};let t=c;for(let e=0;e<this.receipts.length;e++){let i=this.receipts[e];if(i.previousHash!==t)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: previousHash mismatch`,lastHash:this.lastHash};let s=i.previousHash+JSON.stringify(i.decision)+i.timestamp,n=m("sha256").update(s).digest("hex");if(i.hash!==n)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: hash mismatch (tamper detected)`,lastHash:this.lastHash};t=i.hash}return{valid:!0,length:this.receipts.length,brokenAt:-1,message:`Chain valid (${this.receipts.length} receipts)`,lastHash:this.lastHash}}getChain(t){return t!==void 0&&t>0?[...this.receipts.slice(-t)]:[...this.receipts]}getChainLength(){return this.receipts.length}getLastHash(){return this.lastHash}exportChain(){let t={version:"1.0.0",exportedAt:Date.now(),length:this.receipts.length,receipts:this.receipts};return JSON.stringify(t,null,2)}importChain(t){try{let e=JSON.parse(t);if(!e||e.version!=="1.0.0"||!Array.isArray(e.receipts))return a.warn("Import failed: invalid format"),!1;let i=this.receipts,s=this.lastHash;this.receipts=e.receipts,this.lastHash=e.receipts.length>0?e.receipts[e.receipts.length-1].hash:c;let n=this.verifyChain();return n.valid?(a.info("Chain imported successfully",{length:e.receipts.length}),!0):(this.receipts=i,this.lastHash=s,a.warn("Import failed: chain integrity check failed",{message:n.message}),!1)}catch(e){return a.warn("Import failed: parse error",{error:e instanceof Error?e.message:String(e)}),!1}}getSPRT(t,e,i){return this.sprtAccumulators.has(t)||this.sprtAccumulators.set(t,new p(e,i)),this.sprtAccumulators.get(t)}getReceipt(t){return this.receipts[t]}updateSPRT(t){let e=t.decision==="PASS"||t.decision==="PERMIT";this.getSPRT(t.type).addEvidence(e)}},d=class extends h{persistence;constructor(t){super(),this.persistence=t;let e=t.loadAllReceipts();if(e.length>0){let i={version:"1.0.0",exportedAt:Date.now(),length:e.length,receipts:e};this.importChain(JSON.stringify(i))?a.info("Witness chain restored from SQLite",{receipts:e.length}):a.warn("Failed to restore witness chain from SQLite \u2014 starting fresh")}}appendWitness(t){let e=super.appendWitness(t);try{this.persistence.insertReceipt(e)}catch(i){a.warn("Failed to persist witness receipt to SQLite",{chainIndex:e.chainIndex,error:i instanceof Error?i.message:String(i)})}return e}};function C(r){r.exec(`
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{a as v}from"./chunk-VPCE5CIT.js";import{c as l}from"./chunk-BGBSYF3K.js";import{S as R,b as g}from"./chunk-ELZ67OHQ.js";v();R();import{createHash as m,randomUUID as f}from"crypto";var a=l.create("witness-chain"),p=class{logLikelihoodRatio=0;upperBound;lowerBound;observations=0;constructor(t=.05,e=.05){this.upperBound=Math.log(1/t),this.lowerBound=Math.log(e)}addWeightedEvidence(t,e){return this.logLikelihoodRatio+=t?e:-e,this.observations++,this.logLikelihoodRatio>=this.upperBound?"PASS":this.logLikelihoodRatio<=this.lowerBound?"FAIL":"INCONCLUSIVE"}addEvidence(t){return this.addWeightedEvidence(t,.5)}getRatio(){return this.logLikelihoodRatio}getObservations(){return this.observations}getBounds(){return{upper:this.upperBound,lower:this.lowerBound}}reset(){this.logLikelihoodRatio=0,this.observations=0}},c="0".repeat(64),h=class{receipts=[];lastHash=c;sprtAccumulators=new Map;appendWitness(t){let e=f(),i=Date.now(),s=this.receipts.length,n=this.lastHash+JSON.stringify(t)+i,o=m("sha256").update(n).digest("hex"),u={id:e,timestamp:i,previousHash:this.lastHash,hash:o,decision:t,chainIndex:s};return this.receipts.push(u),this.lastHash=o,this.updateSPRT(t),a.debug("Witness appended",{chainIndex:s,type:t.type,decision:t.decision,hash:o.slice(0,16)+"..."}),u}verifyChain(){if(this.receipts.length===0)return{valid:!0,length:0,brokenAt:-1,message:"Chain is empty (valid)",lastHash:c};let t=c;for(let e=0;e<this.receipts.length;e++){let i=this.receipts[e];if(i.previousHash!==t)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: previousHash mismatch`,lastHash:this.lastHash};let s=i.previousHash+JSON.stringify(i.decision)+i.timestamp,n=m("sha256").update(s).digest("hex");if(i.hash!==n)return{valid:!1,length:this.receipts.length,brokenAt:e,message:`Chain broken at index ${e}: hash mismatch (tamper detected)`,lastHash:this.lastHash};t=i.hash}return{valid:!0,length:this.receipts.length,brokenAt:-1,message:`Chain valid (${this.receipts.length} receipts)`,lastHash:this.lastHash}}getChain(t){return t!==void 0&&t>0?[...this.receipts.slice(-t)]:[...this.receipts]}getChainLength(){return this.receipts.length}getLastHash(){return this.lastHash}exportChain(){let t={version:"1.0.0",exportedAt:Date.now(),length:this.receipts.length,receipts:this.receipts};return JSON.stringify(t,null,2)}importChain(t){try{let e=JSON.parse(t);if(!e||e.version!=="1.0.0"||!Array.isArray(e.receipts))return a.warn("Import failed: invalid format"),!1;let i=this.receipts,s=this.lastHash;this.receipts=e.receipts,this.lastHash=e.receipts.length>0?e.receipts[e.receipts.length-1].hash:c;let n=this.verifyChain();return n.valid?(a.info("Chain imported successfully",{length:e.receipts.length}),!0):(this.receipts=i,this.lastHash=s,a.warn("Import failed: chain integrity check failed",{message:n.message}),!1)}catch(e){return a.warn("Import failed: parse error",{error:e instanceof Error?e.message:String(e)}),!1}}getSPRT(t,e,i){return this.sprtAccumulators.has(t)||this.sprtAccumulators.set(t,new p(e,i)),this.sprtAccumulators.get(t)}getReceipt(t){return this.receipts[t]}updateSPRT(t){let e=t.decision==="PASS"||t.decision==="PERMIT";this.getSPRT(t.type).addEvidence(e)}},d=class extends h{persistence;constructor(t){super(),this.persistence=t;let e=t.loadAllReceipts();if(e.length>0){let i={version:"1.0.0",exportedAt:Date.now(),length:e.length,receipts:e};this.importChain(JSON.stringify(i))?a.info("Witness chain restored from SQLite",{receipts:e.length}):a.warn("Failed to restore witness chain from SQLite \u2014 starting fresh")}}appendWitness(t){let e=super.appendWitness(t);try{this.persistence.insertReceipt(e)}catch(i){a.warn("Failed to persist witness receipt to SQLite",{chainIndex:e.chainIndex,error:i instanceof Error?i.message:String(i)})}return e}};function C(r){r.exec(`
3
3
  CREATE TABLE IF NOT EXISTS witness_chain_receipts (
4
4
  id TEXT PRIMARY KEY,
5
5
  chain_index INTEGER NOT NULL,
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
2
  var h=Object.create;var e=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var k=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var m=(a=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(a,{get:(b,c)=>(typeof require<"u"?require:b)[c]}):a)(function(a){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+a+'" is not supported')}),n=a=>b=>{var c=a[b];if(c)return c();throw new Error("Module not found in bundle: "+b)};var o=(a,b)=>()=>(a&&(b=a(a=0)),b);var p=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports),q=(a,b)=>{for(var c in b)e(a,c,{get:b[c],enumerable:!0})},g=(a,b,c,f)=>{if(b&&typeof b=="object"||typeof b=="function")for(let d of j(b))!l.call(a,d)&&d!==c&&e(a,d,{get:()=>b[d],enumerable:!(f=i(b,d))||f.enumerable});return a};var r=(a,b,c)=>(c=a!=null?h(k(a)):{},g(b||!a||!a.__esModule?e(c,"default",{value:a,enumerable:!0}):c,a)),s=a=>g(e({},"__esModule",{value:!0}),a);export{m as a,n as b,o as c,p as d,q as e,r as f,s as g};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
2
  var n=class{constructor(t){this.capacity=t;this.buffer=new Array(t)}capacity;buffer;head=0;tail=0;count=0;push(t){this.buffer[this.tail]=t,this.tail=(this.tail+1)%this.capacity,this.count<this.capacity?this.count++:this.head=(this.head+1)%this.capacity}toArray(){let t=[];for(let e=0;e<this.count;e++){let i=(this.head+e)%this.capacity;t.push(this.buffer[i])}return t}get length(){return this.count}get size(){return this.count}clear(){this.buffer=new Array(this.capacity),this.head=0,this.tail=0,this.count=0}last(t){let e=[],i=Math.max(0,this.count-t);for(let s=i;s<this.count;s++){let r=(this.head+s)%this.capacity;e.push(this.buffer[r])}return e}percentile(t){if(this.count===0)return;let e=this.toArray().sort((s,r)=>Number(s)-Number(r)),i=Math.floor(t/100*(e.length-1));return e[i]}reduce(t,e){let i=e;for(let s=0;s<this.count;s++){let r=(this.head+s)%this.capacity;i=t(i,this.buffer[r])}return i}average(){return this.count===0?0:this.reduce((e,i)=>e+i,0)/this.count}};export{n as a};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
2
- import{b as A,d as M}from"./chunk-HOZNVDFF.js";import{a as S,b as D}from"./chunk-X6UGFKHW.js";import{S as Q,l as E}from"./chunk-ZBY4HSHR.js";import{g as C}from"./chunk-SCBWRKPE.js";M();Q();var v=(1+Math.sqrt(5))/2,R=1/v;function k(t,e=0){if(t<0||!Number.isFinite(t))throw new Error(`Invalid dither sequence length: ${t}`);if(!Number.isFinite(e))throw new Error(`Invalid dither seed: ${e}`);let n=new Float32Array(t),r=(e*R%1+1)%1;for(let i=0;i<t;i++)n[i]=((r+(i+1)*v)%1+1)%1;return n}function I(t,e,n=0){if(!(t instanceof Float32Array))throw new Error("Input vector must be a Float32Array");if(t.length===0)return{quantized:new Int32Array(0),dequantized:new Float32Array(0),bitDepth:e,seed:n,stepSize:0,minValue:0,maxValue:0};if(e<1||e>32||!Number.isInteger(e))throw new Error(`Invalid bit depth: ${e}. Must be an integer in [1, 32].`);let r=t[0],i=t[0];for(let d=1;d<t.length;d++)t[d]<r&&(r=t[d]),t[d]>i&&(i=t[d]);let s=(1<<e)-1,a=i-r,o=a===0?1:a/s,m=k(t.length,n),l=new Int32Array(t.length),u=new Float32Array(t.length);for(let d=0;d<t.length;d++){if(a===0)l[d]=Math.round(s/2);else{let L=(t[d]-r)/o+(m[d]-.5);l[d]=Math.max(0,Math.min(s,Math.round(L)))}u[d]=l[d]*o+r}return{quantized:l,dequantized:u,bitDepth:e,seed:n,stepSize:o,minValue:r,maxValue:i}}var h=null,b=null,p=null,g=null,f=null,w=null,x=!1;try{let t=(D(),C(S));h=t.RuvectorLayer,b=t.TensorCompress,p=t.differentiableSearch,g=t.hierarchicalForward,f=t.getCompressionLevel,w=t.init,x=!0}catch{}function H(){return x}function c(){if(!x)throw new Error("@ruvector/gnn native module is not available on this platform. Install the appropriate optional dependency for your platform, or use a platform where pre-built binaries are available.")}var F=!1;function V(){if(!F){c();let t=w();return F=!0,t}return"@ruvector/gnn already initialized"}var y=class{indexes;config;nextId;gnnLayers;compressor;constructor(e={}){this.config={M:e.M||16,efConstruction:e.efConstruction||200,efSearch:e.efSearch||50,dimension:e.dimension||384,metric:e.metric||"cosine",quantization:e.quantization||"none"},this.indexes=new Map,this.nextId=new Map,this.gnnLayers=new Map,c(),this.compressor=new b,V()}initializeIndex(e){this.indexes.has(e)||(this.indexes.set(e,new Map),this.nextId.set(e,0))}addEmbedding(e,n){let r=e.namespace;this.indexes.has(r)||this.initializeIndex(r);let i=this.indexes.get(r),s=n??this.nextId.get(r);return n===void 0&&this.nextId.set(r,s+1),i.set(s,e),s}addEmbeddingsBatch(e){let n=[];for(let r of e){let i=this.addEmbedding(r.embedding,r.id);n.push(i)}return n}search(e,n={}){let r=n.namespace||e.namespace;if(!this.indexes.has(r))return[];let i=this.indexes.get(r),s=n.limit||10,a=[];for(let[u,d]of i.entries())a.push({id:u,vector:Array.from(d.vector)});if(a.length===0)return[];let o=new Float32Array(e.vector),m=a.map(u=>new Float32Array(u.vector)),l=p(o,m,Math.min(s,a.length),1);return l.indices.map((u,d)=>({id:a[u]?.id??u,distance:1-l.weights[d]}))}differentiableSearchWithWeights(e,n,r,i=1){let s=new Float32Array(e.vector),a=n.map(m=>new Float32Array(m.embedding.vector)),o=p(s,a,Math.min(r,n.length),i);return{indices:o.indices.map(m=>n[m]?.id??m),weights:o.weights}}hierarchicalForward(e,n,r){let i=r.map(l=>`${l.inputDim}-${l.hiddenDim}`).join(",");if(!this.gnnLayers.has(i)){let l=[];for(let u of r){let d=new h(u.inputDim,u.hiddenDim,u.heads,u.dropout);l.push(d)}this.gnnLayers.set(i,l[0])}let a=this.gnnLayers.get(i).toJson(),o=new Float32Array(e),m=n.map(l=>l.map(u=>new Float32Array(u)));return Array.from(g(o,m,[a]))}compressEmbedding(e,n){let r=f(n),s={none:"none",half:"half",pq8:"pq8",pq4:"pq4",binary:"binary"}[r]??"none",a=new Float32Array(e.vector),o=this.compressor.compress(a,n);return{dimension:Array.from(e.vector).length,level:s,data:o,accessFreq:n}}decompressEmbedding(e){let n=this.compressor.decompress(e.data),r={none:"none",half:"fp16",pq8:"int8",pq4:"int8",binary:"binary"};return{vector:n,dimension:e.dimension,namespace:"code",text:"",timestamp:Date.now(),quantization:r[e.level]??"none"}}getCompressionLevelForFrequency(e){return c(),f(e)}getIndexStats(e){return this.indexes.has(e)?{size:this.indexes.get(e).size,maxElements:1e4,dimension:this.config.dimension,metric:this.config.metric}:null}clearIndex(e){this.indexes.delete(e),this.nextId.delete(e)}clearAll(){this.indexes.clear(),this.nextId.clear()}resizeIndex(e){}setEfSearch(e){this.config.efSearch=e}getConfig(){return{...this.config}}isInitialized(e){return this.indexes.has(e)}getInitializedNamespaces(){return Array.from(this.indexes.keys())}getSize(e){return this.indexes.get(e)?.size??0}async saveIndex(e,n){let r=this.indexes.get(e);if(!r)throw new Error(`Namespace ${e} not initialized`);let i=Array.from(r.entries()).map(([a,o])=>({id:a,vector:Array.from(o.vector),metadata:o.metadata}));await(await import("fs/promises")).writeFile(n,JSON.stringify(i,null,2))}async loadIndex(e,n){let i=await(await import("fs/promises")).readFile(n,"utf-8"),s=A(i);this.initializeIndex(e);for(let a of s){let o={vector:a.vector,dimension:a.vector.length,namespace:e,text:"",timestamp:Date.now(),quantization:"none",metadata:a.metadata};this.addEmbedding(o,a.id)}}},q=class{static instances=new Map;static getInstance(e,n){return this.instances.has(e)||this.instances.set(e,new y(n)),this.instances.get(e)}static closeInstance(e){let n=this.instances.get(e);n&&(n.clearAll(),this.instances.delete(e))}static closeAll(){for(let e of this.instances.values())e.clearAll();this.instances.clear()}},z=class{static layers=new Map;static getLayer(e){let n=`${e.inputDim}-${e.hiddenDim}-${e.heads}-${e.dropout}`;if(!this.layers.has(n)){c();let r=new h(e.inputDim,e.hiddenDim,e.heads,e.dropout);this.layers.set(n,r)}return this.layers.get(n)}static layerFromJson(e){return c(),h.fromJson(e)}static clearCache(){this.layers.clear()}},N=class{static _compressor=null;static get compressor(){return this._compressor||(c(),this._compressor=new b),this._compressor}static compressWithLevel(e,n){let r={levelType:n,scale:1,subvectors:n==="pq8"?8:n==="pq4"?16:void 0,centroids:n==="pq8"?256:void 0,outlierThreshold:n==="pq4"?3:void 0,threshold:n==="binary"?0:void 0},i=e instanceof Float32Array?e:new Float32Array(e);return this.compressor.compressWithLevel(i,r)}static decompress(e){return this.compressor.decompress(e)}static getLevel(e){return c(),f(e)}static compressWithDither(e,n,r){let i=e instanceof Float32Array?e:new Float32Array(e),s;if(E()){let o={none:32,half:16,pq8:8,pq4:4,binary:1},m=r?.bitDepth??o[n]??8,l=r?.seed??0;s=I(i,m,l)}return{compressed:this.compressWithLevel(s?s.dequantized:e,n),ditherResult:s}}};function G(){return c(),h}function J(){return c(),b}function O(){return c(),p}function j(){return c(),g}function B(){return c(),f}function K(){return c(),w}function U(t){return t instanceof Float32Array?t:"vector"in t?t.vector instanceof Float32Array?t.vector:new Float32Array(t.vector):new Float32Array(t)}function X(t){return"vector"in t?Array.from(t.vector):Array.from(t)}function Y(t,e="code"){return{vector:t,dimension:t.length,namespace:e,text:"",timestamp:Date.now(),quantization:"none"}}function Z(t,e,n,r=1){let i=[],s=e.map(a=>a instanceof Float32Array?a:new Float32Array(a));for(let a of t){let o=a instanceof Float32Array?a:new Float32Array(a),m=p(o,s,n,r);i.push({indices:m.indices,weights:m.weights})}return i}export{H as a,V as b,y as c,q as d,z as e,N as f,G as g,J as h,O as i,j,B as k,K as l,U as m,X as n,Y as o,Z as p};
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
+ import{b as A,d as M}from"./chunk-QNW335PD.js";import{a as S,b as D}from"./chunk-KRXKU54J.js";import{S as Q,l as E}from"./chunk-ELZ67OHQ.js";import{g as C}from"./chunk-4AWJ5PE4.js";M();Q();var v=(1+Math.sqrt(5))/2,R=1/v;function k(t,e=0){if(t<0||!Number.isFinite(t))throw new Error(`Invalid dither sequence length: ${t}`);if(!Number.isFinite(e))throw new Error(`Invalid dither seed: ${e}`);let n=new Float32Array(t),r=(e*R%1+1)%1;for(let i=0;i<t;i++)n[i]=((r+(i+1)*v)%1+1)%1;return n}function I(t,e,n=0){if(!(t instanceof Float32Array))throw new Error("Input vector must be a Float32Array");if(t.length===0)return{quantized:new Int32Array(0),dequantized:new Float32Array(0),bitDepth:e,seed:n,stepSize:0,minValue:0,maxValue:0};if(e<1||e>32||!Number.isInteger(e))throw new Error(`Invalid bit depth: ${e}. Must be an integer in [1, 32].`);let r=t[0],i=t[0];for(let d=1;d<t.length;d++)t[d]<r&&(r=t[d]),t[d]>i&&(i=t[d]);let s=(1<<e)-1,a=i-r,o=a===0?1:a/s,m=k(t.length,n),l=new Int32Array(t.length),u=new Float32Array(t.length);for(let d=0;d<t.length;d++){if(a===0)l[d]=Math.round(s/2);else{let L=(t[d]-r)/o+(m[d]-.5);l[d]=Math.max(0,Math.min(s,Math.round(L)))}u[d]=l[d]*o+r}return{quantized:l,dequantized:u,bitDepth:e,seed:n,stepSize:o,minValue:r,maxValue:i}}var h=null,b=null,p=null,g=null,f=null,w=null,x=!1;try{let t=(D(),C(S));h=t.RuvectorLayer,b=t.TensorCompress,p=t.differentiableSearch,g=t.hierarchicalForward,f=t.getCompressionLevel,w=t.init,x=!0}catch{}function H(){return x}function c(){if(!x)throw new Error("@ruvector/gnn native module is not available on this platform. Install the appropriate optional dependency for your platform, or use a platform where pre-built binaries are available.")}var F=!1;function V(){if(!F){c();let t=w();return F=!0,t}return"@ruvector/gnn already initialized"}var y=class{indexes;config;nextId;gnnLayers;compressor;constructor(e={}){this.config={M:e.M||16,efConstruction:e.efConstruction||200,efSearch:e.efSearch||50,dimension:e.dimension||384,metric:e.metric||"cosine",quantization:e.quantization||"none"},this.indexes=new Map,this.nextId=new Map,this.gnnLayers=new Map,c(),this.compressor=new b,V()}initializeIndex(e){this.indexes.has(e)||(this.indexes.set(e,new Map),this.nextId.set(e,0))}addEmbedding(e,n){let r=e.namespace;this.indexes.has(r)||this.initializeIndex(r);let i=this.indexes.get(r),s=n??this.nextId.get(r);return n===void 0&&this.nextId.set(r,s+1),i.set(s,e),s}addEmbeddingsBatch(e){let n=[];for(let r of e){let i=this.addEmbedding(r.embedding,r.id);n.push(i)}return n}search(e,n={}){let r=n.namespace||e.namespace;if(!this.indexes.has(r))return[];let i=this.indexes.get(r),s=n.limit||10,a=[];for(let[u,d]of i.entries())a.push({id:u,vector:Array.from(d.vector)});if(a.length===0)return[];let o=new Float32Array(e.vector),m=a.map(u=>new Float32Array(u.vector)),l=p(o,m,Math.min(s,a.length),1);return l.indices.map((u,d)=>({id:a[u]?.id??u,distance:1-l.weights[d]}))}differentiableSearchWithWeights(e,n,r,i=1){let s=new Float32Array(e.vector),a=n.map(m=>new Float32Array(m.embedding.vector)),o=p(s,a,Math.min(r,n.length),i);return{indices:o.indices.map(m=>n[m]?.id??m),weights:o.weights}}hierarchicalForward(e,n,r){let i=r.map(l=>`${l.inputDim}-${l.hiddenDim}`).join(",");if(!this.gnnLayers.has(i)){let l=[];for(let u of r){let d=new h(u.inputDim,u.hiddenDim,u.heads,u.dropout);l.push(d)}this.gnnLayers.set(i,l[0])}let a=this.gnnLayers.get(i).toJson(),o=new Float32Array(e),m=n.map(l=>l.map(u=>new Float32Array(u)));return Array.from(g(o,m,[a]))}compressEmbedding(e,n){let r=f(n),s={none:"none",half:"half",pq8:"pq8",pq4:"pq4",binary:"binary"}[r]??"none",a=new Float32Array(e.vector),o=this.compressor.compress(a,n);return{dimension:Array.from(e.vector).length,level:s,data:o,accessFreq:n}}decompressEmbedding(e){let n=this.compressor.decompress(e.data),r={none:"none",half:"fp16",pq8:"int8",pq4:"int8",binary:"binary"};return{vector:n,dimension:e.dimension,namespace:"code",text:"",timestamp:Date.now(),quantization:r[e.level]??"none"}}getCompressionLevelForFrequency(e){return c(),f(e)}getIndexStats(e){return this.indexes.has(e)?{size:this.indexes.get(e).size,maxElements:1e4,dimension:this.config.dimension,metric:this.config.metric}:null}clearIndex(e){this.indexes.delete(e),this.nextId.delete(e)}clearAll(){this.indexes.clear(),this.nextId.clear()}resizeIndex(e){}setEfSearch(e){this.config.efSearch=e}getConfig(){return{...this.config}}isInitialized(e){return this.indexes.has(e)}getInitializedNamespaces(){return Array.from(this.indexes.keys())}getSize(e){return this.indexes.get(e)?.size??0}async saveIndex(e,n){let r=this.indexes.get(e);if(!r)throw new Error(`Namespace ${e} not initialized`);let i=Array.from(r.entries()).map(([a,o])=>({id:a,vector:Array.from(o.vector),metadata:o.metadata}));await(await import("fs/promises")).writeFile(n,JSON.stringify(i,null,2))}async loadIndex(e,n){let i=await(await import("fs/promises")).readFile(n,"utf-8"),s=A(i);this.initializeIndex(e);for(let a of s){let o={vector:a.vector,dimension:a.vector.length,namespace:e,text:"",timestamp:Date.now(),quantization:"none",metadata:a.metadata};this.addEmbedding(o,a.id)}}},q=class{static instances=new Map;static getInstance(e,n){return this.instances.has(e)||this.instances.set(e,new y(n)),this.instances.get(e)}static closeInstance(e){let n=this.instances.get(e);n&&(n.clearAll(),this.instances.delete(e))}static closeAll(){for(let e of this.instances.values())e.clearAll();this.instances.clear()}},z=class{static layers=new Map;static getLayer(e){let n=`${e.inputDim}-${e.hiddenDim}-${e.heads}-${e.dropout}`;if(!this.layers.has(n)){c();let r=new h(e.inputDim,e.hiddenDim,e.heads,e.dropout);this.layers.set(n,r)}return this.layers.get(n)}static layerFromJson(e){return c(),h.fromJson(e)}static clearCache(){this.layers.clear()}},N=class{static _compressor=null;static get compressor(){return this._compressor||(c(),this._compressor=new b),this._compressor}static compressWithLevel(e,n){let r={levelType:n,scale:1,subvectors:n==="pq8"?8:n==="pq4"?16:void 0,centroids:n==="pq8"?256:void 0,outlierThreshold:n==="pq4"?3:void 0,threshold:n==="binary"?0:void 0},i=e instanceof Float32Array?e:new Float32Array(e);return this.compressor.compressWithLevel(i,r)}static decompress(e){return this.compressor.decompress(e)}static getLevel(e){return c(),f(e)}static compressWithDither(e,n,r){let i=e instanceof Float32Array?e:new Float32Array(e),s;if(E()){let o={none:32,half:16,pq8:8,pq4:4,binary:1},m=r?.bitDepth??o[n]??8,l=r?.seed??0;s=I(i,m,l)}return{compressed:this.compressWithLevel(s?s.dequantized:e,n),ditherResult:s}}};function G(){return c(),h}function J(){return c(),b}function O(){return c(),p}function j(){return c(),g}function B(){return c(),f}function K(){return c(),w}function U(t){return t instanceof Float32Array?t:"vector"in t?t.vector instanceof Float32Array?t.vector:new Float32Array(t.vector):new Float32Array(t)}function X(t){return"vector"in t?Array.from(t.vector):Array.from(t)}function Y(t,e="code"){return{vector:t,dimension:t.length,namespace:e,text:"",timestamp:Date.now(),quantization:"none"}}function Z(t,e,n,r=1){let i=[],s=e.map(a=>a instanceof Float32Array?a:new Float32Array(a));for(let a of t){let o=a instanceof Float32Array?a:new Float32Array(a),m=p(o,s,n,r);i.push({indices:m.indices,weights:m.weights})}return i}export{H as a,V as b,y as c,q as d,z as e,N as f,G as g,J as h,O as i,j,B as k,K as l,U as m,X as n,Y as o,Z as p};
@@ -1,2 +1,2 @@
1
- import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.36");process.exit(0)}
1
+ import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.10.1");process.exit(0)}
2
2
  var i=class r{constructor(e){this._value=e;if(!e||e.trim()==="")throw new Error("FilePath cannot be empty")}_value;get value(){return this._value}get extension(){let e=this._value.split(".");return e.length>1?e[e.length-1]:""}get directory(){let e=this._value.lastIndexOf("/");return e>0?this._value.substring(0,e):""}get filename(){let e=this._value.lastIndexOf("/");return e>=0?this._value.substring(e+1):this._value}equals(e){return this._value===e._value}static create(e){return new r(e)}};var s=class r{constructor(e){this._value=e;if(e<0||e>1)throw new Error("RiskScore must be between 0 and 1")}_value;get value(){return this._value}get percentage(){return this._value*100}get level(){return this._value>=.8?"critical":this._value>=.6?"high":this._value>=.3?"medium":"low"}isHigherThan(e){return this._value>e._value}equals(e){return this._value===e._value}static create(e){return new r(e)}static fromPercentage(e){return new r(e/100)}},u=class r{constructor(e,t){this._start=e;this._end=t;if(e>t)throw new Error("Start date cannot be after end date")}_start;_end;get start(){return this._start}get end(){return this._end}get durationMs(){return this._end.getTime()-this._start.getTime()}get durationSeconds(){return this.durationMs/1e3}contains(e){return e>=this._start&&e<=this._end}overlaps(e){return this._start<=e._end&&e._start<=this._end}equals(e){return this._start.getTime()===e._start.getTime()&&this._end.getTime()===e._end.getTime()}static create(e,t){return new r(e,t)}static lastNDays(e){let t=new Date,n=new Date(t.getTime()-e*24*60*60*1e3);return new r(n,t)}},o=class r{constructor(e,t,n,a){this._major=e;this._minor=t;this._patch=n;this._prerelease=a}_major;_minor;_patch;_prerelease;get major(){return this._major}get minor(){return this._minor}get patch(){return this._patch}get prerelease(){return this._prerelease}toString(){let e=`${this._major}.${this._minor}.${this._patch}`;return this._prerelease?`${e}-${this._prerelease}`:e}isNewerThan(e){return this._major!==e._major?this._major>e._major:this._minor!==e._minor?this._minor>e._minor:this._patch>e._patch}equals(e){return this._major===e._major&&this._minor===e._minor&&this._patch===e._patch&&this._prerelease===e._prerelease}static create(e,t,n,a){return new r(e,t,n,a)}static parse(e){let t=e.match(/^(\d+)\.(\d+)\.(\d+)(?:-(.+))?$/);if(!t)throw new Error(`Invalid version format: ${e}`);return new r(parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),t[4])}};export{i as a,s as b,u as c,o as d};