agentdb 3.0.0-alpha.9 → 3.0.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 (718) 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/VectorBackend.d.ts +48 -6
  6. package/dist/src/backends/VectorBackend.d.ts.map +1 -1
  7. package/dist/src/backends/VectorBackend.js +13 -1
  8. package/dist/src/backends/VectorBackend.js.map +1 -1
  9. package/dist/src/backends/detector.js.map +1 -1
  10. package/dist/src/backends/factory.d.ts +16 -33
  11. package/dist/src/backends/factory.d.ts.map +1 -1
  12. package/dist/src/backends/factory.js +140 -110
  13. package/dist/src/backends/factory.js.map +1 -1
  14. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts +54 -6
  15. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts.map +1 -1
  16. package/dist/src/backends/graph/GraphDatabaseAdapter.js +143 -6
  17. package/dist/src/backends/graph/GraphDatabaseAdapter.js.map +1 -1
  18. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts.map +1 -1
  19. package/dist/src/backends/hnswlib/HNSWLibBackend.js +35 -8
  20. package/dist/src/backends/hnswlib/HNSWLibBackend.js.map +1 -1
  21. package/dist/src/backends/index.d.ts +2 -1
  22. package/dist/src/backends/index.d.ts.map +1 -1
  23. package/dist/src/backends/index.js +2 -0
  24. package/dist/src/backends/index.js.map +1 -1
  25. package/dist/src/backends/ruvector/RuVectorBackend.d.ts +256 -45
  26. package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
  27. package/dist/src/backends/ruvector/RuVectorBackend.js +764 -290
  28. package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
  29. package/dist/src/backends/ruvector/RuVectorLearning.d.ts +0 -4
  30. package/dist/src/backends/ruvector/RuVectorLearning.d.ts.map +1 -1
  31. package/dist/src/backends/ruvector/RuVectorLearning.js +0 -6
  32. package/dist/src/backends/ruvector/RuVectorLearning.js.map +1 -1
  33. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts +175 -0
  34. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts.map +1 -0
  35. package/dist/src/backends/rvf/AdaptiveIndexTuner.js +567 -0
  36. package/dist/src/backends/rvf/AdaptiveIndexTuner.js.map +1 -0
  37. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts +148 -0
  38. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts.map +1 -0
  39. package/dist/src/backends/rvf/ContrastiveTrainer.js +438 -0
  40. package/dist/src/backends/rvf/ContrastiveTrainer.js.map +1 -0
  41. package/dist/src/backends/rvf/FederatedSessionManager.d.ts +212 -0
  42. package/dist/src/backends/rvf/FederatedSessionManager.d.ts.map +1 -0
  43. package/dist/src/backends/rvf/FederatedSessionManager.js +397 -0
  44. package/dist/src/backends/rvf/FederatedSessionManager.js.map +1 -0
  45. package/dist/src/backends/rvf/FilterBuilder.d.ts +136 -0
  46. package/dist/src/backends/rvf/FilterBuilder.d.ts.map +1 -0
  47. package/dist/src/backends/rvf/FilterBuilder.js +157 -0
  48. package/dist/src/backends/rvf/FilterBuilder.js.map +1 -0
  49. package/dist/src/backends/rvf/NativeAccelerator.d.ts +158 -0
  50. package/dist/src/backends/rvf/NativeAccelerator.d.ts.map +1 -0
  51. package/dist/src/backends/rvf/NativeAccelerator.js +702 -0
  52. package/dist/src/backends/rvf/NativeAccelerator.js.map +1 -0
  53. package/dist/src/backends/rvf/RvfBackend.d.ts +207 -0
  54. package/dist/src/backends/rvf/RvfBackend.d.ts.map +1 -0
  55. package/dist/src/backends/rvf/RvfBackend.js +651 -0
  56. package/dist/src/backends/rvf/RvfBackend.js.map +1 -0
  57. package/dist/src/backends/rvf/RvfSolver.d.ts +175 -0
  58. package/dist/src/backends/rvf/RvfSolver.d.ts.map +1 -0
  59. package/dist/src/backends/rvf/RvfSolver.js +176 -0
  60. package/dist/src/backends/rvf/RvfSolver.js.map +1 -0
  61. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts +143 -0
  62. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts.map +1 -0
  63. package/dist/src/backends/rvf/SelfLearningRvfBackend.js +612 -0
  64. package/dist/src/backends/rvf/SelfLearningRvfBackend.js.map +1 -0
  65. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts +128 -0
  66. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts.map +1 -0
  67. package/dist/src/backends/rvf/SemanticQueryRouter.js +415 -0
  68. package/dist/src/backends/rvf/SemanticQueryRouter.js.map +1 -0
  69. package/dist/src/backends/rvf/SimdFallbacks.d.ts +25 -0
  70. package/dist/src/backends/rvf/SimdFallbacks.d.ts.map +1 -0
  71. package/dist/src/backends/rvf/SimdFallbacks.js +287 -0
  72. package/dist/src/backends/rvf/SimdFallbacks.js.map +1 -0
  73. package/dist/src/backends/rvf/SolverBandit.d.ts +100 -0
  74. package/dist/src/backends/rvf/SolverBandit.d.ts.map +1 -0
  75. package/dist/src/backends/rvf/SolverBandit.js +216 -0
  76. package/dist/src/backends/rvf/SolverBandit.js.map +1 -0
  77. package/dist/src/backends/rvf/SonaLearningBackend.d.ts +157 -0
  78. package/dist/src/backends/rvf/SonaLearningBackend.d.ts.map +1 -0
  79. package/dist/src/backends/rvf/SonaLearningBackend.js +283 -0
  80. package/dist/src/backends/rvf/SonaLearningBackend.js.map +1 -0
  81. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts +104 -0
  82. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts.map +1 -0
  83. package/dist/src/backends/rvf/SqlJsRvfBackend.js +464 -0
  84. package/dist/src/backends/rvf/SqlJsRvfBackend.js.map +1 -0
  85. package/dist/src/backends/rvf/WasmStoreBridge.d.ts +27 -0
  86. package/dist/src/backends/rvf/WasmStoreBridge.d.ts.map +1 -0
  87. package/dist/src/backends/rvf/WasmStoreBridge.js +87 -0
  88. package/dist/src/backends/rvf/WasmStoreBridge.js.map +1 -0
  89. package/dist/src/backends/rvf/validation.d.ts +20 -0
  90. package/dist/src/backends/rvf/validation.d.ts.map +1 -0
  91. package/dist/src/backends/rvf/validation.js +78 -0
  92. package/dist/src/backends/rvf/validation.js.map +1 -0
  93. package/dist/src/benchmark/BenchmarkSuite.d.ts +318 -0
  94. package/dist/src/benchmark/BenchmarkSuite.d.ts.map +1 -0
  95. package/dist/src/benchmark/BenchmarkSuite.js +984 -0
  96. package/dist/src/benchmark/BenchmarkSuite.js.map +1 -0
  97. package/dist/src/benchmark/index.d.ts +29 -0
  98. package/dist/src/benchmark/index.d.ts.map +1 -0
  99. package/dist/src/benchmark/index.js +39 -0
  100. package/dist/src/benchmark/index.js.map +1 -0
  101. package/dist/src/browser/AttentionBrowser.d.ts.map +1 -1
  102. package/dist/src/browser/AttentionBrowser.js +1 -0
  103. package/dist/src/browser/AttentionBrowser.js.map +1 -1
  104. package/dist/src/cli/agentdb-cli.d.ts +14 -0
  105. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  106. package/dist/src/cli/agentdb-cli.js +839 -143
  107. package/dist/src/cli/agentdb-cli.js.map +1 -1
  108. package/dist/src/cli/commands/attention.js +12 -2
  109. package/dist/src/cli/commands/attention.js.map +1 -1
  110. package/dist/src/cli/commands/doctor.js +5 -5
  111. package/dist/src/cli/commands/doctor.js.map +1 -1
  112. package/dist/src/cli/commands/hyperbolic.d.ts +11 -0
  113. package/dist/src/cli/commands/hyperbolic.d.ts.map +1 -0
  114. package/dist/src/cli/commands/hyperbolic.js +440 -0
  115. package/dist/src/cli/commands/hyperbolic.js.map +1 -0
  116. package/dist/src/cli/commands/install-embeddings.d.ts +1 -1
  117. package/dist/src/cli/commands/install-embeddings.d.ts.map +1 -1
  118. package/dist/src/cli/commands/install-embeddings.js +17 -11
  119. package/dist/src/cli/commands/install-embeddings.js.map +1 -1
  120. package/dist/src/cli/commands/learn.d.ts +11 -0
  121. package/dist/src/cli/commands/learn.d.ts.map +1 -0
  122. package/dist/src/cli/commands/learn.js +410 -0
  123. package/dist/src/cli/commands/learn.js.map +1 -0
  124. package/dist/src/cli/commands/migrate.d.ts +15 -0
  125. package/dist/src/cli/commands/migrate.d.ts.map +1 -1
  126. package/dist/src/cli/commands/migrate.js +190 -10
  127. package/dist/src/cli/commands/migrate.js.map +1 -1
  128. package/dist/src/cli/commands/route.d.ts +11 -0
  129. package/dist/src/cli/commands/route.d.ts.map +1 -0
  130. package/dist/src/cli/commands/route.js +419 -0
  131. package/dist/src/cli/commands/route.js.map +1 -0
  132. package/dist/src/cli/commands/rvf.d.ts +21 -0
  133. package/dist/src/cli/commands/rvf.d.ts.map +1 -0
  134. package/dist/src/cli/commands/rvf.js +448 -0
  135. package/dist/src/cli/commands/rvf.js.map +1 -0
  136. package/dist/src/cli/commands/simulate-report.js +14 -2
  137. package/dist/src/cli/commands/simulate-report.js.map +1 -1
  138. package/dist/src/cli/lib/report-store.d.ts +2 -1
  139. package/dist/src/cli/lib/report-store.d.ts.map +1 -1
  140. package/dist/src/cli/lib/report-store.js +85 -65
  141. package/dist/src/cli/lib/report-store.js.map +1 -1
  142. package/dist/src/cli/lib/simulation-runner.d.ts +40 -3
  143. package/dist/src/cli/lib/simulation-runner.d.ts.map +1 -1
  144. package/dist/src/cli/lib/simulation-runner.js +248 -6
  145. package/dist/src/cli/lib/simulation-runner.js.map +1 -1
  146. package/dist/src/compatibility/DeprecationWarnings.d.ts +54 -0
  147. package/dist/src/compatibility/DeprecationWarnings.d.ts.map +1 -0
  148. package/dist/src/compatibility/DeprecationWarnings.js +131 -0
  149. package/dist/src/compatibility/DeprecationWarnings.js.map +1 -0
  150. package/dist/src/compatibility/MigrationUtilities.d.ts +30 -0
  151. package/dist/src/compatibility/MigrationUtilities.d.ts.map +1 -0
  152. package/dist/src/compatibility/MigrationUtilities.js +184 -0
  153. package/dist/src/compatibility/MigrationUtilities.js.map +1 -0
  154. package/dist/src/compatibility/V1toV2Adapter.d.ts +76 -0
  155. package/dist/src/compatibility/V1toV2Adapter.d.ts.map +1 -0
  156. package/dist/src/compatibility/V1toV2Adapter.js +185 -0
  157. package/dist/src/compatibility/V1toV2Adapter.js.map +1 -0
  158. package/dist/src/compatibility/VersionDetector.d.ts +32 -0
  159. package/dist/src/compatibility/VersionDetector.d.ts.map +1 -0
  160. package/dist/src/compatibility/VersionDetector.js +144 -0
  161. package/dist/src/compatibility/VersionDetector.js.map +1 -0
  162. package/dist/src/compatibility/index.d.ts +14 -0
  163. package/dist/src/compatibility/index.d.ts.map +1 -0
  164. package/dist/src/compatibility/index.js +21 -0
  165. package/dist/src/compatibility/index.js.map +1 -0
  166. package/dist/src/compatibility/types.d.ts +103 -0
  167. package/dist/src/compatibility/types.d.ts.map +1 -0
  168. package/dist/src/compatibility/types.js +5 -0
  169. package/dist/src/compatibility/types.js.map +1 -0
  170. package/dist/src/controllers/AttentionService.d.ts +99 -202
  171. package/dist/src/controllers/AttentionService.d.ts.map +1 -1
  172. package/dist/src/controllers/AttentionService.js +450 -558
  173. package/dist/src/controllers/AttentionService.js.map +1 -1
  174. package/dist/src/controllers/CausalMemoryGraph.d.ts +30 -5
  175. package/dist/src/controllers/CausalMemoryGraph.d.ts.map +1 -1
  176. package/dist/src/controllers/CausalMemoryGraph.js +92 -15
  177. package/dist/src/controllers/CausalMemoryGraph.js.map +1 -1
  178. package/dist/src/controllers/CausalRecall.d.ts +4 -0
  179. package/dist/src/controllers/CausalRecall.d.ts.map +1 -1
  180. package/dist/src/controllers/CausalRecall.js +23 -5
  181. package/dist/src/controllers/CausalRecall.js.map +1 -1
  182. package/dist/src/controllers/EmbeddingService.d.ts +29 -0
  183. package/dist/src/controllers/EmbeddingService.d.ts.map +1 -1
  184. package/dist/src/controllers/EmbeddingService.js +154 -32
  185. package/dist/src/controllers/EmbeddingService.js.map +1 -1
  186. package/dist/src/controllers/EnhancedEmbeddingService.d.ts +4 -0
  187. package/dist/src/controllers/EnhancedEmbeddingService.d.ts.map +1 -1
  188. package/dist/src/controllers/EnhancedEmbeddingService.js +21 -7
  189. package/dist/src/controllers/EnhancedEmbeddingService.js.map +1 -1
  190. package/dist/src/controllers/ExplainableRecall.d.ts +1 -1
  191. package/dist/src/controllers/ExplainableRecall.d.ts.map +1 -1
  192. package/dist/src/controllers/ExplainableRecall.js +1 -1
  193. package/dist/src/controllers/ExplainableRecall.js.map +1 -1
  194. package/dist/src/controllers/HNSWIndex.d.ts +20 -2
  195. package/dist/src/controllers/HNSWIndex.d.ts.map +1 -1
  196. package/dist/src/controllers/HNSWIndex.js +114 -39
  197. package/dist/src/controllers/HNSWIndex.js.map +1 -1
  198. package/dist/src/controllers/LearningSystem.d.ts +6 -17
  199. package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
  200. package/dist/src/controllers/LearningSystem.js +66 -155
  201. package/dist/src/controllers/LearningSystem.js.map +1 -1
  202. package/dist/src/controllers/MemoryController.d.ts +174 -0
  203. package/dist/src/controllers/MemoryController.d.ts.map +1 -0
  204. package/dist/src/controllers/MemoryController.js +320 -0
  205. package/dist/src/controllers/MemoryController.js.map +1 -0
  206. package/dist/src/controllers/MetadataFilter.d.ts.map +1 -1
  207. package/dist/src/controllers/MetadataFilter.js +38 -26
  208. package/dist/src/controllers/MetadataFilter.js.map +1 -1
  209. package/dist/src/controllers/MincutService.d.ts +92 -0
  210. package/dist/src/controllers/MincutService.d.ts.map +1 -0
  211. package/dist/src/controllers/MincutService.js +336 -0
  212. package/dist/src/controllers/MincutService.js.map +1 -0
  213. package/dist/src/controllers/NightlyLearner.d.ts +5 -1
  214. package/dist/src/controllers/NightlyLearner.d.ts.map +1 -1
  215. package/dist/src/controllers/NightlyLearner.js +45 -31
  216. package/dist/src/controllers/NightlyLearner.js.map +1 -1
  217. package/dist/src/controllers/QUICClient.d.ts +45 -0
  218. package/dist/src/controllers/QUICClient.d.ts.map +1 -1
  219. package/dist/src/controllers/QUICClient.js +211 -21
  220. package/dist/src/controllers/QUICClient.js.map +1 -1
  221. package/dist/src/controllers/QUICServer.d.ts.map +1 -1
  222. package/dist/src/controllers/QUICServer.js +36 -27
  223. package/dist/src/controllers/QUICServer.js.map +1 -1
  224. package/dist/src/controllers/ReasoningBank.d.ts +6 -3
  225. package/dist/src/controllers/ReasoningBank.d.ts.map +1 -1
  226. package/dist/src/controllers/ReasoningBank.js +77 -56
  227. package/dist/src/controllers/ReasoningBank.js.map +1 -1
  228. package/dist/src/controllers/ReflexionMemory.d.ts +129 -6
  229. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  230. package/dist/src/controllers/ReflexionMemory.js +678 -220
  231. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  232. package/dist/src/controllers/SkillLibrary.d.ts +32 -3
  233. package/dist/src/controllers/SkillLibrary.d.ts.map +1 -1
  234. package/dist/src/controllers/SkillLibrary.js +239 -104
  235. package/dist/src/controllers/SkillLibrary.js.map +1 -1
  236. package/dist/src/controllers/SparsificationService.d.ts +151 -0
  237. package/dist/src/controllers/SparsificationService.d.ts.map +1 -0
  238. package/dist/src/controllers/SparsificationService.js +375 -0
  239. package/dist/src/controllers/SparsificationService.js.map +1 -0
  240. package/dist/src/controllers/SyncCoordinator.d.ts.map +1 -1
  241. package/dist/src/controllers/SyncCoordinator.js +126 -12
  242. package/dist/src/controllers/SyncCoordinator.js.map +1 -1
  243. package/dist/src/controllers/WASMVectorSearch.d.ts +12 -30
  244. package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
  245. package/dist/src/controllers/WASMVectorSearch.js +161 -102
  246. package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
  247. package/dist/src/controllers/attention/AttentionCache.d.ts +38 -0
  248. package/dist/src/controllers/attention/AttentionCache.d.ts.map +1 -0
  249. package/dist/src/controllers/attention/AttentionCache.js +80 -0
  250. package/dist/src/controllers/attention/AttentionCache.js.map +1 -0
  251. package/dist/src/controllers/attention/AttentionConfig.d.ts +127 -0
  252. package/dist/src/controllers/attention/AttentionConfig.d.ts.map +1 -0
  253. package/dist/src/controllers/attention/AttentionConfig.js +124 -0
  254. package/dist/src/controllers/attention/AttentionConfig.js.map +1 -0
  255. package/dist/src/controllers/attention/AttentionCore.d.ts +89 -0
  256. package/dist/src/controllers/attention/AttentionCore.d.ts.map +1 -0
  257. package/dist/src/controllers/attention/AttentionCore.js +289 -0
  258. package/dist/src/controllers/attention/AttentionCore.js.map +1 -0
  259. package/dist/src/controllers/attention/AttentionHelpers.d.ts +55 -0
  260. package/dist/src/controllers/attention/AttentionHelpers.d.ts.map +1 -0
  261. package/dist/src/controllers/attention/AttentionHelpers.js +148 -0
  262. package/dist/src/controllers/attention/AttentionHelpers.js.map +1 -0
  263. package/dist/src/controllers/attention/AttentionMetrics.d.ts +55 -0
  264. package/dist/src/controllers/attention/AttentionMetrics.d.ts.map +1 -0
  265. package/dist/src/controllers/attention/AttentionMetrics.js +72 -0
  266. package/dist/src/controllers/attention/AttentionMetrics.js.map +1 -0
  267. package/dist/src/controllers/attention/AttentionWASM.d.ts +98 -0
  268. package/dist/src/controllers/attention/AttentionWASM.d.ts.map +1 -0
  269. package/dist/src/controllers/attention/AttentionWASM.js +147 -0
  270. package/dist/src/controllers/attention/AttentionWASM.js.map +1 -0
  271. package/dist/src/controllers/attention/CrossAttentionController.d.ts +141 -0
  272. package/dist/src/controllers/attention/CrossAttentionController.d.ts.map +1 -0
  273. package/dist/src/controllers/attention/CrossAttentionController.js +325 -0
  274. package/dist/src/controllers/attention/CrossAttentionController.js.map +1 -0
  275. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts +137 -0
  276. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts.map +1 -0
  277. package/dist/src/controllers/attention/MultiHeadAttentionController.js +336 -0
  278. package/dist/src/controllers/attention/MultiHeadAttentionController.js.map +1 -0
  279. package/dist/src/controllers/attention/SelfAttentionController.d.ts +117 -0
  280. package/dist/src/controllers/attention/SelfAttentionController.d.ts.map +1 -0
  281. package/dist/src/controllers/attention/SelfAttentionController.js +205 -0
  282. package/dist/src/controllers/attention/SelfAttentionController.js.map +1 -0
  283. package/dist/src/controllers/attention/index.d.ts +24 -0
  284. package/dist/src/controllers/attention/index.d.ts.map +1 -0
  285. package/dist/src/controllers/attention/index.js +20 -0
  286. package/dist/src/controllers/attention/index.js.map +1 -0
  287. package/dist/src/controllers/index.d.ts +15 -28
  288. package/dist/src/controllers/index.d.ts.map +1 -1
  289. package/dist/src/controllers/index.js +11 -19
  290. package/dist/src/controllers/index.js.map +1 -1
  291. package/dist/src/controllers/prerequisites.d.ts +76 -0
  292. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  293. package/dist/src/controllers/prerequisites.js +235 -0
  294. package/dist/src/controllers/prerequisites.js.map +1 -0
  295. package/dist/src/core/AgentDB.d.ts +33 -19
  296. package/dist/src/core/AgentDB.d.ts.map +1 -1
  297. package/dist/src/core/AgentDB.js +87 -127
  298. package/dist/src/core/AgentDB.js.map +1 -1
  299. package/dist/src/core/QueryCache.d.ts +138 -0
  300. package/dist/src/core/QueryCache.d.ts.map +1 -0
  301. package/dist/src/core/QueryCache.js +309 -0
  302. package/dist/src/core/QueryCache.js.map +1 -0
  303. package/dist/src/db-fallback.d.ts +52 -4
  304. package/dist/src/db-fallback.d.ts.map +1 -1
  305. package/dist/src/db-fallback.js +521 -71
  306. package/dist/src/db-fallback.js.map +1 -1
  307. package/dist/src/db-unified.d.ts.map +1 -1
  308. package/dist/src/db-unified.js +32 -30
  309. package/dist/src/db-unified.js.map +1 -1
  310. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts +58 -0
  311. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts.map +1 -0
  312. package/dist/src/embedding/EmbeddingSpaceIdentity.js +137 -0
  313. package/dist/src/embedding/EmbeddingSpaceIdentity.js.map +1 -0
  314. package/dist/src/embedding/index.d.ts +3 -0
  315. package/dist/src/embedding/index.d.ts.map +1 -0
  316. package/dist/src/embedding/index.js +2 -0
  317. package/dist/src/embedding/index.js.map +1 -0
  318. package/dist/src/examples/quic-sync-example.js +2 -2
  319. package/dist/src/examples/quic-sync-example.js.map +1 -1
  320. package/dist/src/governance/MetaHarnessGateway.d.ts +55 -0
  321. package/dist/src/governance/MetaHarnessGateway.d.ts.map +1 -0
  322. package/dist/src/governance/MetaHarnessGateway.js +65 -0
  323. package/dist/src/governance/MetaHarnessGateway.js.map +1 -0
  324. package/dist/src/governance/RvfExperimentBranch.d.ts +65 -0
  325. package/dist/src/governance/RvfExperimentBranch.d.ts.map +1 -0
  326. package/dist/src/governance/RvfExperimentBranch.js +115 -0
  327. package/dist/src/governance/RvfExperimentBranch.js.map +1 -0
  328. package/dist/src/index.d.ts +20 -16
  329. package/dist/src/index.d.ts.map +1 -1
  330. package/dist/src/index.js +44 -12
  331. package/dist/src/index.js.map +1 -1
  332. package/dist/src/mcp/agentdb-mcp-server.js +178 -15
  333. package/dist/src/mcp/agentdb-mcp-server.js.map +1 -1
  334. package/dist/src/mcp/reset-database.d.ts +15 -0
  335. package/dist/src/mcp/reset-database.d.ts.map +1 -0
  336. package/dist/src/mcp/reset-database.js +45 -0
  337. package/dist/src/mcp/reset-database.js.map +1 -0
  338. package/dist/src/model/ModelCacheLoader.d.ts +31 -0
  339. package/dist/src/model/ModelCacheLoader.d.ts.map +1 -0
  340. package/dist/src/model/ModelCacheLoader.js +209 -0
  341. package/dist/src/model/ModelCacheLoader.js.map +1 -0
  342. package/dist/src/observability/index.d.ts +8 -0
  343. package/dist/src/observability/index.d.ts.map +1 -0
  344. package/dist/src/observability/index.js +8 -0
  345. package/dist/src/observability/index.js.map +1 -0
  346. package/dist/src/observability/integration.d.ts +32 -0
  347. package/dist/src/observability/integration.d.ts.map +1 -0
  348. package/dist/src/observability/integration.js +159 -0
  349. package/dist/src/observability/integration.js.map +1 -0
  350. package/dist/src/observability/telemetry.d.ts +137 -0
  351. package/dist/src/observability/telemetry.d.ts.map +1 -0
  352. package/dist/src/observability/telemetry.js +424 -0
  353. package/dist/src/observability/telemetry.js.map +1 -0
  354. package/dist/src/optimizations/BatchOperations.d.ts +47 -0
  355. package/dist/src/optimizations/BatchOperations.d.ts.map +1 -1
  356. package/dist/src/optimizations/BatchOperations.js +189 -35
  357. package/dist/src/optimizations/BatchOperations.js.map +1 -1
  358. package/dist/src/optimizations/Quantization.d.ts +330 -0
  359. package/dist/src/optimizations/Quantization.d.ts.map +1 -0
  360. package/dist/src/optimizations/Quantization.js +793 -0
  361. package/dist/src/optimizations/Quantization.js.map +1 -0
  362. package/dist/src/optimizations/index.d.ts +1 -3
  363. package/dist/src/optimizations/index.d.ts.map +1 -1
  364. package/dist/src/optimizations/index.js +0 -1
  365. package/dist/src/optimizations/index.js.map +1 -1
  366. package/dist/src/quantization/index.d.ts +7 -0
  367. package/dist/src/quantization/index.d.ts.map +1 -0
  368. package/dist/src/quantization/index.js +15 -0
  369. package/dist/src/quantization/index.js.map +1 -0
  370. package/dist/src/quantization/vector-quantization.d.ts +388 -0
  371. package/dist/src/quantization/vector-quantization.d.ts.map +1 -0
  372. package/dist/src/quantization/vector-quantization.js +1132 -0
  373. package/dist/src/quantization/vector-quantization.js.map +1 -0
  374. package/dist/src/schemas/inline.d.ts +3 -0
  375. package/dist/src/schemas/inline.d.ts.map +1 -0
  376. package/dist/src/schemas/inline.js +10 -0
  377. package/dist/src/schemas/inline.js.map +1 -0
  378. package/dist/src/search/HybridSearch.d.ts +311 -0
  379. package/dist/src/search/HybridSearch.d.ts.map +1 -0
  380. package/dist/src/search/HybridSearch.js +713 -0
  381. package/dist/src/search/HybridSearch.js.map +1 -0
  382. package/dist/src/search/index.d.ts +12 -0
  383. package/dist/src/search/index.d.ts.map +1 -0
  384. package/dist/src/search/index.js +16 -0
  385. package/dist/src/search/index.js.map +1 -0
  386. package/dist/src/security/input-validation.d.ts +30 -0
  387. package/dist/src/security/input-validation.d.ts.map +1 -1
  388. package/dist/src/security/input-validation.js +77 -3
  389. package/dist/src/security/input-validation.js.map +1 -1
  390. package/dist/src/security/limits.d.ts.map +1 -1
  391. package/dist/src/security/limits.js +12 -3
  392. package/dist/src/security/limits.js.map +1 -1
  393. package/dist/src/security/mcp-policy.d.ts +17 -0
  394. package/dist/src/security/mcp-policy.d.ts.map +1 -0
  395. package/dist/src/security/mcp-policy.js +90 -0
  396. package/dist/src/security/mcp-policy.js.map +1 -0
  397. package/dist/src/security/path-security.d.ts.map +1 -1
  398. package/dist/src/security/path-security.js +3 -1
  399. package/dist/src/security/path-security.js.map +1 -1
  400. package/dist/src/security/validation.js +3 -3
  401. package/dist/src/security/validation.js.map +1 -1
  402. package/dist/src/services/AttentionService.d.ts +303 -0
  403. package/dist/src/services/AttentionService.d.ts.map +1 -0
  404. package/dist/src/services/AttentionService.js +1165 -0
  405. package/dist/src/services/AttentionService.js.map +1 -0
  406. package/dist/src/services/LLMRouter.d.ts +70 -8
  407. package/dist/src/services/LLMRouter.d.ts.map +1 -1
  408. package/dist/src/services/LLMRouter.js +279 -28
  409. package/dist/src/services/LLMRouter.js.map +1 -1
  410. package/dist/src/services/audit-logger.service.d.ts +168 -0
  411. package/dist/src/services/audit-logger.service.d.ts.map +1 -0
  412. package/dist/src/services/audit-logger.service.js +331 -0
  413. package/dist/src/services/audit-logger.service.js.map +1 -0
  414. package/dist/src/services/enhanced-embeddings.d.ts +271 -0
  415. package/dist/src/services/enhanced-embeddings.d.ts.map +1 -0
  416. package/dist/src/services/enhanced-embeddings.js +1036 -0
  417. package/dist/src/services/enhanced-embeddings.js.map +1 -0
  418. package/dist/src/services/federated-learning.d.ts +172 -0
  419. package/dist/src/services/federated-learning.d.ts.map +1 -0
  420. package/dist/src/services/federated-learning.js +344 -0
  421. package/dist/src/services/federated-learning.js.map +1 -0
  422. package/dist/src/simd/index.d.ts +9 -0
  423. package/dist/src/simd/index.d.ts.map +1 -0
  424. package/dist/src/simd/index.js +27 -0
  425. package/dist/src/simd/index.js.map +1 -0
  426. package/dist/src/simd/simd-vector-ops.d.ts +332 -0
  427. package/dist/src/simd/simd-vector-ops.d.ts.map +1 -0
  428. package/dist/src/simd/simd-vector-ops.js +945 -0
  429. package/dist/src/simd/simd-vector-ops.js.map +1 -0
  430. package/dist/src/types/database.types.d.ts +275 -0
  431. package/dist/src/types/database.types.d.ts.map +1 -0
  432. package/dist/src/types/database.types.js +55 -0
  433. package/dist/src/types/database.types.js.map +1 -0
  434. package/dist/src/types/graph.d.ts +29 -0
  435. package/dist/src/types/graph.d.ts.map +1 -0
  436. package/dist/src/types/graph.js +8 -0
  437. package/dist/src/types/graph.js.map +1 -0
  438. package/dist/src/utils/chalk-fallback.d.ts +3 -0
  439. package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
  440. package/dist/src/utils/chalk-fallback.js +20 -0
  441. package/dist/src/utils/chalk-fallback.js.map +1 -0
  442. package/dist/src/utils/similarity.d.ts +11 -0
  443. package/dist/src/utils/similarity.d.ts.map +1 -0
  444. package/dist/src/utils/similarity.js +25 -0
  445. package/dist/src/utils/similarity.js.map +1 -0
  446. package/dist/src/wasm-loader.d.ts +66 -0
  447. package/dist/src/wasm-loader.d.ts.map +1 -0
  448. package/dist/src/wasm-loader.js +76 -0
  449. package/dist/src/wasm-loader.js.map +1 -0
  450. package/dist/src/wrappers/agentdb-fast.d.ts +140 -0
  451. package/dist/src/wrappers/agentdb-fast.d.ts.map +1 -0
  452. package/dist/src/wrappers/agentdb-fast.js +309 -0
  453. package/dist/src/wrappers/agentdb-fast.js.map +1 -0
  454. package/dist/src/wrappers/attention-fallbacks.d.ts +343 -0
  455. package/dist/src/wrappers/attention-fallbacks.d.ts.map +1 -0
  456. package/dist/src/wrappers/attention-fallbacks.js +1484 -0
  457. package/dist/src/wrappers/attention-fallbacks.js.map +1 -0
  458. package/dist/src/wrappers/attention-native.d.ts +111 -0
  459. package/dist/src/wrappers/attention-native.d.ts.map +1 -0
  460. package/dist/src/wrappers/attention-native.js +273 -0
  461. package/dist/src/wrappers/attention-native.js.map +1 -0
  462. package/dist/src/wrappers/embedding-service.d.ts +117 -0
  463. package/dist/src/wrappers/embedding-service.d.ts.map +1 -0
  464. package/dist/src/wrappers/embedding-service.js +370 -0
  465. package/dist/src/wrappers/embedding-service.js.map +1 -0
  466. package/dist/src/wrappers/gnn-wrapper.d.ts +71 -0
  467. package/dist/src/wrappers/gnn-wrapper.d.ts.map +1 -0
  468. package/dist/src/wrappers/gnn-wrapper.js +236 -0
  469. package/dist/src/wrappers/gnn-wrapper.js.map +1 -0
  470. package/dist/src/wrappers/index.d.ts +48 -0
  471. package/dist/src/wrappers/index.d.ts.map +1 -0
  472. package/dist/src/wrappers/index.js +83 -0
  473. package/dist/src/wrappers/index.js.map +1 -0
  474. package/package.json +130 -80
  475. package/scripts/postinstall.cjs +13 -144
  476. package/dist/agentdb.browser.js +0 -1685
  477. package/dist/agentdb.browser.js.map +0 -7
  478. package/dist/agentdb.browser.min.js +0 -3
  479. package/dist/agentdb.browser.min.js.map +0 -7
  480. package/dist/agentdb.wasm-loader.js +0 -207
  481. package/dist/backends/VectorBackend.d.ts +0 -120
  482. package/dist/backends/VectorBackend.js +0 -14
  483. package/dist/backends/VectorBackend.js.map +0 -1
  484. package/dist/optimizations/RVFOptimizer.d.ts +0 -225
  485. package/dist/optimizations/RVFOptimizer.js +0 -541
  486. package/dist/optimizations/RVFOptimizer.js.map +0 -1
  487. package/dist/simulation/cli.d.ts +0 -9
  488. package/dist/simulation/cli.d.ts.map +0 -1
  489. package/dist/simulation/cli.js +0 -68
  490. package/dist/simulation/cli.js.map +0 -1
  491. package/dist/simulation/runner.d.ts +0 -21
  492. package/dist/simulation/runner.d.ts.map +0 -1
  493. package/dist/simulation/runner.js +0 -241
  494. package/dist/simulation/runner.js.map +0 -1
  495. package/dist/simulation/scenarios/aidefence-integration.d.ts +0 -24
  496. package/dist/simulation/scenarios/aidefence-integration.d.ts.map +0 -1
  497. package/dist/simulation/scenarios/aidefence-integration.js +0 -124
  498. package/dist/simulation/scenarios/aidefence-integration.js.map +0 -1
  499. package/dist/simulation/scenarios/bmssp-integration.d.ts +0 -23
  500. package/dist/simulation/scenarios/bmssp-integration.d.ts.map +0 -1
  501. package/dist/simulation/scenarios/bmssp-integration.js +0 -104
  502. package/dist/simulation/scenarios/bmssp-integration.js.map +0 -1
  503. package/dist/simulation/scenarios/causal-reasoning.d.ts +0 -16
  504. package/dist/simulation/scenarios/causal-reasoning.d.ts.map +0 -1
  505. package/dist/simulation/scenarios/causal-reasoning.js +0 -108
  506. package/dist/simulation/scenarios/causal-reasoning.js.map +0 -1
  507. package/dist/simulation/scenarios/consciousness-explorer.d.ts +0 -25
  508. package/dist/simulation/scenarios/consciousness-explorer.d.ts.map +0 -1
  509. package/dist/simulation/scenarios/consciousness-explorer.js +0 -108
  510. package/dist/simulation/scenarios/consciousness-explorer.js.map +0 -1
  511. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts +0 -135
  512. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts.map +0 -1
  513. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js +0 -158
  514. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js.map +0 -1
  515. package/dist/simulation/scenarios/domain-examples/index.d.ts +0 -14
  516. package/dist/simulation/scenarios/domain-examples/index.d.ts.map +0 -1
  517. package/dist/simulation/scenarios/domain-examples/index.js +0 -14
  518. package/dist/simulation/scenarios/domain-examples/index.js.map +0 -1
  519. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts +0 -178
  520. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts.map +0 -1
  521. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js +0 -218
  522. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js.map +0 -1
  523. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts +0 -122
  524. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts.map +0 -1
  525. package/dist/simulation/scenarios/domain-examples/medical-imaging.js +0 -129
  526. package/dist/simulation/scenarios/domain-examples/medical-imaging.js.map +0 -1
  527. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts +0 -166
  528. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts.map +0 -1
  529. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js +0 -161
  530. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js.map +0 -1
  531. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts +0 -151
  532. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts.map +0 -1
  533. package/dist/simulation/scenarios/domain-examples/scientific-research.js +0 -187
  534. package/dist/simulation/scenarios/domain-examples/scientific-research.js.map +0 -1
  535. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts +0 -102
  536. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts.map +0 -1
  537. package/dist/simulation/scenarios/domain-examples/trading-systems.js +0 -100
  538. package/dist/simulation/scenarios/domain-examples/trading-systems.js.map +0 -1
  539. package/dist/simulation/scenarios/goalie-integration.d.ts +0 -24
  540. package/dist/simulation/scenarios/goalie-integration.d.ts.map +0 -1
  541. package/dist/simulation/scenarios/goalie-integration.js +0 -121
  542. package/dist/simulation/scenarios/goalie-integration.js.map +0 -1
  543. package/dist/simulation/scenarios/graph-traversal.d.ts +0 -17
  544. package/dist/simulation/scenarios/graph-traversal.d.ts.map +0 -1
  545. package/dist/simulation/scenarios/graph-traversal.js +0 -101
  546. package/dist/simulation/scenarios/graph-traversal.js.map +0 -1
  547. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts +0 -45
  548. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts.map +0 -1
  549. package/dist/simulation/scenarios/latent-space/attention-analysis.js +0 -435
  550. package/dist/simulation/scenarios/latent-space/attention-analysis.js.map +0 -1
  551. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts +0 -55
  552. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts.map +0 -1
  553. package/dist/simulation/scenarios/latent-space/clustering-analysis.js +0 -606
  554. package/dist/simulation/scenarios/latent-space/clustering-analysis.js.map +0 -1
  555. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts +0 -74
  556. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts.map +0 -1
  557. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js +0 -391
  558. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js.map +0 -1
  559. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts +0 -51
  560. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts.map +0 -1
  561. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js +0 -536
  562. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js.map +0 -1
  563. package/dist/simulation/scenarios/latent-space/index.d.ts +0 -35
  564. package/dist/simulation/scenarios/latent-space/index.d.ts.map +0 -1
  565. package/dist/simulation/scenarios/latent-space/index.js +0 -35
  566. package/dist/simulation/scenarios/latent-space/index.js.map +0 -1
  567. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts +0 -52
  568. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts.map +0 -1
  569. package/dist/simulation/scenarios/latent-space/neural-augmentation.js +0 -472
  570. package/dist/simulation/scenarios/latent-space/neural-augmentation.js.map +0 -1
  571. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts +0 -53
  572. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts.map +0 -1
  573. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js +0 -391
  574. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js.map +0 -1
  575. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts +0 -52
  576. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts.map +0 -1
  577. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js +0 -514
  578. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js.map +0 -1
  579. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts +0 -53
  580. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts.map +0 -1
  581. package/dist/simulation/scenarios/latent-space/traversal-optimization.js +0 -595
  582. package/dist/simulation/scenarios/latent-space/traversal-optimization.js.map +0 -1
  583. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts +0 -18
  584. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts.map +0 -1
  585. package/dist/simulation/scenarios/lean-agentic-swarm.js +0 -132
  586. package/dist/simulation/scenarios/lean-agentic-swarm.js.map +0 -1
  587. package/dist/simulation/scenarios/multi-agent-swarm.d.ts +0 -17
  588. package/dist/simulation/scenarios/multi-agent-swarm.d.ts.map +0 -1
  589. package/dist/simulation/scenarios/multi-agent-swarm.js +0 -111
  590. package/dist/simulation/scenarios/multi-agent-swarm.js.map +0 -1
  591. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts +0 -23
  592. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts.map +0 -1
  593. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js +0 -98
  594. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js.map +0 -1
  595. package/dist/simulation/scenarios/reflexion-learning.d.ts +0 -16
  596. package/dist/simulation/scenarios/reflexion-learning.d.ts.map +0 -1
  597. package/dist/simulation/scenarios/reflexion-learning.js +0 -98
  598. package/dist/simulation/scenarios/reflexion-learning.js.map +0 -1
  599. package/dist/simulation/scenarios/research-swarm.d.ts +0 -24
  600. package/dist/simulation/scenarios/research-swarm.d.ts.map +0 -1
  601. package/dist/simulation/scenarios/research-swarm.js +0 -146
  602. package/dist/simulation/scenarios/research-swarm.js.map +0 -1
  603. package/dist/simulation/scenarios/skill-evolution.d.ts +0 -16
  604. package/dist/simulation/scenarios/skill-evolution.d.ts.map +0 -1
  605. package/dist/simulation/scenarios/skill-evolution.js +0 -109
  606. package/dist/simulation/scenarios/skill-evolution.js.map +0 -1
  607. package/dist/simulation/scenarios/stock-market-emergence.d.ts +0 -33
  608. package/dist/simulation/scenarios/stock-market-emergence.d.ts.map +0 -1
  609. package/dist/simulation/scenarios/stock-market-emergence.js +0 -246
  610. package/dist/simulation/scenarios/stock-market-emergence.js.map +0 -1
  611. package/dist/simulation/scenarios/strange-loops.d.ts +0 -18
  612. package/dist/simulation/scenarios/strange-loops.d.ts.map +0 -1
  613. package/dist/simulation/scenarios/strange-loops.js +0 -133
  614. package/dist/simulation/scenarios/strange-loops.js.map +0 -1
  615. package/dist/simulation/scenarios/sublinear-solver.d.ts +0 -22
  616. package/dist/simulation/scenarios/sublinear-solver.d.ts.map +0 -1
  617. package/dist/simulation/scenarios/sublinear-solver.js +0 -82
  618. package/dist/simulation/scenarios/sublinear-solver.js.map +0 -1
  619. package/dist/simulation/scenarios/temporal-lead-solver.d.ts +0 -23
  620. package/dist/simulation/scenarios/temporal-lead-solver.d.ts.map +0 -1
  621. package/dist/simulation/scenarios/temporal-lead-solver.js +0 -90
  622. package/dist/simulation/scenarios/temporal-lead-solver.js.map +0 -1
  623. package/dist/simulation/scenarios/voting-system-consensus.d.ts +0 -27
  624. package/dist/simulation/scenarios/voting-system-consensus.d.ts.map +0 -1
  625. package/dist/simulation/scenarios/voting-system-consensus.js +0 -175
  626. package/dist/simulation/scenarios/voting-system-consensus.js.map +0 -1
  627. package/dist/simulation/types.d.ts +0 -162
  628. package/dist/simulation/types.d.ts.map +0 -1
  629. package/dist/simulation/types.js +0 -5
  630. package/dist/simulation/types.js.map +0 -1
  631. package/dist/simulation/utils/PerformanceOptimizer.d.ts +0 -115
  632. package/dist/simulation/utils/PerformanceOptimizer.d.ts.map +0 -1
  633. package/dist/simulation/utils/PerformanceOptimizer.js +0 -223
  634. package/dist/simulation/utils/PerformanceOptimizer.js.map +0 -1
  635. package/dist/src/backends/index.cjs +0 -6
  636. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts +0 -93
  637. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts.map +0 -1
  638. package/dist/src/backends/ruvector/GuardedVectorBackend.js +0 -182
  639. package/dist/src/backends/ruvector/GuardedVectorBackend.js.map +0 -1
  640. package/dist/src/consensus/RaftConsensus.d.ts +0 -220
  641. package/dist/src/consensus/RaftConsensus.d.ts.map +0 -1
  642. package/dist/src/consensus/RaftConsensus.js +0 -762
  643. package/dist/src/consensus/RaftConsensus.js.map +0 -1
  644. package/dist/src/controllers/HierarchicalMemory.d.ts +0 -197
  645. package/dist/src/controllers/HierarchicalMemory.d.ts.map +0 -1
  646. package/dist/src/controllers/HierarchicalMemory.js +0 -519
  647. package/dist/src/controllers/HierarchicalMemory.js.map +0 -1
  648. package/dist/src/controllers/MemoryConsolidation.d.ts +0 -142
  649. package/dist/src/controllers/MemoryConsolidation.d.ts.map +0 -1
  650. package/dist/src/controllers/MemoryConsolidation.js +0 -479
  651. package/dist/src/controllers/MemoryConsolidation.js.map +0 -1
  652. package/dist/src/controllers/QUICConnection.d.ts +0 -122
  653. package/dist/src/controllers/QUICConnection.d.ts.map +0 -1
  654. package/dist/src/controllers/QUICConnection.js +0 -329
  655. package/dist/src/controllers/QUICConnection.js.map +0 -1
  656. package/dist/src/controllers/QUICConnectionPool.d.ts +0 -83
  657. package/dist/src/controllers/QUICConnectionPool.d.ts.map +0 -1
  658. package/dist/src/controllers/QUICConnectionPool.js +0 -256
  659. package/dist/src/controllers/QUICConnectionPool.js.map +0 -1
  660. package/dist/src/controllers/QUICStreamManager.d.ts +0 -114
  661. package/dist/src/controllers/QUICStreamManager.d.ts.map +0 -1
  662. package/dist/src/controllers/QUICStreamManager.js +0 -267
  663. package/dist/src/controllers/QUICStreamManager.js.map +0 -1
  664. package/dist/src/controllers/StreamingEmbeddingService.d.ts +0 -82
  665. package/dist/src/controllers/StreamingEmbeddingService.d.ts.map +0 -1
  666. package/dist/src/controllers/StreamingEmbeddingService.js +0 -243
  667. package/dist/src/controllers/StreamingEmbeddingService.js.map +0 -1
  668. package/dist/src/controllers/index.cjs +0 -6
  669. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  670. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  671. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  672. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  673. package/dist/src/coordination/index.d.ts +0 -10
  674. package/dist/src/coordination/index.d.ts.map +0 -1
  675. package/dist/src/coordination/index.js +0 -10
  676. package/dist/src/coordination/index.js.map +0 -1
  677. package/dist/src/index.cjs +0 -6
  678. package/dist/src/optimizations/RVFOptimizer.d.ts +0 -226
  679. package/dist/src/optimizations/RVFOptimizer.d.ts.map +0 -1
  680. package/dist/src/optimizations/RVFOptimizer.js +0 -541
  681. package/dist/src/optimizations/RVFOptimizer.js.map +0 -1
  682. package/dist/src/security/AttestationLog.d.ts +0 -70
  683. package/dist/src/security/AttestationLog.d.ts.map +0 -1
  684. package/dist/src/security/AttestationLog.js +0 -174
  685. package/dist/src/security/AttestationLog.js.map +0 -1
  686. package/dist/src/security/MutationGuard.d.ts +0 -83
  687. package/dist/src/security/MutationGuard.d.ts.map +0 -1
  688. package/dist/src/security/MutationGuard.js +0 -364
  689. package/dist/src/security/MutationGuard.js.map +0 -1
  690. package/dist/src/security/index.cjs +0 -6
  691. package/dist/src/security/index.d.ts +0 -15
  692. package/dist/src/security/index.d.ts.map +0 -1
  693. package/dist/src/security/index.js +0 -18
  694. package/dist/src/security/index.js.map +0 -1
  695. package/dist/src/services/GNNService.d.ts +0 -172
  696. package/dist/src/services/GNNService.d.ts.map +0 -1
  697. package/dist/src/services/GNNService.js +0 -612
  698. package/dist/src/services/GNNService.js.map +0 -1
  699. package/dist/src/services/GraphTransformerService.d.ts +0 -80
  700. package/dist/src/services/GraphTransformerService.d.ts.map +0 -1
  701. package/dist/src/services/GraphTransformerService.js +0 -369
  702. package/dist/src/services/GraphTransformerService.js.map +0 -1
  703. package/dist/src/services/SemanticRouter.d.ts +0 -83
  704. package/dist/src/services/SemanticRouter.d.ts.map +0 -1
  705. package/dist/src/services/SemanticRouter.js +0 -160
  706. package/dist/src/services/SemanticRouter.js.map +0 -1
  707. package/dist/src/services/SonaTrajectoryService.d.ts +0 -224
  708. package/dist/src/services/SonaTrajectoryService.d.ts.map +0 -1
  709. package/dist/src/services/SonaTrajectoryService.js +0 -539
  710. package/dist/src/services/SonaTrajectoryService.js.map +0 -1
  711. package/dist/src/utils/LegacyAttentionAdapter.d.ts +0 -93
  712. package/dist/src/utils/LegacyAttentionAdapter.d.ts.map +0 -1
  713. package/dist/src/utils/LegacyAttentionAdapter.js +0 -241
  714. package/dist/src/utils/LegacyAttentionAdapter.js.map +0 -1
  715. package/dist/src/utils/vector-math.d.ts +0 -29
  716. package/dist/src/utils/vector-math.d.ts.map +0 -1
  717. package/dist/src/utils/vector-math.js +0 -66
  718. package/dist/src/utils/vector-math.js.map +0 -1
@@ -0,0 +1,336 @@
1
+ /**
2
+ * MultiHeadAttentionController - Multi-Head Attention for Memory Systems
3
+ *
4
+ * Implements multi-head attention that projects queries and memory entries
5
+ * into multiple subspaces, computes attention in each, and aggregates the
6
+ * results. This allows the model to attend to different aspects of the
7
+ * information simultaneously.
8
+ *
9
+ * Features:
10
+ * - Configurable number of attention heads
11
+ * - Multiple aggregation strategies (average, max, concat)
12
+ * - Per-head dimension control
13
+ * - Parallel attention computation
14
+ */
15
+ /**
16
+ * Multi-head attention controller for computing parallel attention patterns
17
+ */
18
+ export class MultiHeadAttentionController {
19
+ vectorBackend;
20
+ memoryStore;
21
+ dimension;
22
+ config;
23
+ headProjections;
24
+ constructor(vectorBackend = null, config = {}) {
25
+ this.vectorBackend = vectorBackend;
26
+ this.memoryStore = new Map();
27
+ this.dimension = 0;
28
+ this.headProjections = [];
29
+ this.config = {
30
+ numHeads: 8,
31
+ topK: 10,
32
+ minScore: 0.0,
33
+ temperature: 1.0,
34
+ aggregation: 'average',
35
+ ...config
36
+ };
37
+ }
38
+ /**
39
+ * Initialize head projections for a given dimension
40
+ */
41
+ initializeProjections(dimension) {
42
+ const numHeads = this.config.numHeads || 8;
43
+ const headDim = this.config.headDim || Math.floor(dimension / numHeads);
44
+ this.headProjections = [];
45
+ // Create random projection matrices for each head
46
+ // In practice, these would be learned parameters
47
+ for (let h = 0; h < numHeads; h++) {
48
+ const projection = new Float32Array(dimension * headDim);
49
+ // Xavier initialization
50
+ const scale = Math.sqrt(2.0 / (dimension + headDim));
51
+ for (let i = 0; i < projection.length; i++) {
52
+ projection[i] = (Math.random() * 2 - 1) * scale;
53
+ }
54
+ this.headProjections.push(projection);
55
+ }
56
+ }
57
+ /**
58
+ * Add a memory entry to the attention context
59
+ */
60
+ addMemory(entry) {
61
+ if (!entry.id || !entry.embedding || entry.embedding.length === 0) {
62
+ throw new Error('Memory entry must have id and non-empty embedding');
63
+ }
64
+ if (this.dimension === 0) {
65
+ this.dimension = entry.embedding.length;
66
+ this.initializeProjections(this.dimension);
67
+ }
68
+ else if (entry.embedding.length !== this.dimension) {
69
+ throw new Error(`Embedding dimension mismatch: expected ${this.dimension}, got ${entry.embedding.length}`);
70
+ }
71
+ this.memoryStore.set(entry.id, entry);
72
+ if (this.vectorBackend) {
73
+ const embedding = new Float32Array(entry.embedding);
74
+ this.vectorBackend.insert(entry.id, embedding, entry.metadata);
75
+ }
76
+ }
77
+ /**
78
+ * Remove a memory entry
79
+ */
80
+ removeMemory(id) {
81
+ return this.memoryStore.delete(id);
82
+ }
83
+ /**
84
+ * Clear all memories
85
+ */
86
+ clearMemories() {
87
+ this.memoryStore.clear();
88
+ this.dimension = 0;
89
+ this.headProjections = [];
90
+ }
91
+ /**
92
+ * Project a vector using a head's projection matrix
93
+ */
94
+ projectVector(vector, headIndex) {
95
+ const projection = this.headProjections[headIndex];
96
+ if (!projection) {
97
+ // If no projection available, return sliced view
98
+ const numHeads = this.config.numHeads || 8;
99
+ const headDim = Math.floor(vector.length / numHeads);
100
+ const start = headIndex * headDim;
101
+ return vector.slice(start, start + headDim);
102
+ }
103
+ const headDim = this.config.headDim || Math.floor(this.dimension / (this.config.numHeads || 8));
104
+ const result = new Array(headDim).fill(0);
105
+ for (let i = 0; i < headDim; i++) {
106
+ for (let j = 0; j < vector.length; j++) {
107
+ result[i] += vector[j] * projection[j * headDim + i];
108
+ }
109
+ }
110
+ return result;
111
+ }
112
+ /**
113
+ * Compute multi-head attention for a query vector
114
+ *
115
+ * @param query - Query vector for attention computation
116
+ * @param options - Override default configuration options
117
+ * @returns Multi-head attention result with per-head outputs and aggregated result
118
+ */
119
+ async computeMultiHeadAttention(query, options = {}) {
120
+ const startTime = performance.now();
121
+ // Validate input
122
+ if (!query || !Array.isArray(query)) {
123
+ throw new Error('Query must be a non-null array');
124
+ }
125
+ const config = { ...this.config, ...options };
126
+ const { numHeads = 8, topK = 10, minScore = 0.0, temperature = 1.0, aggregation = 'average' } = config;
127
+ // Handle empty memory
128
+ if (this.memoryStore.size === 0) {
129
+ const emptyHeads = Array(numHeads).fill(null).map((_, i) => ({
130
+ headIndex: i,
131
+ attended: [...query].slice(i * Math.floor(query.length / numHeads), (i + 1) * Math.floor(query.length / numHeads)),
132
+ topScores: []
133
+ }));
134
+ return {
135
+ heads: emptyHeads,
136
+ attended: [...query],
137
+ executionTimeMs: performance.now() - startTime
138
+ };
139
+ }
140
+ // Validate dimension
141
+ if (this.dimension > 0 && query.length !== this.dimension) {
142
+ throw new Error(`Query dimension mismatch: expected ${this.dimension}, got ${query.length}`);
143
+ }
144
+ // Initialize projections if needed
145
+ if (this.headProjections.length === 0) {
146
+ this.initializeProjections(query.length);
147
+ }
148
+ // Compute attention for each head
149
+ const heads = [];
150
+ const allScores = new Map();
151
+ for (let h = 0; h < numHeads; h++) {
152
+ const headResult = await this.computeHeadAttention(query, h, topK, minScore, temperature);
153
+ heads.push(headResult);
154
+ // Aggregate scores across heads
155
+ for (const score of headResult.topScores) {
156
+ const existing = allScores.get(score.id) || 0;
157
+ allScores.set(score.id, existing + score.score);
158
+ }
159
+ }
160
+ // Aggregate attended outputs from all heads
161
+ const attended = this.aggregateHeadOutputs(query, heads, aggregation);
162
+ // Sort aggregated scores
163
+ const aggregatedScores = Array.from(allScores.entries())
164
+ .map(([id, score]) => ({ id, score: score / numHeads }))
165
+ .sort((a, b) => b.score - a.score)
166
+ .slice(0, topK);
167
+ const executionTimeMs = performance.now() - startTime;
168
+ return {
169
+ heads,
170
+ attended,
171
+ aggregatedScores,
172
+ executionTimeMs
173
+ };
174
+ }
175
+ /**
176
+ * Compute attention for a single head
177
+ */
178
+ async computeHeadAttention(query, headIndex, topK, minScore, temperature) {
179
+ // Project query to head subspace
180
+ const projectedQuery = this.projectVector(query, headIndex);
181
+ const scale = 1.0 / Math.sqrt(projectedQuery.length);
182
+ // Compute scores for all memories
183
+ const scores = [];
184
+ for (const [id, entry] of this.memoryStore.entries()) {
185
+ const projectedKey = this.projectVector(entry.embedding, headIndex);
186
+ // Scaled dot-product attention
187
+ let dotProduct = 0;
188
+ for (let i = 0; i < projectedQuery.length; i++) {
189
+ dotProduct += projectedQuery[i] * projectedKey[i];
190
+ }
191
+ const scaledScore = dotProduct * scale / temperature;
192
+ scores.push({ id, score: scaledScore, projectedEmbedding: projectedKey });
193
+ }
194
+ // Apply softmax
195
+ const normalizedScores = this.applySoftmax(scores);
196
+ // Filter and sort
197
+ const filteredScores = normalizedScores
198
+ .filter(item => item.normalizedScore >= minScore)
199
+ .sort((a, b) => b.normalizedScore - a.normalizedScore)
200
+ .slice(0, topK);
201
+ // Compute attended output for this head
202
+ const headDim = projectedQuery.length;
203
+ const attended = new Array(headDim).fill(0);
204
+ for (const item of normalizedScores) {
205
+ for (let i = 0; i < headDim; i++) {
206
+ attended[i] += item.normalizedScore * item.projectedEmbedding[i];
207
+ }
208
+ }
209
+ return {
210
+ headIndex,
211
+ attended,
212
+ topScores: filteredScores.map(item => ({
213
+ id: item.id,
214
+ score: item.normalizedScore
215
+ }))
216
+ };
217
+ }
218
+ /**
219
+ * Apply softmax to scores
220
+ */
221
+ applySoftmax(items) {
222
+ if (items.length === 0)
223
+ return [];
224
+ const maxScore = Math.max(...items.map(item => item.score));
225
+ const expScores = items.map(item => ({
226
+ ...item,
227
+ expScore: Math.exp(item.score - maxScore)
228
+ }));
229
+ const sumExp = expScores.reduce((sum, item) => sum + item.expScore, 0);
230
+ if (sumExp === 0 || !isFinite(sumExp)) {
231
+ return items.map(item => ({
232
+ ...item,
233
+ normalizedScore: 1 / items.length
234
+ }));
235
+ }
236
+ return expScores.map(item => ({
237
+ id: item.id,
238
+ normalizedScore: item.expScore / sumExp,
239
+ projectedEmbedding: item.projectedEmbedding
240
+ }));
241
+ }
242
+ /**
243
+ * Aggregate outputs from all attention heads
244
+ */
245
+ aggregateHeadOutputs(query, heads, strategy) {
246
+ if (heads.length === 0) {
247
+ return [...query];
248
+ }
249
+ const dimension = query.length;
250
+ const numHeads = heads.length;
251
+ const headDim = heads[0]?.attended.length || Math.floor(dimension / numHeads);
252
+ switch (strategy) {
253
+ case 'concat':
254
+ // Concatenate all head outputs (may change dimension)
255
+ const concatResult = [];
256
+ for (const head of heads) {
257
+ concatResult.push(...head.attended);
258
+ }
259
+ // Pad or truncate to original dimension
260
+ if (concatResult.length < dimension) {
261
+ return [...concatResult, ...new Array(dimension - concatResult.length).fill(0)];
262
+ }
263
+ return concatResult.slice(0, dimension);
264
+ case 'max':
265
+ // Take element-wise max across reconstructed head outputs
266
+ const maxResult = new Array(dimension).fill(-Infinity);
267
+ for (const head of heads) {
268
+ const reconstructed = this.reconstructFromHead(head.attended, head.headIndex, dimension);
269
+ for (let i = 0; i < dimension; i++) {
270
+ maxResult[i] = Math.max(maxResult[i], reconstructed[i]);
271
+ }
272
+ }
273
+ return maxResult.map(v => isFinite(v) ? v : 0);
274
+ case 'weighted':
275
+ // Weight by average attention scores
276
+ const weightedResult = new Array(dimension).fill(0);
277
+ const weights = [];
278
+ for (const head of heads) {
279
+ const avgScore = head.topScores.reduce((sum, s) => sum + s.score, 0) /
280
+ Math.max(1, head.topScores.length);
281
+ weights.push(avgScore);
282
+ }
283
+ const totalWeight = weights.reduce((sum, w) => sum + w, 0) || 1;
284
+ for (let h = 0; h < heads.length; h++) {
285
+ const reconstructed = this.reconstructFromHead(heads[h].attended, h, dimension);
286
+ const weight = weights[h] / totalWeight;
287
+ for (let i = 0; i < dimension; i++) {
288
+ weightedResult[i] += weight * reconstructed[i];
289
+ }
290
+ }
291
+ return weightedResult;
292
+ case 'average':
293
+ default:
294
+ // Average across reconstructed head outputs
295
+ const avgResult = new Array(dimension).fill(0);
296
+ for (const head of heads) {
297
+ const reconstructed = this.reconstructFromHead(head.attended, head.headIndex, dimension);
298
+ for (let i = 0; i < dimension; i++) {
299
+ avgResult[i] += reconstructed[i] / numHeads;
300
+ }
301
+ }
302
+ return avgResult;
303
+ }
304
+ }
305
+ /**
306
+ * Reconstruct full-dimension vector from head output
307
+ */
308
+ reconstructFromHead(headOutput, headIndex, targetDim) {
309
+ // Simple reconstruction by placing head output in appropriate position
310
+ const numHeads = this.config.numHeads || 8;
311
+ const headDim = Math.floor(targetDim / numHeads);
312
+ const result = new Array(targetDim).fill(0);
313
+ const start = headIndex * headDim;
314
+ const len = Math.min(headOutput.length, targetDim - start);
315
+ for (let i = 0; i < len; i++) {
316
+ result[start + i] = headOutput[i];
317
+ }
318
+ return result;
319
+ }
320
+ /**
321
+ * Get statistics about the controller
322
+ */
323
+ getStats() {
324
+ const numHeads = this.config.numHeads || 8;
325
+ const headDim = this.config.headDim ||
326
+ (this.dimension > 0 ? Math.floor(this.dimension / numHeads) : 0);
327
+ return {
328
+ memoryCount: this.memoryStore.size,
329
+ dimension: this.dimension,
330
+ numHeads,
331
+ headDim,
332
+ hasVectorBackend: this.vectorBackend !== null
333
+ };
334
+ }
335
+ }
336
+ //# sourceMappingURL=MultiHeadAttentionController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiHeadAttentionController.js","sourceRoot":"","sources":["../../../../src/controllers/attention/MultiHeadAttentionController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * SelfAttentionController - Self-Attention Mechanism for Memory Systems
3
+ *
4
+ * Implements self-attention over stored memory entries, allowing the system
5
+ * to compute attention scores that determine which memories are most relevant
6
+ * to a given query vector.
7
+ *
8
+ * Features:
9
+ * - Scaled dot-product attention
10
+ * - Softmax normalization
11
+ * - Top-k filtering with minimum score threshold
12
+ * - Efficient batch processing for large memory sets
13
+ */
14
+ import type { VectorBackend } from '../../backends/VectorBackend.js';
15
+ /**
16
+ * Configuration for self-attention computation
17
+ */
18
+ export interface SelfAttentionConfig {
19
+ /** Number of top results to return */
20
+ topK?: number;
21
+ /** Minimum attention score threshold (0-1) */
22
+ minScore?: number;
23
+ /** Temperature for softmax scaling */
24
+ temperature?: number;
25
+ /** Whether to return attention weights */
26
+ returnWeights?: boolean;
27
+ }
28
+ /**
29
+ * Individual attention score for a memory entry
30
+ */
31
+ export interface AttentionScore {
32
+ /** Memory entry ID */
33
+ id: string;
34
+ /** Computed attention score (0-1 after softmax) */
35
+ score: number;
36
+ /** Raw similarity score before softmax */
37
+ rawScore?: number;
38
+ }
39
+ /**
40
+ * Result of self-attention computation
41
+ */
42
+ export interface SelfAttentionResult {
43
+ /** Attention scores for each memory entry */
44
+ scores: AttentionScore[];
45
+ /** Attended output vector (weighted sum of values) */
46
+ attended: number[];
47
+ /** Execution time in milliseconds */
48
+ executionTimeMs: number;
49
+ }
50
+ /**
51
+ * Memory entry with embedding for attention computation
52
+ */
53
+ export interface MemoryEntry {
54
+ id: string;
55
+ embedding: number[];
56
+ content?: string;
57
+ metadata?: Record<string, any>;
58
+ }
59
+ /**
60
+ * Self-attention controller for computing attention over memory entries
61
+ */
62
+ export declare class SelfAttentionController {
63
+ private vectorBackend;
64
+ private memoryStore;
65
+ private dimension;
66
+ private config;
67
+ constructor(vectorBackend?: VectorBackend | null, config?: SelfAttentionConfig);
68
+ /**
69
+ * Add a memory entry to the attention context
70
+ */
71
+ addMemory(entry: MemoryEntry): void;
72
+ /**
73
+ * Remove a memory entry from the attention context
74
+ */
75
+ removeMemory(id: string): boolean;
76
+ /**
77
+ * Clear all memory entries
78
+ */
79
+ clearMemories(): void;
80
+ /**
81
+ * Compute self-attention for a query vector
82
+ *
83
+ * @param query - Query vector for attention computation
84
+ * @param options - Override default configuration options
85
+ * @returns Self-attention result with scores and attended output
86
+ */
87
+ computeAttention(query: number[], options?: SelfAttentionConfig): Promise<SelfAttentionResult>;
88
+ /**
89
+ * Compute dot product between two vectors
90
+ */
91
+ private computeDotProduct;
92
+ /**
93
+ * Apply softmax normalization to scores
94
+ */
95
+ private applySoftmax;
96
+ /**
97
+ * Compute attended output as weighted sum of memory embeddings
98
+ */
99
+ private computeAttendedOutput;
100
+ /**
101
+ * Get the number of memories in the attention context
102
+ */
103
+ get memoryCount(): number;
104
+ /**
105
+ * Get the embedding dimension
106
+ */
107
+ get embeddingDimension(): number;
108
+ /**
109
+ * Get statistics about the attention controller
110
+ */
111
+ getStats(): {
112
+ memoryCount: number;
113
+ dimension: number;
114
+ hasVectorBackend: boolean;
115
+ };
116
+ }
117
+ //# sourceMappingURL=SelfAttentionController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelfAttentionController.d.ts","sourceRoot":"","sources":["../../../../src/controllers/attention/SelfAttentionController.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,sDAAsD;IACtD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAsB;gBAGlC,aAAa,GAAE,aAAa,GAAG,IAAW,EAC1C,MAAM,GAAE,mBAAwB;IAclC;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAsBnC;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,aAAa,IAAI,IAAI;IAKrB;;;;;;OAMG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,mBAAmB,CAAC;IA8D/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IASzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAoCpB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACH,IAAI,kBAAkB,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,EAAE,OAAO,CAAC;KAC3B;CAOF"}
@@ -0,0 +1,205 @@
1
+ /**
2
+ * SelfAttentionController - Self-Attention Mechanism for Memory Systems
3
+ *
4
+ * Implements self-attention over stored memory entries, allowing the system
5
+ * to compute attention scores that determine which memories are most relevant
6
+ * to a given query vector.
7
+ *
8
+ * Features:
9
+ * - Scaled dot-product attention
10
+ * - Softmax normalization
11
+ * - Top-k filtering with minimum score threshold
12
+ * - Efficient batch processing for large memory sets
13
+ */
14
+ /**
15
+ * Self-attention controller for computing attention over memory entries
16
+ */
17
+ export class SelfAttentionController {
18
+ vectorBackend;
19
+ memoryStore;
20
+ dimension;
21
+ config;
22
+ constructor(vectorBackend = null, config = {}) {
23
+ this.vectorBackend = vectorBackend;
24
+ this.memoryStore = new Map();
25
+ this.dimension = 0;
26
+ this.config = {
27
+ topK: 10,
28
+ minScore: 0.0,
29
+ temperature: 1.0,
30
+ returnWeights: false,
31
+ ...config
32
+ };
33
+ }
34
+ /**
35
+ * Add a memory entry to the attention context
36
+ */
37
+ addMemory(entry) {
38
+ if (!entry.id || !entry.embedding || entry.embedding.length === 0) {
39
+ throw new Error('Memory entry must have id and non-empty embedding');
40
+ }
41
+ if (this.dimension === 0) {
42
+ this.dimension = entry.embedding.length;
43
+ }
44
+ else if (entry.embedding.length !== this.dimension) {
45
+ throw new Error(`Embedding dimension mismatch: expected ${this.dimension}, got ${entry.embedding.length}`);
46
+ }
47
+ this.memoryStore.set(entry.id, entry);
48
+ // Also add to vector backend if available
49
+ if (this.vectorBackend) {
50
+ const embedding = new Float32Array(entry.embedding);
51
+ this.vectorBackend.insert(entry.id, embedding, entry.metadata);
52
+ }
53
+ }
54
+ /**
55
+ * Remove a memory entry from the attention context
56
+ */
57
+ removeMemory(id) {
58
+ return this.memoryStore.delete(id);
59
+ }
60
+ /**
61
+ * Clear all memory entries
62
+ */
63
+ clearMemories() {
64
+ this.memoryStore.clear();
65
+ this.dimension = 0;
66
+ }
67
+ /**
68
+ * Compute self-attention for a query vector
69
+ *
70
+ * @param query - Query vector for attention computation
71
+ * @param options - Override default configuration options
72
+ * @returns Self-attention result with scores and attended output
73
+ */
74
+ async computeAttention(query, options = {}) {
75
+ const startTime = performance.now();
76
+ // Validate input
77
+ if (!query || !Array.isArray(query)) {
78
+ throw new Error('Query must be a non-null array');
79
+ }
80
+ const config = { ...this.config, ...options };
81
+ const { topK = 10, minScore = 0.0, temperature = 1.0 } = config;
82
+ // Handle empty memory case
83
+ if (this.memoryStore.size === 0) {
84
+ return {
85
+ scores: [],
86
+ attended: [...query],
87
+ executionTimeMs: performance.now() - startTime
88
+ };
89
+ }
90
+ // Validate query dimension
91
+ if (this.dimension > 0 && query.length !== this.dimension) {
92
+ throw new Error(`Query dimension mismatch: expected ${this.dimension}, got ${query.length}`);
93
+ }
94
+ // Compute raw attention scores using scaled dot-product
95
+ const rawScores = [];
96
+ const scale = 1.0 / Math.sqrt(query.length);
97
+ for (const [id, entry] of this.memoryStore.entries()) {
98
+ const dotProduct = this.computeDotProduct(query, entry.embedding);
99
+ const scaledScore = dotProduct * scale / temperature;
100
+ rawScores.push({ id, score: scaledScore, embedding: entry.embedding });
101
+ }
102
+ // Apply softmax normalization
103
+ const normalizedScores = this.applySoftmax(rawScores);
104
+ // Filter by minimum score and take top-k
105
+ const filteredScores = normalizedScores
106
+ .filter(item => item.score >= minScore)
107
+ .sort((a, b) => b.score - a.score)
108
+ .slice(0, topK);
109
+ // Compute attended output (weighted sum of values)
110
+ const attended = this.computeAttendedOutput(query, normalizedScores);
111
+ const executionTimeMs = performance.now() - startTime;
112
+ return {
113
+ scores: filteredScores.map(item => ({
114
+ id: item.id,
115
+ score: item.score,
116
+ rawScore: item.rawScore
117
+ })),
118
+ attended,
119
+ executionTimeMs
120
+ };
121
+ }
122
+ /**
123
+ * Compute dot product between two vectors
124
+ */
125
+ computeDotProduct(a, b) {
126
+ let sum = 0;
127
+ const len = Math.min(a.length, b.length);
128
+ for (let i = 0; i < len; i++) {
129
+ sum += a[i] * b[i];
130
+ }
131
+ return sum;
132
+ }
133
+ /**
134
+ * Apply softmax normalization to scores
135
+ */
136
+ applySoftmax(items) {
137
+ if (items.length === 0)
138
+ return [];
139
+ // Find max for numerical stability
140
+ const maxScore = Math.max(...items.map(item => item.score));
141
+ // Compute exp(score - max) for each item
142
+ const expScores = items.map(item => ({
143
+ ...item,
144
+ rawScore: item.score,
145
+ expScore: Math.exp(item.score - maxScore)
146
+ }));
147
+ // Compute sum for normalization
148
+ const sumExp = expScores.reduce((sum, item) => sum + item.expScore, 0);
149
+ // Handle edge case where sum is 0 or very small
150
+ if (sumExp === 0 || !isFinite(sumExp)) {
151
+ return items.map(item => ({
152
+ ...item,
153
+ rawScore: item.score,
154
+ score: 1 / items.length
155
+ }));
156
+ }
157
+ // Normalize to get probabilities
158
+ return expScores.map(item => ({
159
+ id: item.id,
160
+ score: item.expScore / sumExp,
161
+ rawScore: item.rawScore,
162
+ embedding: item.embedding
163
+ }));
164
+ }
165
+ /**
166
+ * Compute attended output as weighted sum of memory embeddings
167
+ */
168
+ computeAttendedOutput(query, normalizedScores) {
169
+ if (normalizedScores.length === 0) {
170
+ return [...query];
171
+ }
172
+ const dimension = query.length;
173
+ const attended = new Array(dimension).fill(0);
174
+ for (const item of normalizedScores) {
175
+ const weight = item.score;
176
+ for (let i = 0; i < dimension; i++) {
177
+ attended[i] += weight * item.embedding[i];
178
+ }
179
+ }
180
+ return attended;
181
+ }
182
+ /**
183
+ * Get the number of memories in the attention context
184
+ */
185
+ get memoryCount() {
186
+ return this.memoryStore.size;
187
+ }
188
+ /**
189
+ * Get the embedding dimension
190
+ */
191
+ get embeddingDimension() {
192
+ return this.dimension;
193
+ }
194
+ /**
195
+ * Get statistics about the attention controller
196
+ */
197
+ getStats() {
198
+ return {
199
+ memoryCount: this.memoryStore.size,
200
+ dimension: this.dimension,
201
+ hasVectorBackend: this.vectorBackend !== null
202
+ };
203
+ }
204
+ }
205
+ //# sourceMappingURL=SelfAttentionController.js.map