agentdb 3.0.0-alpha.10 → 3.0.0-alpha.12

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 (648) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2821 -225
  3. package/dist/src/backends/VectorBackend.d.ts +31 -6
  4. package/dist/src/backends/VectorBackend.d.ts.map +1 -1
  5. package/dist/src/backends/detector.js.map +1 -1
  6. package/dist/src/backends/factory.d.ts +16 -33
  7. package/dist/src/backends/factory.d.ts.map +1 -1
  8. package/dist/src/backends/factory.js +138 -108
  9. package/dist/src/backends/factory.js.map +1 -1
  10. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts.map +1 -1
  11. package/dist/src/backends/hnswlib/HNSWLibBackend.js +29 -2
  12. package/dist/src/backends/hnswlib/HNSWLibBackend.js.map +1 -1
  13. package/dist/src/backends/ruvector/RuVectorBackend.d.ts +198 -45
  14. package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
  15. package/dist/src/backends/ruvector/RuVectorBackend.js +612 -277
  16. package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
  17. package/dist/src/backends/ruvector/RuVectorLearning.d.ts +0 -4
  18. package/dist/src/backends/ruvector/RuVectorLearning.d.ts.map +1 -1
  19. package/dist/src/backends/ruvector/RuVectorLearning.js +0 -6
  20. package/dist/src/backends/ruvector/RuVectorLearning.js.map +1 -1
  21. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts +175 -0
  22. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts.map +1 -0
  23. package/dist/src/backends/rvf/AdaptiveIndexTuner.js +559 -0
  24. package/dist/src/backends/rvf/AdaptiveIndexTuner.js.map +1 -0
  25. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts +148 -0
  26. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts.map +1 -0
  27. package/dist/src/backends/rvf/ContrastiveTrainer.js +438 -0
  28. package/dist/src/backends/rvf/ContrastiveTrainer.js.map +1 -0
  29. package/dist/src/backends/rvf/FederatedSessionManager.d.ts +211 -0
  30. package/dist/src/backends/rvf/FederatedSessionManager.d.ts.map +1 -0
  31. package/dist/src/backends/rvf/FederatedSessionManager.js +389 -0
  32. package/dist/src/backends/rvf/FederatedSessionManager.js.map +1 -0
  33. package/dist/src/backends/rvf/FilterBuilder.d.ts +136 -0
  34. package/dist/src/backends/rvf/FilterBuilder.d.ts.map +1 -0
  35. package/dist/src/backends/rvf/FilterBuilder.js +157 -0
  36. package/dist/src/backends/rvf/FilterBuilder.js.map +1 -0
  37. package/dist/src/backends/rvf/NativeAccelerator.d.ts +140 -0
  38. package/dist/src/backends/rvf/NativeAccelerator.d.ts.map +1 -0
  39. package/dist/src/backends/rvf/NativeAccelerator.js +630 -0
  40. package/dist/src/backends/rvf/NativeAccelerator.js.map +1 -0
  41. package/dist/src/backends/rvf/RvfBackend.d.ts +194 -0
  42. package/dist/src/backends/rvf/RvfBackend.d.ts.map +1 -0
  43. package/dist/src/backends/rvf/RvfBackend.js +607 -0
  44. package/dist/src/backends/rvf/RvfBackend.js.map +1 -0
  45. package/dist/src/backends/rvf/RvfSolver.d.ts +175 -0
  46. package/dist/src/backends/rvf/RvfSolver.d.ts.map +1 -0
  47. package/dist/src/backends/rvf/RvfSolver.js +176 -0
  48. package/dist/src/backends/rvf/RvfSolver.js.map +1 -0
  49. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts +143 -0
  50. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts.map +1 -0
  51. package/dist/src/backends/rvf/SelfLearningRvfBackend.js +569 -0
  52. package/dist/src/backends/rvf/SelfLearningRvfBackend.js.map +1 -0
  53. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts +128 -0
  54. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts.map +1 -0
  55. package/dist/src/backends/rvf/SemanticQueryRouter.js +415 -0
  56. package/dist/src/backends/rvf/SemanticQueryRouter.js.map +1 -0
  57. package/dist/src/backends/rvf/SimdFallbacks.d.ts +25 -0
  58. package/dist/src/backends/rvf/SimdFallbacks.d.ts.map +1 -0
  59. package/dist/src/backends/rvf/SimdFallbacks.js +287 -0
  60. package/dist/src/backends/rvf/SimdFallbacks.js.map +1 -0
  61. package/dist/src/backends/rvf/SolverBandit.d.ts +100 -0
  62. package/dist/src/backends/rvf/SolverBandit.d.ts.map +1 -0
  63. package/dist/src/backends/rvf/SolverBandit.js +216 -0
  64. package/dist/src/backends/rvf/SolverBandit.js.map +1 -0
  65. package/dist/src/backends/rvf/SonaLearningBackend.d.ts +157 -0
  66. package/dist/src/backends/rvf/SonaLearningBackend.d.ts.map +1 -0
  67. package/dist/src/backends/rvf/SonaLearningBackend.js +283 -0
  68. package/dist/src/backends/rvf/SonaLearningBackend.js.map +1 -0
  69. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts +77 -0
  70. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts.map +1 -0
  71. package/dist/src/backends/rvf/SqlJsRvfBackend.js +382 -0
  72. package/dist/src/backends/rvf/SqlJsRvfBackend.js.map +1 -0
  73. package/dist/src/backends/rvf/WasmStoreBridge.d.ts +27 -0
  74. package/dist/src/backends/rvf/WasmStoreBridge.d.ts.map +1 -0
  75. package/dist/src/backends/rvf/WasmStoreBridge.js +87 -0
  76. package/dist/src/backends/rvf/WasmStoreBridge.js.map +1 -0
  77. package/dist/src/backends/rvf/validation.d.ts +20 -0
  78. package/dist/src/backends/rvf/validation.d.ts.map +1 -0
  79. package/dist/src/backends/rvf/validation.js +78 -0
  80. package/dist/src/backends/rvf/validation.js.map +1 -0
  81. package/dist/src/benchmark/BenchmarkSuite.d.ts +318 -0
  82. package/dist/src/benchmark/BenchmarkSuite.d.ts.map +1 -0
  83. package/dist/src/benchmark/BenchmarkSuite.js +984 -0
  84. package/dist/src/benchmark/BenchmarkSuite.js.map +1 -0
  85. package/dist/src/benchmark/index.d.ts +29 -0
  86. package/dist/src/benchmark/index.d.ts.map +1 -0
  87. package/dist/src/benchmark/index.js +39 -0
  88. package/dist/src/benchmark/index.js.map +1 -0
  89. package/dist/src/browser/AttentionBrowser.d.ts.map +1 -1
  90. package/dist/src/browser/AttentionBrowser.js +1 -0
  91. package/dist/src/browser/AttentionBrowser.js.map +1 -1
  92. package/dist/src/cli/agentdb-cli.d.ts +13 -0
  93. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  94. package/dist/src/cli/agentdb-cli.js +803 -94
  95. package/dist/src/cli/agentdb-cli.js.map +1 -1
  96. package/dist/src/cli/commands/hyperbolic.d.ts +11 -0
  97. package/dist/src/cli/commands/hyperbolic.d.ts.map +1 -0
  98. package/dist/src/cli/commands/hyperbolic.js +428 -0
  99. package/dist/src/cli/commands/hyperbolic.js.map +1 -0
  100. package/dist/src/cli/commands/learn.d.ts +11 -0
  101. package/dist/src/cli/commands/learn.d.ts.map +1 -0
  102. package/dist/src/cli/commands/learn.js +404 -0
  103. package/dist/src/cli/commands/learn.js.map +1 -0
  104. package/dist/src/cli/commands/migrate.d.ts +15 -0
  105. package/dist/src/cli/commands/migrate.d.ts.map +1 -1
  106. package/dist/src/cli/commands/migrate.js +176 -8
  107. package/dist/src/cli/commands/migrate.js.map +1 -1
  108. package/dist/src/cli/commands/route.d.ts +11 -0
  109. package/dist/src/cli/commands/route.d.ts.map +1 -0
  110. package/dist/src/cli/commands/route.js +414 -0
  111. package/dist/src/cli/commands/route.js.map +1 -0
  112. package/dist/src/cli/commands/rvf.d.ts +21 -0
  113. package/dist/src/cli/commands/rvf.d.ts.map +1 -0
  114. package/dist/src/cli/commands/rvf.js +448 -0
  115. package/dist/src/cli/commands/rvf.js.map +1 -0
  116. package/dist/src/cli/lib/report-store.d.ts +2 -1
  117. package/dist/src/cli/lib/report-store.d.ts.map +1 -1
  118. package/dist/src/cli/lib/report-store.js +85 -65
  119. package/dist/src/cli/lib/report-store.js.map +1 -1
  120. package/dist/src/cli/lib/simulation-runner.d.ts +40 -3
  121. package/dist/src/cli/lib/simulation-runner.d.ts.map +1 -1
  122. package/dist/src/cli/lib/simulation-runner.js +248 -6
  123. package/dist/src/cli/lib/simulation-runner.js.map +1 -1
  124. package/dist/src/compatibility/DeprecationWarnings.d.ts +54 -0
  125. package/dist/src/compatibility/DeprecationWarnings.d.ts.map +1 -0
  126. package/dist/src/compatibility/DeprecationWarnings.js +131 -0
  127. package/dist/src/compatibility/DeprecationWarnings.js.map +1 -0
  128. package/dist/src/compatibility/MigrationUtilities.d.ts +30 -0
  129. package/dist/src/compatibility/MigrationUtilities.d.ts.map +1 -0
  130. package/dist/src/compatibility/MigrationUtilities.js +184 -0
  131. package/dist/src/compatibility/MigrationUtilities.js.map +1 -0
  132. package/dist/src/compatibility/V1toV2Adapter.d.ts +76 -0
  133. package/dist/src/compatibility/V1toV2Adapter.d.ts.map +1 -0
  134. package/dist/src/compatibility/V1toV2Adapter.js +185 -0
  135. package/dist/src/compatibility/V1toV2Adapter.js.map +1 -0
  136. package/dist/src/compatibility/VersionDetector.d.ts +32 -0
  137. package/dist/src/compatibility/VersionDetector.d.ts.map +1 -0
  138. package/dist/src/compatibility/VersionDetector.js +144 -0
  139. package/dist/src/compatibility/VersionDetector.js.map +1 -0
  140. package/dist/src/compatibility/index.d.ts +14 -0
  141. package/dist/src/compatibility/index.d.ts.map +1 -0
  142. package/dist/src/compatibility/index.js +21 -0
  143. package/dist/src/compatibility/index.js.map +1 -0
  144. package/dist/src/compatibility/types.d.ts +103 -0
  145. package/dist/src/compatibility/types.d.ts.map +1 -0
  146. package/dist/src/compatibility/types.js +5 -0
  147. package/dist/src/compatibility/types.js.map +1 -0
  148. package/dist/src/controllers/AttentionService.d.ts +99 -202
  149. package/dist/src/controllers/AttentionService.d.ts.map +1 -1
  150. package/dist/src/controllers/AttentionService.js +450 -558
  151. package/dist/src/controllers/AttentionService.js.map +1 -1
  152. package/dist/src/controllers/CausalMemoryGraph.d.ts +30 -5
  153. package/dist/src/controllers/CausalMemoryGraph.d.ts.map +1 -1
  154. package/dist/src/controllers/CausalMemoryGraph.js +89 -13
  155. package/dist/src/controllers/CausalMemoryGraph.js.map +1 -1
  156. package/dist/src/controllers/CausalRecall.d.ts +4 -0
  157. package/dist/src/controllers/CausalRecall.d.ts.map +1 -1
  158. package/dist/src/controllers/CausalRecall.js +19 -2
  159. package/dist/src/controllers/CausalRecall.js.map +1 -1
  160. package/dist/src/controllers/EmbeddingService.d.ts.map +1 -1
  161. package/dist/src/controllers/EmbeddingService.js +28 -11
  162. package/dist/src/controllers/EmbeddingService.js.map +1 -1
  163. package/dist/src/controllers/EnhancedEmbeddingService.d.ts +4 -0
  164. package/dist/src/controllers/EnhancedEmbeddingService.d.ts.map +1 -1
  165. package/dist/src/controllers/EnhancedEmbeddingService.js +17 -3
  166. package/dist/src/controllers/EnhancedEmbeddingService.js.map +1 -1
  167. package/dist/src/controllers/ExplainableRecall.d.ts +1 -1
  168. package/dist/src/controllers/ExplainableRecall.d.ts.map +1 -1
  169. package/dist/src/controllers/ExplainableRecall.js +1 -1
  170. package/dist/src/controllers/ExplainableRecall.js.map +1 -1
  171. package/dist/src/controllers/HNSWIndex.d.ts +20 -2
  172. package/dist/src/controllers/HNSWIndex.d.ts.map +1 -1
  173. package/dist/src/controllers/HNSWIndex.js +82 -6
  174. package/dist/src/controllers/HNSWIndex.js.map +1 -1
  175. package/dist/src/controllers/LearningSystem.d.ts +1 -17
  176. package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
  177. package/dist/src/controllers/LearningSystem.js +18 -135
  178. package/dist/src/controllers/LearningSystem.js.map +1 -1
  179. package/dist/src/controllers/MemoryController.d.ts +161 -0
  180. package/dist/src/controllers/MemoryController.d.ts.map +1 -0
  181. package/dist/src/controllers/MemoryController.js +303 -0
  182. package/dist/src/controllers/MemoryController.js.map +1 -0
  183. package/dist/src/controllers/MincutService.d.ts +92 -0
  184. package/dist/src/controllers/MincutService.d.ts.map +1 -0
  185. package/dist/src/controllers/MincutService.js +336 -0
  186. package/dist/src/controllers/MincutService.js.map +1 -0
  187. package/dist/src/controllers/NightlyLearner.d.ts +5 -1
  188. package/dist/src/controllers/NightlyLearner.d.ts.map +1 -1
  189. package/dist/src/controllers/NightlyLearner.js +17 -3
  190. package/dist/src/controllers/NightlyLearner.js.map +1 -1
  191. package/dist/src/controllers/QUICClient.d.ts +45 -0
  192. package/dist/src/controllers/QUICClient.d.ts.map +1 -1
  193. package/dist/src/controllers/QUICClient.js +190 -0
  194. package/dist/src/controllers/QUICClient.js.map +1 -1
  195. package/dist/src/controllers/ReasoningBank.d.ts +6 -3
  196. package/dist/src/controllers/ReasoningBank.d.ts.map +1 -1
  197. package/dist/src/controllers/ReasoningBank.js +47 -41
  198. package/dist/src/controllers/ReasoningBank.js.map +1 -1
  199. package/dist/src/controllers/ReflexionMemory.d.ts +115 -6
  200. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  201. package/dist/src/controllers/ReflexionMemory.js +541 -213
  202. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  203. package/dist/src/controllers/SkillLibrary.d.ts +27 -3
  204. package/dist/src/controllers/SkillLibrary.d.ts.map +1 -1
  205. package/dist/src/controllers/SkillLibrary.js +187 -91
  206. package/dist/src/controllers/SkillLibrary.js.map +1 -1
  207. package/dist/src/controllers/SparsificationService.d.ts +151 -0
  208. package/dist/src/controllers/SparsificationService.d.ts.map +1 -0
  209. package/dist/src/controllers/SparsificationService.js +375 -0
  210. package/dist/src/controllers/SparsificationService.js.map +1 -0
  211. package/dist/src/controllers/SyncCoordinator.d.ts.map +1 -1
  212. package/dist/src/controllers/SyncCoordinator.js +115 -3
  213. package/dist/src/controllers/SyncCoordinator.js.map +1 -1
  214. package/dist/src/controllers/WASMVectorSearch.d.ts +12 -30
  215. package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
  216. package/dist/src/controllers/WASMVectorSearch.js +146 -93
  217. package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
  218. package/dist/src/controllers/attention/AttentionCache.d.ts +38 -0
  219. package/dist/src/controllers/attention/AttentionCache.d.ts.map +1 -0
  220. package/dist/src/controllers/attention/AttentionCache.js +80 -0
  221. package/dist/src/controllers/attention/AttentionCache.js.map +1 -0
  222. package/dist/src/controllers/attention/AttentionConfig.d.ts +127 -0
  223. package/dist/src/controllers/attention/AttentionConfig.d.ts.map +1 -0
  224. package/dist/src/controllers/attention/AttentionConfig.js +124 -0
  225. package/dist/src/controllers/attention/AttentionConfig.js.map +1 -0
  226. package/dist/src/controllers/attention/AttentionCore.d.ts +89 -0
  227. package/dist/src/controllers/attention/AttentionCore.d.ts.map +1 -0
  228. package/dist/src/controllers/attention/AttentionCore.js +289 -0
  229. package/dist/src/controllers/attention/AttentionCore.js.map +1 -0
  230. package/dist/src/controllers/attention/AttentionHelpers.d.ts +55 -0
  231. package/dist/src/controllers/attention/AttentionHelpers.d.ts.map +1 -0
  232. package/dist/src/controllers/attention/AttentionHelpers.js +148 -0
  233. package/dist/src/controllers/attention/AttentionHelpers.js.map +1 -0
  234. package/dist/src/controllers/attention/AttentionMetrics.d.ts +55 -0
  235. package/dist/src/controllers/attention/AttentionMetrics.d.ts.map +1 -0
  236. package/dist/src/controllers/attention/AttentionMetrics.js +72 -0
  237. package/dist/src/controllers/attention/AttentionMetrics.js.map +1 -0
  238. package/dist/src/controllers/attention/AttentionWASM.d.ts +98 -0
  239. package/dist/src/controllers/attention/AttentionWASM.d.ts.map +1 -0
  240. package/dist/src/controllers/attention/AttentionWASM.js +147 -0
  241. package/dist/src/controllers/attention/AttentionWASM.js.map +1 -0
  242. package/dist/src/controllers/attention/CrossAttentionController.d.ts +141 -0
  243. package/dist/src/controllers/attention/CrossAttentionController.d.ts.map +1 -0
  244. package/dist/src/controllers/attention/CrossAttentionController.js +325 -0
  245. package/dist/src/controllers/attention/CrossAttentionController.js.map +1 -0
  246. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts +137 -0
  247. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts.map +1 -0
  248. package/dist/src/controllers/attention/MultiHeadAttentionController.js +336 -0
  249. package/dist/src/controllers/attention/MultiHeadAttentionController.js.map +1 -0
  250. package/dist/src/controllers/attention/SelfAttentionController.d.ts +117 -0
  251. package/dist/src/controllers/attention/SelfAttentionController.d.ts.map +1 -0
  252. package/dist/src/controllers/attention/SelfAttentionController.js +205 -0
  253. package/dist/src/controllers/attention/SelfAttentionController.js.map +1 -0
  254. package/dist/src/controllers/attention/index.d.ts +24 -0
  255. package/dist/src/controllers/attention/index.d.ts.map +1 -0
  256. package/dist/src/controllers/attention/index.js +20 -0
  257. package/dist/src/controllers/attention/index.js.map +1 -0
  258. package/dist/src/controllers/index.d.ts +14 -27
  259. package/dist/src/controllers/index.d.ts.map +1 -1
  260. package/dist/src/controllers/index.js +10 -18
  261. package/dist/src/controllers/index.js.map +1 -1
  262. package/dist/src/controllers/prerequisites.d.ts +76 -0
  263. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  264. package/dist/src/controllers/prerequisites.js +235 -0
  265. package/dist/src/controllers/prerequisites.js.map +1 -0
  266. package/dist/src/core/AgentDB.d.ts +27 -19
  267. package/dist/src/core/AgentDB.d.ts.map +1 -1
  268. package/dist/src/core/AgentDB.js +76 -124
  269. package/dist/src/core/AgentDB.js.map +1 -1
  270. package/dist/src/core/QueryCache.d.ts +138 -0
  271. package/dist/src/core/QueryCache.d.ts.map +1 -0
  272. package/dist/src/core/QueryCache.js +309 -0
  273. package/dist/src/core/QueryCache.js.map +1 -0
  274. package/dist/src/db-fallback.d.ts +10 -1
  275. package/dist/src/db-fallback.d.ts.map +1 -1
  276. package/dist/src/db-fallback.js +205 -28
  277. package/dist/src/db-fallback.js.map +1 -1
  278. package/dist/src/examples/quic-sync-example.js +2 -2
  279. package/dist/src/examples/quic-sync-example.js.map +1 -1
  280. package/dist/src/index.d.ts +15 -15
  281. package/dist/src/index.d.ts.map +1 -1
  282. package/dist/src/index.js +39 -11
  283. package/dist/src/index.js.map +1 -1
  284. package/dist/src/mcp/agentdb-mcp-server.js +47 -2
  285. package/dist/src/mcp/agentdb-mcp-server.js.map +1 -1
  286. package/dist/src/model/ModelCacheLoader.d.ts +24 -0
  287. package/dist/src/model/ModelCacheLoader.d.ts.map +1 -0
  288. package/dist/src/model/ModelCacheLoader.js +121 -0
  289. package/dist/src/model/ModelCacheLoader.js.map +1 -0
  290. package/dist/src/observability/index.d.ts +8 -0
  291. package/dist/src/observability/index.d.ts.map +1 -0
  292. package/dist/src/observability/index.js +8 -0
  293. package/dist/src/observability/index.js.map +1 -0
  294. package/dist/src/observability/integration.d.ts +32 -0
  295. package/dist/src/observability/integration.d.ts.map +1 -0
  296. package/dist/src/observability/integration.js +159 -0
  297. package/dist/src/observability/integration.js.map +1 -0
  298. package/dist/src/observability/telemetry.d.ts +137 -0
  299. package/dist/src/observability/telemetry.d.ts.map +1 -0
  300. package/dist/src/observability/telemetry.js +416 -0
  301. package/dist/src/observability/telemetry.js.map +1 -0
  302. package/dist/src/optimizations/BatchOperations.d.ts +47 -0
  303. package/dist/src/optimizations/BatchOperations.d.ts.map +1 -1
  304. package/dist/src/optimizations/BatchOperations.js +183 -31
  305. package/dist/src/optimizations/BatchOperations.js.map +1 -1
  306. package/dist/src/optimizations/Quantization.d.ts +330 -0
  307. package/dist/src/optimizations/Quantization.d.ts.map +1 -0
  308. package/dist/src/optimizations/Quantization.js +793 -0
  309. package/dist/src/optimizations/Quantization.js.map +1 -0
  310. package/dist/src/optimizations/index.d.ts +1 -3
  311. package/dist/src/optimizations/index.d.ts.map +1 -1
  312. package/dist/src/optimizations/index.js +0 -1
  313. package/dist/src/optimizations/index.js.map +1 -1
  314. package/dist/src/quantization/index.d.ts +7 -0
  315. package/dist/src/quantization/index.d.ts.map +1 -0
  316. package/dist/src/quantization/index.js +15 -0
  317. package/dist/src/quantization/index.js.map +1 -0
  318. package/dist/src/quantization/vector-quantization.d.ts +388 -0
  319. package/dist/src/quantization/vector-quantization.d.ts.map +1 -0
  320. package/dist/src/quantization/vector-quantization.js +1132 -0
  321. package/dist/src/quantization/vector-quantization.js.map +1 -0
  322. package/dist/src/search/HybridSearch.d.ts +311 -0
  323. package/dist/src/search/HybridSearch.d.ts.map +1 -0
  324. package/dist/src/search/HybridSearch.js +712 -0
  325. package/dist/src/search/HybridSearch.js.map +1 -0
  326. package/dist/src/search/index.d.ts +12 -0
  327. package/dist/src/search/index.d.ts.map +1 -0
  328. package/dist/src/search/index.js +16 -0
  329. package/dist/src/search/index.js.map +1 -0
  330. package/dist/src/services/AttentionService.d.ts +303 -0
  331. package/dist/src/services/AttentionService.d.ts.map +1 -0
  332. package/dist/src/services/AttentionService.js +1165 -0
  333. package/dist/src/services/AttentionService.js.map +1 -0
  334. package/dist/src/services/LLMRouter.d.ts +61 -7
  335. package/dist/src/services/LLMRouter.d.ts.map +1 -1
  336. package/dist/src/services/LLMRouter.js +286 -22
  337. package/dist/src/services/LLMRouter.js.map +1 -1
  338. package/dist/src/services/audit-logger.service.d.ts +168 -0
  339. package/dist/src/services/audit-logger.service.d.ts.map +1 -0
  340. package/dist/src/services/audit-logger.service.js +331 -0
  341. package/dist/src/services/audit-logger.service.js.map +1 -0
  342. package/dist/src/services/enhanced-embeddings.d.ts +271 -0
  343. package/dist/src/services/enhanced-embeddings.d.ts.map +1 -0
  344. package/dist/src/services/enhanced-embeddings.js +1035 -0
  345. package/dist/src/services/enhanced-embeddings.js.map +1 -0
  346. package/dist/src/services/federated-learning.d.ts +172 -0
  347. package/dist/src/services/federated-learning.d.ts.map +1 -0
  348. package/dist/src/services/federated-learning.js +342 -0
  349. package/dist/src/services/federated-learning.js.map +1 -0
  350. package/dist/src/simd/index.d.ts +9 -0
  351. package/dist/src/simd/index.d.ts.map +1 -0
  352. package/dist/src/simd/index.js +27 -0
  353. package/dist/src/simd/index.js.map +1 -0
  354. package/dist/src/simd/simd-vector-ops.d.ts +332 -0
  355. package/dist/src/simd/simd-vector-ops.d.ts.map +1 -0
  356. package/dist/src/simd/simd-vector-ops.js +945 -0
  357. package/dist/src/simd/simd-vector-ops.js.map +1 -0
  358. package/dist/src/types/database.types.d.ts +275 -0
  359. package/dist/src/types/database.types.d.ts.map +1 -0
  360. package/dist/src/types/database.types.js +55 -0
  361. package/dist/src/types/database.types.js.map +1 -0
  362. package/dist/src/types/graph.d.ts +29 -0
  363. package/dist/src/types/graph.d.ts.map +1 -0
  364. package/dist/src/types/graph.js +8 -0
  365. package/dist/src/types/graph.js.map +1 -0
  366. package/dist/src/utils/chalk-fallback.d.ts +3 -0
  367. package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
  368. package/dist/src/utils/chalk-fallback.js +20 -0
  369. package/dist/src/utils/chalk-fallback.js.map +1 -0
  370. package/dist/src/utils/similarity.d.ts +11 -0
  371. package/dist/src/utils/similarity.d.ts.map +1 -0
  372. package/dist/src/utils/similarity.js +25 -0
  373. package/dist/src/utils/similarity.js.map +1 -0
  374. package/dist/src/wasm-loader.d.ts +66 -0
  375. package/dist/src/wasm-loader.d.ts.map +1 -0
  376. package/dist/src/wasm-loader.js +76 -0
  377. package/dist/src/wasm-loader.js.map +1 -0
  378. package/dist/src/wrappers/agentdb-fast.d.ts +139 -0
  379. package/dist/src/wrappers/agentdb-fast.d.ts.map +1 -0
  380. package/dist/src/wrappers/agentdb-fast.js +307 -0
  381. package/dist/src/wrappers/agentdb-fast.js.map +1 -0
  382. package/dist/src/wrappers/attention-fallbacks.d.ts +343 -0
  383. package/dist/src/wrappers/attention-fallbacks.d.ts.map +1 -0
  384. package/dist/src/wrappers/attention-fallbacks.js +1484 -0
  385. package/dist/src/wrappers/attention-fallbacks.js.map +1 -0
  386. package/dist/src/wrappers/attention-native.d.ts +111 -0
  387. package/dist/src/wrappers/attention-native.d.ts.map +1 -0
  388. package/dist/src/wrappers/attention-native.js +273 -0
  389. package/dist/src/wrappers/attention-native.js.map +1 -0
  390. package/dist/src/wrappers/embedding-service.d.ts +117 -0
  391. package/dist/src/wrappers/embedding-service.d.ts.map +1 -0
  392. package/dist/src/wrappers/embedding-service.js +370 -0
  393. package/dist/src/wrappers/embedding-service.js.map +1 -0
  394. package/dist/src/wrappers/gnn-wrapper.d.ts +71 -0
  395. package/dist/src/wrappers/gnn-wrapper.d.ts.map +1 -0
  396. package/dist/src/wrappers/gnn-wrapper.js +236 -0
  397. package/dist/src/wrappers/gnn-wrapper.js.map +1 -0
  398. package/dist/src/wrappers/index.d.ts +48 -0
  399. package/dist/src/wrappers/index.d.ts.map +1 -0
  400. package/dist/src/wrappers/index.js +83 -0
  401. package/dist/src/wrappers/index.js.map +1 -0
  402. package/package.json +77 -76
  403. package/scripts/postinstall.cjs +13 -144
  404. package/dist/agentdb.browser.js +0 -1685
  405. package/dist/agentdb.browser.js.map +0 -7
  406. package/dist/agentdb.browser.min.js +0 -3
  407. package/dist/agentdb.browser.min.js.map +0 -7
  408. package/dist/agentdb.wasm-loader.js +0 -207
  409. package/dist/backends/VectorBackend.d.ts +0 -120
  410. package/dist/backends/VectorBackend.js +0 -14
  411. package/dist/backends/VectorBackend.js.map +0 -1
  412. package/dist/optimizations/RVFOptimizer.d.ts +0 -225
  413. package/dist/optimizations/RVFOptimizer.js +0 -541
  414. package/dist/optimizations/RVFOptimizer.js.map +0 -1
  415. package/dist/schemas/frontier-schema.sql +0 -378
  416. package/dist/schemas/schema.sql +0 -382
  417. package/dist/simulation/cli.d.ts +0 -9
  418. package/dist/simulation/cli.d.ts.map +0 -1
  419. package/dist/simulation/cli.js +0 -68
  420. package/dist/simulation/cli.js.map +0 -1
  421. package/dist/simulation/runner.d.ts +0 -21
  422. package/dist/simulation/runner.d.ts.map +0 -1
  423. package/dist/simulation/runner.js +0 -241
  424. package/dist/simulation/runner.js.map +0 -1
  425. package/dist/simulation/scenarios/aidefence-integration.d.ts +0 -24
  426. package/dist/simulation/scenarios/aidefence-integration.d.ts.map +0 -1
  427. package/dist/simulation/scenarios/aidefence-integration.js +0 -124
  428. package/dist/simulation/scenarios/aidefence-integration.js.map +0 -1
  429. package/dist/simulation/scenarios/bmssp-integration.d.ts +0 -23
  430. package/dist/simulation/scenarios/bmssp-integration.d.ts.map +0 -1
  431. package/dist/simulation/scenarios/bmssp-integration.js +0 -104
  432. package/dist/simulation/scenarios/bmssp-integration.js.map +0 -1
  433. package/dist/simulation/scenarios/causal-reasoning.d.ts +0 -16
  434. package/dist/simulation/scenarios/causal-reasoning.d.ts.map +0 -1
  435. package/dist/simulation/scenarios/causal-reasoning.js +0 -108
  436. package/dist/simulation/scenarios/causal-reasoning.js.map +0 -1
  437. package/dist/simulation/scenarios/consciousness-explorer.d.ts +0 -25
  438. package/dist/simulation/scenarios/consciousness-explorer.d.ts.map +0 -1
  439. package/dist/simulation/scenarios/consciousness-explorer.js +0 -108
  440. package/dist/simulation/scenarios/consciousness-explorer.js.map +0 -1
  441. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts +0 -135
  442. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts.map +0 -1
  443. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js +0 -158
  444. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js.map +0 -1
  445. package/dist/simulation/scenarios/domain-examples/index.d.ts +0 -14
  446. package/dist/simulation/scenarios/domain-examples/index.d.ts.map +0 -1
  447. package/dist/simulation/scenarios/domain-examples/index.js +0 -14
  448. package/dist/simulation/scenarios/domain-examples/index.js.map +0 -1
  449. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts +0 -178
  450. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts.map +0 -1
  451. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js +0 -218
  452. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js.map +0 -1
  453. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts +0 -122
  454. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts.map +0 -1
  455. package/dist/simulation/scenarios/domain-examples/medical-imaging.js +0 -129
  456. package/dist/simulation/scenarios/domain-examples/medical-imaging.js.map +0 -1
  457. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts +0 -166
  458. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts.map +0 -1
  459. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js +0 -161
  460. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js.map +0 -1
  461. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts +0 -151
  462. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts.map +0 -1
  463. package/dist/simulation/scenarios/domain-examples/scientific-research.js +0 -187
  464. package/dist/simulation/scenarios/domain-examples/scientific-research.js.map +0 -1
  465. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts +0 -102
  466. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts.map +0 -1
  467. package/dist/simulation/scenarios/domain-examples/trading-systems.js +0 -100
  468. package/dist/simulation/scenarios/domain-examples/trading-systems.js.map +0 -1
  469. package/dist/simulation/scenarios/goalie-integration.d.ts +0 -24
  470. package/dist/simulation/scenarios/goalie-integration.d.ts.map +0 -1
  471. package/dist/simulation/scenarios/goalie-integration.js +0 -121
  472. package/dist/simulation/scenarios/goalie-integration.js.map +0 -1
  473. package/dist/simulation/scenarios/graph-traversal.d.ts +0 -17
  474. package/dist/simulation/scenarios/graph-traversal.d.ts.map +0 -1
  475. package/dist/simulation/scenarios/graph-traversal.js +0 -101
  476. package/dist/simulation/scenarios/graph-traversal.js.map +0 -1
  477. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts +0 -45
  478. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts.map +0 -1
  479. package/dist/simulation/scenarios/latent-space/attention-analysis.js +0 -435
  480. package/dist/simulation/scenarios/latent-space/attention-analysis.js.map +0 -1
  481. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts +0 -55
  482. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts.map +0 -1
  483. package/dist/simulation/scenarios/latent-space/clustering-analysis.js +0 -606
  484. package/dist/simulation/scenarios/latent-space/clustering-analysis.js.map +0 -1
  485. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts +0 -74
  486. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts.map +0 -1
  487. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js +0 -391
  488. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js.map +0 -1
  489. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts +0 -51
  490. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts.map +0 -1
  491. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js +0 -536
  492. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js.map +0 -1
  493. package/dist/simulation/scenarios/latent-space/index.d.ts +0 -35
  494. package/dist/simulation/scenarios/latent-space/index.d.ts.map +0 -1
  495. package/dist/simulation/scenarios/latent-space/index.js +0 -35
  496. package/dist/simulation/scenarios/latent-space/index.js.map +0 -1
  497. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts +0 -52
  498. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts.map +0 -1
  499. package/dist/simulation/scenarios/latent-space/neural-augmentation.js +0 -472
  500. package/dist/simulation/scenarios/latent-space/neural-augmentation.js.map +0 -1
  501. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts +0 -53
  502. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts.map +0 -1
  503. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js +0 -391
  504. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js.map +0 -1
  505. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts +0 -52
  506. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts.map +0 -1
  507. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js +0 -514
  508. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js.map +0 -1
  509. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts +0 -53
  510. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts.map +0 -1
  511. package/dist/simulation/scenarios/latent-space/traversal-optimization.js +0 -595
  512. package/dist/simulation/scenarios/latent-space/traversal-optimization.js.map +0 -1
  513. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts +0 -18
  514. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts.map +0 -1
  515. package/dist/simulation/scenarios/lean-agentic-swarm.js +0 -132
  516. package/dist/simulation/scenarios/lean-agentic-swarm.js.map +0 -1
  517. package/dist/simulation/scenarios/multi-agent-swarm.d.ts +0 -17
  518. package/dist/simulation/scenarios/multi-agent-swarm.d.ts.map +0 -1
  519. package/dist/simulation/scenarios/multi-agent-swarm.js +0 -111
  520. package/dist/simulation/scenarios/multi-agent-swarm.js.map +0 -1
  521. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts +0 -23
  522. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts.map +0 -1
  523. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js +0 -98
  524. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js.map +0 -1
  525. package/dist/simulation/scenarios/reflexion-learning.d.ts +0 -16
  526. package/dist/simulation/scenarios/reflexion-learning.d.ts.map +0 -1
  527. package/dist/simulation/scenarios/reflexion-learning.js +0 -98
  528. package/dist/simulation/scenarios/reflexion-learning.js.map +0 -1
  529. package/dist/simulation/scenarios/research-swarm.d.ts +0 -24
  530. package/dist/simulation/scenarios/research-swarm.d.ts.map +0 -1
  531. package/dist/simulation/scenarios/research-swarm.js +0 -146
  532. package/dist/simulation/scenarios/research-swarm.js.map +0 -1
  533. package/dist/simulation/scenarios/skill-evolution.d.ts +0 -16
  534. package/dist/simulation/scenarios/skill-evolution.d.ts.map +0 -1
  535. package/dist/simulation/scenarios/skill-evolution.js +0 -109
  536. package/dist/simulation/scenarios/skill-evolution.js.map +0 -1
  537. package/dist/simulation/scenarios/stock-market-emergence.d.ts +0 -33
  538. package/dist/simulation/scenarios/stock-market-emergence.d.ts.map +0 -1
  539. package/dist/simulation/scenarios/stock-market-emergence.js +0 -246
  540. package/dist/simulation/scenarios/stock-market-emergence.js.map +0 -1
  541. package/dist/simulation/scenarios/strange-loops.d.ts +0 -18
  542. package/dist/simulation/scenarios/strange-loops.d.ts.map +0 -1
  543. package/dist/simulation/scenarios/strange-loops.js +0 -133
  544. package/dist/simulation/scenarios/strange-loops.js.map +0 -1
  545. package/dist/simulation/scenarios/sublinear-solver.d.ts +0 -22
  546. package/dist/simulation/scenarios/sublinear-solver.d.ts.map +0 -1
  547. package/dist/simulation/scenarios/sublinear-solver.js +0 -82
  548. package/dist/simulation/scenarios/sublinear-solver.js.map +0 -1
  549. package/dist/simulation/scenarios/temporal-lead-solver.d.ts +0 -23
  550. package/dist/simulation/scenarios/temporal-lead-solver.d.ts.map +0 -1
  551. package/dist/simulation/scenarios/temporal-lead-solver.js +0 -90
  552. package/dist/simulation/scenarios/temporal-lead-solver.js.map +0 -1
  553. package/dist/simulation/scenarios/voting-system-consensus.d.ts +0 -27
  554. package/dist/simulation/scenarios/voting-system-consensus.d.ts.map +0 -1
  555. package/dist/simulation/scenarios/voting-system-consensus.js +0 -175
  556. package/dist/simulation/scenarios/voting-system-consensus.js.map +0 -1
  557. package/dist/simulation/types.d.ts +0 -162
  558. package/dist/simulation/types.d.ts.map +0 -1
  559. package/dist/simulation/types.js +0 -5
  560. package/dist/simulation/types.js.map +0 -1
  561. package/dist/simulation/utils/PerformanceOptimizer.d.ts +0 -115
  562. package/dist/simulation/utils/PerformanceOptimizer.d.ts.map +0 -1
  563. package/dist/simulation/utils/PerformanceOptimizer.js +0 -223
  564. package/dist/simulation/utils/PerformanceOptimizer.js.map +0 -1
  565. package/dist/src/backends/index.cjs +0 -6
  566. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts +0 -93
  567. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts.map +0 -1
  568. package/dist/src/backends/ruvector/GuardedVectorBackend.js +0 -182
  569. package/dist/src/backends/ruvector/GuardedVectorBackend.js.map +0 -1
  570. package/dist/src/consensus/RaftConsensus.d.ts +0 -220
  571. package/dist/src/consensus/RaftConsensus.d.ts.map +0 -1
  572. package/dist/src/consensus/RaftConsensus.js +0 -762
  573. package/dist/src/consensus/RaftConsensus.js.map +0 -1
  574. package/dist/src/controllers/HierarchicalMemory.d.ts +0 -197
  575. package/dist/src/controllers/HierarchicalMemory.d.ts.map +0 -1
  576. package/dist/src/controllers/HierarchicalMemory.js +0 -519
  577. package/dist/src/controllers/HierarchicalMemory.js.map +0 -1
  578. package/dist/src/controllers/MemoryConsolidation.d.ts +0 -142
  579. package/dist/src/controllers/MemoryConsolidation.d.ts.map +0 -1
  580. package/dist/src/controllers/MemoryConsolidation.js +0 -479
  581. package/dist/src/controllers/MemoryConsolidation.js.map +0 -1
  582. package/dist/src/controllers/QUICConnection.d.ts +0 -122
  583. package/dist/src/controllers/QUICConnection.d.ts.map +0 -1
  584. package/dist/src/controllers/QUICConnection.js +0 -329
  585. package/dist/src/controllers/QUICConnection.js.map +0 -1
  586. package/dist/src/controllers/QUICConnectionPool.d.ts +0 -83
  587. package/dist/src/controllers/QUICConnectionPool.d.ts.map +0 -1
  588. package/dist/src/controllers/QUICConnectionPool.js +0 -256
  589. package/dist/src/controllers/QUICConnectionPool.js.map +0 -1
  590. package/dist/src/controllers/QUICStreamManager.d.ts +0 -114
  591. package/dist/src/controllers/QUICStreamManager.d.ts.map +0 -1
  592. package/dist/src/controllers/QUICStreamManager.js +0 -267
  593. package/dist/src/controllers/QUICStreamManager.js.map +0 -1
  594. package/dist/src/controllers/StreamingEmbeddingService.d.ts +0 -82
  595. package/dist/src/controllers/StreamingEmbeddingService.d.ts.map +0 -1
  596. package/dist/src/controllers/StreamingEmbeddingService.js +0 -243
  597. package/dist/src/controllers/StreamingEmbeddingService.js.map +0 -1
  598. package/dist/src/controllers/index.cjs +0 -6
  599. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  600. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  601. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  602. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  603. package/dist/src/coordination/index.d.ts +0 -10
  604. package/dist/src/coordination/index.d.ts.map +0 -1
  605. package/dist/src/coordination/index.js +0 -10
  606. package/dist/src/coordination/index.js.map +0 -1
  607. package/dist/src/index.cjs +0 -6
  608. package/dist/src/optimizations/RVFOptimizer.d.ts +0 -226
  609. package/dist/src/optimizations/RVFOptimizer.d.ts.map +0 -1
  610. package/dist/src/optimizations/RVFOptimizer.js +0 -541
  611. package/dist/src/optimizations/RVFOptimizer.js.map +0 -1
  612. package/dist/src/security/AttestationLog.d.ts +0 -70
  613. package/dist/src/security/AttestationLog.d.ts.map +0 -1
  614. package/dist/src/security/AttestationLog.js +0 -174
  615. package/dist/src/security/AttestationLog.js.map +0 -1
  616. package/dist/src/security/MutationGuard.d.ts +0 -83
  617. package/dist/src/security/MutationGuard.d.ts.map +0 -1
  618. package/dist/src/security/MutationGuard.js +0 -364
  619. package/dist/src/security/MutationGuard.js.map +0 -1
  620. package/dist/src/security/index.cjs +0 -6
  621. package/dist/src/security/index.d.ts +0 -15
  622. package/dist/src/security/index.d.ts.map +0 -1
  623. package/dist/src/security/index.js +0 -18
  624. package/dist/src/security/index.js.map +0 -1
  625. package/dist/src/services/GNNService.d.ts +0 -173
  626. package/dist/src/services/GNNService.d.ts.map +0 -1
  627. package/dist/src/services/GNNService.js +0 -639
  628. package/dist/src/services/GNNService.js.map +0 -1
  629. package/dist/src/services/GraphTransformerService.d.ts +0 -80
  630. package/dist/src/services/GraphTransformerService.d.ts.map +0 -1
  631. package/dist/src/services/GraphTransformerService.js +0 -369
  632. package/dist/src/services/GraphTransformerService.js.map +0 -1
  633. package/dist/src/services/SemanticRouter.d.ts +0 -83
  634. package/dist/src/services/SemanticRouter.d.ts.map +0 -1
  635. package/dist/src/services/SemanticRouter.js +0 -160
  636. package/dist/src/services/SemanticRouter.js.map +0 -1
  637. package/dist/src/services/SonaTrajectoryService.d.ts +0 -224
  638. package/dist/src/services/SonaTrajectoryService.d.ts.map +0 -1
  639. package/dist/src/services/SonaTrajectoryService.js +0 -539
  640. package/dist/src/services/SonaTrajectoryService.js.map +0 -1
  641. package/dist/src/utils/LegacyAttentionAdapter.d.ts +0 -93
  642. package/dist/src/utils/LegacyAttentionAdapter.d.ts.map +0 -1
  643. package/dist/src/utils/LegacyAttentionAdapter.js +0 -241
  644. package/dist/src/utils/LegacyAttentionAdapter.js.map +0 -1
  645. package/dist/src/utils/vector-math.d.ts +0 -29
  646. package/dist/src/utils/vector-math.d.ts.map +0 -1
  647. package/dist/src/utils/vector-math.js +0 -66
  648. package/dist/src/utils/vector-math.js.map +0 -1
@@ -1,639 +0,0 @@
1
- /**
2
- * GNNService - Graph Neural Network Integration
3
- *
4
- * Provides high-level GNN capabilities on top of @ruvector/gnn:
5
- * - Semantic intent classification
6
- * - Graph-based skill recommendations
7
- * - Code pattern similarity via graph embeddings
8
- *
9
- * Tries native @ruvector/gnn first (NAPI-RS), falls back to JS.
10
- * All public methods are safe to call regardless of engine availability.
11
- *
12
- * Performance targets (ADR-062):
13
- * - 100x-50000x speedup when native @ruvector/gnn is available
14
- * - Zero-overhead JS fallback when native is not present
15
- */
16
- export class GNNService {
17
- gnn = null;
18
- engineType = 'js';
19
- initialized = false;
20
- config;
21
- constructor(config) {
22
- // Default to 8 heads (128 % 8 = 0, valid for MultiHeadAttention)
23
- const heads = config?.heads ?? config?.layers ?? 8;
24
- this.config = {
25
- inputDim: config?.inputDim ?? 384,
26
- hiddenDim: config?.hiddenDim ?? 128,
27
- outputDim: config?.outputDim ?? 64,
28
- heads,
29
- };
30
- }
31
- /**
32
- * Initialize the GNN engine.
33
- *
34
- * Attempts to load @ruvector/gnn and create a GNN layer.
35
- * Falls back to JS-based heuristics if unavailable.
36
- */
37
- async initialize() {
38
- if (this.initialized)
39
- return;
40
- try {
41
- const mod = await import('@ruvector/gnn');
42
- const RuvectorLayer = mod.RuvectorLayer ||
43
- mod.default?.RuvectorLayer ||
44
- mod.GNN ||
45
- mod.default?.GNN;
46
- if (RuvectorLayer) {
47
- // @ruvector/gnn@0.1.25+ uses Result-based constructors
48
- // RuvectorLayer(inputDim, hiddenDim, numHeads, dropout)
49
- // numHeads must divide hiddenDim evenly (e.g., 128 % 8 = 0)
50
- // Validate head count before calling native constructor
51
- if (this.config.hiddenDim % this.config.heads !== 0) {
52
- const validHeads = [];
53
- for (let h = 1; h <= this.config.hiddenDim; h *= 2) {
54
- if (this.config.hiddenDim % h === 0)
55
- validHeads.push(h);
56
- }
57
- throw new Error(`Invalid head count: ${this.config.heads}. ` +
58
- `hiddenDim (${this.config.hiddenDim}) must be divisible by heads. ` +
59
- `Valid options: [${validHeads.join(', ')}]`);
60
- }
61
- try {
62
- this.gnn = new RuvectorLayer(this.config.inputDim, this.config.hiddenDim, this.config.heads, // FIXED: Use heads parameter (not layers)
63
- 0.1 // dropout
64
- );
65
- this.engineType = 'native';
66
- this.initialized = true;
67
- console.log(`[GNNService] Using native @ruvector/gnn (v0.1.25+) with ${this.config.heads} heads`);
68
- return;
69
- }
70
- catch (constructorError) {
71
- // @ruvector/gnn@0.1.25+ throws errors instead of panicking
72
- const errMsg = constructorError instanceof Error
73
- ? constructorError.message
74
- : String(constructorError);
75
- console.warn(`[GNNService] Native GNN constructor failed: ${errMsg}`);
76
- console.warn('[GNNService] Falling back to JS implementation');
77
- }
78
- }
79
- }
80
- catch (e) {
81
- const msg = e instanceof Error ? e.message : String(e);
82
- console.warn(`[GNNService] Native GNN not available: ${msg}`);
83
- }
84
- this.engineType = 'js';
85
- this.initialized = true;
86
- console.log('[GNNService] Using JS fallback');
87
- }
88
- /**
89
- * Semantic intent classification.
90
- *
91
- * When native GNN is available, runs a forward pass on the embedding
92
- * and maps logits to intent categories. Otherwise uses keyword matching.
93
- */
94
- async classifyIntent(query, embedding) {
95
- if (!this.initialized)
96
- await this.initialize();
97
- const intents = ['search', 'create', 'update', 'delete', 'analyze'];
98
- if (this.engineType === 'native' && this.gnn) {
99
- try {
100
- const logits = typeof this.gnn.forward === 'function'
101
- ? this.gnn.forward(embedding, [], [])
102
- : null;
103
- if (logits && logits.length >= intents.length) {
104
- const logitArray = logits instanceof Float32Array
105
- ? Array.from(logits)
106
- : logits;
107
- // Softmax over intent logits
108
- const expLogits = logitArray.slice(0, intents.length).map((l) => Math.exp(l));
109
- const expSum = expLogits.reduce((s, v) => s + v, 1e-10);
110
- const probs = expLogits.map((e) => e / expSum);
111
- let maxIdx = 0;
112
- for (let i = 1; i < probs.length; i++) {
113
- if (probs[i] > probs[maxIdx])
114
- maxIdx = i;
115
- }
116
- return {
117
- intent: intents[maxIdx],
118
- confidence: probs[maxIdx],
119
- logits: logitArray,
120
- };
121
- }
122
- }
123
- catch {
124
- // Fall through to JS
125
- }
126
- }
127
- // JS fallback: keyword matching
128
- const queryLower = query.toLowerCase();
129
- if (queryLower.includes('search') || queryLower.includes('find') || queryLower.includes('lookup')) {
130
- return { intent: 'search', confidence: 0.8 };
131
- }
132
- if (queryLower.includes('create') || queryLower.includes('add') || queryLower.includes('new')) {
133
- return { intent: 'create', confidence: 0.8 };
134
- }
135
- if (queryLower.includes('update') || queryLower.includes('edit') || queryLower.includes('modify')) {
136
- return { intent: 'update', confidence: 0.8 };
137
- }
138
- if (queryLower.includes('delete') || queryLower.includes('remove') || queryLower.includes('drop')) {
139
- return { intent: 'delete', confidence: 0.8 };
140
- }
141
- if (queryLower.includes('analyze') || queryLower.includes('report') || queryLower.includes('summary')) {
142
- return { intent: 'analyze', confidence: 0.8 };
143
- }
144
- return { intent: 'search', confidence: 0.5 };
145
- }
146
- /**
147
- * Graph-based skill recommendations.
148
- *
149
- * Uses GNN node classification when available, otherwise
150
- * returns adjacent skills from the skill graph map.
151
- */
152
- async recommendSkills(currentSkill, skillGraph) {
153
- if (!this.initialized)
154
- await this.initialize();
155
- if (this.engineType === 'native' && this.gnn) {
156
- try {
157
- // Build adjacency from skill graph for GNN
158
- const skills = Object.keys(skillGraph);
159
- const idx = skills.indexOf(currentSkill);
160
- if (idx >= 0 && typeof this.gnn.forward === 'function') {
161
- // Create a simple embedding from the skill index
162
- const skillEmbed = new Float32Array(this.config.inputDim);
163
- skillEmbed[idx % this.config.inputDim] = 1.0;
164
- const neighborEmbeds = [];
165
- const weights = [];
166
- const neighbors = skillGraph[currentSkill] || [];
167
- for (const neighbor of neighbors) {
168
- const nIdx = skills.indexOf(neighbor);
169
- if (nIdx >= 0) {
170
- const nEmbed = new Float32Array(this.config.inputDim);
171
- nEmbed[nIdx % this.config.inputDim] = 1.0;
172
- neighborEmbeds.push(nEmbed);
173
- weights.push(1.0);
174
- }
175
- }
176
- if (neighborEmbeds.length > 0) {
177
- const enhanced = this.gnn.forward(skillEmbed, neighborEmbeds, weights);
178
- if (enhanced) {
179
- // Use enhanced embedding to rank skills by similarity
180
- const ranked = skills
181
- .filter(s => s !== currentSkill)
182
- .map(s => {
183
- const sIdx = skills.indexOf(s);
184
- return { skill: s, score: enhanced[sIdx % enhanced.length] || 0 };
185
- })
186
- .sort((a, b) => b.score - a.score);
187
- return ranked.slice(0, 5).map(r => r.skill);
188
- }
189
- }
190
- }
191
- }
192
- catch {
193
- // Fall through to JS
194
- }
195
- }
196
- // JS fallback: return direct neighbors from graph
197
- const neighbors = skillGraph[currentSkill] || [];
198
- if (neighbors.length > 0) {
199
- return neighbors.slice(0, 5);
200
- }
201
- return Object.keys(skillGraph).filter(s => s !== currentSkill).slice(0, 5);
202
- }
203
- /**
204
- * Find similar code patterns using graph embedding similarity.
205
- *
206
- * When native GNN is available, uses graph-level similarity.
207
- * Otherwise falls back to cosine similarity.
208
- */
209
- async findSimilarPatterns(pattern, patterns) {
210
- if (!this.initialized)
211
- await this.initialize();
212
- if (this.engineType === 'native' && this.gnn) {
213
- try {
214
- const query = pattern instanceof Float32Array
215
- ? pattern
216
- : new Float32Array(pattern);
217
- const candidates = patterns.map(p => p instanceof Float32Array ? p : new Float32Array(p));
218
- // Use differentiable search if available
219
- if (typeof this.gnn.forward === 'function') {
220
- const enhanced = this.gnn.forward(query, candidates, candidates.map(() => 1.0));
221
- if (enhanced) {
222
- return patterns.map((_, i) => ({
223
- index: i,
224
- similarity: this.cosineSim(Array.from(enhanced), patterns[i]),
225
- })).sort((a, b) => b.similarity - a.similarity);
226
- }
227
- }
228
- }
229
- catch {
230
- // Fall through to JS
231
- }
232
- }
233
- // JS fallback: cosine similarity
234
- return patterns.map((p, i) => ({
235
- index: i,
236
- similarity: this.cosineSim(pattern, p),
237
- })).sort((a, b) => b.similarity - a.similarity);
238
- }
239
- /**
240
- * Get the current engine type.
241
- */
242
- getEngineType() {
243
- return this.engineType;
244
- }
245
- /**
246
- * Check if the service is initialized.
247
- */
248
- isInitialized() {
249
- return this.initialized;
250
- }
251
- /**
252
- * Get service statistics.
253
- */
254
- getStats() {
255
- return {
256
- engineType: this.engineType,
257
- initialized: this.initialized,
258
- config: this.config,
259
- };
260
- }
261
- /**
262
- * Graph Convolutional Network (GCN) for skill matching.
263
- *
264
- * Uses GCN layers to learn representations of skills based on their
265
- * relationships in the skill graph. Achieves >90% accuracy when native.
266
- */
267
- async matchSkillsGCN(taskEmbedding, skillGraph, topK = 5) {
268
- if (!this.initialized)
269
- await this.initialize();
270
- if (this.engineType === 'native' && this.gnn) {
271
- try {
272
- const skills = Object.keys(skillGraph);
273
- const results = [];
274
- for (const skill of skills) {
275
- const skillData = skillGraph[skill];
276
- const neighborEmbeddings = [];
277
- const weights = [];
278
- // Collect neighbor embeddings for GCN aggregation
279
- for (const neighbor of skillData.neighbors) {
280
- if (skillGraph[neighbor]) {
281
- neighborEmbeddings.push(skillGraph[neighbor].embedding);
282
- weights.push(1.0 / skillData.neighbors.length); // Normalized weights
283
- }
284
- }
285
- // Forward pass through GCN
286
- if (typeof this.gnn.forward === 'function') {
287
- const enhanced = this.gnn.forward(skillData.embedding, neighborEmbeddings, weights);
288
- if (enhanced) {
289
- const similarity = this.cosineSim(taskEmbedding, enhanced);
290
- results.push({
291
- skill,
292
- score: similarity,
293
- confidence: similarity > 0.8 ? 0.95 : similarity > 0.6 ? 0.85 : 0.75,
294
- });
295
- }
296
- }
297
- }
298
- return results
299
- .sort((a, b) => b.score - a.score)
300
- .slice(0, topK);
301
- }
302
- catch (e) {
303
- console.warn('[GNNService] GCN skill matching failed, falling back:', e);
304
- }
305
- }
306
- // JS fallback: simple cosine similarity without graph convolution
307
- const skills = Object.keys(skillGraph);
308
- return skills
309
- .map(skill => ({
310
- skill,
311
- score: this.cosineSim(taskEmbedding, skillGraph[skill].embedding),
312
- confidence: 0.6,
313
- }))
314
- .sort((a, b) => b.score - a.score)
315
- .slice(0, topK);
316
- }
317
- /**
318
- * Graph Attention Network (GAT) for context understanding.
319
- *
320
- * Applies attention mechanisms to weight the importance of different
321
- * context nodes when making predictions.
322
- */
323
- async understandContextGAT(queryEmbedding, contextNodes, attentionHeads = 4) {
324
- if (!this.initialized)
325
- await this.initialize();
326
- if (this.engineType === 'native' && this.gnn) {
327
- try {
328
- const embeddings = contextNodes.map(n => n.embedding);
329
- const weights = new Array(contextNodes.length).fill(1.0);
330
- // Multi-head attention via forward pass
331
- if (typeof this.gnn.forward === 'function') {
332
- const attended = this.gnn.forward(queryEmbedding, embeddings, weights);
333
- if (attended) {
334
- // Calculate attention weights based on similarity
335
- const attentionWeights = {};
336
- let maxWeight = 0;
337
- for (let i = 0; i < contextNodes.length; i++) {
338
- const weight = this.cosineSim(attended, contextNodes[i].embedding);
339
- attentionWeights[contextNodes[i].id] = weight;
340
- maxWeight = Math.max(maxWeight, weight);
341
- }
342
- // Normalize weights
343
- for (const key in attentionWeights) {
344
- attentionWeights[key] /= maxWeight || 1.0;
345
- }
346
- // Find dominant types
347
- const typeWeights = {};
348
- for (const node of contextNodes) {
349
- typeWeights[node.type] = (typeWeights[node.type] || 0) + attentionWeights[node.id];
350
- }
351
- const dominantTypes = Object.entries(typeWeights)
352
- .sort(([, a], [, b]) => b - a)
353
- .slice(0, 3)
354
- .map(([type]) => type);
355
- return {
356
- contextVector: attended,
357
- attentionWeights,
358
- dominantTypes,
359
- };
360
- }
361
- }
362
- }
363
- catch (e) {
364
- console.warn('[GNNService] GAT context understanding failed, falling back:', e);
365
- }
366
- }
367
- // JS fallback: uniform attention
368
- const avgEmbedding = new Float32Array(queryEmbedding.length);
369
- for (const node of contextNodes) {
370
- for (let i = 0; i < avgEmbedding.length; i++) {
371
- avgEmbedding[i] += node.embedding[i] / contextNodes.length;
372
- }
373
- }
374
- const attentionWeights = {};
375
- contextNodes.forEach(n => {
376
- attentionWeights[n.id] = 1.0 / contextNodes.length;
377
- });
378
- const typeWeights = {};
379
- for (const node of contextNodes) {
380
- typeWeights[node.type] = (typeWeights[node.type] || 0) + 1;
381
- }
382
- const dominantTypes = Object.entries(typeWeights)
383
- .sort(([, a], [, b]) => b - a)
384
- .map(([type]) => type);
385
- return {
386
- contextVector: avgEmbedding,
387
- attentionWeights,
388
- dominantTypes,
389
- };
390
- }
391
- /**
392
- * Process heterogeneous graphs with multiple node and edge types.
393
- *
394
- * Handles graphs with different types of entities (agents, tasks, skills)
395
- * and relationships (depends_on, requires, similar_to).
396
- */
397
- async processHeterogeneousGraph(graph, queryNodeId) {
398
- if (!this.initialized)
399
- await this.initialize();
400
- const nodeMap = new Map(graph.nodes.map(n => [n.id, n]));
401
- const queryNode = nodeMap.get(queryNodeId);
402
- if (!queryNode) {
403
- throw new Error(`Query node ${queryNodeId} not found in graph`);
404
- }
405
- if (this.engineType === 'native' && this.gnn) {
406
- try {
407
- // Build adjacency for heterogeneous GNN
408
- const neighbors = graph.edges
409
- .filter(e => e.from === queryNodeId)
410
- .map(e => {
411
- const neighbor = nodeMap.get(e.to);
412
- return neighbor ? { ...neighbor, edgeType: e.type, weight: e.weight } : null;
413
- })
414
- .filter(n => n !== null);
415
- if (neighbors.length > 0 && typeof this.gnn.forward === 'function') {
416
- const enhanced = this.gnn.forward(queryNode.embedding, neighbors.map(n => n.embedding), neighbors.map(n => n.weight));
417
- if (enhanced) {
418
- // Calculate relevance for all nodes
419
- const relatedNodes = graph.nodes
420
- .filter(n => n.id !== queryNodeId)
421
- .map(n => ({
422
- id: n.id,
423
- type: n.type,
424
- relevance: this.cosineSim(enhanced, n.embedding),
425
- }))
426
- .sort((a, b) => b.relevance - a.relevance)
427
- .slice(0, 10);
428
- // Find strongest pathways
429
- const pathways = this.findStrongPathways(graph, queryNodeId, relatedNodes.slice(0, 5));
430
- return {
431
- embedding: enhanced,
432
- relatedNodes,
433
- pathways,
434
- };
435
- }
436
- }
437
- }
438
- catch (e) {
439
- console.warn('[GNNService] Heterogeneous graph processing failed, falling back:', e);
440
- }
441
- }
442
- // JS fallback: direct neighbor aggregation
443
- const neighbors = graph.edges
444
- .filter(e => e.from === queryNodeId)
445
- .map(e => nodeMap.get(e.to))
446
- .filter(n => n !== undefined);
447
- const avgEmbedding = new Float32Array(queryNode.embedding.length);
448
- for (let i = 0; i < avgEmbedding.length; i++) {
449
- avgEmbedding[i] = queryNode.embedding[i];
450
- for (const neighbor of neighbors) {
451
- avgEmbedding[i] += neighbor.embedding[i] / (neighbors.length + 1);
452
- }
453
- }
454
- const relatedNodes = graph.nodes
455
- .filter(n => n.id !== queryNodeId)
456
- .map(n => ({
457
- id: n.id,
458
- type: n.type,
459
- relevance: this.cosineSim(avgEmbedding, n.embedding),
460
- }))
461
- .sort((a, b) => b.relevance - a.relevance)
462
- .slice(0, 10);
463
- const pathways = this.findStrongPathways(graph, queryNodeId, relatedNodes.slice(0, 5));
464
- return {
465
- embedding: avgEmbedding,
466
- relatedNodes,
467
- pathways,
468
- };
469
- }
470
- /**
471
- * Node classification for task categorization.
472
- *
473
- * Classifies nodes into predefined categories using GNN-based features.
474
- */
475
- async classifyNode(nodeEmbedding, neighborEmbeddings, categories) {
476
- if (!this.initialized)
477
- await this.initialize();
478
- if (this.engineType === 'native' && this.gnn && typeof this.gnn.forward === 'function') {
479
- try {
480
- const enhanced = this.gnn.forward(nodeEmbedding, neighborEmbeddings, neighborEmbeddings.map(() => 1.0));
481
- if (enhanced && enhanced.length >= categories.length) {
482
- // Use first N dimensions as category logits
483
- const logits = Array.from(enhanced.slice(0, categories.length));
484
- const expLogits = logits.map((l) => Math.exp(l));
485
- const expSum = expLogits.reduce((s, v) => s + v, 1e-10);
486
- const probs = expLogits.map(e => e / expSum);
487
- let maxIdx = 0;
488
- for (let i = 1; i < probs.length; i++) {
489
- if (probs[i] > probs[maxIdx])
490
- maxIdx = i;
491
- }
492
- const scores = {};
493
- categories.forEach((cat, i) => {
494
- scores[cat] = probs[i];
495
- });
496
- return {
497
- category: categories[maxIdx],
498
- confidence: probs[maxIdx],
499
- scores,
500
- };
501
- }
502
- }
503
- catch (e) {
504
- console.warn('[GNNService] Node classification failed, falling back:', e);
505
- }
506
- }
507
- // JS fallback: random with slight bias
508
- const scores = {};
509
- const probs = categories.map(() => Math.random());
510
- const sum = probs.reduce((s, v) => s + v, 0);
511
- const normalized = probs.map(p => p / sum);
512
- let maxIdx = 0;
513
- categories.forEach((cat, i) => {
514
- scores[cat] = normalized[i];
515
- if (normalized[i] > normalized[maxIdx])
516
- maxIdx = i;
517
- });
518
- return {
519
- category: categories[maxIdx],
520
- confidence: normalized[maxIdx],
521
- scores,
522
- };
523
- }
524
- /**
525
- * Link prediction for workflow optimization.
526
- *
527
- * Predicts likely connections between nodes to suggest workflow improvements.
528
- */
529
- async predictLinks(sourceNode, candidateNodes, existingEdges, topK = 5) {
530
- if (!this.initialized)
531
- await this.initialize();
532
- if (this.engineType === 'native' && this.gnn && typeof this.gnn.forward === 'function') {
533
- try {
534
- const enhanced = this.gnn.forward(sourceNode.embedding, candidateNodes.map(n => n.embedding), candidateNodes.map(() => 1.0));
535
- if (enhanced) {
536
- const predictions = candidateNodes.map(node => {
537
- // Check if edge already exists
538
- const exists = existingEdges.some(e => e.from === sourceNode.id && e.to === node.id);
539
- if (exists) {
540
- return { targetId: node.id, probability: 0, reasoning: 'Edge already exists' };
541
- }
542
- const similarity = this.cosineSim(enhanced, node.embedding);
543
- const probability = 1 / (1 + Math.exp(-5 * (similarity - 0.5))); // Sigmoid scaling
544
- let reasoning = 'Strong structural similarity';
545
- if (probability > 0.8)
546
- reasoning = 'Very high compatibility detected';
547
- else if (probability > 0.6)
548
- reasoning = 'Good potential for connection';
549
- else if (probability > 0.4)
550
- reasoning = 'Moderate connection potential';
551
- else
552
- reasoning = 'Weak connection likelihood';
553
- return { targetId: node.id, probability, reasoning };
554
- });
555
- return predictions
556
- .filter(p => p.probability > 0)
557
- .sort((a, b) => b.probability - a.probability)
558
- .slice(0, topK);
559
- }
560
- }
561
- catch (e) {
562
- console.warn('[GNNService] Link prediction failed, falling back:', e);
563
- }
564
- }
565
- // JS fallback: cosine similarity based
566
- return candidateNodes
567
- .map(node => {
568
- const exists = existingEdges.some(e => e.from === sourceNode.id && e.to === node.id);
569
- if (exists) {
570
- return { targetId: node.id, probability: 0, reasoning: 'Edge already exists' };
571
- }
572
- const similarity = this.cosineSim(sourceNode.embedding, node.embedding);
573
- return {
574
- targetId: node.id,
575
- probability: similarity,
576
- reasoning: similarity > 0.7 ? 'High similarity' : 'Moderate similarity',
577
- };
578
- })
579
- .filter(p => p.probability > 0)
580
- .sort((a, b) => b.probability - a.probability)
581
- .slice(0, topK);
582
- }
583
- // ---------------------------------------------------------------------------
584
- // Private
585
- // ---------------------------------------------------------------------------
586
- findStrongPathways(graph, startNodeId, targetNodes) {
587
- const pathways = [];
588
- for (const target of targetNodes) {
589
- // Simple BFS to find shortest path
590
- const visited = new Set();
591
- const queue = [
592
- { nodeId: startNodeId, path: [startNodeId] },
593
- ];
594
- while (queue.length > 0) {
595
- const current = queue.shift();
596
- if (current.nodeId === target.id) {
597
- // Calculate pathway strength
598
- let strength = target.relevance;
599
- for (let i = 0; i < current.path.length - 1; i++) {
600
- const edge = graph.edges.find(e => e.from === current.path[i] && e.to === current.path[i + 1]);
601
- strength *= edge?.weight || 0.5;
602
- }
603
- pathways.push({ path: current.path, strength });
604
- break;
605
- }
606
- if (visited.has(current.nodeId) || current.path.length > 4) {
607
- continue;
608
- }
609
- visited.add(current.nodeId);
610
- const neighbors = graph.edges
611
- .filter(e => e.from === current.nodeId)
612
- .map(e => e.to);
613
- for (const neighbor of neighbors) {
614
- if (!visited.has(neighbor)) {
615
- queue.push({
616
- nodeId: neighbor,
617
- path: [...current.path, neighbor],
618
- });
619
- }
620
- }
621
- }
622
- }
623
- return pathways.sort((a, b) => b.strength - a.strength).slice(0, 5);
624
- }
625
- cosineSim(a, b) {
626
- let dot = 0;
627
- let normA = 0;
628
- let normB = 0;
629
- const len = Math.min(a.length, b.length);
630
- for (let i = 0; i < len; i++) {
631
- dot += a[i] * b[i];
632
- normA += a[i] * a[i];
633
- normB += b[i] * b[i];
634
- }
635
- const denom = Math.sqrt(normA) * Math.sqrt(normB);
636
- return denom > 0 ? dot / denom : 0;
637
- }
638
- }
639
- //# sourceMappingURL=GNNService.js.map