agentdb 3.0.0-alpha.2 → 3.0.0-alpha.20

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 (519) hide show
  1. package/README.md +208 -2593
  2. package/dist/src/backends/GraphBackend.d.ts +8 -8
  3. package/dist/src/backends/GraphBackend.d.ts.map +1 -1
  4. package/dist/src/backends/GraphBackend.js +15 -16
  5. package/dist/src/backends/GraphBackend.js.map +1 -1
  6. package/dist/src/backends/LearningBackend.d.ts +2 -2
  7. package/dist/src/backends/LearningBackend.d.ts.map +1 -1
  8. package/dist/src/backends/LearningBackend.js +10 -11
  9. package/dist/src/backends/LearningBackend.js.map +1 -1
  10. package/dist/src/backends/VectorBackend.d.ts +10 -0
  11. package/dist/src/backends/VectorBackend.d.ts.map +1 -1
  12. package/dist/src/backends/detector.d.ts +3 -25
  13. package/dist/src/backends/detector.d.ts.map +1 -1
  14. package/dist/src/backends/detector.js +15 -119
  15. package/dist/src/backends/detector.js.map +1 -1
  16. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts +55 -1
  17. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts.map +1 -1
  18. package/dist/src/backends/graph/GraphDatabaseAdapter.js +133 -7
  19. package/dist/src/backends/graph/GraphDatabaseAdapter.js.map +1 -1
  20. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts +2 -2
  21. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts.map +1 -1
  22. package/dist/src/backends/hnswlib/HNSWLibBackend.js +12 -21
  23. package/dist/src/backends/hnswlib/HNSWLibBackend.js.map +1 -1
  24. package/dist/src/backends/index.d.ts +3 -25
  25. package/dist/src/backends/index.d.ts.map +1 -1
  26. package/dist/src/backends/index.js +1 -23
  27. package/dist/src/backends/index.js.map +1 -1
  28. package/dist/src/backends/ruvector/RuVectorBackend.d.ts +4 -4
  29. package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
  30. package/dist/src/backends/ruvector/RuVectorBackend.js +2 -2
  31. package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
  32. package/dist/src/backends/ruvector/RuVectorLearning.d.ts.map +1 -1
  33. package/dist/src/backends/ruvector/RuVectorLearning.js +5 -10
  34. package/dist/src/backends/ruvector/RuVectorLearning.js.map +1 -1
  35. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts.map +1 -1
  36. package/dist/src/backends/rvf/SelfLearningRvfBackend.js +45 -2
  37. package/dist/src/backends/rvf/SelfLearningRvfBackend.js.map +1 -1
  38. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts +26 -0
  39. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts.map +1 -1
  40. package/dist/src/backends/rvf/SqlJsRvfBackend.js +93 -31
  41. package/dist/src/backends/rvf/SqlJsRvfBackend.js.map +1 -1
  42. package/dist/src/benchmark/BenchmarkSuite.d.ts.map +1 -1
  43. package/dist/src/benchmark/BenchmarkSuite.js +0 -2
  44. package/dist/src/benchmark/BenchmarkSuite.js.map +1 -1
  45. package/dist/src/benchmarks/wasm-vector-benchmark.d.ts +10 -0
  46. package/dist/src/benchmarks/wasm-vector-benchmark.d.ts.map +1 -0
  47. package/dist/src/benchmarks/wasm-vector-benchmark.js +196 -0
  48. package/dist/src/benchmarks/wasm-vector-benchmark.js.map +1 -0
  49. package/dist/src/browser/AdvancedFeatures.d.ts.map +1 -1
  50. package/dist/src/browser/AdvancedFeatures.js +10 -3
  51. package/dist/src/browser/AdvancedFeatures.js.map +1 -1
  52. package/dist/src/browser/AttentionBrowser.d.ts.map +1 -1
  53. package/dist/src/browser/AttentionBrowser.js +13 -5
  54. package/dist/src/browser/AttentionBrowser.js.map +1 -1
  55. package/dist/src/browser/HNSWIndex.d.ts +1 -31
  56. package/dist/src/browser/HNSWIndex.d.ts.map +1 -1
  57. package/dist/src/browser/HNSWIndex.js +18 -136
  58. package/dist/src/browser/HNSWIndex.js.map +1 -1
  59. package/dist/src/browser/ProductQuantization.d.ts.map +1 -1
  60. package/dist/src/browser/ProductQuantization.js +1 -0
  61. package/dist/src/browser/ProductQuantization.js.map +1 -1
  62. package/dist/src/browser/index.d.ts +3 -3
  63. package/dist/src/browser/index.d.ts.map +1 -1
  64. package/dist/src/browser/index.js +1 -2
  65. package/dist/src/browser/index.js.map +1 -1
  66. package/dist/src/cli/agentdb-cli.d.ts +2 -3
  67. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  68. package/dist/src/cli/agentdb-cli.js +142 -96
  69. package/dist/src/cli/agentdb-cli.js.map +1 -1
  70. package/dist/src/cli/commands/attention.js +15 -5
  71. package/dist/src/cli/commands/attention.js.map +1 -1
  72. package/dist/src/cli/commands/doctor.d.ts +0 -2
  73. package/dist/src/cli/commands/doctor.d.ts.map +1 -1
  74. package/dist/src/cli/commands/doctor.js +6 -111
  75. package/dist/src/cli/commands/doctor.js.map +1 -1
  76. package/dist/src/cli/commands/hyperbolic.d.ts.map +1 -1
  77. package/dist/src/cli/commands/hyperbolic.js +15 -3
  78. package/dist/src/cli/commands/hyperbolic.js.map +1 -1
  79. package/dist/src/cli/commands/init.d.ts +1 -2
  80. package/dist/src/cli/commands/init.d.ts.map +1 -1
  81. package/dist/src/cli/commands/init.js +7 -30
  82. package/dist/src/cli/commands/init.js.map +1 -1
  83. package/dist/src/cli/commands/install-embeddings.d.ts +1 -1
  84. package/dist/src/cli/commands/install-embeddings.d.ts.map +1 -1
  85. package/dist/src/cli/commands/install-embeddings.js +17 -11
  86. package/dist/src/cli/commands/install-embeddings.js.map +1 -1
  87. package/dist/src/cli/commands/learn.d.ts.map +1 -1
  88. package/dist/src/cli/commands/learn.js +12 -6
  89. package/dist/src/cli/commands/learn.js.map +1 -1
  90. package/dist/src/cli/commands/migrate.d.ts.map +1 -1
  91. package/dist/src/cli/commands/migrate.js +31 -10
  92. package/dist/src/cli/commands/migrate.js.map +1 -1
  93. package/dist/src/cli/commands/route.d.ts.map +1 -1
  94. package/dist/src/cli/commands/route.js +6 -1
  95. package/dist/src/cli/commands/route.js.map +1 -1
  96. package/dist/src/cli/commands/simulate-report.js +14 -2
  97. package/dist/src/cli/commands/simulate-report.js.map +1 -1
  98. package/dist/src/cli/commands/simulate-wizard.js.map +1 -1
  99. package/dist/src/cli/commands/simulate.d.ts +7 -0
  100. package/dist/src/cli/commands/simulate.d.ts.map +1 -0
  101. package/dist/src/cli/commands/simulate.js +100 -0
  102. package/dist/src/cli/commands/simulate.js.map +1 -0
  103. package/dist/src/cli/commands/status.js +1 -5
  104. package/dist/src/cli/commands/status.js.map +1 -1
  105. package/dist/src/cli/lib/attention-config.d.ts +2 -2
  106. package/dist/src/cli/lib/attention-config.d.ts.map +1 -1
  107. package/dist/src/cli/lib/attention-config.js +1 -2
  108. package/dist/src/cli/lib/attention-config.js.map +1 -1
  109. package/dist/src/cli/lib/config-manager.d.ts +110 -0
  110. package/dist/src/cli/lib/config-manager.d.ts.map +1 -0
  111. package/dist/src/cli/lib/config-manager.js +512 -0
  112. package/dist/src/cli/lib/config-manager.js.map +1 -0
  113. package/dist/src/cli/lib/config-validator.d.ts +1 -1
  114. package/dist/src/cli/lib/config-validator.d.ts.map +1 -1
  115. package/dist/src/cli/lib/health-monitor.d.ts +149 -0
  116. package/dist/src/cli/lib/health-monitor.d.ts.map +1 -0
  117. package/dist/src/cli/lib/health-monitor.js +380 -0
  118. package/dist/src/cli/lib/health-monitor.js.map +1 -0
  119. package/dist/src/cli/lib/history-tracker.d.ts +103 -0
  120. package/dist/src/cli/lib/history-tracker.d.ts.map +1 -0
  121. package/dist/src/cli/lib/history-tracker.js +352 -0
  122. package/dist/src/cli/lib/history-tracker.js.map +1 -0
  123. package/dist/src/cli/lib/report-store.d.ts.map +1 -1
  124. package/dist/src/cli/lib/report-store.js +3 -5
  125. package/dist/src/cli/lib/report-store.js.map +1 -1
  126. package/dist/src/cli/lib/simulation-registry.d.ts +1 -1
  127. package/dist/src/cli/lib/simulation-registry.d.ts.map +1 -1
  128. package/dist/src/cli/lib/simulation-registry.js +0 -1
  129. package/dist/src/cli/lib/simulation-registry.js.map +1 -1
  130. package/dist/src/cli/lib/simulation-runner.d.ts +1 -1
  131. package/dist/src/cli/lib/simulation-runner.d.ts.map +1 -1
  132. package/dist/src/cli/lib/simulation-runner.js +1 -4
  133. package/dist/src/cli/lib/simulation-runner.js.map +1 -1
  134. package/dist/src/compatibility/DeprecationWarnings.d.ts.map +1 -1
  135. package/dist/src/compatibility/V1toV2Adapter.d.ts +2 -2
  136. package/dist/src/compatibility/V1toV2Adapter.d.ts.map +1 -1
  137. package/dist/src/compatibility/V1toV2Adapter.js +1 -14
  138. package/dist/src/compatibility/V1toV2Adapter.js.map +1 -1
  139. package/dist/src/compatibility/VersionDetector.d.ts +1 -1
  140. package/dist/src/compatibility/VersionDetector.d.ts.map +1 -1
  141. package/dist/src/compatibility/VersionDetector.js +3 -3
  142. package/dist/src/compatibility/VersionDetector.js.map +1 -1
  143. package/dist/src/compatibility/index.d.ts +3 -0
  144. package/dist/src/compatibility/index.d.ts.map +1 -1
  145. package/dist/src/compatibility/index.js +11 -0
  146. package/dist/src/compatibility/index.js.map +1 -1
  147. package/dist/src/controllers/AttentionService.d.ts +98 -122
  148. package/dist/src/controllers/AttentionService.d.ts.map +1 -1
  149. package/dist/src/controllers/AttentionService.js +463 -238
  150. package/dist/src/controllers/AttentionService.js.map +1 -1
  151. package/dist/src/controllers/CausalMemoryGraph.d.ts +4 -4
  152. package/dist/src/controllers/CausalMemoryGraph.d.ts.map +1 -1
  153. package/dist/src/controllers/CausalMemoryGraph.js +7 -8
  154. package/dist/src/controllers/CausalMemoryGraph.js.map +1 -1
  155. package/dist/src/controllers/CausalRecall.d.ts +3 -2
  156. package/dist/src/controllers/CausalRecall.d.ts.map +1 -1
  157. package/dist/src/controllers/CausalRecall.js +21 -10
  158. package/dist/src/controllers/CausalRecall.js.map +1 -1
  159. package/dist/src/controllers/ContextSynthesizer.d.ts +1 -1
  160. package/dist/src/controllers/ContextSynthesizer.d.ts.map +1 -1
  161. package/dist/src/controllers/EmbeddingService.d.ts +29 -0
  162. package/dist/src/controllers/EmbeddingService.d.ts.map +1 -1
  163. package/dist/src/controllers/EmbeddingService.js +149 -34
  164. package/dist/src/controllers/EmbeddingService.js.map +1 -1
  165. package/dist/src/controllers/EnhancedEmbeddingService.d.ts.map +1 -1
  166. package/dist/src/controllers/EnhancedEmbeddingService.js +14 -7
  167. package/dist/src/controllers/EnhancedEmbeddingService.js.map +1 -1
  168. package/dist/src/controllers/ExplainableRecall.d.ts +5 -4
  169. package/dist/src/controllers/ExplainableRecall.d.ts.map +1 -1
  170. package/dist/src/controllers/ExplainableRecall.js +12 -20
  171. package/dist/src/controllers/ExplainableRecall.js.map +1 -1
  172. package/dist/src/controllers/HNSWIndex.d.ts +5 -4
  173. package/dist/src/controllers/HNSWIndex.d.ts.map +1 -1
  174. package/dist/src/controllers/HNSWIndex.js +6 -9
  175. package/dist/src/controllers/HNSWIndex.js.map +1 -1
  176. package/dist/src/controllers/LearningSystem.d.ts +10 -105
  177. package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
  178. package/dist/src/controllers/LearningSystem.js +28 -39
  179. package/dist/src/controllers/LearningSystem.js.map +1 -1
  180. package/dist/src/controllers/MMRDiversityRanker.d.ts +1 -1
  181. package/dist/src/controllers/MMRDiversityRanker.d.ts.map +1 -1
  182. package/dist/src/controllers/MemoryController.d.ts +15 -2
  183. package/dist/src/controllers/MemoryController.d.ts.map +1 -1
  184. package/dist/src/controllers/MemoryController.js +33 -3
  185. package/dist/src/controllers/MemoryController.js.map +1 -1
  186. package/dist/src/controllers/MetadataFilter.d.ts +3 -3
  187. package/dist/src/controllers/MetadataFilter.d.ts.map +1 -1
  188. package/dist/src/controllers/MetadataFilter.js +6 -9
  189. package/dist/src/controllers/MetadataFilter.js.map +1 -1
  190. package/dist/src/controllers/MincutService.d.ts +92 -0
  191. package/dist/src/controllers/MincutService.d.ts.map +1 -0
  192. package/dist/src/controllers/MincutService.js +336 -0
  193. package/dist/src/controllers/MincutService.js.map +1 -0
  194. package/dist/src/controllers/NightlyLearner.d.ts +3 -4
  195. package/dist/src/controllers/NightlyLearner.d.ts.map +1 -1
  196. package/dist/src/controllers/NightlyLearner.js +17 -22
  197. package/dist/src/controllers/NightlyLearner.js.map +1 -1
  198. package/dist/src/controllers/QUICClient.d.ts +7 -10
  199. package/dist/src/controllers/QUICClient.d.ts.map +1 -1
  200. package/dist/src/controllers/QUICClient.js +3 -3
  201. package/dist/src/controllers/QUICClient.js.map +1 -1
  202. package/dist/src/controllers/QUICServer.d.ts +4 -4
  203. package/dist/src/controllers/QUICServer.d.ts.map +1 -1
  204. package/dist/src/controllers/QUICServer.js +14 -22
  205. package/dist/src/controllers/QUICServer.js.map +1 -1
  206. package/dist/src/controllers/ReasoningBank.d.ts +2 -9
  207. package/dist/src/controllers/ReasoningBank.d.ts.map +1 -1
  208. package/dist/src/controllers/ReasoningBank.js +39 -35
  209. package/dist/src/controllers/ReasoningBank.js.map +1 -1
  210. package/dist/src/controllers/ReflexionMemory.d.ts +51 -1
  211. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  212. package/dist/src/controllers/ReflexionMemory.js +307 -33
  213. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  214. package/dist/src/controllers/SkillLibrary.d.ts +5 -11
  215. package/dist/src/controllers/SkillLibrary.d.ts.map +1 -1
  216. package/dist/src/controllers/SkillLibrary.js +39 -48
  217. package/dist/src/controllers/SkillLibrary.js.map +1 -1
  218. package/dist/src/controllers/SparsificationService.d.ts +151 -0
  219. package/dist/src/controllers/SparsificationService.d.ts.map +1 -0
  220. package/dist/src/controllers/SparsificationService.js +375 -0
  221. package/dist/src/controllers/SparsificationService.js.map +1 -0
  222. package/dist/src/controllers/SyncCoordinator.d.ts +3 -2
  223. package/dist/src/controllers/SyncCoordinator.d.ts.map +1 -1
  224. package/dist/src/controllers/SyncCoordinator.js +2 -2
  225. package/dist/src/controllers/SyncCoordinator.js.map +1 -1
  226. package/dist/src/controllers/WASMVectorSearch.d.ts +7 -6
  227. package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
  228. package/dist/src/controllers/WASMVectorSearch.js +2 -4
  229. package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
  230. package/dist/src/controllers/attention/AttentionCache.d.ts +38 -0
  231. package/dist/src/controllers/attention/AttentionCache.d.ts.map +1 -0
  232. package/dist/src/controllers/attention/AttentionCache.js +80 -0
  233. package/dist/src/controllers/attention/AttentionCache.js.map +1 -0
  234. package/dist/src/controllers/attention/AttentionConfig.d.ts +127 -0
  235. package/dist/src/controllers/attention/AttentionConfig.d.ts.map +1 -0
  236. package/dist/src/controllers/attention/AttentionConfig.js +124 -0
  237. package/dist/src/controllers/attention/AttentionConfig.js.map +1 -0
  238. package/dist/src/controllers/attention/AttentionCore.d.ts +89 -0
  239. package/dist/src/controllers/attention/AttentionCore.d.ts.map +1 -0
  240. package/dist/src/controllers/attention/AttentionCore.js +289 -0
  241. package/dist/src/controllers/attention/AttentionCore.js.map +1 -0
  242. package/dist/src/controllers/attention/AttentionHelpers.d.ts +55 -0
  243. package/dist/src/controllers/attention/AttentionHelpers.d.ts.map +1 -0
  244. package/dist/src/controllers/attention/AttentionHelpers.js +148 -0
  245. package/dist/src/controllers/attention/AttentionHelpers.js.map +1 -0
  246. package/dist/src/controllers/attention/AttentionMetrics.d.ts +55 -0
  247. package/dist/src/controllers/attention/AttentionMetrics.d.ts.map +1 -0
  248. package/dist/src/controllers/attention/AttentionMetrics.js +72 -0
  249. package/dist/src/controllers/attention/AttentionMetrics.js.map +1 -0
  250. package/dist/src/controllers/attention/AttentionWASM.d.ts +98 -0
  251. package/dist/src/controllers/attention/AttentionWASM.d.ts.map +1 -0
  252. package/dist/src/controllers/attention/AttentionWASM.js +147 -0
  253. package/dist/src/controllers/attention/AttentionWASM.js.map +1 -0
  254. package/dist/src/controllers/attention/CrossAttentionController.d.ts +1 -1
  255. package/dist/src/controllers/attention/CrossAttentionController.d.ts.map +1 -1
  256. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts +1 -1
  257. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts.map +1 -1
  258. package/dist/src/controllers/attention/MultiHeadAttentionController.js +5 -8
  259. package/dist/src/controllers/attention/MultiHeadAttentionController.js.map +1 -1
  260. package/dist/src/controllers/attention/SelfAttentionController.d.ts +1 -1
  261. package/dist/src/controllers/attention/SelfAttentionController.d.ts.map +1 -1
  262. package/dist/src/controllers/attention/index.d.ts +9 -0
  263. package/dist/src/controllers/attention/index.d.ts.map +1 -1
  264. package/dist/src/controllers/attention/index.js +8 -0
  265. package/dist/src/controllers/attention/index.js.map +1 -1
  266. package/dist/src/controllers/frontier-index.d.ts +14 -0
  267. package/dist/src/controllers/frontier-index.d.ts.map +1 -0
  268. package/dist/src/controllers/frontier-index.js +10 -0
  269. package/dist/src/controllers/frontier-index.js.map +1 -0
  270. package/dist/src/controllers/index.d.ts +7 -1
  271. package/dist/src/controllers/index.d.ts.map +1 -1
  272. package/dist/src/controllers/index.js +5 -1
  273. package/dist/src/controllers/index.js.map +1 -1
  274. package/dist/src/controllers/prerequisites.d.ts +76 -0
  275. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  276. package/dist/src/controllers/prerequisites.js +235 -0
  277. package/dist/src/controllers/prerequisites.js.map +1 -0
  278. package/dist/src/core/AgentDB.d.ts +11 -36
  279. package/dist/src/core/AgentDB.d.ts.map +1 -1
  280. package/dist/src/core/AgentDB.js +31 -89
  281. package/dist/src/core/AgentDB.js.map +1 -1
  282. package/dist/src/core/QueryCache.d.ts +1 -1
  283. package/dist/src/core/QueryCache.d.ts.map +1 -1
  284. package/dist/src/core/QueryCache.js +2 -6
  285. package/dist/src/core/QueryCache.js.map +1 -1
  286. package/dist/src/db-fallback.d.ts +40 -3
  287. package/dist/src/db-fallback.d.ts.map +1 -1
  288. package/dist/src/db-fallback.js +308 -84
  289. package/dist/src/db-fallback.js.map +1 -1
  290. package/dist/src/db-test.d.ts +13 -0
  291. package/dist/src/db-test.d.ts.map +1 -0
  292. package/dist/src/db-test.js +55 -0
  293. package/dist/src/db-test.js.map +1 -0
  294. package/dist/src/db-unified.d.ts +76 -0
  295. package/dist/src/db-unified.d.ts.map +1 -0
  296. package/dist/src/db-unified.js +281 -0
  297. package/dist/src/db-unified.js.map +1 -0
  298. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts +58 -0
  299. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts.map +1 -0
  300. package/dist/src/embedding/EmbeddingSpaceIdentity.js +137 -0
  301. package/dist/src/embedding/EmbeddingSpaceIdentity.js.map +1 -0
  302. package/dist/src/embedding/index.d.ts +3 -0
  303. package/dist/src/embedding/index.d.ts.map +1 -0
  304. package/dist/src/embedding/index.js +2 -0
  305. package/dist/src/embedding/index.js.map +1 -0
  306. package/dist/src/examples/quic-sync-example.d.ts +9 -0
  307. package/dist/src/examples/quic-sync-example.d.ts.map +1 -0
  308. package/dist/src/examples/quic-sync-example.js +169 -0
  309. package/dist/src/examples/quic-sync-example.js.map +1 -0
  310. package/dist/src/examples/wasm-vector-usage.d.ts +12 -0
  311. package/dist/src/examples/wasm-vector-usage.d.ts.map +1 -0
  312. package/dist/src/examples/wasm-vector-usage.js +190 -0
  313. package/dist/src/examples/wasm-vector-usage.js.map +1 -0
  314. package/dist/src/governance/MetaHarnessGateway.d.ts +55 -0
  315. package/dist/src/governance/MetaHarnessGateway.d.ts.map +1 -0
  316. package/dist/src/governance/MetaHarnessGateway.js +65 -0
  317. package/dist/src/governance/MetaHarnessGateway.js.map +1 -0
  318. package/dist/src/governance/RvfExperimentBranch.d.ts +65 -0
  319. package/dist/src/governance/RvfExperimentBranch.d.ts.map +1 -0
  320. package/dist/src/governance/RvfExperimentBranch.js +115 -0
  321. package/dist/src/governance/RvfExperimentBranch.js.map +1 -0
  322. package/dist/src/index.d.ts +7 -25
  323. package/dist/src/index.d.ts.map +1 -1
  324. package/dist/src/index.js +9 -10
  325. package/dist/src/index.js.map +1 -1
  326. package/dist/src/mcp/agentdb-mcp-server.js +162 -159
  327. package/dist/src/mcp/agentdb-mcp-server.js.map +1 -1
  328. package/dist/src/mcp/learning-tools-handlers.d.ts +16 -0
  329. package/dist/src/mcp/learning-tools-handlers.d.ts.map +1 -0
  330. package/dist/src/mcp/learning-tools-handlers.js +105 -0
  331. package/dist/src/mcp/learning-tools-handlers.js.map +1 -0
  332. package/dist/src/model/ModelCacheLoader.d.ts +24 -0
  333. package/dist/src/model/ModelCacheLoader.d.ts.map +1 -0
  334. package/dist/src/model/ModelCacheLoader.js +123 -0
  335. package/dist/src/model/ModelCacheLoader.js.map +1 -0
  336. package/dist/src/observability/integration.d.ts +3 -3
  337. package/dist/src/observability/integration.d.ts.map +1 -1
  338. package/dist/src/observability/integration.js +2 -0
  339. package/dist/src/observability/integration.js.map +1 -1
  340. package/dist/src/observability/telemetry.d.ts +3 -3
  341. package/dist/src/observability/telemetry.d.ts.map +1 -1
  342. package/dist/src/observability/telemetry.js +3 -5
  343. package/dist/src/observability/telemetry.js.map +1 -1
  344. package/dist/src/optimizations/BatchOperations.d.ts +6 -6
  345. package/dist/src/optimizations/BatchOperations.d.ts.map +1 -1
  346. package/dist/src/optimizations/BatchOperations.js +6 -5
  347. package/dist/src/optimizations/BatchOperations.js.map +1 -1
  348. package/dist/src/optimizations/Quantization.d.ts +330 -0
  349. package/dist/src/optimizations/Quantization.d.ts.map +1 -0
  350. package/dist/src/optimizations/Quantization.js +793 -0
  351. package/dist/src/optimizations/Quantization.js.map +1 -0
  352. package/dist/src/optimizations/QueryOptimizer.d.ts +4 -4
  353. package/dist/src/optimizations/QueryOptimizer.d.ts.map +1 -1
  354. package/dist/src/optimizations/QueryOptimizer.js +1 -3
  355. package/dist/src/optimizations/QueryOptimizer.js.map +1 -1
  356. package/dist/src/optimizations/ToolCache.d.ts +4 -4
  357. package/dist/src/optimizations/ToolCache.d.ts.map +1 -1
  358. package/dist/src/optimizations/ToolCache.js.map +1 -1
  359. package/dist/src/quantization/vector-quantization.d.ts.map +1 -1
  360. package/dist/src/quantization/vector-quantization.js +1 -5
  361. package/dist/src/quantization/vector-quantization.js.map +1 -1
  362. package/dist/src/schemas/inline.d.ts +3 -0
  363. package/dist/src/schemas/inline.d.ts.map +1 -0
  364. package/dist/src/schemas/inline.js +10 -0
  365. package/dist/src/schemas/inline.js.map +1 -0
  366. package/dist/src/search/HybridSearch.d.ts +6 -6
  367. package/dist/src/search/HybridSearch.d.ts.map +1 -1
  368. package/dist/src/search/HybridSearch.js.map +1 -1
  369. package/dist/src/security/input-validation.d.ts +34 -12
  370. package/dist/src/security/input-validation.d.ts.map +1 -1
  371. package/dist/src/security/input-validation.js +46 -1
  372. package/dist/src/security/input-validation.js.map +1 -1
  373. package/dist/src/security/limits.d.ts +150 -0
  374. package/dist/src/security/limits.d.ts.map +1 -0
  375. package/dist/src/security/limits.js +288 -0
  376. package/dist/src/security/limits.js.map +1 -0
  377. package/dist/src/security/mcp-policy.d.ts +13 -0
  378. package/dist/src/security/mcp-policy.d.ts.map +1 -0
  379. package/dist/src/security/mcp-policy.js +66 -0
  380. package/dist/src/security/mcp-policy.js.map +1 -0
  381. package/dist/src/security/path-security.d.ts +100 -0
  382. package/dist/src/security/path-security.d.ts.map +1 -0
  383. package/dist/src/security/path-security.js +339 -0
  384. package/dist/src/security/path-security.js.map +1 -0
  385. package/dist/src/security/validation.d.ts +95 -0
  386. package/dist/src/security/validation.d.ts.map +1 -0
  387. package/dist/src/security/validation.js +315 -0
  388. package/dist/src/security/validation.js.map +1 -0
  389. package/dist/src/services/AttentionService.d.ts.map +1 -1
  390. package/dist/src/services/AttentionService.js +2 -4
  391. package/dist/src/services/AttentionService.js.map +1 -1
  392. package/dist/src/services/LLMRouter.d.ts +2 -2
  393. package/dist/src/services/LLMRouter.d.ts.map +1 -1
  394. package/dist/src/services/LLMRouter.js +3 -9
  395. package/dist/src/services/LLMRouter.js.map +1 -1
  396. package/dist/src/services/audit-logger.service.d.ts +168 -0
  397. package/dist/src/services/audit-logger.service.d.ts.map +1 -0
  398. package/dist/src/services/audit-logger.service.js +331 -0
  399. package/dist/src/services/audit-logger.service.js.map +1 -0
  400. package/dist/src/services/enhanced-embeddings.d.ts +271 -0
  401. package/dist/src/services/enhanced-embeddings.d.ts.map +1 -0
  402. package/dist/src/services/enhanced-embeddings.js +1035 -0
  403. package/dist/src/services/enhanced-embeddings.js.map +1 -0
  404. package/dist/src/services/federated-learning.d.ts +172 -0
  405. package/dist/src/services/federated-learning.d.ts.map +1 -0
  406. package/dist/src/services/federated-learning.js +342 -0
  407. package/dist/src/services/federated-learning.js.map +1 -0
  408. package/dist/src/simd/simd-vector-ops.d.ts.map +1 -1
  409. package/dist/src/simd/simd-vector-ops.js +0 -2
  410. package/dist/src/simd/simd-vector-ops.js.map +1 -1
  411. package/dist/src/types/attention.d.ts +249 -0
  412. package/dist/src/types/attention.d.ts.map +1 -0
  413. package/dist/src/types/attention.js +43 -0
  414. package/dist/src/types/attention.js.map +1 -0
  415. package/dist/src/types/database.types.d.ts +11 -11
  416. package/dist/src/types/database.types.d.ts.map +1 -1
  417. package/dist/src/types/database.types.js +2 -4
  418. package/dist/src/types/database.types.js.map +1 -1
  419. package/dist/src/types/graph.d.ts +29 -0
  420. package/dist/src/types/graph.d.ts.map +1 -0
  421. package/dist/src/types/graph.js +8 -0
  422. package/dist/src/types/graph.js.map +1 -0
  423. package/dist/src/types/quic.d.ts +518 -0
  424. package/dist/src/types/quic.d.ts.map +1 -0
  425. package/dist/src/types/quic.js +272 -0
  426. package/dist/src/types/quic.js.map +1 -0
  427. package/dist/src/utils/attention-metrics.d.ts +76 -0
  428. package/dist/src/utils/attention-metrics.d.ts.map +1 -0
  429. package/dist/src/utils/attention-metrics.js +178 -0
  430. package/dist/src/utils/attention-metrics.js.map +1 -0
  431. package/dist/src/wasm-loader.d.ts +0 -1
  432. package/dist/src/wasm-loader.d.ts.map +1 -1
  433. package/dist/src/wasm-loader.js +0 -2
  434. package/dist/src/wasm-loader.js.map +1 -1
  435. package/dist/src/wrappers/agentdb-fast.d.ts +5 -4
  436. package/dist/src/wrappers/agentdb-fast.d.ts.map +1 -1
  437. package/dist/src/wrappers/agentdb-fast.js +6 -13
  438. package/dist/src/wrappers/agentdb-fast.js.map +1 -1
  439. package/dist/src/wrappers/attention-fallbacks.d.ts +0 -8
  440. package/dist/src/wrappers/attention-fallbacks.d.ts.map +1 -1
  441. package/dist/src/wrappers/attention-fallbacks.js +3 -6
  442. package/dist/src/wrappers/attention-fallbacks.js.map +1 -1
  443. package/dist/src/wrappers/attention-native.d.ts +111 -0
  444. package/dist/src/wrappers/attention-native.d.ts.map +1 -0
  445. package/dist/src/wrappers/attention-native.js +273 -0
  446. package/dist/src/wrappers/attention-native.js.map +1 -0
  447. package/dist/src/wrappers/embedding-service.d.ts +4 -4
  448. package/dist/src/wrappers/embedding-service.d.ts.map +1 -1
  449. package/dist/src/wrappers/embedding-service.js +2 -8
  450. package/dist/src/wrappers/embedding-service.js.map +1 -1
  451. package/dist/src/wrappers/gnn-wrapper.d.ts.map +1 -1
  452. package/dist/src/wrappers/gnn-wrapper.js +3 -7
  453. package/dist/src/wrappers/gnn-wrapper.js.map +1 -1
  454. package/package.json +87 -18
  455. package/scripts/postinstall.cjs +13 -144
  456. package/dist/src/cli/tests/agentdb-cli.test.d.ts +0 -8
  457. package/dist/src/cli/tests/agentdb-cli.test.d.ts.map +0 -1
  458. package/dist/src/cli/tests/agentdb-cli.test.js +0 -50
  459. package/dist/src/cli/tests/agentdb-cli.test.js.map +0 -1
  460. package/dist/src/cli/tests/attention-cli.test.d.ts +0 -5
  461. package/dist/src/cli/tests/attention-cli.test.d.ts.map +0 -1
  462. package/dist/src/cli/tests/attention-cli.test.js +0 -257
  463. package/dist/src/cli/tests/attention-cli.test.js.map +0 -1
  464. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  465. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  466. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  467. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  468. package/dist/src/coordination/index.d.ts +0 -10
  469. package/dist/src/coordination/index.d.ts.map +0 -1
  470. package/dist/src/coordination/index.js +0 -10
  471. package/dist/src/coordination/index.js.map +0 -1
  472. package/dist/src/tests/attention-service.test.d.ts +0 -7
  473. package/dist/src/tests/attention-service.test.d.ts.map +0 -1
  474. package/dist/src/tests/attention-service.test.js +0 -401
  475. package/dist/src/tests/attention-service.test.js.map +0 -1
  476. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.d.ts +0 -7
  477. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.d.ts.map +0 -1
  478. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.js +0 -283
  479. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.js.map +0 -1
  480. package/dist/src/tests/query-cache.test.d.ts +0 -7
  481. package/dist/src/tests/query-cache.test.d.ts.map +0 -1
  482. package/dist/src/tests/query-cache.test.js +0 -343
  483. package/dist/src/tests/query-cache.test.js.map +0 -1
  484. package/dist/src/tests/ruvector-integration.test.d.ts +0 -14
  485. package/dist/src/tests/ruvector-integration.test.d.ts.map +0 -1
  486. package/dist/src/tests/ruvector-integration.test.js +0 -1156
  487. package/dist/src/tests/ruvector-integration.test.js.map +0 -1
  488. package/dist/src/tests/unit/auth/crypto.utils.test.d.ts +0 -6
  489. package/dist/src/tests/unit/auth/crypto.utils.test.d.ts.map +0 -1
  490. package/dist/src/tests/unit/auth/crypto.utils.test.js +0 -310
  491. package/dist/src/tests/unit/auth/crypto.utils.test.js.map +0 -1
  492. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.d.ts +0 -5
  493. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.d.ts.map +0 -1
  494. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.js +0 -207
  495. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.js.map +0 -1
  496. package/dist/src/tests/unit/compatibility/migration-utils.test.d.ts +0 -5
  497. package/dist/src/tests/unit/compatibility/migration-utils.test.d.ts.map +0 -1
  498. package/dist/src/tests/unit/compatibility/migration-utils.test.js +0 -264
  499. package/dist/src/tests/unit/compatibility/migration-utils.test.js.map +0 -1
  500. package/dist/src/tests/unit/compatibility/v1-adapter.test.d.ts +0 -7
  501. package/dist/src/tests/unit/compatibility/v1-adapter.test.d.ts.map +0 -1
  502. package/dist/src/tests/unit/compatibility/v1-adapter.test.js +0 -228
  503. package/dist/src/tests/unit/compatibility/v1-adapter.test.js.map +0 -1
  504. package/dist/src/tests/unit/compatibility/version-detector.test.d.ts +0 -10
  505. package/dist/src/tests/unit/compatibility/version-detector.test.d.ts.map +0 -1
  506. package/dist/src/tests/unit/compatibility/version-detector.test.js +0 -162
  507. package/dist/src/tests/unit/compatibility/version-detector.test.js.map +0 -1
  508. package/dist/src/tests/vector-quantization.test.d.ts +0 -5
  509. package/dist/src/tests/vector-quantization.test.d.ts.map +0 -1
  510. package/dist/src/tests/vector-quantization.test.js +0 -338
  511. package/dist/src/tests/vector-quantization.test.js.map +0 -1
  512. package/dist/src/tests/wasm-vector-search.test.d.ts +0 -7
  513. package/dist/src/tests/wasm-vector-search.test.d.ts.map +0 -1
  514. package/dist/src/tests/wasm-vector-search.test.js +0 -193
  515. package/dist/src/tests/wasm-vector-search.test.js.map +0 -1
  516. package/dist/src/utils/crypto.utils.d.ts +0 -122
  517. package/dist/src/utils/crypto.utils.d.ts.map +0 -1
  518. package/dist/src/utils/crypto.utils.js +0 -296
  519. package/dist/src/utils/crypto.utils.js.map +0 -1
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Test Database Factory - Uses better-sqlite3 when available for testing
3
+ *
4
+ * Integration tests need to create large datasets and run many queries,
5
+ * which can exceed sql.js WASM memory limit (64MB). This factory attempts
6
+ * to use better-sqlite3 for tests, falling back to sql.js if unavailable.
7
+ */
8
+ let betterSqlite3 = null;
9
+ /**
10
+ * Try to load better-sqlite3 (optional dependency)
11
+ */
12
+ async function loadBetterSqlite3() {
13
+ if (betterSqlite3)
14
+ return betterSqlite3;
15
+ try {
16
+ betterSqlite3 = (await import('better-sqlite3')).default;
17
+ console.log('✅ Using better-sqlite3 for tests (no memory limit)');
18
+ return betterSqlite3;
19
+ }
20
+ catch (error) {
21
+ console.warn('⚠️ better-sqlite3 not available, falling back to sql.js (64MB memory limit)');
22
+ console.warn(' Install with: npm install --save-dev better-sqlite3');
23
+ return null;
24
+ }
25
+ }
26
+ /**
27
+ * Wrap better-sqlite3 to add sql.js-compatible save() method
28
+ */
29
+ function wrapBetterSqlite3(db) {
30
+ // Add sql.js-compatible save() method (no-op for better-sqlite3)
31
+ if (!db.save) {
32
+ db.save = function () {
33
+ // better-sqlite3 auto-saves, so this is a no-op
34
+ return;
35
+ };
36
+ }
37
+ return db;
38
+ }
39
+ /**
40
+ * Create database for testing - prefers better-sqlite3, falls back to sql.js
41
+ */
42
+ export async function createTestDatabase(filename, options) {
43
+ const BetterSqlite3 = await loadBetterSqlite3();
44
+ if (BetterSqlite3) {
45
+ // Use better-sqlite3 (native, no memory limit)
46
+ const db = new BetterSqlite3(filename, options);
47
+ return wrapBetterSqlite3(db);
48
+ }
49
+ else {
50
+ // Fall back to sql.js (WASM, 64MB limit)
51
+ const { createDatabase } = await import('./db-fallback.js');
52
+ return createDatabase(filename, options);
53
+ }
54
+ }
55
+ //# sourceMappingURL=db-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-test.js","sourceRoot":"","sources":["../../src/db-test.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,IAAI,aAAa,GAAQ,IAAI,CAAC;AAE9B;;GAEG;AACH,KAAK,UAAU,iBAAiB;IAC9B,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IAExC,IAAI,CAAC;QACH,aAAa,GAAG,CAAC,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,aAAa,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;QAC7F,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,EAAO;IAChC,iEAAiE;IACjE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACb,EAAE,CAAC,IAAI,GAAG;YACR,gDAAgD;YAChD,OAAO;QACT,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAgB,EAAE,OAAa;IACtE,MAAM,aAAa,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAEhD,IAAI,aAAa,EAAE,CAAC;QAClB,+CAA+C;QAC/C,MAAM,EAAE,GAAG,IAAI,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,yCAAyC;QACzC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC5D,OAAO,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Unified Database Layer for AgentDB v2
3
+ *
4
+ * Architecture:
5
+ * - PRIMARY: RuVector GraphDatabase (@ruvector/graph-node) for new databases
6
+ * - FALLBACK: SQLite (sql.js) for legacy databases
7
+ *
8
+ * Detection Logic:
9
+ * 1. Check if database file exists
10
+ * 2. If exists, check file signature to determine type
11
+ * 3. If new database or .graph extension → use GraphDatabase
12
+ * 4. If .db extension and SQLite signature → use SQLite (legacy mode)
13
+ *
14
+ * Migration:
15
+ * - Provides migration tool to convert SQLite → GraphDatabase
16
+ * - Maintains backward compatibility with existing databases
17
+ */
18
+ import { GraphDatabaseAdapter } from './backends/graph/GraphDatabaseAdapter.js';
19
+ export type DatabaseMode = 'graph' | 'sqlite-legacy';
20
+ export interface UnifiedDatabaseConfig {
21
+ path: string;
22
+ dimensions?: number;
23
+ forceMode?: DatabaseMode;
24
+ autoMigrate?: boolean;
25
+ }
26
+ /**
27
+ * Unified Database - Smart detection and mode selection
28
+ */
29
+ export declare class UnifiedDatabase {
30
+ private mode;
31
+ private graphDb?;
32
+ private sqliteDb?;
33
+ private config;
34
+ constructor(config: UnifiedDatabaseConfig);
35
+ /**
36
+ * Initialize database with automatic mode detection
37
+ */
38
+ initialize(embedder: any): Promise<void>;
39
+ /**
40
+ * Initialize the selected database mode
41
+ */
42
+ private initializeMode;
43
+ /**
44
+ * Check if file is a SQLite database
45
+ */
46
+ private isSQLiteDatabase;
47
+ /**
48
+ * Migrate SQLite database to RuVector GraphDatabase
49
+ */
50
+ private migrateSQLiteToGraph;
51
+ /**
52
+ * Get the active database mode
53
+ */
54
+ getMode(): DatabaseMode;
55
+ /**
56
+ * Get the graph database (if in graph mode)
57
+ */
58
+ getGraphDatabase(): GraphDatabaseAdapter | undefined;
59
+ /**
60
+ * Get the SQLite database (if in legacy mode)
61
+ */
62
+ getSQLiteDatabase(): any | undefined;
63
+ /**
64
+ * Execute a query (auto-routes to correct database)
65
+ */
66
+ query(queryOrCypher: string): Promise<any>;
67
+ /**
68
+ * Close database
69
+ */
70
+ close(): void;
71
+ }
72
+ /**
73
+ * Create unified database (smart mode detection)
74
+ */
75
+ export declare function createUnifiedDatabase(path: string, embedder: any, options?: Partial<UnifiedDatabaseConfig>): Promise<UnifiedDatabase>;
76
+ //# sourceMappingURL=db-unified.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-unified.d.ts","sourceRoot":"","sources":["../../src/db-unified.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,oBAAoB,EAA4B,MAAM,0CAA0C,CAAC;AAK1G,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC;AAErD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAuB;IACvC,OAAO,CAAC,QAAQ,CAAC,CAAM;IACvB,OAAO,CAAC,MAAM,CAAwB;gBAE1B,MAAM,EAAE,qBAAqB;IAKzC;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IA6D9C;;OAEG;YACW,cAAc;IA+B5B;;OAEG;YACW,gBAAgB;IAY9B;;OAEG;YACW,oBAAoB;IAoGlC;;OAEG;IACH,OAAO,IAAI,YAAY;IAIvB;;OAEG;IACH,gBAAgB,IAAI,oBAAoB,GAAG,SAAS;IAIpD;;OAEG;IACH,iBAAiB,IAAI,GAAG,GAAG,SAAS;IAIpC;;OAEG;IACG,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAUhD;;OAEG;IACH,KAAK,IAAI,IAAI;CAQd;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,GAAG,EACb,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GACvC,OAAO,CAAC,eAAe,CAAC,CAY1B"}
@@ -0,0 +1,281 @@
1
+ /**
2
+ * Unified Database Layer for AgentDB v2
3
+ *
4
+ * Architecture:
5
+ * - PRIMARY: RuVector GraphDatabase (@ruvector/graph-node) for new databases
6
+ * - FALLBACK: SQLite (sql.js) for legacy databases
7
+ *
8
+ * Detection Logic:
9
+ * 1. Check if database file exists
10
+ * 2. If exists, check file signature to determine type
11
+ * 3. If new database or .graph extension → use GraphDatabase
12
+ * 4. If .db extension and SQLite signature → use SQLite (legacy mode)
13
+ *
14
+ * Migration:
15
+ * - Provides migration tool to convert SQLite → GraphDatabase
16
+ * - Maintains backward compatibility with existing databases
17
+ */
18
+ import { GraphDatabaseAdapter } from './backends/graph/GraphDatabaseAdapter.js';
19
+ import * as fs from 'fs';
20
+ import * as path from 'path';
21
+ /**
22
+ * Unified Database - Smart detection and mode selection
23
+ */
24
+ export class UnifiedDatabase {
25
+ mode;
26
+ graphDb;
27
+ sqliteDb;
28
+ config;
29
+ constructor(config) {
30
+ this.config = config;
31
+ this.mode = 'graph'; // Default to graph mode
32
+ }
33
+ /**
34
+ * Initialize database with automatic mode detection
35
+ */
36
+ async initialize(embedder) {
37
+ const dbPath = this.config.path;
38
+ // Check if user forced a specific mode
39
+ if (this.config.forceMode) {
40
+ this.mode = this.config.forceMode;
41
+ await this.initializeMode(embedder);
42
+ return;
43
+ }
44
+ // Auto-detect based on file extension and content
45
+ if (fs.existsSync(dbPath)) {
46
+ const ext = path.extname(dbPath);
47
+ // .graph extension = always use graph mode
48
+ if (ext === '.graph') {
49
+ this.mode = 'graph';
50
+ console.log('🔍 Detected .graph extension → Using RuVector GraphDatabase');
51
+ }
52
+ // .db extension = check if it's SQLite
53
+ else if (ext === '.db') {
54
+ const isLegacySQLite = await this.isSQLiteDatabase(dbPath);
55
+ if (isLegacySQLite) {
56
+ this.mode = 'sqlite-legacy';
57
+ console.log('🔍 Detected legacy SQLite database');
58
+ // Offer migration if autoMigrate is enabled
59
+ if (this.config.autoMigrate) {
60
+ console.log('🔄 Auto-migration enabled, will migrate to GraphDatabase...');
61
+ await this.migrateSQLiteToGraph(dbPath, embedder);
62
+ this.mode = 'graph';
63
+ // Migration already initialized graphDb, skip initializeMode
64
+ return;
65
+ }
66
+ else {
67
+ console.log('ℹ️ Running in legacy SQLite mode');
68
+ console.log('💡 To migrate to RuVector Graph: set autoMigrate: true');
69
+ }
70
+ }
71
+ else {
72
+ // Not SQLite, use graph mode
73
+ this.mode = 'graph';
74
+ console.log('🔍 Using RuVector GraphDatabase');
75
+ }
76
+ }
77
+ else {
78
+ // Unknown extension, default to graph
79
+ this.mode = 'graph';
80
+ }
81
+ }
82
+ else {
83
+ // New database - use graph mode (recommended)
84
+ this.mode = 'graph';
85
+ console.log('✨ Creating new RuVector GraphDatabase');
86
+ // Suggest .graph extension if not using it
87
+ if (!dbPath.endsWith('.graph') && !dbPath.endsWith('.db')) {
88
+ console.log('💡 Tip: Use .graph extension for clarity (e.g., agentdb.graph)');
89
+ }
90
+ }
91
+ await this.initializeMode(embedder);
92
+ }
93
+ /**
94
+ * Initialize the selected database mode
95
+ */
96
+ async initializeMode(embedder) {
97
+ if (this.mode === 'graph') {
98
+ // Use RuVector GraphDatabase
99
+ const config = {
100
+ storagePath: this.config.path,
101
+ dimensions: this.config.dimensions || 384,
102
+ distanceMetric: 'Cosine'
103
+ };
104
+ this.graphDb = new GraphDatabaseAdapter(config, embedder);
105
+ await this.graphDb.initialize();
106
+ console.log('✅ RuVector GraphDatabase ready (Primary Mode)');
107
+ console.log(' - Cypher queries enabled');
108
+ console.log(' - Hypergraph support active');
109
+ console.log(' - ACID transactions available');
110
+ console.log(' - 131K+ ops/sec batch inserts');
111
+ }
112
+ else {
113
+ // Use legacy SQLite — db-fallback prefers native better-sqlite3 when
114
+ // loadable and falls back to sql.js (WASM) otherwise (ruflo #2235 A).
115
+ const { createDatabase, getDatabaseInfo } = await import('./db-fallback.js');
116
+ this.sqliteDb = await createDatabase(this.config.path);
117
+ const info = getDatabaseInfo();
118
+ console.log(`⚠️ Using legacy SQLite mode (${info.implementation})`);
119
+ console.log(' - Limited to SQL queries');
120
+ console.log(' - No hypergraph support');
121
+ console.log(' - Consider migration to GraphDatabase');
122
+ }
123
+ }
124
+ /**
125
+ * Check if file is a SQLite database
126
+ */
127
+ async isSQLiteDatabase(filePath) {
128
+ try {
129
+ const buffer = fs.readFileSync(filePath);
130
+ // SQLite databases start with "SQLite format 3\0"
131
+ const signature = buffer.slice(0, 16).toString();
132
+ return signature.startsWith('SQLite format 3');
133
+ }
134
+ catch {
135
+ return false;
136
+ }
137
+ }
138
+ /**
139
+ * Migrate SQLite database to RuVector GraphDatabase
140
+ */
141
+ async migrateSQLiteToGraph(sqlitePath, embedder) {
142
+ console.log('🔄 Starting migration from SQLite to RuVector Graph...');
143
+ const startTime = Date.now();
144
+ // Load SQLite database using ESM import
145
+ const { createDatabase } = await import('./db-fallback.js');
146
+ const sqliteDb = await createDatabase(sqlitePath);
147
+ // Create new GraphDatabase
148
+ const graphPath = sqlitePath.replace(/\.db$/, '.graph');
149
+ const graphConfig = {
150
+ storagePath: graphPath,
151
+ dimensions: this.config.dimensions || 384,
152
+ distanceMetric: 'Cosine'
153
+ };
154
+ const graphDb = new GraphDatabaseAdapter(graphConfig, embedder);
155
+ await graphDb.initialize();
156
+ // Migrate episodes
157
+ console.log(' 📦 Migrating episodes...');
158
+ const episodes = sqliteDb.prepare('SELECT * FROM episodes').all();
159
+ for (const ep of episodes) {
160
+ // Generate embedding for episode
161
+ const text = `${ep.task} ${ep.input || ''} ${ep.output || ''}`;
162
+ const embedding = await embedder.embed(text);
163
+ await graphDb.storeEpisode({
164
+ id: `ep-${ep.id}`,
165
+ sessionId: ep.session_id,
166
+ task: ep.task,
167
+ reward: ep.reward,
168
+ success: ep.success === 1,
169
+ input: ep.input,
170
+ output: ep.output,
171
+ critique: ep.critique,
172
+ createdAt: ep.created_at,
173
+ tokensUsed: ep.tokens_used,
174
+ latencyMs: ep.latency_ms
175
+ }, embedding);
176
+ }
177
+ console.log(` ✅ Migrated ${episodes.length} episodes`);
178
+ // Migrate skills
179
+ console.log(' 📦 Migrating skills...');
180
+ const skills = sqliteDb.prepare('SELECT * FROM skills').all();
181
+ for (const skill of skills) {
182
+ const text = `${skill.name} ${skill.description} ${skill.code}`;
183
+ const embedding = await embedder.embed(text);
184
+ await graphDb.storeSkill({
185
+ id: `skill-${skill.id}`,
186
+ name: skill.name,
187
+ description: skill.description,
188
+ code: skill.code,
189
+ usageCount: skill.usage_count,
190
+ avgReward: skill.avg_reward,
191
+ createdAt: skill.created_at,
192
+ updatedAt: skill.updated_at,
193
+ tags: skill.tags
194
+ }, embedding);
195
+ }
196
+ console.log(` ✅ Migrated ${skills.length} skills`);
197
+ // Migrate causal edges
198
+ console.log(' 📦 Migrating causal relationships...');
199
+ const edges = sqliteDb.prepare('SELECT * FROM causal_edges').all();
200
+ for (const edge of edges) {
201
+ const text = edge.mechanism;
202
+ const embedding = await embedder.embed(text);
203
+ await graphDb.createCausalEdge({
204
+ from: `ep-${edge.from_memory_id}`,
205
+ to: `ep-${edge.to_memory_id}`,
206
+ mechanism: edge.mechanism,
207
+ uplift: edge.uplift,
208
+ confidence: edge.confidence,
209
+ sampleSize: edge.sample_size
210
+ }, embedding);
211
+ }
212
+ console.log(` ✅ Migrated ${edges.length} causal edges`);
213
+ const duration = ((Date.now() - startTime) / 1000).toFixed(2);
214
+ console.log(`\n🎉 Migration complete in ${duration}s!`);
215
+ console.log(` Old SQLite: ${sqlitePath}`);
216
+ console.log(` New Graph: ${graphPath}`);
217
+ console.log(`\n💡 Backup your SQLite file and update path to use .graph`);
218
+ // Close SQLite
219
+ sqliteDb.close();
220
+ // Update config to use new graph database
221
+ this.config.path = graphPath;
222
+ this.graphDb = graphDb;
223
+ }
224
+ /**
225
+ * Get the active database mode
226
+ */
227
+ getMode() {
228
+ return this.mode;
229
+ }
230
+ /**
231
+ * Get the graph database (if in graph mode)
232
+ */
233
+ getGraphDatabase() {
234
+ return this.graphDb;
235
+ }
236
+ /**
237
+ * Get the SQLite database (if in legacy mode)
238
+ */
239
+ getSQLiteDatabase() {
240
+ return this.sqliteDb;
241
+ }
242
+ /**
243
+ * Execute a query (auto-routes to correct database)
244
+ */
245
+ async query(queryOrCypher) {
246
+ if (this.mode === 'graph') {
247
+ // Execute Cypher query
248
+ return await this.graphDb.query(queryOrCypher);
249
+ }
250
+ else {
251
+ // Execute SQL query
252
+ return this.sqliteDb.prepare(queryOrCypher).all();
253
+ }
254
+ }
255
+ /**
256
+ * Close database
257
+ */
258
+ close() {
259
+ if (this.graphDb) {
260
+ this.graphDb.close();
261
+ }
262
+ if (this.sqliteDb) {
263
+ this.sqliteDb.close();
264
+ }
265
+ }
266
+ }
267
+ /**
268
+ * Create unified database (smart mode detection)
269
+ */
270
+ export async function createUnifiedDatabase(path, embedder, options) {
271
+ const config = {
272
+ path,
273
+ dimensions: options?.dimensions || 384,
274
+ forceMode: options?.forceMode,
275
+ autoMigrate: options?.autoMigrate ?? false // Default: manual migration
276
+ };
277
+ const db = new UnifiedDatabase(config);
278
+ await db.initialize(embedder);
279
+ return db;
280
+ }
281
+ //# sourceMappingURL=db-unified.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-unified.js","sourceRoot":"","sources":["../../src/db-unified.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Canonical identity for an embedding space.
3
+ *
4
+ * The hash is intentionally independent of object insertion order. It is safe
5
+ * to persist in RVF metadata, cache keys, experiment manifests, and receipts.
6
+ */
7
+ export type EmbeddingRole = 'query' | 'passage';
8
+ export type EmbeddingRolePolicy = {
9
+ kind: 'symmetric';
10
+ } | {
11
+ kind: 'asymmetric';
12
+ prefixPolicy: string;
13
+ prefixPolicyVersion: string;
14
+ queryTemplate: string;
15
+ passageTemplate: string;
16
+ };
17
+ export type EmbeddingProvenanceType = 'user_claim' | 'agent_output' | 'system_observation' | 'tool_result' | 'unknown';
18
+ export interface MemoryProvenance {
19
+ type: EmbeddingProvenanceType;
20
+ sourceId?: string;
21
+ runId?: string;
22
+ receiptId?: string;
23
+ createdAt?: string;
24
+ trust?: 'unverified' | 'verified' | 'signed';
25
+ signature?: string;
26
+ }
27
+ export interface EmbeddingSpaceIdentityInput {
28
+ modelId: string;
29
+ modelArtifactHash: string;
30
+ tokenizerHash: string;
31
+ promptTemplateHash: string;
32
+ poolingStrategy: string;
33
+ truncationLength: number;
34
+ outputDimension: number;
35
+ outputDtype: string;
36
+ normalization: string;
37
+ runtimeRevision: string;
38
+ distanceMetric: string;
39
+ rolePolicy: EmbeddingRolePolicy;
40
+ }
41
+ export interface EmbeddingSpaceIdentity extends EmbeddingSpaceIdentityInput {
42
+ schema: 'agentdb.embedding-space.v1';
43
+ hashAlgorithm: 'sha256';
44
+ hash: string;
45
+ }
46
+ export type EmbeddingCompatibilityOperation = 'cache-reuse' | 'corpus-mutation' | 'vector-read';
47
+ export declare class EmbeddingSpaceMismatchError extends Error {
48
+ readonly expectedHash: string;
49
+ readonly actualHash: string;
50
+ readonly operation: EmbeddingCompatibilityOperation;
51
+ readonly code = "AGENTDB_EMBEDDING_SPACE_MISMATCH";
52
+ constructor(expectedHash: string, actualHash: string, operation: EmbeddingCompatibilityOperation);
53
+ }
54
+ export declare function createEmbeddingSpaceIdentity(input: EmbeddingSpaceIdentityInput): EmbeddingSpaceIdentity;
55
+ export declare function embeddingSpacesEqual(left: Pick<EmbeddingSpaceIdentity, 'hash'>, right: Pick<EmbeddingSpaceIdentity, 'hash'>): boolean;
56
+ export declare function assertEmbeddingSpaceCompatible(expected: Pick<EmbeddingSpaceIdentity, 'hash'>, actual: Pick<EmbeddingSpaceIdentity, 'hash'>, operation: EmbeddingCompatibilityOperation): void;
57
+ export declare function applyRoleTemplate(template: string, text: string): string;
58
+ //# sourceMappingURL=EmbeddingSpaceIdentity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddingSpaceIdentity.d.ts","sourceRoot":"","sources":["../../../src/embedding/EmbeddingSpaceIdentity.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAChD,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IACE,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEN,MAAM,MAAM,uBAAuB,GAC/B,YAAY,GACZ,cAAc,GACd,oBAAoB,GACpB,aAAa,GACb,SAAS,CAAC;AAEd,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,WAAW,sBAAuB,SAAQ,2BAA2B;IACzE,MAAM,EAAE,4BAA4B,CAAC;IACrC,aAAa,EAAE,QAAQ,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,+BAA+B,GACvC,aAAa,GACb,iBAAiB,GACjB,aAAa,CAAC;AAElB,qBAAa,2BAA4B,SAAQ,KAAK;IAIlD,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM;IAC3B,QAAQ,CAAC,SAAS,EAAE,+BAA+B;IALrD,QAAQ,CAAC,IAAI,sCAAsC;gBAGxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,+BAA+B;CAOtD;AA8ED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,2BAA2B,GACjC,sBAAsB,CAoBxB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,EAC1C,KAAK,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,GAC1C,OAAO,CAET;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,EAC9C,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,EAC5C,SAAS,EAAE,+BAA+B,GACzC,IAAI,CAIN;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKxE"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Canonical identity for an embedding space.
3
+ *
4
+ * The hash is intentionally independent of object insertion order. It is safe
5
+ * to persist in RVF metadata, cache keys, experiment manifests, and receipts.
6
+ */
7
+ export class EmbeddingSpaceMismatchError extends Error {
8
+ expectedHash;
9
+ actualHash;
10
+ operation;
11
+ code = 'AGENTDB_EMBEDDING_SPACE_MISMATCH';
12
+ constructor(expectedHash, actualHash, operation) {
13
+ super(`Embedding space mismatch for ${operation}: expected ${expectedHash}, received ${actualHash}`);
14
+ this.expectedHash = expectedHash;
15
+ this.actualHash = actualHash;
16
+ this.operation = operation;
17
+ this.name = 'EmbeddingSpaceMismatchError';
18
+ }
19
+ }
20
+ function canonicalize(value) {
21
+ if (value === null || typeof value !== 'object') {
22
+ return JSON.stringify(value);
23
+ }
24
+ if (Array.isArray(value)) {
25
+ return `[${value.map(canonicalize).join(',')}]`;
26
+ }
27
+ const record = value;
28
+ return `{${Object.keys(record)
29
+ .sort()
30
+ .map(key => `${JSON.stringify(key)}:${canonicalize(record[key])}`)
31
+ .join(',')}}`;
32
+ }
33
+ // Small, dependency-free SHA-256 keeps identity creation synchronous in Node,
34
+ // browsers, WASM hosts, and edge runtimes.
35
+ function sha256(input) {
36
+ const bytes = new TextEncoder().encode(input);
37
+ const bitLength = bytes.length * 8;
38
+ const paddedLength = (((bytes.length + 9 + 63) >> 6) << 6);
39
+ const padded = new Uint8Array(paddedLength);
40
+ padded.set(bytes);
41
+ padded[bytes.length] = 0x80;
42
+ const view = new DataView(padded.buffer);
43
+ view.setUint32(paddedLength - 4, bitLength >>> 0, false);
44
+ view.setUint32(paddedLength - 8, Math.floor(bitLength / 0x100000000), false);
45
+ const constants = new Uint32Array([
46
+ 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1,
47
+ 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
48
+ 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786,
49
+ 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
50
+ 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147,
51
+ 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,
52
+ 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b,
53
+ 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
54
+ 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a,
55
+ 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,
56
+ 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
57
+ ]);
58
+ const state = new Uint32Array([
59
+ 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,
60
+ 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19
61
+ ]);
62
+ const words = new Uint32Array(64);
63
+ const rotate = (value, bits) => (value >>> bits) | (value << (32 - bits));
64
+ for (let offset = 0; offset < padded.length; offset += 64) {
65
+ for (let i = 0; i < 16; i++)
66
+ words[i] = view.getUint32(offset + i * 4, false);
67
+ for (let i = 16; i < 64; i++) {
68
+ const a = words[i - 15];
69
+ const b = words[i - 2];
70
+ const s0 = rotate(a, 7) ^ rotate(a, 18) ^ (a >>> 3);
71
+ const s1 = rotate(b, 17) ^ rotate(b, 19) ^ (b >>> 10);
72
+ words[i] = (words[i - 16] + s0 + words[i - 7] + s1) >>> 0;
73
+ }
74
+ let [a, b, c, d, e, f, g, h] = state;
75
+ for (let i = 0; i < 64; i++) {
76
+ const s1 = rotate(e, 6) ^ rotate(e, 11) ^ rotate(e, 25);
77
+ const choose = (e & f) ^ (~e & g);
78
+ const t1 = (h + s1 + choose + constants[i] + words[i]) >>> 0;
79
+ const s0 = rotate(a, 2) ^ rotate(a, 13) ^ rotate(a, 22);
80
+ const majority = (a & b) ^ (a & c) ^ (b & c);
81
+ const t2 = (s0 + majority) >>> 0;
82
+ h = g;
83
+ g = f;
84
+ f = e;
85
+ e = (d + t1) >>> 0;
86
+ d = c;
87
+ c = b;
88
+ b = a;
89
+ a = (t1 + t2) >>> 0;
90
+ }
91
+ state[0] = (state[0] + a) >>> 0;
92
+ state[1] = (state[1] + b) >>> 0;
93
+ state[2] = (state[2] + c) >>> 0;
94
+ state[3] = (state[3] + d) >>> 0;
95
+ state[4] = (state[4] + e) >>> 0;
96
+ state[5] = (state[5] + f) >>> 0;
97
+ state[6] = (state[6] + g) >>> 0;
98
+ state[7] = (state[7] + h) >>> 0;
99
+ }
100
+ return Array.from(state, word => word.toString(16).padStart(8, '0')).join('');
101
+ }
102
+ export function createEmbeddingSpaceIdentity(input) {
103
+ if (!input.modelArtifactHash || !input.tokenizerHash || !input.promptTemplateHash) {
104
+ throw new Error('Embedding space identity requires immutable model, tokenizer, and prompt hashes');
105
+ }
106
+ if (!Number.isInteger(input.truncationLength) || input.truncationLength <= 0) {
107
+ throw new Error('Embedding truncationLength must be a positive integer');
108
+ }
109
+ if (!Number.isInteger(input.outputDimension) || input.outputDimension <= 0) {
110
+ throw new Error('Embedding outputDimension must be a positive integer');
111
+ }
112
+ const payload = {
113
+ schema: 'agentdb.embedding-space.v1',
114
+ ...input,
115
+ rolePolicy: Object.freeze({ ...input.rolePolicy })
116
+ };
117
+ return Object.freeze({
118
+ ...payload,
119
+ hashAlgorithm: 'sha256',
120
+ hash: sha256(canonicalize(payload))
121
+ });
122
+ }
123
+ export function embeddingSpacesEqual(left, right) {
124
+ return left.hash === right.hash;
125
+ }
126
+ export function assertEmbeddingSpaceCompatible(expected, actual, operation) {
127
+ if (operation !== 'vector-read' && !embeddingSpacesEqual(expected, actual)) {
128
+ throw new EmbeddingSpaceMismatchError(expected.hash, actual.hash, operation);
129
+ }
130
+ }
131
+ export function applyRoleTemplate(template, text) {
132
+ if (!template.includes('{text}')) {
133
+ throw new Error('Embedding role template must contain {text}');
134
+ }
135
+ return template.replaceAll('{text}', text);
136
+ }
137
+ //# sourceMappingURL=EmbeddingSpaceIdentity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddingSpaceIdentity.js","sourceRoot":"","sources":["../../../src/embedding/EmbeddingSpaceIdentity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { EmbeddingSpaceMismatchError, applyRoleTemplate, assertEmbeddingSpaceCompatible, createEmbeddingSpaceIdentity, embeddingSpacesEqual } from './EmbeddingSpaceIdentity.js';
2
+ export type { EmbeddingCompatibilityOperation, EmbeddingProvenanceType, EmbeddingRole, EmbeddingRolePolicy, EmbeddingSpaceIdentity, EmbeddingSpaceIdentityInput, MemoryProvenance } from './EmbeddingSpaceIdentity.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/embedding/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,8BAA8B,EAC9B,4BAA4B,EAC5B,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,+BAA+B,EAC/B,uBAAuB,EACvB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EACjB,MAAM,6BAA6B,CAAC"}