agentdb 3.0.0-alpha.9 → 3.1.0

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 (726) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +248 -269
  3. package/dist/schemas/frontier-schema.sql +7 -0
  4. package/dist/schemas/schema.sql +7 -0
  5. package/dist/src/backends/ExactSearch.d.ts +22 -0
  6. package/dist/src/backends/ExactSearch.d.ts.map +1 -0
  7. package/dist/src/backends/ExactSearch.js +36 -0
  8. package/dist/src/backends/ExactSearch.js.map +1 -0
  9. package/dist/src/backends/VectorBackend.d.ts +80 -6
  10. package/dist/src/backends/VectorBackend.d.ts.map +1 -1
  11. package/dist/src/backends/VectorBackend.js +67 -1
  12. package/dist/src/backends/VectorBackend.js.map +1 -1
  13. package/dist/src/backends/detector.js.map +1 -1
  14. package/dist/src/backends/factory.d.ts +16 -33
  15. package/dist/src/backends/factory.d.ts.map +1 -1
  16. package/dist/src/backends/factory.js +140 -110
  17. package/dist/src/backends/factory.js.map +1 -1
  18. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts +54 -6
  19. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts.map +1 -1
  20. package/dist/src/backends/graph/GraphDatabaseAdapter.js +143 -6
  21. package/dist/src/backends/graph/GraphDatabaseAdapter.js.map +1 -1
  22. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts.map +1 -1
  23. package/dist/src/backends/hnswlib/HNSWLibBackend.js +35 -8
  24. package/dist/src/backends/hnswlib/HNSWLibBackend.js.map +1 -1
  25. package/dist/src/backends/index.d.ts +2 -1
  26. package/dist/src/backends/index.d.ts.map +1 -1
  27. package/dist/src/backends/index.js +2 -0
  28. package/dist/src/backends/index.js.map +1 -1
  29. package/dist/src/backends/ruvector/RuVectorBackend.d.ts +256 -45
  30. package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
  31. package/dist/src/backends/ruvector/RuVectorBackend.js +764 -290
  32. package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
  33. package/dist/src/backends/ruvector/RuVectorLearning.d.ts +0 -4
  34. package/dist/src/backends/ruvector/RuVectorLearning.d.ts.map +1 -1
  35. package/dist/src/backends/ruvector/RuVectorLearning.js +0 -6
  36. package/dist/src/backends/ruvector/RuVectorLearning.js.map +1 -1
  37. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts +175 -0
  38. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts.map +1 -0
  39. package/dist/src/backends/rvf/AdaptiveIndexTuner.js +567 -0
  40. package/dist/src/backends/rvf/AdaptiveIndexTuner.js.map +1 -0
  41. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts +148 -0
  42. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts.map +1 -0
  43. package/dist/src/backends/rvf/ContrastiveTrainer.js +438 -0
  44. package/dist/src/backends/rvf/ContrastiveTrainer.js.map +1 -0
  45. package/dist/src/backends/rvf/FederatedSessionManager.d.ts +212 -0
  46. package/dist/src/backends/rvf/FederatedSessionManager.d.ts.map +1 -0
  47. package/dist/src/backends/rvf/FederatedSessionManager.js +397 -0
  48. package/dist/src/backends/rvf/FederatedSessionManager.js.map +1 -0
  49. package/dist/src/backends/rvf/FilterBuilder.d.ts +136 -0
  50. package/dist/src/backends/rvf/FilterBuilder.d.ts.map +1 -0
  51. package/dist/src/backends/rvf/FilterBuilder.js +157 -0
  52. package/dist/src/backends/rvf/FilterBuilder.js.map +1 -0
  53. package/dist/src/backends/rvf/NativeAccelerator.d.ts +158 -0
  54. package/dist/src/backends/rvf/NativeAccelerator.d.ts.map +1 -0
  55. package/dist/src/backends/rvf/NativeAccelerator.js +702 -0
  56. package/dist/src/backends/rvf/NativeAccelerator.js.map +1 -0
  57. package/dist/src/backends/rvf/RvfBackend.d.ts +207 -0
  58. package/dist/src/backends/rvf/RvfBackend.d.ts.map +1 -0
  59. package/dist/src/backends/rvf/RvfBackend.js +651 -0
  60. package/dist/src/backends/rvf/RvfBackend.js.map +1 -0
  61. package/dist/src/backends/rvf/RvfSolver.d.ts +175 -0
  62. package/dist/src/backends/rvf/RvfSolver.d.ts.map +1 -0
  63. package/dist/src/backends/rvf/RvfSolver.js +176 -0
  64. package/dist/src/backends/rvf/RvfSolver.js.map +1 -0
  65. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts +143 -0
  66. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts.map +1 -0
  67. package/dist/src/backends/rvf/SelfLearningRvfBackend.js +612 -0
  68. package/dist/src/backends/rvf/SelfLearningRvfBackend.js.map +1 -0
  69. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts +128 -0
  70. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts.map +1 -0
  71. package/dist/src/backends/rvf/SemanticQueryRouter.js +415 -0
  72. package/dist/src/backends/rvf/SemanticQueryRouter.js.map +1 -0
  73. package/dist/src/backends/rvf/SimdFallbacks.d.ts +25 -0
  74. package/dist/src/backends/rvf/SimdFallbacks.d.ts.map +1 -0
  75. package/dist/src/backends/rvf/SimdFallbacks.js +287 -0
  76. package/dist/src/backends/rvf/SimdFallbacks.js.map +1 -0
  77. package/dist/src/backends/rvf/SolverBandit.d.ts +100 -0
  78. package/dist/src/backends/rvf/SolverBandit.d.ts.map +1 -0
  79. package/dist/src/backends/rvf/SolverBandit.js +216 -0
  80. package/dist/src/backends/rvf/SolverBandit.js.map +1 -0
  81. package/dist/src/backends/rvf/SonaLearningBackend.d.ts +157 -0
  82. package/dist/src/backends/rvf/SonaLearningBackend.d.ts.map +1 -0
  83. package/dist/src/backends/rvf/SonaLearningBackend.js +283 -0
  84. package/dist/src/backends/rvf/SonaLearningBackend.js.map +1 -0
  85. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts +104 -0
  86. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts.map +1 -0
  87. package/dist/src/backends/rvf/SqlJsRvfBackend.js +474 -0
  88. package/dist/src/backends/rvf/SqlJsRvfBackend.js.map +1 -0
  89. package/dist/src/backends/rvf/WasmStoreBridge.d.ts +27 -0
  90. package/dist/src/backends/rvf/WasmStoreBridge.d.ts.map +1 -0
  91. package/dist/src/backends/rvf/WasmStoreBridge.js +87 -0
  92. package/dist/src/backends/rvf/WasmStoreBridge.js.map +1 -0
  93. package/dist/src/backends/rvf/validation.d.ts +20 -0
  94. package/dist/src/backends/rvf/validation.d.ts.map +1 -0
  95. package/dist/src/backends/rvf/validation.js +78 -0
  96. package/dist/src/backends/rvf/validation.js.map +1 -0
  97. package/dist/src/benchmark/BenchmarkSuite.d.ts +318 -0
  98. package/dist/src/benchmark/BenchmarkSuite.d.ts.map +1 -0
  99. package/dist/src/benchmark/BenchmarkSuite.js +984 -0
  100. package/dist/src/benchmark/BenchmarkSuite.js.map +1 -0
  101. package/dist/src/benchmark/index.d.ts +29 -0
  102. package/dist/src/benchmark/index.d.ts.map +1 -0
  103. package/dist/src/benchmark/index.js +39 -0
  104. package/dist/src/benchmark/index.js.map +1 -0
  105. package/dist/src/browser/AttentionBrowser.d.ts.map +1 -1
  106. package/dist/src/browser/AttentionBrowser.js +1 -0
  107. package/dist/src/browser/AttentionBrowser.js.map +1 -1
  108. package/dist/src/cli/agentdb-cli.d.ts +14 -0
  109. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  110. package/dist/src/cli/agentdb-cli.js +839 -143
  111. package/dist/src/cli/agentdb-cli.js.map +1 -1
  112. package/dist/src/cli/commands/attention.js +12 -2
  113. package/dist/src/cli/commands/attention.js.map +1 -1
  114. package/dist/src/cli/commands/doctor.js +5 -5
  115. package/dist/src/cli/commands/doctor.js.map +1 -1
  116. package/dist/src/cli/commands/hyperbolic.d.ts +11 -0
  117. package/dist/src/cli/commands/hyperbolic.d.ts.map +1 -0
  118. package/dist/src/cli/commands/hyperbolic.js +440 -0
  119. package/dist/src/cli/commands/hyperbolic.js.map +1 -0
  120. package/dist/src/cli/commands/install-embeddings.d.ts +1 -1
  121. package/dist/src/cli/commands/install-embeddings.d.ts.map +1 -1
  122. package/dist/src/cli/commands/install-embeddings.js +17 -11
  123. package/dist/src/cli/commands/install-embeddings.js.map +1 -1
  124. package/dist/src/cli/commands/learn.d.ts +11 -0
  125. package/dist/src/cli/commands/learn.d.ts.map +1 -0
  126. package/dist/src/cli/commands/learn.js +410 -0
  127. package/dist/src/cli/commands/learn.js.map +1 -0
  128. package/dist/src/cli/commands/migrate.d.ts +15 -0
  129. package/dist/src/cli/commands/migrate.d.ts.map +1 -1
  130. package/dist/src/cli/commands/migrate.js +190 -10
  131. package/dist/src/cli/commands/migrate.js.map +1 -1
  132. package/dist/src/cli/commands/route.d.ts +11 -0
  133. package/dist/src/cli/commands/route.d.ts.map +1 -0
  134. package/dist/src/cli/commands/route.js +419 -0
  135. package/dist/src/cli/commands/route.js.map +1 -0
  136. package/dist/src/cli/commands/rvf.d.ts +21 -0
  137. package/dist/src/cli/commands/rvf.d.ts.map +1 -0
  138. package/dist/src/cli/commands/rvf.js +448 -0
  139. package/dist/src/cli/commands/rvf.js.map +1 -0
  140. package/dist/src/cli/commands/simulate-report.js +14 -2
  141. package/dist/src/cli/commands/simulate-report.js.map +1 -1
  142. package/dist/src/cli/lib/report-store.d.ts +2 -1
  143. package/dist/src/cli/lib/report-store.d.ts.map +1 -1
  144. package/dist/src/cli/lib/report-store.js +85 -65
  145. package/dist/src/cli/lib/report-store.js.map +1 -1
  146. package/dist/src/cli/lib/simulation-runner.d.ts +40 -3
  147. package/dist/src/cli/lib/simulation-runner.d.ts.map +1 -1
  148. package/dist/src/cli/lib/simulation-runner.js +248 -6
  149. package/dist/src/cli/lib/simulation-runner.js.map +1 -1
  150. package/dist/src/compatibility/DeprecationWarnings.d.ts +54 -0
  151. package/dist/src/compatibility/DeprecationWarnings.d.ts.map +1 -0
  152. package/dist/src/compatibility/DeprecationWarnings.js +131 -0
  153. package/dist/src/compatibility/DeprecationWarnings.js.map +1 -0
  154. package/dist/src/compatibility/MigrationUtilities.d.ts +30 -0
  155. package/dist/src/compatibility/MigrationUtilities.d.ts.map +1 -0
  156. package/dist/src/compatibility/MigrationUtilities.js +184 -0
  157. package/dist/src/compatibility/MigrationUtilities.js.map +1 -0
  158. package/dist/src/compatibility/V1toV2Adapter.d.ts +76 -0
  159. package/dist/src/compatibility/V1toV2Adapter.d.ts.map +1 -0
  160. package/dist/src/compatibility/V1toV2Adapter.js +185 -0
  161. package/dist/src/compatibility/V1toV2Adapter.js.map +1 -0
  162. package/dist/src/compatibility/VersionDetector.d.ts +32 -0
  163. package/dist/src/compatibility/VersionDetector.d.ts.map +1 -0
  164. package/dist/src/compatibility/VersionDetector.js +144 -0
  165. package/dist/src/compatibility/VersionDetector.js.map +1 -0
  166. package/dist/src/compatibility/index.d.ts +14 -0
  167. package/dist/src/compatibility/index.d.ts.map +1 -0
  168. package/dist/src/compatibility/index.js +21 -0
  169. package/dist/src/compatibility/index.js.map +1 -0
  170. package/dist/src/compatibility/types.d.ts +103 -0
  171. package/dist/src/compatibility/types.d.ts.map +1 -0
  172. package/dist/src/compatibility/types.js +5 -0
  173. package/dist/src/compatibility/types.js.map +1 -0
  174. package/dist/src/controllers/AttentionService.d.ts +99 -202
  175. package/dist/src/controllers/AttentionService.d.ts.map +1 -1
  176. package/dist/src/controllers/AttentionService.js +450 -558
  177. package/dist/src/controllers/AttentionService.js.map +1 -1
  178. package/dist/src/controllers/CausalMemoryGraph.d.ts +30 -5
  179. package/dist/src/controllers/CausalMemoryGraph.d.ts.map +1 -1
  180. package/dist/src/controllers/CausalMemoryGraph.js +92 -15
  181. package/dist/src/controllers/CausalMemoryGraph.js.map +1 -1
  182. package/dist/src/controllers/CausalRecall.d.ts +4 -0
  183. package/dist/src/controllers/CausalRecall.d.ts.map +1 -1
  184. package/dist/src/controllers/CausalRecall.js +23 -5
  185. package/dist/src/controllers/CausalRecall.js.map +1 -1
  186. package/dist/src/controllers/EmbeddingService.d.ts +39 -0
  187. package/dist/src/controllers/EmbeddingService.d.ts.map +1 -1
  188. package/dist/src/controllers/EmbeddingService.js +166 -32
  189. package/dist/src/controllers/EmbeddingService.js.map +1 -1
  190. package/dist/src/controllers/EnhancedEmbeddingService.d.ts +4 -0
  191. package/dist/src/controllers/EnhancedEmbeddingService.d.ts.map +1 -1
  192. package/dist/src/controllers/EnhancedEmbeddingService.js +21 -7
  193. package/dist/src/controllers/EnhancedEmbeddingService.js.map +1 -1
  194. package/dist/src/controllers/ExplainableRecall.d.ts +1 -1
  195. package/dist/src/controllers/ExplainableRecall.d.ts.map +1 -1
  196. package/dist/src/controllers/ExplainableRecall.js +1 -1
  197. package/dist/src/controllers/ExplainableRecall.js.map +1 -1
  198. package/dist/src/controllers/HNSWIndex.d.ts +20 -2
  199. package/dist/src/controllers/HNSWIndex.d.ts.map +1 -1
  200. package/dist/src/controllers/HNSWIndex.js +114 -39
  201. package/dist/src/controllers/HNSWIndex.js.map +1 -1
  202. package/dist/src/controllers/LearningSystem.d.ts +6 -17
  203. package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
  204. package/dist/src/controllers/LearningSystem.js +66 -155
  205. package/dist/src/controllers/LearningSystem.js.map +1 -1
  206. package/dist/src/controllers/MemoryController.d.ts +174 -0
  207. package/dist/src/controllers/MemoryController.d.ts.map +1 -0
  208. package/dist/src/controllers/MemoryController.js +320 -0
  209. package/dist/src/controllers/MemoryController.js.map +1 -0
  210. package/dist/src/controllers/MetadataFilter.d.ts.map +1 -1
  211. package/dist/src/controllers/MetadataFilter.js +38 -26
  212. package/dist/src/controllers/MetadataFilter.js.map +1 -1
  213. package/dist/src/controllers/MincutService.d.ts +92 -0
  214. package/dist/src/controllers/MincutService.d.ts.map +1 -0
  215. package/dist/src/controllers/MincutService.js +336 -0
  216. package/dist/src/controllers/MincutService.js.map +1 -0
  217. package/dist/src/controllers/NightlyLearner.d.ts +5 -1
  218. package/dist/src/controllers/NightlyLearner.d.ts.map +1 -1
  219. package/dist/src/controllers/NightlyLearner.js +45 -31
  220. package/dist/src/controllers/NightlyLearner.js.map +1 -1
  221. package/dist/src/controllers/QUICClient.d.ts +45 -0
  222. package/dist/src/controllers/QUICClient.d.ts.map +1 -1
  223. package/dist/src/controllers/QUICClient.js +211 -21
  224. package/dist/src/controllers/QUICClient.js.map +1 -1
  225. package/dist/src/controllers/QUICServer.d.ts.map +1 -1
  226. package/dist/src/controllers/QUICServer.js +36 -27
  227. package/dist/src/controllers/QUICServer.js.map +1 -1
  228. package/dist/src/controllers/ReasoningBank.d.ts +44 -5
  229. package/dist/src/controllers/ReasoningBank.d.ts.map +1 -1
  230. package/dist/src/controllers/ReasoningBank.js +187 -99
  231. package/dist/src/controllers/ReasoningBank.js.map +1 -1
  232. package/dist/src/controllers/ReflexionMemory.d.ts +129 -6
  233. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  234. package/dist/src/controllers/ReflexionMemory.js +687 -220
  235. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  236. package/dist/src/controllers/SkillLibrary.d.ts +41 -3
  237. package/dist/src/controllers/SkillLibrary.d.ts.map +1 -1
  238. package/dist/src/controllers/SkillLibrary.js +291 -116
  239. package/dist/src/controllers/SkillLibrary.js.map +1 -1
  240. package/dist/src/controllers/SparsificationService.d.ts +151 -0
  241. package/dist/src/controllers/SparsificationService.d.ts.map +1 -0
  242. package/dist/src/controllers/SparsificationService.js +375 -0
  243. package/dist/src/controllers/SparsificationService.js.map +1 -0
  244. package/dist/src/controllers/SyncCoordinator.d.ts.map +1 -1
  245. package/dist/src/controllers/SyncCoordinator.js +126 -12
  246. package/dist/src/controllers/SyncCoordinator.js.map +1 -1
  247. package/dist/src/controllers/WASMVectorSearch.d.ts +12 -30
  248. package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
  249. package/dist/src/controllers/WASMVectorSearch.js +209 -119
  250. package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
  251. package/dist/src/controllers/attention/AttentionCache.d.ts +38 -0
  252. package/dist/src/controllers/attention/AttentionCache.d.ts.map +1 -0
  253. package/dist/src/controllers/attention/AttentionCache.js +80 -0
  254. package/dist/src/controllers/attention/AttentionCache.js.map +1 -0
  255. package/dist/src/controllers/attention/AttentionConfig.d.ts +127 -0
  256. package/dist/src/controllers/attention/AttentionConfig.d.ts.map +1 -0
  257. package/dist/src/controllers/attention/AttentionConfig.js +124 -0
  258. package/dist/src/controllers/attention/AttentionConfig.js.map +1 -0
  259. package/dist/src/controllers/attention/AttentionCore.d.ts +89 -0
  260. package/dist/src/controllers/attention/AttentionCore.d.ts.map +1 -0
  261. package/dist/src/controllers/attention/AttentionCore.js +289 -0
  262. package/dist/src/controllers/attention/AttentionCore.js.map +1 -0
  263. package/dist/src/controllers/attention/AttentionHelpers.d.ts +55 -0
  264. package/dist/src/controllers/attention/AttentionHelpers.d.ts.map +1 -0
  265. package/dist/src/controllers/attention/AttentionHelpers.js +148 -0
  266. package/dist/src/controllers/attention/AttentionHelpers.js.map +1 -0
  267. package/dist/src/controllers/attention/AttentionMetrics.d.ts +55 -0
  268. package/dist/src/controllers/attention/AttentionMetrics.d.ts.map +1 -0
  269. package/dist/src/controllers/attention/AttentionMetrics.js +72 -0
  270. package/dist/src/controllers/attention/AttentionMetrics.js.map +1 -0
  271. package/dist/src/controllers/attention/AttentionWASM.d.ts +98 -0
  272. package/dist/src/controllers/attention/AttentionWASM.d.ts.map +1 -0
  273. package/dist/src/controllers/attention/AttentionWASM.js +147 -0
  274. package/dist/src/controllers/attention/AttentionWASM.js.map +1 -0
  275. package/dist/src/controllers/attention/CrossAttentionController.d.ts +141 -0
  276. package/dist/src/controllers/attention/CrossAttentionController.d.ts.map +1 -0
  277. package/dist/src/controllers/attention/CrossAttentionController.js +325 -0
  278. package/dist/src/controllers/attention/CrossAttentionController.js.map +1 -0
  279. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts +137 -0
  280. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts.map +1 -0
  281. package/dist/src/controllers/attention/MultiHeadAttentionController.js +336 -0
  282. package/dist/src/controllers/attention/MultiHeadAttentionController.js.map +1 -0
  283. package/dist/src/controllers/attention/SelfAttentionController.d.ts +117 -0
  284. package/dist/src/controllers/attention/SelfAttentionController.d.ts.map +1 -0
  285. package/dist/src/controllers/attention/SelfAttentionController.js +205 -0
  286. package/dist/src/controllers/attention/SelfAttentionController.js.map +1 -0
  287. package/dist/src/controllers/attention/index.d.ts +24 -0
  288. package/dist/src/controllers/attention/index.d.ts.map +1 -0
  289. package/dist/src/controllers/attention/index.js +20 -0
  290. package/dist/src/controllers/attention/index.js.map +1 -0
  291. package/dist/src/controllers/index.d.ts +15 -28
  292. package/dist/src/controllers/index.d.ts.map +1 -1
  293. package/dist/src/controllers/index.js +11 -19
  294. package/dist/src/controllers/index.js.map +1 -1
  295. package/dist/src/controllers/prerequisites.d.ts +76 -0
  296. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  297. package/dist/src/controllers/prerequisites.js +235 -0
  298. package/dist/src/controllers/prerequisites.js.map +1 -0
  299. package/dist/src/core/AgentDB.d.ts +33 -19
  300. package/dist/src/core/AgentDB.d.ts.map +1 -1
  301. package/dist/src/core/AgentDB.js +87 -127
  302. package/dist/src/core/AgentDB.js.map +1 -1
  303. package/dist/src/core/QueryCache.d.ts +138 -0
  304. package/dist/src/core/QueryCache.d.ts.map +1 -0
  305. package/dist/src/core/QueryCache.js +309 -0
  306. package/dist/src/core/QueryCache.js.map +1 -0
  307. package/dist/src/db-fallback.d.ts +52 -4
  308. package/dist/src/db-fallback.d.ts.map +1 -1
  309. package/dist/src/db-fallback.js +521 -71
  310. package/dist/src/db-fallback.js.map +1 -1
  311. package/dist/src/db-unified.d.ts.map +1 -1
  312. package/dist/src/db-unified.js +32 -30
  313. package/dist/src/db-unified.js.map +1 -1
  314. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts +58 -0
  315. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts.map +1 -0
  316. package/dist/src/embedding/EmbeddingSpaceIdentity.js +137 -0
  317. package/dist/src/embedding/EmbeddingSpaceIdentity.js.map +1 -0
  318. package/dist/src/embedding/index.d.ts +3 -0
  319. package/dist/src/embedding/index.d.ts.map +1 -0
  320. package/dist/src/embedding/index.js +2 -0
  321. package/dist/src/embedding/index.js.map +1 -0
  322. package/dist/src/examples/quic-sync-example.js +2 -2
  323. package/dist/src/examples/quic-sync-example.js.map +1 -1
  324. package/dist/src/governance/MetaHarnessGateway.d.ts +55 -0
  325. package/dist/src/governance/MetaHarnessGateway.d.ts.map +1 -0
  326. package/dist/src/governance/MetaHarnessGateway.js +65 -0
  327. package/dist/src/governance/MetaHarnessGateway.js.map +1 -0
  328. package/dist/src/governance/RvfExperimentBranch.d.ts +65 -0
  329. package/dist/src/governance/RvfExperimentBranch.d.ts.map +1 -0
  330. package/dist/src/governance/RvfExperimentBranch.js +115 -0
  331. package/dist/src/governance/RvfExperimentBranch.js.map +1 -0
  332. package/dist/src/index.d.ts +20 -16
  333. package/dist/src/index.d.ts.map +1 -1
  334. package/dist/src/index.js +44 -12
  335. package/dist/src/index.js.map +1 -1
  336. package/dist/src/mcp/agentdb-mcp-server.js +318 -16
  337. package/dist/src/mcp/agentdb-mcp-server.js.map +1 -1
  338. package/dist/src/mcp/reset-database.d.ts +15 -0
  339. package/dist/src/mcp/reset-database.d.ts.map +1 -0
  340. package/dist/src/mcp/reset-database.js +45 -0
  341. package/dist/src/mcp/reset-database.js.map +1 -0
  342. package/dist/src/model/ModelCacheLoader.d.ts +31 -0
  343. package/dist/src/model/ModelCacheLoader.d.ts.map +1 -0
  344. package/dist/src/model/ModelCacheLoader.js +209 -0
  345. package/dist/src/model/ModelCacheLoader.js.map +1 -0
  346. package/dist/src/observability/index.d.ts +8 -0
  347. package/dist/src/observability/index.d.ts.map +1 -0
  348. package/dist/src/observability/index.js +8 -0
  349. package/dist/src/observability/index.js.map +1 -0
  350. package/dist/src/observability/integration.d.ts +32 -0
  351. package/dist/src/observability/integration.d.ts.map +1 -0
  352. package/dist/src/observability/integration.js +159 -0
  353. package/dist/src/observability/integration.js.map +1 -0
  354. package/dist/src/observability/telemetry.d.ts +137 -0
  355. package/dist/src/observability/telemetry.d.ts.map +1 -0
  356. package/dist/src/observability/telemetry.js +424 -0
  357. package/dist/src/observability/telemetry.js.map +1 -0
  358. package/dist/src/optimizations/BatchOperations.d.ts +47 -0
  359. package/dist/src/optimizations/BatchOperations.d.ts.map +1 -1
  360. package/dist/src/optimizations/BatchOperations.js +189 -35
  361. package/dist/src/optimizations/BatchOperations.js.map +1 -1
  362. package/dist/src/optimizations/Quantization.d.ts +330 -0
  363. package/dist/src/optimizations/Quantization.d.ts.map +1 -0
  364. package/dist/src/optimizations/Quantization.js +793 -0
  365. package/dist/src/optimizations/Quantization.js.map +1 -0
  366. package/dist/src/optimizations/index.d.ts +1 -3
  367. package/dist/src/optimizations/index.d.ts.map +1 -1
  368. package/dist/src/optimizations/index.js +0 -1
  369. package/dist/src/optimizations/index.js.map +1 -1
  370. package/dist/src/quantization/index.d.ts +7 -0
  371. package/dist/src/quantization/index.d.ts.map +1 -0
  372. package/dist/src/quantization/index.js +15 -0
  373. package/dist/src/quantization/index.js.map +1 -0
  374. package/dist/src/quantization/vector-quantization.d.ts +388 -0
  375. package/dist/src/quantization/vector-quantization.d.ts.map +1 -0
  376. package/dist/src/quantization/vector-quantization.js +1132 -0
  377. package/dist/src/quantization/vector-quantization.js.map +1 -0
  378. package/dist/src/schemas/inline.d.ts +3 -0
  379. package/dist/src/schemas/inline.d.ts.map +1 -0
  380. package/dist/src/schemas/inline.js +10 -0
  381. package/dist/src/schemas/inline.js.map +1 -0
  382. package/dist/src/search/HybridSearch.d.ts +311 -0
  383. package/dist/src/search/HybridSearch.d.ts.map +1 -0
  384. package/dist/src/search/HybridSearch.js +713 -0
  385. package/dist/src/search/HybridSearch.js.map +1 -0
  386. package/dist/src/search/index.d.ts +12 -0
  387. package/dist/src/search/index.d.ts.map +1 -0
  388. package/dist/src/search/index.js +16 -0
  389. package/dist/src/search/index.js.map +1 -0
  390. package/dist/src/security/input-validation.d.ts +30 -0
  391. package/dist/src/security/input-validation.d.ts.map +1 -1
  392. package/dist/src/security/input-validation.js +77 -3
  393. package/dist/src/security/input-validation.js.map +1 -1
  394. package/dist/src/security/limits.d.ts.map +1 -1
  395. package/dist/src/security/limits.js +12 -3
  396. package/dist/src/security/limits.js.map +1 -1
  397. package/dist/src/security/mcp-policy.d.ts +17 -0
  398. package/dist/src/security/mcp-policy.d.ts.map +1 -0
  399. package/dist/src/security/mcp-policy.js +94 -0
  400. package/dist/src/security/mcp-policy.js.map +1 -0
  401. package/dist/src/security/path-security.d.ts.map +1 -1
  402. package/dist/src/security/path-security.js +3 -1
  403. package/dist/src/security/path-security.js.map +1 -1
  404. package/dist/src/security/validation.js +3 -3
  405. package/dist/src/security/validation.js.map +1 -1
  406. package/dist/src/services/AttentionService.d.ts +303 -0
  407. package/dist/src/services/AttentionService.d.ts.map +1 -0
  408. package/dist/src/services/AttentionService.js +1165 -0
  409. package/dist/src/services/AttentionService.js.map +1 -0
  410. package/dist/src/services/LLMRouter.d.ts +70 -8
  411. package/dist/src/services/LLMRouter.d.ts.map +1 -1
  412. package/dist/src/services/LLMRouter.js +279 -28
  413. package/dist/src/services/LLMRouter.js.map +1 -1
  414. package/dist/src/services/audit-logger.service.d.ts +168 -0
  415. package/dist/src/services/audit-logger.service.d.ts.map +1 -0
  416. package/dist/src/services/audit-logger.service.js +331 -0
  417. package/dist/src/services/audit-logger.service.js.map +1 -0
  418. package/dist/src/services/enhanced-embeddings.d.ts +271 -0
  419. package/dist/src/services/enhanced-embeddings.d.ts.map +1 -0
  420. package/dist/src/services/enhanced-embeddings.js +1036 -0
  421. package/dist/src/services/enhanced-embeddings.js.map +1 -0
  422. package/dist/src/services/federated-learning.d.ts +172 -0
  423. package/dist/src/services/federated-learning.d.ts.map +1 -0
  424. package/dist/src/services/federated-learning.js +344 -0
  425. package/dist/src/services/federated-learning.js.map +1 -0
  426. package/dist/src/simd/index.d.ts +9 -0
  427. package/dist/src/simd/index.d.ts.map +1 -0
  428. package/dist/src/simd/index.js +27 -0
  429. package/dist/src/simd/index.js.map +1 -0
  430. package/dist/src/simd/simd-vector-ops.d.ts +343 -0
  431. package/dist/src/simd/simd-vector-ops.d.ts.map +1 -0
  432. package/dist/src/simd/simd-vector-ops.js +1012 -0
  433. package/dist/src/simd/simd-vector-ops.js.map +1 -0
  434. package/dist/src/types/database.types.d.ts +275 -0
  435. package/dist/src/types/database.types.d.ts.map +1 -0
  436. package/dist/src/types/database.types.js +55 -0
  437. package/dist/src/types/database.types.js.map +1 -0
  438. package/dist/src/types/graph.d.ts +29 -0
  439. package/dist/src/types/graph.d.ts.map +1 -0
  440. package/dist/src/types/graph.js +8 -0
  441. package/dist/src/types/graph.js.map +1 -0
  442. package/dist/src/utils/chalk-fallback.d.ts +3 -0
  443. package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
  444. package/dist/src/utils/chalk-fallback.js +20 -0
  445. package/dist/src/utils/chalk-fallback.js.map +1 -0
  446. package/dist/src/utils/similarity.d.ts +11 -0
  447. package/dist/src/utils/similarity.d.ts.map +1 -0
  448. package/dist/src/utils/similarity.js +25 -0
  449. package/dist/src/utils/similarity.js.map +1 -0
  450. package/dist/src/utils/top-k.d.ts +44 -0
  451. package/dist/src/utils/top-k.d.ts.map +1 -0
  452. package/dist/src/utils/top-k.js +111 -0
  453. package/dist/src/utils/top-k.js.map +1 -0
  454. package/dist/src/wasm-loader.d.ts +66 -0
  455. package/dist/src/wasm-loader.d.ts.map +1 -0
  456. package/dist/src/wasm-loader.js +76 -0
  457. package/dist/src/wasm-loader.js.map +1 -0
  458. package/dist/src/wrappers/agentdb-fast.d.ts +140 -0
  459. package/dist/src/wrappers/agentdb-fast.d.ts.map +1 -0
  460. package/dist/src/wrappers/agentdb-fast.js +309 -0
  461. package/dist/src/wrappers/agentdb-fast.js.map +1 -0
  462. package/dist/src/wrappers/attention-fallbacks.d.ts +343 -0
  463. package/dist/src/wrappers/attention-fallbacks.d.ts.map +1 -0
  464. package/dist/src/wrappers/attention-fallbacks.js +1484 -0
  465. package/dist/src/wrappers/attention-fallbacks.js.map +1 -0
  466. package/dist/src/wrappers/attention-native.d.ts +111 -0
  467. package/dist/src/wrappers/attention-native.d.ts.map +1 -0
  468. package/dist/src/wrappers/attention-native.js +273 -0
  469. package/dist/src/wrappers/attention-native.js.map +1 -0
  470. package/dist/src/wrappers/embedding-service.d.ts +117 -0
  471. package/dist/src/wrappers/embedding-service.d.ts.map +1 -0
  472. package/dist/src/wrappers/embedding-service.js +370 -0
  473. package/dist/src/wrappers/embedding-service.js.map +1 -0
  474. package/dist/src/wrappers/gnn-wrapper.d.ts +71 -0
  475. package/dist/src/wrappers/gnn-wrapper.d.ts.map +1 -0
  476. package/dist/src/wrappers/gnn-wrapper.js +236 -0
  477. package/dist/src/wrappers/gnn-wrapper.js.map +1 -0
  478. package/dist/src/wrappers/index.d.ts +48 -0
  479. package/dist/src/wrappers/index.d.ts.map +1 -0
  480. package/dist/src/wrappers/index.js +83 -0
  481. package/dist/src/wrappers/index.js.map +1 -0
  482. package/package.json +130 -80
  483. package/scripts/postinstall.cjs +13 -144
  484. package/dist/agentdb.browser.js +0 -1685
  485. package/dist/agentdb.browser.js.map +0 -7
  486. package/dist/agentdb.browser.min.js +0 -3
  487. package/dist/agentdb.browser.min.js.map +0 -7
  488. package/dist/agentdb.wasm-loader.js +0 -207
  489. package/dist/backends/VectorBackend.d.ts +0 -120
  490. package/dist/backends/VectorBackend.js +0 -14
  491. package/dist/backends/VectorBackend.js.map +0 -1
  492. package/dist/optimizations/RVFOptimizer.d.ts +0 -225
  493. package/dist/optimizations/RVFOptimizer.js +0 -541
  494. package/dist/optimizations/RVFOptimizer.js.map +0 -1
  495. package/dist/simulation/cli.d.ts +0 -9
  496. package/dist/simulation/cli.d.ts.map +0 -1
  497. package/dist/simulation/cli.js +0 -68
  498. package/dist/simulation/cli.js.map +0 -1
  499. package/dist/simulation/runner.d.ts +0 -21
  500. package/dist/simulation/runner.d.ts.map +0 -1
  501. package/dist/simulation/runner.js +0 -241
  502. package/dist/simulation/runner.js.map +0 -1
  503. package/dist/simulation/scenarios/aidefence-integration.d.ts +0 -24
  504. package/dist/simulation/scenarios/aidefence-integration.d.ts.map +0 -1
  505. package/dist/simulation/scenarios/aidefence-integration.js +0 -124
  506. package/dist/simulation/scenarios/aidefence-integration.js.map +0 -1
  507. package/dist/simulation/scenarios/bmssp-integration.d.ts +0 -23
  508. package/dist/simulation/scenarios/bmssp-integration.d.ts.map +0 -1
  509. package/dist/simulation/scenarios/bmssp-integration.js +0 -104
  510. package/dist/simulation/scenarios/bmssp-integration.js.map +0 -1
  511. package/dist/simulation/scenarios/causal-reasoning.d.ts +0 -16
  512. package/dist/simulation/scenarios/causal-reasoning.d.ts.map +0 -1
  513. package/dist/simulation/scenarios/causal-reasoning.js +0 -108
  514. package/dist/simulation/scenarios/causal-reasoning.js.map +0 -1
  515. package/dist/simulation/scenarios/consciousness-explorer.d.ts +0 -25
  516. package/dist/simulation/scenarios/consciousness-explorer.d.ts.map +0 -1
  517. package/dist/simulation/scenarios/consciousness-explorer.js +0 -108
  518. package/dist/simulation/scenarios/consciousness-explorer.js.map +0 -1
  519. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts +0 -135
  520. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts.map +0 -1
  521. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js +0 -158
  522. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js.map +0 -1
  523. package/dist/simulation/scenarios/domain-examples/index.d.ts +0 -14
  524. package/dist/simulation/scenarios/domain-examples/index.d.ts.map +0 -1
  525. package/dist/simulation/scenarios/domain-examples/index.js +0 -14
  526. package/dist/simulation/scenarios/domain-examples/index.js.map +0 -1
  527. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts +0 -178
  528. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts.map +0 -1
  529. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js +0 -218
  530. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js.map +0 -1
  531. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts +0 -122
  532. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts.map +0 -1
  533. package/dist/simulation/scenarios/domain-examples/medical-imaging.js +0 -129
  534. package/dist/simulation/scenarios/domain-examples/medical-imaging.js.map +0 -1
  535. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts +0 -166
  536. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts.map +0 -1
  537. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js +0 -161
  538. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js.map +0 -1
  539. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts +0 -151
  540. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts.map +0 -1
  541. package/dist/simulation/scenarios/domain-examples/scientific-research.js +0 -187
  542. package/dist/simulation/scenarios/domain-examples/scientific-research.js.map +0 -1
  543. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts +0 -102
  544. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts.map +0 -1
  545. package/dist/simulation/scenarios/domain-examples/trading-systems.js +0 -100
  546. package/dist/simulation/scenarios/domain-examples/trading-systems.js.map +0 -1
  547. package/dist/simulation/scenarios/goalie-integration.d.ts +0 -24
  548. package/dist/simulation/scenarios/goalie-integration.d.ts.map +0 -1
  549. package/dist/simulation/scenarios/goalie-integration.js +0 -121
  550. package/dist/simulation/scenarios/goalie-integration.js.map +0 -1
  551. package/dist/simulation/scenarios/graph-traversal.d.ts +0 -17
  552. package/dist/simulation/scenarios/graph-traversal.d.ts.map +0 -1
  553. package/dist/simulation/scenarios/graph-traversal.js +0 -101
  554. package/dist/simulation/scenarios/graph-traversal.js.map +0 -1
  555. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts +0 -45
  556. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts.map +0 -1
  557. package/dist/simulation/scenarios/latent-space/attention-analysis.js +0 -435
  558. package/dist/simulation/scenarios/latent-space/attention-analysis.js.map +0 -1
  559. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts +0 -55
  560. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts.map +0 -1
  561. package/dist/simulation/scenarios/latent-space/clustering-analysis.js +0 -606
  562. package/dist/simulation/scenarios/latent-space/clustering-analysis.js.map +0 -1
  563. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts +0 -74
  564. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts.map +0 -1
  565. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js +0 -391
  566. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js.map +0 -1
  567. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts +0 -51
  568. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts.map +0 -1
  569. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js +0 -536
  570. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js.map +0 -1
  571. package/dist/simulation/scenarios/latent-space/index.d.ts +0 -35
  572. package/dist/simulation/scenarios/latent-space/index.d.ts.map +0 -1
  573. package/dist/simulation/scenarios/latent-space/index.js +0 -35
  574. package/dist/simulation/scenarios/latent-space/index.js.map +0 -1
  575. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts +0 -52
  576. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts.map +0 -1
  577. package/dist/simulation/scenarios/latent-space/neural-augmentation.js +0 -472
  578. package/dist/simulation/scenarios/latent-space/neural-augmentation.js.map +0 -1
  579. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts +0 -53
  580. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts.map +0 -1
  581. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js +0 -391
  582. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js.map +0 -1
  583. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts +0 -52
  584. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts.map +0 -1
  585. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js +0 -514
  586. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js.map +0 -1
  587. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts +0 -53
  588. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts.map +0 -1
  589. package/dist/simulation/scenarios/latent-space/traversal-optimization.js +0 -595
  590. package/dist/simulation/scenarios/latent-space/traversal-optimization.js.map +0 -1
  591. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts +0 -18
  592. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts.map +0 -1
  593. package/dist/simulation/scenarios/lean-agentic-swarm.js +0 -132
  594. package/dist/simulation/scenarios/lean-agentic-swarm.js.map +0 -1
  595. package/dist/simulation/scenarios/multi-agent-swarm.d.ts +0 -17
  596. package/dist/simulation/scenarios/multi-agent-swarm.d.ts.map +0 -1
  597. package/dist/simulation/scenarios/multi-agent-swarm.js +0 -111
  598. package/dist/simulation/scenarios/multi-agent-swarm.js.map +0 -1
  599. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts +0 -23
  600. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts.map +0 -1
  601. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js +0 -98
  602. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js.map +0 -1
  603. package/dist/simulation/scenarios/reflexion-learning.d.ts +0 -16
  604. package/dist/simulation/scenarios/reflexion-learning.d.ts.map +0 -1
  605. package/dist/simulation/scenarios/reflexion-learning.js +0 -98
  606. package/dist/simulation/scenarios/reflexion-learning.js.map +0 -1
  607. package/dist/simulation/scenarios/research-swarm.d.ts +0 -24
  608. package/dist/simulation/scenarios/research-swarm.d.ts.map +0 -1
  609. package/dist/simulation/scenarios/research-swarm.js +0 -146
  610. package/dist/simulation/scenarios/research-swarm.js.map +0 -1
  611. package/dist/simulation/scenarios/skill-evolution.d.ts +0 -16
  612. package/dist/simulation/scenarios/skill-evolution.d.ts.map +0 -1
  613. package/dist/simulation/scenarios/skill-evolution.js +0 -109
  614. package/dist/simulation/scenarios/skill-evolution.js.map +0 -1
  615. package/dist/simulation/scenarios/stock-market-emergence.d.ts +0 -33
  616. package/dist/simulation/scenarios/stock-market-emergence.d.ts.map +0 -1
  617. package/dist/simulation/scenarios/stock-market-emergence.js +0 -246
  618. package/dist/simulation/scenarios/stock-market-emergence.js.map +0 -1
  619. package/dist/simulation/scenarios/strange-loops.d.ts +0 -18
  620. package/dist/simulation/scenarios/strange-loops.d.ts.map +0 -1
  621. package/dist/simulation/scenarios/strange-loops.js +0 -133
  622. package/dist/simulation/scenarios/strange-loops.js.map +0 -1
  623. package/dist/simulation/scenarios/sublinear-solver.d.ts +0 -22
  624. package/dist/simulation/scenarios/sublinear-solver.d.ts.map +0 -1
  625. package/dist/simulation/scenarios/sublinear-solver.js +0 -82
  626. package/dist/simulation/scenarios/sublinear-solver.js.map +0 -1
  627. package/dist/simulation/scenarios/temporal-lead-solver.d.ts +0 -23
  628. package/dist/simulation/scenarios/temporal-lead-solver.d.ts.map +0 -1
  629. package/dist/simulation/scenarios/temporal-lead-solver.js +0 -90
  630. package/dist/simulation/scenarios/temporal-lead-solver.js.map +0 -1
  631. package/dist/simulation/scenarios/voting-system-consensus.d.ts +0 -27
  632. package/dist/simulation/scenarios/voting-system-consensus.d.ts.map +0 -1
  633. package/dist/simulation/scenarios/voting-system-consensus.js +0 -175
  634. package/dist/simulation/scenarios/voting-system-consensus.js.map +0 -1
  635. package/dist/simulation/types.d.ts +0 -162
  636. package/dist/simulation/types.d.ts.map +0 -1
  637. package/dist/simulation/types.js +0 -5
  638. package/dist/simulation/types.js.map +0 -1
  639. package/dist/simulation/utils/PerformanceOptimizer.d.ts +0 -115
  640. package/dist/simulation/utils/PerformanceOptimizer.d.ts.map +0 -1
  641. package/dist/simulation/utils/PerformanceOptimizer.js +0 -223
  642. package/dist/simulation/utils/PerformanceOptimizer.js.map +0 -1
  643. package/dist/src/backends/index.cjs +0 -6
  644. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts +0 -93
  645. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts.map +0 -1
  646. package/dist/src/backends/ruvector/GuardedVectorBackend.js +0 -182
  647. package/dist/src/backends/ruvector/GuardedVectorBackend.js.map +0 -1
  648. package/dist/src/consensus/RaftConsensus.d.ts +0 -220
  649. package/dist/src/consensus/RaftConsensus.d.ts.map +0 -1
  650. package/dist/src/consensus/RaftConsensus.js +0 -762
  651. package/dist/src/consensus/RaftConsensus.js.map +0 -1
  652. package/dist/src/controllers/HierarchicalMemory.d.ts +0 -197
  653. package/dist/src/controllers/HierarchicalMemory.d.ts.map +0 -1
  654. package/dist/src/controllers/HierarchicalMemory.js +0 -519
  655. package/dist/src/controllers/HierarchicalMemory.js.map +0 -1
  656. package/dist/src/controllers/MemoryConsolidation.d.ts +0 -142
  657. package/dist/src/controllers/MemoryConsolidation.d.ts.map +0 -1
  658. package/dist/src/controllers/MemoryConsolidation.js +0 -479
  659. package/dist/src/controllers/MemoryConsolidation.js.map +0 -1
  660. package/dist/src/controllers/QUICConnection.d.ts +0 -122
  661. package/dist/src/controllers/QUICConnection.d.ts.map +0 -1
  662. package/dist/src/controllers/QUICConnection.js +0 -329
  663. package/dist/src/controllers/QUICConnection.js.map +0 -1
  664. package/dist/src/controllers/QUICConnectionPool.d.ts +0 -83
  665. package/dist/src/controllers/QUICConnectionPool.d.ts.map +0 -1
  666. package/dist/src/controllers/QUICConnectionPool.js +0 -256
  667. package/dist/src/controllers/QUICConnectionPool.js.map +0 -1
  668. package/dist/src/controllers/QUICStreamManager.d.ts +0 -114
  669. package/dist/src/controllers/QUICStreamManager.d.ts.map +0 -1
  670. package/dist/src/controllers/QUICStreamManager.js +0 -267
  671. package/dist/src/controllers/QUICStreamManager.js.map +0 -1
  672. package/dist/src/controllers/StreamingEmbeddingService.d.ts +0 -82
  673. package/dist/src/controllers/StreamingEmbeddingService.d.ts.map +0 -1
  674. package/dist/src/controllers/StreamingEmbeddingService.js +0 -243
  675. package/dist/src/controllers/StreamingEmbeddingService.js.map +0 -1
  676. package/dist/src/controllers/index.cjs +0 -6
  677. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  678. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  679. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  680. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  681. package/dist/src/coordination/index.d.ts +0 -10
  682. package/dist/src/coordination/index.d.ts.map +0 -1
  683. package/dist/src/coordination/index.js +0 -10
  684. package/dist/src/coordination/index.js.map +0 -1
  685. package/dist/src/index.cjs +0 -6
  686. package/dist/src/optimizations/RVFOptimizer.d.ts +0 -226
  687. package/dist/src/optimizations/RVFOptimizer.d.ts.map +0 -1
  688. package/dist/src/optimizations/RVFOptimizer.js +0 -541
  689. package/dist/src/optimizations/RVFOptimizer.js.map +0 -1
  690. package/dist/src/security/AttestationLog.d.ts +0 -70
  691. package/dist/src/security/AttestationLog.d.ts.map +0 -1
  692. package/dist/src/security/AttestationLog.js +0 -174
  693. package/dist/src/security/AttestationLog.js.map +0 -1
  694. package/dist/src/security/MutationGuard.d.ts +0 -83
  695. package/dist/src/security/MutationGuard.d.ts.map +0 -1
  696. package/dist/src/security/MutationGuard.js +0 -364
  697. package/dist/src/security/MutationGuard.js.map +0 -1
  698. package/dist/src/security/index.cjs +0 -6
  699. package/dist/src/security/index.d.ts +0 -15
  700. package/dist/src/security/index.d.ts.map +0 -1
  701. package/dist/src/security/index.js +0 -18
  702. package/dist/src/security/index.js.map +0 -1
  703. package/dist/src/services/GNNService.d.ts +0 -172
  704. package/dist/src/services/GNNService.d.ts.map +0 -1
  705. package/dist/src/services/GNNService.js +0 -612
  706. package/dist/src/services/GNNService.js.map +0 -1
  707. package/dist/src/services/GraphTransformerService.d.ts +0 -80
  708. package/dist/src/services/GraphTransformerService.d.ts.map +0 -1
  709. package/dist/src/services/GraphTransformerService.js +0 -369
  710. package/dist/src/services/GraphTransformerService.js.map +0 -1
  711. package/dist/src/services/SemanticRouter.d.ts +0 -83
  712. package/dist/src/services/SemanticRouter.d.ts.map +0 -1
  713. package/dist/src/services/SemanticRouter.js +0 -160
  714. package/dist/src/services/SemanticRouter.js.map +0 -1
  715. package/dist/src/services/SonaTrajectoryService.d.ts +0 -224
  716. package/dist/src/services/SonaTrajectoryService.d.ts.map +0 -1
  717. package/dist/src/services/SonaTrajectoryService.js +0 -539
  718. package/dist/src/services/SonaTrajectoryService.js.map +0 -1
  719. package/dist/src/utils/LegacyAttentionAdapter.d.ts +0 -93
  720. package/dist/src/utils/LegacyAttentionAdapter.d.ts.map +0 -1
  721. package/dist/src/utils/LegacyAttentionAdapter.js +0 -241
  722. package/dist/src/utils/LegacyAttentionAdapter.js.map +0 -1
  723. package/dist/src/utils/vector-math.d.ts +0 -29
  724. package/dist/src/utils/vector-math.d.ts.map +0 -1
  725. package/dist/src/utils/vector-math.js +0 -66
  726. package/dist/src/utils/vector-math.js.map +0 -1
@@ -0,0 +1,612 @@
1
+ import { RvfBackend } from './RvfBackend.js';
2
+ import { IndexHealthMonitor } from './AdaptiveIndexTuner.js';
3
+ const EF_ARMS = [50, 100, 200, 400];
4
+ const DEFAULT_EF = 100;
5
+ const RECENT_CAP = 200;
6
+ const MAX_SAMPLES = 1000;
7
+ const FREQ_PRUNE_INTERVAL = 50;
8
+ const FREQ_PRUNE_THRESHOLD = 0.001;
9
+ export class SelfLearningRvfBackend {
10
+ name = 'rvf';
11
+ backend;
12
+ sona = null;
13
+ router = null;
14
+ compressor = null;
15
+ healthMonitor = new IndexHealthMonitor();
16
+ trainer = null;
17
+ federated = null;
18
+ solver = null;
19
+ accelerator = null;
20
+ config;
21
+ dim;
22
+ learningEnabled;
23
+ useAdaptiveEf = true;
24
+ activeTrajectories = new Map();
25
+ trajectoryCounter = 0;
26
+ sampleBuffer = [];
27
+ recentSearches = [];
28
+ accessFrequency = new Map();
29
+ totalSearches = 0;
30
+ activeSessions = new Map();
31
+ tickMutex = false;
32
+ _tickCount = 0;
33
+ _searchesEnhanced = 0;
34
+ _trajectoriesRecorded = 0;
35
+ _contrastiveSamples = 0;
36
+ _contrastiveBatches = 0;
37
+ _solverTrainCount = 0;
38
+ _destroyed = false;
39
+ _simBuf = new Float32Array(0);
40
+ _lastManifest = null;
41
+ _learningRate = 1.0;
42
+ constructor(backend, config) {
43
+ this.backend = backend;
44
+ this.config = config;
45
+ this.dim = config.dimension ?? config.dimensions ?? 128;
46
+ this.learningEnabled = config.learning !== false;
47
+ }
48
+ static async create(config) {
49
+ const backend = new RvfBackend(config);
50
+ await backend.initialize();
51
+ const instance = new SelfLearningRvfBackend(backend, config);
52
+ if (instance.learningEnabled)
53
+ await instance.initComponents();
54
+ return instance;
55
+ }
56
+ // ─── Async VectorBackendAsync ───
57
+ /** ADR-010 Phase 7: Append a mutation event to the solver witness chain via training */
58
+ recordMutationWitness(operation) {
59
+ if (!this.solver)
60
+ return;
61
+ // Each train call extends the SHAKE-256 witness chain
62
+ // Use operation hash as seed for deterministic witnessing
63
+ const seed = Array.from(operation).reduce((h, c) => ((h << 5) - h + c.charCodeAt(0)) | 0, 0);
64
+ try {
65
+ this.solver.train({ count: 1, minDifficulty: 1, maxDifficulty: 1, seed: Math.abs(seed) });
66
+ }
67
+ catch { /* non-blocking */ }
68
+ }
69
+ async insertAsync(id, embedding, metadata) {
70
+ this.ensureAlive();
71
+ const start = performance.now();
72
+ await this.backend.insertAsync(id, embedding, metadata);
73
+ this.recordMutationWitness(`insert:${id}`);
74
+ if (this.learningEnabled) {
75
+ this.accessFrequency.set(id, 1.0);
76
+ if (this.compressor)
77
+ this.compressor.compress(id, embedding, 1.0);
78
+ }
79
+ this.healthMonitor.recordInsert(performance.now() - start);
80
+ }
81
+ async insertBatchAsync(items) {
82
+ this.ensureAlive();
83
+ const start = performance.now();
84
+ await this.backend.insertBatchAsync(items);
85
+ if (this.learningEnabled) {
86
+ for (const item of items) {
87
+ this.accessFrequency.set(item.id, 1.0);
88
+ if (this.compressor)
89
+ this.compressor.compress(item.id, item.embedding, 1.0);
90
+ }
91
+ }
92
+ this.healthMonitor.recordInsert((performance.now() - start) / Math.max(1, items.length));
93
+ }
94
+ async searchAsync(query, k, options) {
95
+ this.ensureAlive();
96
+ if (options?.feedbackId !== undefined && this.activeTrajectories.has(options.feedbackId)) {
97
+ throw new Error(`searchAsync: feedbackId "${options.feedbackId}" is already outstanding — ` +
98
+ `call recordFeedback() for it before reusing, or pick a unique id`);
99
+ }
100
+ const start = performance.now();
101
+ let enhanced = query, route, trajId, ef = options?.efSearch;
102
+ if (this.learningEnabled) {
103
+ if (this.router) {
104
+ const matches = this.router.route(query, 3);
105
+ if (matches.length > 0) {
106
+ route = matches[0].intent;
107
+ if (!ef)
108
+ ef = this.selectEf(matches);
109
+ }
110
+ }
111
+ if (this.sona) {
112
+ try {
113
+ enhanced = this.sona.enhance(query);
114
+ this._searchesEnhanced++;
115
+ }
116
+ catch {
117
+ enhanced = query;
118
+ }
119
+ try {
120
+ trajId = this.sona.beginTrajectory(enhanced);
121
+ if (route)
122
+ this.sona.setRoute(trajId, route);
123
+ // ADR-007 Phase 1: enrich trajectory with context metadata
124
+ this.sona.addContext(trajId, {
125
+ queryType: route ?? 'unknown',
126
+ intent: route,
127
+ timestamp: Date.now(),
128
+ searchK: k,
129
+ }).catch(() => { });
130
+ }
131
+ catch { /* skip */ }
132
+ }
133
+ // Fixes #14 (3/3): apply the trained contrastive projection to
134
+ // retrieval — previously trainBatch() updated `weights`/`bias` but
135
+ // nothing in the search path ever called trainer.project(), so
136
+ // trained weights had zero effect on ranking. Only apply once at
137
+ // least one batch has trained (an untrained projection is
138
+ // identity + small noise, which would just add noise to cold-start
139
+ // queries).
140
+ if (this.trainer) {
141
+ try {
142
+ if (this.trainer.getStats().totalBatches > 0)
143
+ enhanced = this.trainer.project(enhanced);
144
+ }
145
+ catch { /* skip */ }
146
+ }
147
+ }
148
+ const results = await this.backend.searchAsync(enhanced, k, ef ? { ...options, efSearch: ef } : options);
149
+ this.healthMonitor.recordSearch(performance.now() - start);
150
+ if (this.learningEnabled) {
151
+ this.totalSearches++;
152
+ const qCopy = new Float32Array(query), rCopy = [...results]; // single copy, shared below
153
+ for (const r of rCopy)
154
+ this.accessFrequency.set(r.id, Math.min(1, (this.accessFrequency.get(r.id) ?? 0) + 0.01));
155
+ if (this.recentSearches.length >= RECENT_CAP)
156
+ this.recentSearches.shift();
157
+ if (trajId !== undefined && this.sona && rCopy.length > 0) {
158
+ try {
159
+ if (this._simBuf.length < rCopy.length)
160
+ this._simBuf = new Float32Array(rCopy.length);
161
+ for (let i = 0; i < rCopy.length; i++)
162
+ this._simBuf[i] = rCopy[i].similarity;
163
+ this.sona.addStep(trajId, this._simBuf.subarray(0, rCopy.length), rCopy[0].similarity);
164
+ }
165
+ catch { /* skip */ }
166
+ }
167
+ if (trajId !== undefined) {
168
+ // Fixes #14 (1/3): searchAsync previously generated this key
169
+ // internally and never surfaced it, so recordFeedback() was
170
+ // unreachable except by guessing the internal "q_N" format. Use the
171
+ // caller-supplied feedbackId when given so recordFeedback() actually
172
+ // works; keep the internal counter as a fallback for callers that
173
+ // don't need feedback correlation (matches prior behavior).
174
+ const qid = options?.feedbackId ?? `q_${this.trajectoryCounter++}`;
175
+ this.activeTrajectories.set(qid, { id: trajId, queryEmbedding: qCopy, results: rCopy, route, startedAt: Date.now() });
176
+ // Fixes #14 (2/3): tag the recentSearches entry with the same key so
177
+ // recordFeedback() can find and update its `quality` — previously
178
+ // `quality` was never written anywhere, so createSamples()'s search
179
+ // for low-quality negatives (`r.quality < negativeThreshold`) always
180
+ // matched zero entries and no contrastive sample was ever created.
181
+ this.recentSearches.push({ query: qCopy, results: rCopy, key: qid });
182
+ if (this.activeTrajectories.size > 500)
183
+ this.expireTrajectories();
184
+ }
185
+ else {
186
+ this.recentSearches.push({ query: qCopy, results: rCopy });
187
+ }
188
+ }
189
+ return results;
190
+ }
191
+ async removeAsync(id) {
192
+ this.ensureAlive();
193
+ const ok = await this.backend.removeAsync(id);
194
+ if (ok) {
195
+ this.recordMutationWitness(`remove:${id}`);
196
+ this.accessFrequency.delete(id);
197
+ if (this.compressor)
198
+ this.compressor.remove(id);
199
+ }
200
+ return ok;
201
+ }
202
+ async getStatsAsync() { return this.backend.getStatsAsync(); }
203
+ async flush() { return this.backend.flush(); }
204
+ // ─── Sync VectorBackend (delegation) ───
205
+ insert(id, embedding, metadata) {
206
+ this.backend.insert(id, embedding, metadata);
207
+ if (this.learningEnabled)
208
+ this.accessFrequency.set(id, 1.0);
209
+ }
210
+ insertBatch(items) { this.backend.insertBatch(items); }
211
+ search(query, k, options) { return this.backend.search(query, k, options); }
212
+ remove(id) { return this.backend.remove(id); }
213
+ getStats() { return this.backend.getStats(); }
214
+ async save(path) { return this.backend.save(path); }
215
+ async load(path) { return this.backend.load(path); }
216
+ close() { this.destroy(); }
217
+ // ─── Session lifecycle (Phase 4) ───
218
+ async beginSession(agentId) {
219
+ this.ensureAlive();
220
+ if (!this.federated)
221
+ return agentId;
222
+ this.activeSessions.set(agentId, await this.federated.beginSession(agentId));
223
+ return agentId;
224
+ }
225
+ async endSession(agentId, quality) {
226
+ this.ensureAlive();
227
+ const handle = this.activeSessions.get(agentId);
228
+ if (!handle)
229
+ return;
230
+ handle.end();
231
+ this.activeSessions.delete(agentId);
232
+ if (this.federated && Math.min(Math.max(0, quality), 1) > 0.5)
233
+ this.federated.activateAdapter('default');
234
+ }
235
+ // ─── Feedback (Phase 3) ───
236
+ recordFeedback(queryId, quality) {
237
+ this.ensureAlive();
238
+ const q = Math.min(Math.max(0, quality), 1);
239
+ const traj = this.activeTrajectories.get(queryId);
240
+ if (!traj)
241
+ return;
242
+ if (this.sona)
243
+ try {
244
+ this.sona.endTrajectory(traj.id, q);
245
+ }
246
+ catch { /* skip */ }
247
+ this.activeTrajectories.delete(queryId);
248
+ this._trajectoriesRecorded++;
249
+ // Fixes #14 (2/3): propagate the feedback quality onto the matching
250
+ // recentSearches entry (searched from most-recent, since a key can only
251
+ // be pushed once per outstanding trajectory) so createSamples() can find
252
+ // it later as a negative example when a *different* trajectory reports
253
+ // high-quality feedback.
254
+ for (let i = this.recentSearches.length - 1; i >= 0; i--) {
255
+ if (this.recentSearches[i].key === queryId) {
256
+ this.recentSearches[i].quality = q;
257
+ break;
258
+ }
259
+ }
260
+ if (this.trainer && traj.results.length > 0)
261
+ this.createSamples(traj, q);
262
+ for (const h of this.activeSessions.values())
263
+ try {
264
+ h.recordTrajectory(traj.queryEmbedding, q, traj.route);
265
+ }
266
+ catch { /* skip */ }
267
+ }
268
+ // ─── Learning control (Phase 5) ───
269
+ async tick() {
270
+ this.ensureAlive();
271
+ if (!this.learningEnabled || this.tickMutex)
272
+ return;
273
+ this.tickMutex = true;
274
+ try {
275
+ if (this.sona)
276
+ try {
277
+ this.sona.tick();
278
+ }
279
+ catch { /* skip */ }
280
+ const batchSize = this.config.trainingBatchSize ?? 32;
281
+ if (this.trainer && this.sampleBuffer.length >= batchSize) {
282
+ try {
283
+ this.trainer.trainBatch(this.sampleBuffer.splice(0, batchSize));
284
+ this._contrastiveBatches++;
285
+ }
286
+ catch { /* skip */ }
287
+ }
288
+ if (this.solver) {
289
+ try {
290
+ this.solver.train({ count: this.config.solverTrainCount ?? 50, minDifficulty: this.config.solverMinDifficulty ?? 1, maxDifficulty: this.config.solverMaxDifficulty ?? 5 });
291
+ this._solverTrainCount++;
292
+ }
293
+ catch { /* skip */ }
294
+ }
295
+ if (this.compressor && this.totalSearches > 0) {
296
+ for (const [id, freq] of this.accessFrequency) {
297
+ const d = freq * 0.99;
298
+ this.accessFrequency.set(id, d);
299
+ try {
300
+ this.compressor.updateFrequency(id, d);
301
+ }
302
+ catch { /* skip */ }
303
+ }
304
+ }
305
+ if (this._tickCount > 0 && this._tickCount % FREQ_PRUNE_INTERVAL === 0) {
306
+ for (const [id, f] of this.accessFrequency) {
307
+ if (f < FREQ_PRUNE_THRESHOLD)
308
+ this.accessFrequency.delete(id);
309
+ }
310
+ }
311
+ try {
312
+ this.healthMonitor.assess(this.backend.indexStats());
313
+ }
314
+ catch { /* skip */ }
315
+ if (this.federated)
316
+ try {
317
+ this.federated.consolidate();
318
+ }
319
+ catch { /* skip */ }
320
+ this._tickCount++;
321
+ const interval = this.config.acceptanceIntervalTicks ?? 100;
322
+ if (this.solver && this._tickCount % interval === 0 && this._tickCount > 0)
323
+ this.runAcceptanceCheck();
324
+ }
325
+ finally {
326
+ this.tickMutex = false;
327
+ }
328
+ }
329
+ async forceLearn() {
330
+ this.ensureAlive();
331
+ if (this.sona)
332
+ try {
333
+ this.sona.forceLearn();
334
+ }
335
+ catch { /* skip */ }
336
+ if (this.trainer && this.sampleBuffer.length > 0) {
337
+ try {
338
+ this.trainer.trainBatch(this.sampleBuffer.splice(0));
339
+ this._contrastiveBatches++;
340
+ }
341
+ catch { /* skip */ }
342
+ }
343
+ if (this.solver) {
344
+ try {
345
+ this.solver.train({ count: this.config.solverTrainCount ?? 50 });
346
+ this._solverTrainCount++;
347
+ }
348
+ catch { /* skip */ }
349
+ }
350
+ }
351
+ // ─── Solver API ───
352
+ getSolverPolicy() { if (!this.solver)
353
+ return null; try {
354
+ return this.solver.policy();
355
+ }
356
+ catch {
357
+ return null;
358
+ } }
359
+ runAcceptance(options) { if (!this.solver)
360
+ return null; try {
361
+ return this.solver.acceptance(options);
362
+ }
363
+ catch {
364
+ return null;
365
+ } }
366
+ getWitnessChain() { if (!this.solver)
367
+ return null; try {
368
+ return this.solver.witnessChain();
369
+ }
370
+ catch {
371
+ return null;
372
+ } }
373
+ /**
374
+ * Verify the witness chain using native WASM verification (ADR-007 Phase 1).
375
+ * Falls back to structural check if @ruvector/rvf-wasm is unavailable.
376
+ */
377
+ verifyWitnessChain() {
378
+ const chain = this.getWitnessChain();
379
+ if (!chain)
380
+ return null;
381
+ if (this.accelerator)
382
+ return this.accelerator.verifyWitnessChain(chain);
383
+ return { valid: chain.length > 0 && chain.length % 73 === 0, entryCount: Math.floor(chain.length / 73) };
384
+ }
385
+ /** Get the native accelerator (ADR-007) */
386
+ getAccelerator() { return this.accelerator; }
387
+ /** Get accelerator stats (ADR-007) */
388
+ getAcceleratorStats() { return this.accelerator?.getStats() ?? null; }
389
+ // ─── Stats & accessors ───
390
+ getLearningStats() {
391
+ const lastModeC = this._lastManifest?.modeC;
392
+ const lastCycle = lastModeC?.cycles?.at(-1);
393
+ return {
394
+ searchesEnhanced: this._searchesEnhanced, trajectoriesRecorded: this._trajectoriesRecorded,
395
+ contrastiveSamples: this._contrastiveSamples, contrastiveBatches: this._contrastiveBatches,
396
+ tickCount: this._tickCount, solverTrainCount: this._solverTrainCount, useAdaptiveEf: this.useAdaptiveEf,
397
+ activeSessionCount: this.activeSessions.size, compressionEntries: this.compressor?.size ?? 0,
398
+ // v0.1.6 fields (ADR-010)
399
+ noiseAccuracy: lastCycle?.noiseAccuracy ?? 0,
400
+ violations: lastModeC?.cycles?.reduce((s, c) => s + c.violations, 0) ?? 0,
401
+ patternsDistilled: lastCycle?.patternsLearned ?? 0,
402
+ dimensionsImproved: lastModeC?.dimensionsImproved ?? 0,
403
+ };
404
+ }
405
+ getBackend() { return this.backend; }
406
+ get isLearningEnabled() { return this.learningEnabled; }
407
+ get isAdaptiveEf() { return this.useAdaptiveEf; }
408
+ get isDestroyed() { return this._destroyed; }
409
+ /**
410
+ * Persist router state on demand (ADR-007 Phase 1).
411
+ */
412
+ async persistRouter() {
413
+ if (this.router) {
414
+ try {
415
+ return await this.router.persist();
416
+ }
417
+ catch { /* skip */ }
418
+ }
419
+ return false;
420
+ }
421
+ destroy() {
422
+ if (this._destroyed)
423
+ return;
424
+ this._destroyed = true;
425
+ // ADR-007 Phase 1: persist router state on graceful shutdown (fire-and-forget)
426
+ if (this.router) {
427
+ this.router.persist().catch(() => { });
428
+ }
429
+ for (const [id, h] of this.activeSessions) {
430
+ try {
431
+ h.end();
432
+ }
433
+ catch { /* skip */ }
434
+ this.activeSessions.delete(id);
435
+ }
436
+ for (const [, t] of this.activeTrajectories) {
437
+ if (this.sona)
438
+ try {
439
+ this.sona.endTrajectory(t.id, 0.5);
440
+ }
441
+ catch { /* skip */ }
442
+ }
443
+ this.activeTrajectories.clear();
444
+ this.accelerator = null;
445
+ for (const c of [this.solver, this.federated, this.trainer, this.compressor, this.router, this.sona]) {
446
+ if (c)
447
+ try {
448
+ c.destroy();
449
+ }
450
+ catch { /* skip */ }
451
+ }
452
+ this.backend.close();
453
+ this.sampleBuffer = [];
454
+ this.recentSearches = [];
455
+ this.accessFrequency.clear();
456
+ this._simBuf = new Float32Array(0);
457
+ }
458
+ // ─── Private ───
459
+ async initComponents() {
460
+ const dim = this.dim;
461
+ try {
462
+ const { NativeAccelerator: N } = await import('./NativeAccelerator.js');
463
+ this.accelerator = new N();
464
+ await this.accelerator.initialize();
465
+ }
466
+ catch { /* skip */ }
467
+ try {
468
+ const { SonaLearningBackend: S } = await import('./SonaLearningBackend.js');
469
+ if (await S.isAvailable())
470
+ this.sona = await S.create({ hiddenDim: this.config.learningDimension ?? dim });
471
+ }
472
+ catch { /* skip */ }
473
+ try {
474
+ const { SemanticQueryRouter: R } = await import('./SemanticQueryRouter.js');
475
+ this.router = await R.create({ dimension: dim, persistencePath: this.config.routerPersistencePath });
476
+ }
477
+ catch { /* skip */ }
478
+ try {
479
+ const { TemporalCompressor: T } = await import('./AdaptiveIndexTuner.js');
480
+ this.compressor = await T.create();
481
+ }
482
+ catch { /* skip */ }
483
+ try {
484
+ const { ContrastiveTrainer: C } = await import('./ContrastiveTrainer.js');
485
+ this.trainer = await C.create({ dimension: dim });
486
+ }
487
+ catch { /* skip */ }
488
+ if (this.config.federated) {
489
+ try {
490
+ const { FederatedSessionManager: F } = await import('./FederatedSessionManager.js');
491
+ if (await F.isAvailable())
492
+ this.federated = await F.create({ dimension: dim });
493
+ }
494
+ catch { /* skip */ }
495
+ }
496
+ try {
497
+ const { AgentDBSolver: A } = await import('./RvfSolver.js');
498
+ if (await A.isAvailable())
499
+ this.solver = await A.create();
500
+ }
501
+ catch { /* skip */ }
502
+ }
503
+ selectEf(matches) {
504
+ if (this.solver && this.useAdaptiveEf) {
505
+ try {
506
+ const policy = this.solver.policy();
507
+ if (policy) {
508
+ const rk = matches[0].score > 0.7 ? 'narrow' : matches[0].score > 0.4 ? 'medium' : 'wide';
509
+ const cs = policy.contextStats[rk];
510
+ if (cs) {
511
+ let best = DEFAULT_EF, bestS = -Infinity;
512
+ for (const [k, s] of Object.entries(cs)) {
513
+ if (s.attempts > 0) {
514
+ const sc = s.successes / s.attempts - s.costEma * 0.01;
515
+ if (sc > bestS) {
516
+ bestS = sc;
517
+ best = parseInt(k, 10) || DEFAULT_EF;
518
+ }
519
+ }
520
+ }
521
+ return this.nearestEf(best);
522
+ }
523
+ }
524
+ }
525
+ catch { /* heuristic fallback */ }
526
+ }
527
+ if (matches.length > 0) {
528
+ const s = matches[0].score;
529
+ if (s > 0.8)
530
+ return 50;
531
+ if (s > 0.5)
532
+ return 100;
533
+ if (s > 0.2)
534
+ return 200;
535
+ return 400;
536
+ }
537
+ return DEFAULT_EF;
538
+ }
539
+ nearestEf(v) {
540
+ let best = EF_ARMS[0], bd = Math.abs(v - best);
541
+ for (let i = 1; i < EF_ARMS.length; i++) {
542
+ const d = Math.abs(v - EF_ARMS[i]);
543
+ if (d < bd) {
544
+ best = EF_ARMS[i];
545
+ bd = d;
546
+ }
547
+ }
548
+ return best;
549
+ }
550
+ createSamples(traj, quality) {
551
+ if (quality < (this.config.positiveThreshold ?? 0.7) || traj.results.length < 2 || this.sampleBuffer.length >= MAX_SAMPLES)
552
+ return;
553
+ const negs = [];
554
+ for (const r of this.recentSearches) {
555
+ if (r.quality !== undefined && r.quality < (this.config.negativeThreshold ?? 0.3) && r.results.length > 0) {
556
+ negs.push(new Float32Array(r.query));
557
+ if (negs.length >= 4)
558
+ break;
559
+ }
560
+ }
561
+ if (negs.length > 0) {
562
+ const pos = new Float32Array(traj.queryEmbedding.length);
563
+ for (let i = 0; i < pos.length; i++)
564
+ pos[i] = traj.queryEmbedding[i] + (Math.random() - 0.5) * 0.05;
565
+ this.sampleBuffer.push({ anchor: traj.queryEmbedding, positive: pos, negatives: negs });
566
+ this._contrastiveSamples++;
567
+ }
568
+ }
569
+ expireTrajectories() {
570
+ const now = Date.now();
571
+ for (const [k, t] of this.activeTrajectories) {
572
+ if (now - t.startedAt > 60_000) {
573
+ if (this.sona)
574
+ try {
575
+ this.sona.endTrajectory(t.id, 0.5);
576
+ }
577
+ catch { /* skip */ }
578
+ this.activeTrajectories.delete(k);
579
+ }
580
+ }
581
+ }
582
+ runAcceptanceCheck() {
583
+ if (!this.solver)
584
+ return;
585
+ try {
586
+ const m = this.solver.acceptance({ cycles: 3, holdoutSize: this.config.acceptanceHoldoutSize ?? 30, trainingPerCycle: 100 });
587
+ this._lastManifest = m;
588
+ // Multi-dimensional regression detection (v0.1.6 ADR-010)
589
+ const modeC = m.modeC;
590
+ if (!modeC.accuracyMaintained) {
591
+ this.useAdaptiveEf = false;
592
+ }
593
+ if (!modeC.zeroViolations) {
594
+ this.useAdaptiveEf = false;
595
+ }
596
+ if (modeC.dimensionsImproved < 2) {
597
+ this._learningRate = Math.max(0.1, this._learningRate * 0.5);
598
+ }
599
+ if (modeC.robustnessImproved && modeC.costImproved) {
600
+ this._learningRate = Math.min(1.0, this._learningRate * 1.1);
601
+ }
602
+ // Legacy fallback: if new fields are all zero (old WASM), use original logic
603
+ if (!modeC.accuracyMaintained && !modeC.costImproved && !modeC.robustnessImproved && modeC.dimensionsImproved === 0) {
604
+ this.useAdaptiveEf = m.allPassed && modeC.finalAccuracy >= m.modeA.finalAccuracy;
605
+ }
606
+ }
607
+ catch { /* skip */ }
608
+ }
609
+ ensureAlive() { if (this._destroyed)
610
+ throw new Error('SelfLearningRvfBackend has been destroyed.'); }
611
+ }
612
+ //# sourceMappingURL=SelfLearningRvfBackend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelfLearningRvfBackend.js","sourceRoot":"","sources":["../../../../src/backends/rvf/SelfLearningRvfBackend.ts"],"names":[],"mappings":"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"}