agentdb 3.0.0-alpha.8 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (718) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +248 -269
  3. package/dist/schemas/frontier-schema.sql +7 -0
  4. package/dist/schemas/schema.sql +7 -0
  5. package/dist/src/backends/VectorBackend.d.ts +48 -6
  6. package/dist/src/backends/VectorBackend.d.ts.map +1 -1
  7. package/dist/src/backends/VectorBackend.js +13 -1
  8. package/dist/src/backends/VectorBackend.js.map +1 -1
  9. package/dist/src/backends/detector.js.map +1 -1
  10. package/dist/src/backends/factory.d.ts +16 -33
  11. package/dist/src/backends/factory.d.ts.map +1 -1
  12. package/dist/src/backends/factory.js +140 -110
  13. package/dist/src/backends/factory.js.map +1 -1
  14. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts +54 -6
  15. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts.map +1 -1
  16. package/dist/src/backends/graph/GraphDatabaseAdapter.js +143 -6
  17. package/dist/src/backends/graph/GraphDatabaseAdapter.js.map +1 -1
  18. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts.map +1 -1
  19. package/dist/src/backends/hnswlib/HNSWLibBackend.js +35 -8
  20. package/dist/src/backends/hnswlib/HNSWLibBackend.js.map +1 -1
  21. package/dist/src/backends/index.d.ts +2 -1
  22. package/dist/src/backends/index.d.ts.map +1 -1
  23. package/dist/src/backends/index.js +2 -0
  24. package/dist/src/backends/index.js.map +1 -1
  25. package/dist/src/backends/ruvector/RuVectorBackend.d.ts +256 -45
  26. package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
  27. package/dist/src/backends/ruvector/RuVectorBackend.js +764 -290
  28. package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
  29. package/dist/src/backends/ruvector/RuVectorLearning.d.ts +0 -4
  30. package/dist/src/backends/ruvector/RuVectorLearning.d.ts.map +1 -1
  31. package/dist/src/backends/ruvector/RuVectorLearning.js +0 -6
  32. package/dist/src/backends/ruvector/RuVectorLearning.js.map +1 -1
  33. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts +175 -0
  34. package/dist/src/backends/rvf/AdaptiveIndexTuner.d.ts.map +1 -0
  35. package/dist/src/backends/rvf/AdaptiveIndexTuner.js +567 -0
  36. package/dist/src/backends/rvf/AdaptiveIndexTuner.js.map +1 -0
  37. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts +148 -0
  38. package/dist/src/backends/rvf/ContrastiveTrainer.d.ts.map +1 -0
  39. package/dist/src/backends/rvf/ContrastiveTrainer.js +438 -0
  40. package/dist/src/backends/rvf/ContrastiveTrainer.js.map +1 -0
  41. package/dist/src/backends/rvf/FederatedSessionManager.d.ts +212 -0
  42. package/dist/src/backends/rvf/FederatedSessionManager.d.ts.map +1 -0
  43. package/dist/src/backends/rvf/FederatedSessionManager.js +397 -0
  44. package/dist/src/backends/rvf/FederatedSessionManager.js.map +1 -0
  45. package/dist/src/backends/rvf/FilterBuilder.d.ts +136 -0
  46. package/dist/src/backends/rvf/FilterBuilder.d.ts.map +1 -0
  47. package/dist/src/backends/rvf/FilterBuilder.js +157 -0
  48. package/dist/src/backends/rvf/FilterBuilder.js.map +1 -0
  49. package/dist/src/backends/rvf/NativeAccelerator.d.ts +158 -0
  50. package/dist/src/backends/rvf/NativeAccelerator.d.ts.map +1 -0
  51. package/dist/src/backends/rvf/NativeAccelerator.js +702 -0
  52. package/dist/src/backends/rvf/NativeAccelerator.js.map +1 -0
  53. package/dist/src/backends/rvf/RvfBackend.d.ts +207 -0
  54. package/dist/src/backends/rvf/RvfBackend.d.ts.map +1 -0
  55. package/dist/src/backends/rvf/RvfBackend.js +651 -0
  56. package/dist/src/backends/rvf/RvfBackend.js.map +1 -0
  57. package/dist/src/backends/rvf/RvfSolver.d.ts +175 -0
  58. package/dist/src/backends/rvf/RvfSolver.d.ts.map +1 -0
  59. package/dist/src/backends/rvf/RvfSolver.js +176 -0
  60. package/dist/src/backends/rvf/RvfSolver.js.map +1 -0
  61. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts +143 -0
  62. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts.map +1 -0
  63. package/dist/src/backends/rvf/SelfLearningRvfBackend.js +612 -0
  64. package/dist/src/backends/rvf/SelfLearningRvfBackend.js.map +1 -0
  65. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts +128 -0
  66. package/dist/src/backends/rvf/SemanticQueryRouter.d.ts.map +1 -0
  67. package/dist/src/backends/rvf/SemanticQueryRouter.js +415 -0
  68. package/dist/src/backends/rvf/SemanticQueryRouter.js.map +1 -0
  69. package/dist/src/backends/rvf/SimdFallbacks.d.ts +25 -0
  70. package/dist/src/backends/rvf/SimdFallbacks.d.ts.map +1 -0
  71. package/dist/src/backends/rvf/SimdFallbacks.js +287 -0
  72. package/dist/src/backends/rvf/SimdFallbacks.js.map +1 -0
  73. package/dist/src/backends/rvf/SolverBandit.d.ts +100 -0
  74. package/dist/src/backends/rvf/SolverBandit.d.ts.map +1 -0
  75. package/dist/src/backends/rvf/SolverBandit.js +216 -0
  76. package/dist/src/backends/rvf/SolverBandit.js.map +1 -0
  77. package/dist/src/backends/rvf/SonaLearningBackend.d.ts +157 -0
  78. package/dist/src/backends/rvf/SonaLearningBackend.d.ts.map +1 -0
  79. package/dist/src/backends/rvf/SonaLearningBackend.js +283 -0
  80. package/dist/src/backends/rvf/SonaLearningBackend.js.map +1 -0
  81. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts +104 -0
  82. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts.map +1 -0
  83. package/dist/src/backends/rvf/SqlJsRvfBackend.js +464 -0
  84. package/dist/src/backends/rvf/SqlJsRvfBackend.js.map +1 -0
  85. package/dist/src/backends/rvf/WasmStoreBridge.d.ts +27 -0
  86. package/dist/src/backends/rvf/WasmStoreBridge.d.ts.map +1 -0
  87. package/dist/src/backends/rvf/WasmStoreBridge.js +87 -0
  88. package/dist/src/backends/rvf/WasmStoreBridge.js.map +1 -0
  89. package/dist/src/backends/rvf/validation.d.ts +20 -0
  90. package/dist/src/backends/rvf/validation.d.ts.map +1 -0
  91. package/dist/src/backends/rvf/validation.js +78 -0
  92. package/dist/src/backends/rvf/validation.js.map +1 -0
  93. package/dist/src/benchmark/BenchmarkSuite.d.ts +318 -0
  94. package/dist/src/benchmark/BenchmarkSuite.d.ts.map +1 -0
  95. package/dist/src/benchmark/BenchmarkSuite.js +984 -0
  96. package/dist/src/benchmark/BenchmarkSuite.js.map +1 -0
  97. package/dist/src/benchmark/index.d.ts +29 -0
  98. package/dist/src/benchmark/index.d.ts.map +1 -0
  99. package/dist/src/benchmark/index.js +39 -0
  100. package/dist/src/benchmark/index.js.map +1 -0
  101. package/dist/src/browser/AttentionBrowser.d.ts.map +1 -1
  102. package/dist/src/browser/AttentionBrowser.js +1 -0
  103. package/dist/src/browser/AttentionBrowser.js.map +1 -1
  104. package/dist/src/cli/agentdb-cli.d.ts +14 -0
  105. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  106. package/dist/src/cli/agentdb-cli.js +839 -143
  107. package/dist/src/cli/agentdb-cli.js.map +1 -1
  108. package/dist/src/cli/commands/attention.js +12 -2
  109. package/dist/src/cli/commands/attention.js.map +1 -1
  110. package/dist/src/cli/commands/doctor.js +5 -5
  111. package/dist/src/cli/commands/doctor.js.map +1 -1
  112. package/dist/src/cli/commands/hyperbolic.d.ts +11 -0
  113. package/dist/src/cli/commands/hyperbolic.d.ts.map +1 -0
  114. package/dist/src/cli/commands/hyperbolic.js +440 -0
  115. package/dist/src/cli/commands/hyperbolic.js.map +1 -0
  116. package/dist/src/cli/commands/install-embeddings.d.ts +1 -1
  117. package/dist/src/cli/commands/install-embeddings.d.ts.map +1 -1
  118. package/dist/src/cli/commands/install-embeddings.js +17 -11
  119. package/dist/src/cli/commands/install-embeddings.js.map +1 -1
  120. package/dist/src/cli/commands/learn.d.ts +11 -0
  121. package/dist/src/cli/commands/learn.d.ts.map +1 -0
  122. package/dist/src/cli/commands/learn.js +410 -0
  123. package/dist/src/cli/commands/learn.js.map +1 -0
  124. package/dist/src/cli/commands/migrate.d.ts +15 -0
  125. package/dist/src/cli/commands/migrate.d.ts.map +1 -1
  126. package/dist/src/cli/commands/migrate.js +190 -10
  127. package/dist/src/cli/commands/migrate.js.map +1 -1
  128. package/dist/src/cli/commands/route.d.ts +11 -0
  129. package/dist/src/cli/commands/route.d.ts.map +1 -0
  130. package/dist/src/cli/commands/route.js +419 -0
  131. package/dist/src/cli/commands/route.js.map +1 -0
  132. package/dist/src/cli/commands/rvf.d.ts +21 -0
  133. package/dist/src/cli/commands/rvf.d.ts.map +1 -0
  134. package/dist/src/cli/commands/rvf.js +448 -0
  135. package/dist/src/cli/commands/rvf.js.map +1 -0
  136. package/dist/src/cli/commands/simulate-report.js +14 -2
  137. package/dist/src/cli/commands/simulate-report.js.map +1 -1
  138. package/dist/src/cli/lib/report-store.d.ts +2 -1
  139. package/dist/src/cli/lib/report-store.d.ts.map +1 -1
  140. package/dist/src/cli/lib/report-store.js +85 -65
  141. package/dist/src/cli/lib/report-store.js.map +1 -1
  142. package/dist/src/cli/lib/simulation-runner.d.ts +40 -3
  143. package/dist/src/cli/lib/simulation-runner.d.ts.map +1 -1
  144. package/dist/src/cli/lib/simulation-runner.js +248 -6
  145. package/dist/src/cli/lib/simulation-runner.js.map +1 -1
  146. package/dist/src/compatibility/DeprecationWarnings.d.ts +54 -0
  147. package/dist/src/compatibility/DeprecationWarnings.d.ts.map +1 -0
  148. package/dist/src/compatibility/DeprecationWarnings.js +131 -0
  149. package/dist/src/compatibility/DeprecationWarnings.js.map +1 -0
  150. package/dist/src/compatibility/MigrationUtilities.d.ts +30 -0
  151. package/dist/src/compatibility/MigrationUtilities.d.ts.map +1 -0
  152. package/dist/src/compatibility/MigrationUtilities.js +184 -0
  153. package/dist/src/compatibility/MigrationUtilities.js.map +1 -0
  154. package/dist/src/compatibility/V1toV2Adapter.d.ts +76 -0
  155. package/dist/src/compatibility/V1toV2Adapter.d.ts.map +1 -0
  156. package/dist/src/compatibility/V1toV2Adapter.js +185 -0
  157. package/dist/src/compatibility/V1toV2Adapter.js.map +1 -0
  158. package/dist/src/compatibility/VersionDetector.d.ts +32 -0
  159. package/dist/src/compatibility/VersionDetector.d.ts.map +1 -0
  160. package/dist/src/compatibility/VersionDetector.js +144 -0
  161. package/dist/src/compatibility/VersionDetector.js.map +1 -0
  162. package/dist/src/compatibility/index.d.ts +14 -0
  163. package/dist/src/compatibility/index.d.ts.map +1 -0
  164. package/dist/src/compatibility/index.js +21 -0
  165. package/dist/src/compatibility/index.js.map +1 -0
  166. package/dist/src/compatibility/types.d.ts +103 -0
  167. package/dist/src/compatibility/types.d.ts.map +1 -0
  168. package/dist/src/compatibility/types.js +5 -0
  169. package/dist/src/compatibility/types.js.map +1 -0
  170. package/dist/src/controllers/AttentionService.d.ts +99 -202
  171. package/dist/src/controllers/AttentionService.d.ts.map +1 -1
  172. package/dist/src/controllers/AttentionService.js +450 -558
  173. package/dist/src/controllers/AttentionService.js.map +1 -1
  174. package/dist/src/controllers/CausalMemoryGraph.d.ts +30 -5
  175. package/dist/src/controllers/CausalMemoryGraph.d.ts.map +1 -1
  176. package/dist/src/controllers/CausalMemoryGraph.js +92 -15
  177. package/dist/src/controllers/CausalMemoryGraph.js.map +1 -1
  178. package/dist/src/controllers/CausalRecall.d.ts +4 -0
  179. package/dist/src/controllers/CausalRecall.d.ts.map +1 -1
  180. package/dist/src/controllers/CausalRecall.js +23 -5
  181. package/dist/src/controllers/CausalRecall.js.map +1 -1
  182. package/dist/src/controllers/EmbeddingService.d.ts +29 -0
  183. package/dist/src/controllers/EmbeddingService.d.ts.map +1 -1
  184. package/dist/src/controllers/EmbeddingService.js +154 -32
  185. package/dist/src/controllers/EmbeddingService.js.map +1 -1
  186. package/dist/src/controllers/EnhancedEmbeddingService.d.ts +4 -0
  187. package/dist/src/controllers/EnhancedEmbeddingService.d.ts.map +1 -1
  188. package/dist/src/controllers/EnhancedEmbeddingService.js +21 -7
  189. package/dist/src/controllers/EnhancedEmbeddingService.js.map +1 -1
  190. package/dist/src/controllers/ExplainableRecall.d.ts +1 -1
  191. package/dist/src/controllers/ExplainableRecall.d.ts.map +1 -1
  192. package/dist/src/controllers/ExplainableRecall.js +1 -1
  193. package/dist/src/controllers/ExplainableRecall.js.map +1 -1
  194. package/dist/src/controllers/HNSWIndex.d.ts +20 -2
  195. package/dist/src/controllers/HNSWIndex.d.ts.map +1 -1
  196. package/dist/src/controllers/HNSWIndex.js +114 -39
  197. package/dist/src/controllers/HNSWIndex.js.map +1 -1
  198. package/dist/src/controllers/LearningSystem.d.ts +6 -17
  199. package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
  200. package/dist/src/controllers/LearningSystem.js +66 -155
  201. package/dist/src/controllers/LearningSystem.js.map +1 -1
  202. package/dist/src/controllers/MemoryController.d.ts +174 -0
  203. package/dist/src/controllers/MemoryController.d.ts.map +1 -0
  204. package/dist/src/controllers/MemoryController.js +320 -0
  205. package/dist/src/controllers/MemoryController.js.map +1 -0
  206. package/dist/src/controllers/MetadataFilter.d.ts.map +1 -1
  207. package/dist/src/controllers/MetadataFilter.js +38 -26
  208. package/dist/src/controllers/MetadataFilter.js.map +1 -1
  209. package/dist/src/controllers/MincutService.d.ts +92 -0
  210. package/dist/src/controllers/MincutService.d.ts.map +1 -0
  211. package/dist/src/controllers/MincutService.js +336 -0
  212. package/dist/src/controllers/MincutService.js.map +1 -0
  213. package/dist/src/controllers/NightlyLearner.d.ts +5 -1
  214. package/dist/src/controllers/NightlyLearner.d.ts.map +1 -1
  215. package/dist/src/controllers/NightlyLearner.js +45 -31
  216. package/dist/src/controllers/NightlyLearner.js.map +1 -1
  217. package/dist/src/controllers/QUICClient.d.ts +45 -0
  218. package/dist/src/controllers/QUICClient.d.ts.map +1 -1
  219. package/dist/src/controllers/QUICClient.js +211 -21
  220. package/dist/src/controllers/QUICClient.js.map +1 -1
  221. package/dist/src/controllers/QUICServer.d.ts.map +1 -1
  222. package/dist/src/controllers/QUICServer.js +36 -27
  223. package/dist/src/controllers/QUICServer.js.map +1 -1
  224. package/dist/src/controllers/ReasoningBank.d.ts +6 -3
  225. package/dist/src/controllers/ReasoningBank.d.ts.map +1 -1
  226. package/dist/src/controllers/ReasoningBank.js +77 -56
  227. package/dist/src/controllers/ReasoningBank.js.map +1 -1
  228. package/dist/src/controllers/ReflexionMemory.d.ts +129 -6
  229. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  230. package/dist/src/controllers/ReflexionMemory.js +678 -220
  231. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  232. package/dist/src/controllers/SkillLibrary.d.ts +32 -3
  233. package/dist/src/controllers/SkillLibrary.d.ts.map +1 -1
  234. package/dist/src/controllers/SkillLibrary.js +239 -104
  235. package/dist/src/controllers/SkillLibrary.js.map +1 -1
  236. package/dist/src/controllers/SparsificationService.d.ts +151 -0
  237. package/dist/src/controllers/SparsificationService.d.ts.map +1 -0
  238. package/dist/src/controllers/SparsificationService.js +375 -0
  239. package/dist/src/controllers/SparsificationService.js.map +1 -0
  240. package/dist/src/controllers/SyncCoordinator.d.ts.map +1 -1
  241. package/dist/src/controllers/SyncCoordinator.js +126 -12
  242. package/dist/src/controllers/SyncCoordinator.js.map +1 -1
  243. package/dist/src/controllers/WASMVectorSearch.d.ts +12 -30
  244. package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
  245. package/dist/src/controllers/WASMVectorSearch.js +161 -102
  246. package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
  247. package/dist/src/controllers/attention/AttentionCache.d.ts +38 -0
  248. package/dist/src/controllers/attention/AttentionCache.d.ts.map +1 -0
  249. package/dist/src/controllers/attention/AttentionCache.js +80 -0
  250. package/dist/src/controllers/attention/AttentionCache.js.map +1 -0
  251. package/dist/src/controllers/attention/AttentionConfig.d.ts +127 -0
  252. package/dist/src/controllers/attention/AttentionConfig.d.ts.map +1 -0
  253. package/dist/src/controllers/attention/AttentionConfig.js +124 -0
  254. package/dist/src/controllers/attention/AttentionConfig.js.map +1 -0
  255. package/dist/src/controllers/attention/AttentionCore.d.ts +89 -0
  256. package/dist/src/controllers/attention/AttentionCore.d.ts.map +1 -0
  257. package/dist/src/controllers/attention/AttentionCore.js +289 -0
  258. package/dist/src/controllers/attention/AttentionCore.js.map +1 -0
  259. package/dist/src/controllers/attention/AttentionHelpers.d.ts +55 -0
  260. package/dist/src/controllers/attention/AttentionHelpers.d.ts.map +1 -0
  261. package/dist/src/controllers/attention/AttentionHelpers.js +148 -0
  262. package/dist/src/controllers/attention/AttentionHelpers.js.map +1 -0
  263. package/dist/src/controllers/attention/AttentionMetrics.d.ts +55 -0
  264. package/dist/src/controllers/attention/AttentionMetrics.d.ts.map +1 -0
  265. package/dist/src/controllers/attention/AttentionMetrics.js +72 -0
  266. package/dist/src/controllers/attention/AttentionMetrics.js.map +1 -0
  267. package/dist/src/controllers/attention/AttentionWASM.d.ts +98 -0
  268. package/dist/src/controllers/attention/AttentionWASM.d.ts.map +1 -0
  269. package/dist/src/controllers/attention/AttentionWASM.js +147 -0
  270. package/dist/src/controllers/attention/AttentionWASM.js.map +1 -0
  271. package/dist/src/controllers/attention/CrossAttentionController.d.ts +141 -0
  272. package/dist/src/controllers/attention/CrossAttentionController.d.ts.map +1 -0
  273. package/dist/src/controllers/attention/CrossAttentionController.js +325 -0
  274. package/dist/src/controllers/attention/CrossAttentionController.js.map +1 -0
  275. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts +137 -0
  276. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts.map +1 -0
  277. package/dist/src/controllers/attention/MultiHeadAttentionController.js +336 -0
  278. package/dist/src/controllers/attention/MultiHeadAttentionController.js.map +1 -0
  279. package/dist/src/controllers/attention/SelfAttentionController.d.ts +117 -0
  280. package/dist/src/controllers/attention/SelfAttentionController.d.ts.map +1 -0
  281. package/dist/src/controllers/attention/SelfAttentionController.js +205 -0
  282. package/dist/src/controllers/attention/SelfAttentionController.js.map +1 -0
  283. package/dist/src/controllers/attention/index.d.ts +24 -0
  284. package/dist/src/controllers/attention/index.d.ts.map +1 -0
  285. package/dist/src/controllers/attention/index.js +20 -0
  286. package/dist/src/controllers/attention/index.js.map +1 -0
  287. package/dist/src/controllers/index.d.ts +15 -28
  288. package/dist/src/controllers/index.d.ts.map +1 -1
  289. package/dist/src/controllers/index.js +11 -19
  290. package/dist/src/controllers/index.js.map +1 -1
  291. package/dist/src/controllers/prerequisites.d.ts +76 -0
  292. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  293. package/dist/src/controllers/prerequisites.js +235 -0
  294. package/dist/src/controllers/prerequisites.js.map +1 -0
  295. package/dist/src/core/AgentDB.d.ts +33 -19
  296. package/dist/src/core/AgentDB.d.ts.map +1 -1
  297. package/dist/src/core/AgentDB.js +87 -127
  298. package/dist/src/core/AgentDB.js.map +1 -1
  299. package/dist/src/core/QueryCache.d.ts +138 -0
  300. package/dist/src/core/QueryCache.d.ts.map +1 -0
  301. package/dist/src/core/QueryCache.js +309 -0
  302. package/dist/src/core/QueryCache.js.map +1 -0
  303. package/dist/src/db-fallback.d.ts +52 -4
  304. package/dist/src/db-fallback.d.ts.map +1 -1
  305. package/dist/src/db-fallback.js +521 -71
  306. package/dist/src/db-fallback.js.map +1 -1
  307. package/dist/src/db-unified.d.ts.map +1 -1
  308. package/dist/src/db-unified.js +32 -30
  309. package/dist/src/db-unified.js.map +1 -1
  310. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts +58 -0
  311. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts.map +1 -0
  312. package/dist/src/embedding/EmbeddingSpaceIdentity.js +137 -0
  313. package/dist/src/embedding/EmbeddingSpaceIdentity.js.map +1 -0
  314. package/dist/src/embedding/index.d.ts +3 -0
  315. package/dist/src/embedding/index.d.ts.map +1 -0
  316. package/dist/src/embedding/index.js +2 -0
  317. package/dist/src/embedding/index.js.map +1 -0
  318. package/dist/src/examples/quic-sync-example.js +2 -2
  319. package/dist/src/examples/quic-sync-example.js.map +1 -1
  320. package/dist/src/governance/MetaHarnessGateway.d.ts +55 -0
  321. package/dist/src/governance/MetaHarnessGateway.d.ts.map +1 -0
  322. package/dist/src/governance/MetaHarnessGateway.js +65 -0
  323. package/dist/src/governance/MetaHarnessGateway.js.map +1 -0
  324. package/dist/src/governance/RvfExperimentBranch.d.ts +65 -0
  325. package/dist/src/governance/RvfExperimentBranch.d.ts.map +1 -0
  326. package/dist/src/governance/RvfExperimentBranch.js +115 -0
  327. package/dist/src/governance/RvfExperimentBranch.js.map +1 -0
  328. package/dist/src/index.d.ts +20 -16
  329. package/dist/src/index.d.ts.map +1 -1
  330. package/dist/src/index.js +44 -12
  331. package/dist/src/index.js.map +1 -1
  332. package/dist/src/mcp/agentdb-mcp-server.js +178 -15
  333. package/dist/src/mcp/agentdb-mcp-server.js.map +1 -1
  334. package/dist/src/mcp/reset-database.d.ts +15 -0
  335. package/dist/src/mcp/reset-database.d.ts.map +1 -0
  336. package/dist/src/mcp/reset-database.js +45 -0
  337. package/dist/src/mcp/reset-database.js.map +1 -0
  338. package/dist/src/model/ModelCacheLoader.d.ts +31 -0
  339. package/dist/src/model/ModelCacheLoader.d.ts.map +1 -0
  340. package/dist/src/model/ModelCacheLoader.js +209 -0
  341. package/dist/src/model/ModelCacheLoader.js.map +1 -0
  342. package/dist/src/observability/index.d.ts +8 -0
  343. package/dist/src/observability/index.d.ts.map +1 -0
  344. package/dist/src/observability/index.js +8 -0
  345. package/dist/src/observability/index.js.map +1 -0
  346. package/dist/src/observability/integration.d.ts +32 -0
  347. package/dist/src/observability/integration.d.ts.map +1 -0
  348. package/dist/src/observability/integration.js +159 -0
  349. package/dist/src/observability/integration.js.map +1 -0
  350. package/dist/src/observability/telemetry.d.ts +137 -0
  351. package/dist/src/observability/telemetry.d.ts.map +1 -0
  352. package/dist/src/observability/telemetry.js +424 -0
  353. package/dist/src/observability/telemetry.js.map +1 -0
  354. package/dist/src/optimizations/BatchOperations.d.ts +47 -0
  355. package/dist/src/optimizations/BatchOperations.d.ts.map +1 -1
  356. package/dist/src/optimizations/BatchOperations.js +189 -35
  357. package/dist/src/optimizations/BatchOperations.js.map +1 -1
  358. package/dist/src/optimizations/Quantization.d.ts +330 -0
  359. package/dist/src/optimizations/Quantization.d.ts.map +1 -0
  360. package/dist/src/optimizations/Quantization.js +793 -0
  361. package/dist/src/optimizations/Quantization.js.map +1 -0
  362. package/dist/src/optimizations/index.d.ts +1 -3
  363. package/dist/src/optimizations/index.d.ts.map +1 -1
  364. package/dist/src/optimizations/index.js +0 -1
  365. package/dist/src/optimizations/index.js.map +1 -1
  366. package/dist/src/quantization/index.d.ts +7 -0
  367. package/dist/src/quantization/index.d.ts.map +1 -0
  368. package/dist/src/quantization/index.js +15 -0
  369. package/dist/src/quantization/index.js.map +1 -0
  370. package/dist/src/quantization/vector-quantization.d.ts +388 -0
  371. package/dist/src/quantization/vector-quantization.d.ts.map +1 -0
  372. package/dist/src/quantization/vector-quantization.js +1132 -0
  373. package/dist/src/quantization/vector-quantization.js.map +1 -0
  374. package/dist/src/schemas/inline.d.ts +3 -0
  375. package/dist/src/schemas/inline.d.ts.map +1 -0
  376. package/dist/src/schemas/inline.js +10 -0
  377. package/dist/src/schemas/inline.js.map +1 -0
  378. package/dist/src/search/HybridSearch.d.ts +311 -0
  379. package/dist/src/search/HybridSearch.d.ts.map +1 -0
  380. package/dist/src/search/HybridSearch.js +713 -0
  381. package/dist/src/search/HybridSearch.js.map +1 -0
  382. package/dist/src/search/index.d.ts +12 -0
  383. package/dist/src/search/index.d.ts.map +1 -0
  384. package/dist/src/search/index.js +16 -0
  385. package/dist/src/search/index.js.map +1 -0
  386. package/dist/src/security/input-validation.d.ts +30 -0
  387. package/dist/src/security/input-validation.d.ts.map +1 -1
  388. package/dist/src/security/input-validation.js +77 -3
  389. package/dist/src/security/input-validation.js.map +1 -1
  390. package/dist/src/security/limits.d.ts.map +1 -1
  391. package/dist/src/security/limits.js +12 -3
  392. package/dist/src/security/limits.js.map +1 -1
  393. package/dist/src/security/mcp-policy.d.ts +17 -0
  394. package/dist/src/security/mcp-policy.d.ts.map +1 -0
  395. package/dist/src/security/mcp-policy.js +90 -0
  396. package/dist/src/security/mcp-policy.js.map +1 -0
  397. package/dist/src/security/path-security.d.ts.map +1 -1
  398. package/dist/src/security/path-security.js +3 -1
  399. package/dist/src/security/path-security.js.map +1 -1
  400. package/dist/src/security/validation.js +3 -3
  401. package/dist/src/security/validation.js.map +1 -1
  402. package/dist/src/services/AttentionService.d.ts +303 -0
  403. package/dist/src/services/AttentionService.d.ts.map +1 -0
  404. package/dist/src/services/AttentionService.js +1165 -0
  405. package/dist/src/services/AttentionService.js.map +1 -0
  406. package/dist/src/services/LLMRouter.d.ts +70 -8
  407. package/dist/src/services/LLMRouter.d.ts.map +1 -1
  408. package/dist/src/services/LLMRouter.js +279 -28
  409. package/dist/src/services/LLMRouter.js.map +1 -1
  410. package/dist/src/services/audit-logger.service.d.ts +168 -0
  411. package/dist/src/services/audit-logger.service.d.ts.map +1 -0
  412. package/dist/src/services/audit-logger.service.js +331 -0
  413. package/dist/src/services/audit-logger.service.js.map +1 -0
  414. package/dist/src/services/enhanced-embeddings.d.ts +271 -0
  415. package/dist/src/services/enhanced-embeddings.d.ts.map +1 -0
  416. package/dist/src/services/enhanced-embeddings.js +1036 -0
  417. package/dist/src/services/enhanced-embeddings.js.map +1 -0
  418. package/dist/src/services/federated-learning.d.ts +172 -0
  419. package/dist/src/services/federated-learning.d.ts.map +1 -0
  420. package/dist/src/services/federated-learning.js +344 -0
  421. package/dist/src/services/federated-learning.js.map +1 -0
  422. package/dist/src/simd/index.d.ts +9 -0
  423. package/dist/src/simd/index.d.ts.map +1 -0
  424. package/dist/src/simd/index.js +27 -0
  425. package/dist/src/simd/index.js.map +1 -0
  426. package/dist/src/simd/simd-vector-ops.d.ts +332 -0
  427. package/dist/src/simd/simd-vector-ops.d.ts.map +1 -0
  428. package/dist/src/simd/simd-vector-ops.js +945 -0
  429. package/dist/src/simd/simd-vector-ops.js.map +1 -0
  430. package/dist/src/types/database.types.d.ts +275 -0
  431. package/dist/src/types/database.types.d.ts.map +1 -0
  432. package/dist/src/types/database.types.js +55 -0
  433. package/dist/src/types/database.types.js.map +1 -0
  434. package/dist/src/types/graph.d.ts +29 -0
  435. package/dist/src/types/graph.d.ts.map +1 -0
  436. package/dist/src/types/graph.js +8 -0
  437. package/dist/src/types/graph.js.map +1 -0
  438. package/dist/src/utils/chalk-fallback.d.ts +3 -0
  439. package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
  440. package/dist/src/utils/chalk-fallback.js +20 -0
  441. package/dist/src/utils/chalk-fallback.js.map +1 -0
  442. package/dist/src/utils/similarity.d.ts +11 -0
  443. package/dist/src/utils/similarity.d.ts.map +1 -0
  444. package/dist/src/utils/similarity.js +25 -0
  445. package/dist/src/utils/similarity.js.map +1 -0
  446. package/dist/src/wasm-loader.d.ts +66 -0
  447. package/dist/src/wasm-loader.d.ts.map +1 -0
  448. package/dist/src/wasm-loader.js +76 -0
  449. package/dist/src/wasm-loader.js.map +1 -0
  450. package/dist/src/wrappers/agentdb-fast.d.ts +140 -0
  451. package/dist/src/wrappers/agentdb-fast.d.ts.map +1 -0
  452. package/dist/src/wrappers/agentdb-fast.js +309 -0
  453. package/dist/src/wrappers/agentdb-fast.js.map +1 -0
  454. package/dist/src/wrappers/attention-fallbacks.d.ts +343 -0
  455. package/dist/src/wrappers/attention-fallbacks.d.ts.map +1 -0
  456. package/dist/src/wrappers/attention-fallbacks.js +1484 -0
  457. package/dist/src/wrappers/attention-fallbacks.js.map +1 -0
  458. package/dist/src/wrappers/attention-native.d.ts +111 -0
  459. package/dist/src/wrappers/attention-native.d.ts.map +1 -0
  460. package/dist/src/wrappers/attention-native.js +273 -0
  461. package/dist/src/wrappers/attention-native.js.map +1 -0
  462. package/dist/src/wrappers/embedding-service.d.ts +117 -0
  463. package/dist/src/wrappers/embedding-service.d.ts.map +1 -0
  464. package/dist/src/wrappers/embedding-service.js +370 -0
  465. package/dist/src/wrappers/embedding-service.js.map +1 -0
  466. package/dist/src/wrappers/gnn-wrapper.d.ts +71 -0
  467. package/dist/src/wrappers/gnn-wrapper.d.ts.map +1 -0
  468. package/dist/src/wrappers/gnn-wrapper.js +236 -0
  469. package/dist/src/wrappers/gnn-wrapper.js.map +1 -0
  470. package/dist/src/wrappers/index.d.ts +48 -0
  471. package/dist/src/wrappers/index.d.ts.map +1 -0
  472. package/dist/src/wrappers/index.js +83 -0
  473. package/dist/src/wrappers/index.js.map +1 -0
  474. package/package.json +130 -80
  475. package/scripts/postinstall.cjs +13 -144
  476. package/dist/agentdb.browser.js +0 -1685
  477. package/dist/agentdb.browser.js.map +0 -7
  478. package/dist/agentdb.browser.min.js +0 -3
  479. package/dist/agentdb.browser.min.js.map +0 -7
  480. package/dist/agentdb.wasm-loader.js +0 -207
  481. package/dist/backends/VectorBackend.d.ts +0 -120
  482. package/dist/backends/VectorBackend.js +0 -14
  483. package/dist/backends/VectorBackend.js.map +0 -1
  484. package/dist/optimizations/RVFOptimizer.d.ts +0 -225
  485. package/dist/optimizations/RVFOptimizer.js +0 -541
  486. package/dist/optimizations/RVFOptimizer.js.map +0 -1
  487. package/dist/simulation/cli.d.ts +0 -9
  488. package/dist/simulation/cli.d.ts.map +0 -1
  489. package/dist/simulation/cli.js +0 -68
  490. package/dist/simulation/cli.js.map +0 -1
  491. package/dist/simulation/runner.d.ts +0 -21
  492. package/dist/simulation/runner.d.ts.map +0 -1
  493. package/dist/simulation/runner.js +0 -241
  494. package/dist/simulation/runner.js.map +0 -1
  495. package/dist/simulation/scenarios/aidefence-integration.d.ts +0 -24
  496. package/dist/simulation/scenarios/aidefence-integration.d.ts.map +0 -1
  497. package/dist/simulation/scenarios/aidefence-integration.js +0 -124
  498. package/dist/simulation/scenarios/aidefence-integration.js.map +0 -1
  499. package/dist/simulation/scenarios/bmssp-integration.d.ts +0 -23
  500. package/dist/simulation/scenarios/bmssp-integration.d.ts.map +0 -1
  501. package/dist/simulation/scenarios/bmssp-integration.js +0 -104
  502. package/dist/simulation/scenarios/bmssp-integration.js.map +0 -1
  503. package/dist/simulation/scenarios/causal-reasoning.d.ts +0 -16
  504. package/dist/simulation/scenarios/causal-reasoning.d.ts.map +0 -1
  505. package/dist/simulation/scenarios/causal-reasoning.js +0 -108
  506. package/dist/simulation/scenarios/causal-reasoning.js.map +0 -1
  507. package/dist/simulation/scenarios/consciousness-explorer.d.ts +0 -25
  508. package/dist/simulation/scenarios/consciousness-explorer.d.ts.map +0 -1
  509. package/dist/simulation/scenarios/consciousness-explorer.js +0 -108
  510. package/dist/simulation/scenarios/consciousness-explorer.js.map +0 -1
  511. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts +0 -135
  512. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.d.ts.map +0 -1
  513. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js +0 -158
  514. package/dist/simulation/scenarios/domain-examples/e-commerce-recommendations.js.map +0 -1
  515. package/dist/simulation/scenarios/domain-examples/index.d.ts +0 -14
  516. package/dist/simulation/scenarios/domain-examples/index.d.ts.map +0 -1
  517. package/dist/simulation/scenarios/domain-examples/index.js +0 -14
  518. package/dist/simulation/scenarios/domain-examples/index.js.map +0 -1
  519. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts +0 -178
  520. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.d.ts.map +0 -1
  521. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js +0 -218
  522. package/dist/simulation/scenarios/domain-examples/iot-sensor-networks.js.map +0 -1
  523. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts +0 -122
  524. package/dist/simulation/scenarios/domain-examples/medical-imaging.d.ts.map +0 -1
  525. package/dist/simulation/scenarios/domain-examples/medical-imaging.js +0 -129
  526. package/dist/simulation/scenarios/domain-examples/medical-imaging.js.map +0 -1
  527. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts +0 -166
  528. package/dist/simulation/scenarios/domain-examples/robotics-navigation.d.ts.map +0 -1
  529. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js +0 -161
  530. package/dist/simulation/scenarios/domain-examples/robotics-navigation.js.map +0 -1
  531. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts +0 -151
  532. package/dist/simulation/scenarios/domain-examples/scientific-research.d.ts.map +0 -1
  533. package/dist/simulation/scenarios/domain-examples/scientific-research.js +0 -187
  534. package/dist/simulation/scenarios/domain-examples/scientific-research.js.map +0 -1
  535. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts +0 -102
  536. package/dist/simulation/scenarios/domain-examples/trading-systems.d.ts.map +0 -1
  537. package/dist/simulation/scenarios/domain-examples/trading-systems.js +0 -100
  538. package/dist/simulation/scenarios/domain-examples/trading-systems.js.map +0 -1
  539. package/dist/simulation/scenarios/goalie-integration.d.ts +0 -24
  540. package/dist/simulation/scenarios/goalie-integration.d.ts.map +0 -1
  541. package/dist/simulation/scenarios/goalie-integration.js +0 -121
  542. package/dist/simulation/scenarios/goalie-integration.js.map +0 -1
  543. package/dist/simulation/scenarios/graph-traversal.d.ts +0 -17
  544. package/dist/simulation/scenarios/graph-traversal.d.ts.map +0 -1
  545. package/dist/simulation/scenarios/graph-traversal.js +0 -101
  546. package/dist/simulation/scenarios/graph-traversal.js.map +0 -1
  547. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts +0 -45
  548. package/dist/simulation/scenarios/latent-space/attention-analysis.d.ts.map +0 -1
  549. package/dist/simulation/scenarios/latent-space/attention-analysis.js +0 -435
  550. package/dist/simulation/scenarios/latent-space/attention-analysis.js.map +0 -1
  551. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts +0 -55
  552. package/dist/simulation/scenarios/latent-space/clustering-analysis.d.ts.map +0 -1
  553. package/dist/simulation/scenarios/latent-space/clustering-analysis.js +0 -606
  554. package/dist/simulation/scenarios/latent-space/clustering-analysis.js.map +0 -1
  555. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts +0 -74
  556. package/dist/simulation/scenarios/latent-space/hnsw-exploration.d.ts.map +0 -1
  557. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js +0 -391
  558. package/dist/simulation/scenarios/latent-space/hnsw-exploration.js.map +0 -1
  559. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts +0 -51
  560. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.d.ts.map +0 -1
  561. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js +0 -536
  562. package/dist/simulation/scenarios/latent-space/hypergraph-exploration.js.map +0 -1
  563. package/dist/simulation/scenarios/latent-space/index.d.ts +0 -35
  564. package/dist/simulation/scenarios/latent-space/index.d.ts.map +0 -1
  565. package/dist/simulation/scenarios/latent-space/index.js +0 -35
  566. package/dist/simulation/scenarios/latent-space/index.js.map +0 -1
  567. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts +0 -52
  568. package/dist/simulation/scenarios/latent-space/neural-augmentation.d.ts.map +0 -1
  569. package/dist/simulation/scenarios/latent-space/neural-augmentation.js +0 -472
  570. package/dist/simulation/scenarios/latent-space/neural-augmentation.js.map +0 -1
  571. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts +0 -53
  572. package/dist/simulation/scenarios/latent-space/quantum-hybrid.d.ts.map +0 -1
  573. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js +0 -391
  574. package/dist/simulation/scenarios/latent-space/quantum-hybrid.js.map +0 -1
  575. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts +0 -52
  576. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.d.ts.map +0 -1
  577. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js +0 -514
  578. package/dist/simulation/scenarios/latent-space/self-organizing-hnsw.js.map +0 -1
  579. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts +0 -53
  580. package/dist/simulation/scenarios/latent-space/traversal-optimization.d.ts.map +0 -1
  581. package/dist/simulation/scenarios/latent-space/traversal-optimization.js +0 -595
  582. package/dist/simulation/scenarios/latent-space/traversal-optimization.js.map +0 -1
  583. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts +0 -18
  584. package/dist/simulation/scenarios/lean-agentic-swarm.d.ts.map +0 -1
  585. package/dist/simulation/scenarios/lean-agentic-swarm.js +0 -132
  586. package/dist/simulation/scenarios/lean-agentic-swarm.js.map +0 -1
  587. package/dist/simulation/scenarios/multi-agent-swarm.d.ts +0 -17
  588. package/dist/simulation/scenarios/multi-agent-swarm.d.ts.map +0 -1
  589. package/dist/simulation/scenarios/multi-agent-swarm.js +0 -111
  590. package/dist/simulation/scenarios/multi-agent-swarm.js.map +0 -1
  591. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts +0 -23
  592. package/dist/simulation/scenarios/psycho-symbolic-reasoner.d.ts.map +0 -1
  593. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js +0 -98
  594. package/dist/simulation/scenarios/psycho-symbolic-reasoner.js.map +0 -1
  595. package/dist/simulation/scenarios/reflexion-learning.d.ts +0 -16
  596. package/dist/simulation/scenarios/reflexion-learning.d.ts.map +0 -1
  597. package/dist/simulation/scenarios/reflexion-learning.js +0 -98
  598. package/dist/simulation/scenarios/reflexion-learning.js.map +0 -1
  599. package/dist/simulation/scenarios/research-swarm.d.ts +0 -24
  600. package/dist/simulation/scenarios/research-swarm.d.ts.map +0 -1
  601. package/dist/simulation/scenarios/research-swarm.js +0 -146
  602. package/dist/simulation/scenarios/research-swarm.js.map +0 -1
  603. package/dist/simulation/scenarios/skill-evolution.d.ts +0 -16
  604. package/dist/simulation/scenarios/skill-evolution.d.ts.map +0 -1
  605. package/dist/simulation/scenarios/skill-evolution.js +0 -109
  606. package/dist/simulation/scenarios/skill-evolution.js.map +0 -1
  607. package/dist/simulation/scenarios/stock-market-emergence.d.ts +0 -33
  608. package/dist/simulation/scenarios/stock-market-emergence.d.ts.map +0 -1
  609. package/dist/simulation/scenarios/stock-market-emergence.js +0 -246
  610. package/dist/simulation/scenarios/stock-market-emergence.js.map +0 -1
  611. package/dist/simulation/scenarios/strange-loops.d.ts +0 -18
  612. package/dist/simulation/scenarios/strange-loops.d.ts.map +0 -1
  613. package/dist/simulation/scenarios/strange-loops.js +0 -133
  614. package/dist/simulation/scenarios/strange-loops.js.map +0 -1
  615. package/dist/simulation/scenarios/sublinear-solver.d.ts +0 -22
  616. package/dist/simulation/scenarios/sublinear-solver.d.ts.map +0 -1
  617. package/dist/simulation/scenarios/sublinear-solver.js +0 -82
  618. package/dist/simulation/scenarios/sublinear-solver.js.map +0 -1
  619. package/dist/simulation/scenarios/temporal-lead-solver.d.ts +0 -23
  620. package/dist/simulation/scenarios/temporal-lead-solver.d.ts.map +0 -1
  621. package/dist/simulation/scenarios/temporal-lead-solver.js +0 -90
  622. package/dist/simulation/scenarios/temporal-lead-solver.js.map +0 -1
  623. package/dist/simulation/scenarios/voting-system-consensus.d.ts +0 -27
  624. package/dist/simulation/scenarios/voting-system-consensus.d.ts.map +0 -1
  625. package/dist/simulation/scenarios/voting-system-consensus.js +0 -175
  626. package/dist/simulation/scenarios/voting-system-consensus.js.map +0 -1
  627. package/dist/simulation/types.d.ts +0 -162
  628. package/dist/simulation/types.d.ts.map +0 -1
  629. package/dist/simulation/types.js +0 -5
  630. package/dist/simulation/types.js.map +0 -1
  631. package/dist/simulation/utils/PerformanceOptimizer.d.ts +0 -115
  632. package/dist/simulation/utils/PerformanceOptimizer.d.ts.map +0 -1
  633. package/dist/simulation/utils/PerformanceOptimizer.js +0 -223
  634. package/dist/simulation/utils/PerformanceOptimizer.js.map +0 -1
  635. package/dist/src/backends/index.cjs +0 -6
  636. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts +0 -93
  637. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts.map +0 -1
  638. package/dist/src/backends/ruvector/GuardedVectorBackend.js +0 -182
  639. package/dist/src/backends/ruvector/GuardedVectorBackend.js.map +0 -1
  640. package/dist/src/consensus/RaftConsensus.d.ts +0 -220
  641. package/dist/src/consensus/RaftConsensus.d.ts.map +0 -1
  642. package/dist/src/consensus/RaftConsensus.js +0 -762
  643. package/dist/src/consensus/RaftConsensus.js.map +0 -1
  644. package/dist/src/controllers/HierarchicalMemory.d.ts +0 -197
  645. package/dist/src/controllers/HierarchicalMemory.d.ts.map +0 -1
  646. package/dist/src/controllers/HierarchicalMemory.js +0 -519
  647. package/dist/src/controllers/HierarchicalMemory.js.map +0 -1
  648. package/dist/src/controllers/MemoryConsolidation.d.ts +0 -142
  649. package/dist/src/controllers/MemoryConsolidation.d.ts.map +0 -1
  650. package/dist/src/controllers/MemoryConsolidation.js +0 -479
  651. package/dist/src/controllers/MemoryConsolidation.js.map +0 -1
  652. package/dist/src/controllers/QUICConnection.d.ts +0 -122
  653. package/dist/src/controllers/QUICConnection.d.ts.map +0 -1
  654. package/dist/src/controllers/QUICConnection.js +0 -329
  655. package/dist/src/controllers/QUICConnection.js.map +0 -1
  656. package/dist/src/controllers/QUICConnectionPool.d.ts +0 -83
  657. package/dist/src/controllers/QUICConnectionPool.d.ts.map +0 -1
  658. package/dist/src/controllers/QUICConnectionPool.js +0 -256
  659. package/dist/src/controllers/QUICConnectionPool.js.map +0 -1
  660. package/dist/src/controllers/QUICStreamManager.d.ts +0 -114
  661. package/dist/src/controllers/QUICStreamManager.d.ts.map +0 -1
  662. package/dist/src/controllers/QUICStreamManager.js +0 -267
  663. package/dist/src/controllers/QUICStreamManager.js.map +0 -1
  664. package/dist/src/controllers/StreamingEmbeddingService.d.ts +0 -82
  665. package/dist/src/controllers/StreamingEmbeddingService.d.ts.map +0 -1
  666. package/dist/src/controllers/StreamingEmbeddingService.js +0 -243
  667. package/dist/src/controllers/StreamingEmbeddingService.js.map +0 -1
  668. package/dist/src/controllers/index.cjs +0 -6
  669. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  670. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  671. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  672. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  673. package/dist/src/coordination/index.d.ts +0 -10
  674. package/dist/src/coordination/index.d.ts.map +0 -1
  675. package/dist/src/coordination/index.js +0 -10
  676. package/dist/src/coordination/index.js.map +0 -1
  677. package/dist/src/index.cjs +0 -6
  678. package/dist/src/optimizations/RVFOptimizer.d.ts +0 -226
  679. package/dist/src/optimizations/RVFOptimizer.d.ts.map +0 -1
  680. package/dist/src/optimizations/RVFOptimizer.js +0 -541
  681. package/dist/src/optimizations/RVFOptimizer.js.map +0 -1
  682. package/dist/src/security/AttestationLog.d.ts +0 -70
  683. package/dist/src/security/AttestationLog.d.ts.map +0 -1
  684. package/dist/src/security/AttestationLog.js +0 -174
  685. package/dist/src/security/AttestationLog.js.map +0 -1
  686. package/dist/src/security/MutationGuard.d.ts +0 -83
  687. package/dist/src/security/MutationGuard.d.ts.map +0 -1
  688. package/dist/src/security/MutationGuard.js +0 -364
  689. package/dist/src/security/MutationGuard.js.map +0 -1
  690. package/dist/src/security/index.cjs +0 -6
  691. package/dist/src/security/index.d.ts +0 -15
  692. package/dist/src/security/index.d.ts.map +0 -1
  693. package/dist/src/security/index.js +0 -18
  694. package/dist/src/security/index.js.map +0 -1
  695. package/dist/src/services/GNNService.d.ts +0 -172
  696. package/dist/src/services/GNNService.d.ts.map +0 -1
  697. package/dist/src/services/GNNService.js +0 -612
  698. package/dist/src/services/GNNService.js.map +0 -1
  699. package/dist/src/services/GraphTransformerService.d.ts +0 -80
  700. package/dist/src/services/GraphTransformerService.d.ts.map +0 -1
  701. package/dist/src/services/GraphTransformerService.js +0 -369
  702. package/dist/src/services/GraphTransformerService.js.map +0 -1
  703. package/dist/src/services/SemanticRouter.d.ts +0 -83
  704. package/dist/src/services/SemanticRouter.d.ts.map +0 -1
  705. package/dist/src/services/SemanticRouter.js +0 -160
  706. package/dist/src/services/SemanticRouter.js.map +0 -1
  707. package/dist/src/services/SonaTrajectoryService.d.ts +0 -224
  708. package/dist/src/services/SonaTrajectoryService.d.ts.map +0 -1
  709. package/dist/src/services/SonaTrajectoryService.js +0 -539
  710. package/dist/src/services/SonaTrajectoryService.js.map +0 -1
  711. package/dist/src/utils/LegacyAttentionAdapter.d.ts +0 -93
  712. package/dist/src/utils/LegacyAttentionAdapter.d.ts.map +0 -1
  713. package/dist/src/utils/LegacyAttentionAdapter.js +0 -241
  714. package/dist/src/utils/LegacyAttentionAdapter.js.map +0 -1
  715. package/dist/src/utils/vector-math.d.ts +0 -29
  716. package/dist/src/utils/vector-math.d.ts.map +0 -1
  717. package/dist/src/utils/vector-math.js +0 -66
  718. package/dist/src/utils/vector-math.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector-quantization.js","sourceRoot":"","sources":["../../../src/quantization/vector-quantization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const SCHEMA_SQL = "-- ============================================================================\n-- AgentDB State-of-the-Art Memory Schema\n-- ============================================================================\n-- Implements 5 cutting-edge memory patterns for autonomous agents:\n-- 1. Reflexion-style episodic replay\n-- 2. Skill library from trajectories\n-- 3. Structured mixed memory (facts + summaries)\n-- 4. Episodic segmentation and consolidation\n-- 5. Graph-aware recall\n-- ============================================================================\n\n-- Enable foreign keys\nPRAGMA foreign_keys = ON;\n\n-- ============================================================================\n-- Pattern 1: Reflexion-Style Episodic Replay\n-- ============================================================================\n-- Store self-critique and outcomes after each attempt.\n-- Retrieve nearest failures and fixes before the next run.\n\nCREATE TABLE IF NOT EXISTS episodes (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n ts INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n session_id TEXT NOT NULL,\n task TEXT NOT NULL,\n input TEXT,\n output TEXT,\n critique TEXT,\n reward REAL DEFAULT 0.0,\n success BOOLEAN DEFAULT 0,\n latency_ms INTEGER,\n tokens_used INTEGER,\n tags TEXT, -- JSON array of tags\n metadata JSON,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_episodes_ts ON episodes(ts DESC);\nCREATE INDEX IF NOT EXISTS idx_episodes_session ON episodes(session_id);\nCREATE INDEX IF NOT EXISTS idx_episodes_reward ON episodes(reward DESC);\nCREATE INDEX IF NOT EXISTS idx_episodes_task ON episodes(task);\n\n-- Vector embeddings for episodes (384-dim for all-MiniLM-L6-v2)\n-- Will use sqlite-vec when available, fallback to JSON storage\nCREATE TABLE IF NOT EXISTS episode_embeddings (\n episode_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL, -- Float32Array as BLOB\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(episode_id) REFERENCES episodes(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Pattern 2: Skill Library from Trajectories\n-- ============================================================================\n-- Promote high-reward traces into reusable \"skills\" with typed IO.\n\nCREATE TABLE IF NOT EXISTS skills (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n name TEXT UNIQUE NOT NULL,\n description TEXT,\n signature JSON NOT NULL, -- {inputs: {...}, outputs: {...}}\n code TEXT, -- Tool call manifest or code template\n success_rate REAL DEFAULT 0.0,\n uses INTEGER DEFAULT 0,\n avg_reward REAL DEFAULT 0.0,\n avg_latency_ms INTEGER DEFAULT 0,\n created_from_episode INTEGER, -- Source episode ID\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n last_used_at INTEGER,\n metadata JSON,\n FOREIGN KEY(created_from_episode) REFERENCES episodes(id)\n);\n\nCREATE INDEX IF NOT EXISTS idx_skills_success ON skills(success_rate DESC);\nCREATE INDEX IF NOT EXISTS idx_skills_uses ON skills(uses DESC);\nCREATE INDEX IF NOT EXISTS idx_skills_name ON skills(name);\n\n-- Skill relationships and composition\nCREATE TABLE IF NOT EXISTS skill_links (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n parent_skill_id INTEGER NOT NULL,\n child_skill_id INTEGER NOT NULL,\n relationship TEXT NOT NULL, -- 'prerequisite', 'alternative', 'refinement', 'composition'\n weight REAL DEFAULT 1.0,\n metadata JSON,\n FOREIGN KEY(parent_skill_id) REFERENCES skills(id) ON DELETE CASCADE,\n FOREIGN KEY(child_skill_id) REFERENCES skills(id) ON DELETE CASCADE,\n UNIQUE(parent_skill_id, child_skill_id, relationship)\n);\n\nCREATE INDEX IF NOT EXISTS idx_skill_links_parent ON skill_links(parent_skill_id);\nCREATE INDEX IF NOT EXISTS idx_skill_links_child ON skill_links(child_skill_id);\n\n-- Skill embeddings for semantic search\nCREATE TABLE IF NOT EXISTS skill_embeddings (\n skill_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL,\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(skill_id) REFERENCES skills(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Pattern 3: Structured Mixed Memory (Facts + Summaries)\n-- ============================================================================\n-- Combine facts, summaries, and vectors to avoid over-embedding.\n\n-- Atomic facts as triples (subject-predicate-object)\nCREATE TABLE IF NOT EXISTS facts (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n subject TEXT NOT NULL,\n predicate TEXT NOT NULL,\n object TEXT NOT NULL,\n source_type TEXT, -- 'episode', 'skill', 'external', 'inferred'\n source_id INTEGER,\n confidence REAL DEFAULT 1.0,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n expires_at INTEGER, -- TTL for temporal facts\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_facts_subject ON facts(subject);\nCREATE INDEX IF NOT EXISTS idx_facts_predicate ON facts(predicate);\nCREATE INDEX IF NOT EXISTS idx_facts_object ON facts(object);\nCREATE INDEX IF NOT EXISTS idx_facts_source ON facts(source_type, source_id);\nCREATE INDEX IF NOT EXISTS idx_facts_expires ON facts(expires_at) WHERE expires_at IS NOT NULL;\n\n-- Notes and summaries with semantic embeddings\nCREATE TABLE IF NOT EXISTS notes (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n title TEXT,\n text TEXT NOT NULL,\n summary TEXT, -- Condensed version for context\n note_type TEXT DEFAULT 'general', -- 'insight', 'constraint', 'goal', 'observation'\n importance REAL DEFAULT 0.5,\n access_count INTEGER DEFAULT 0,\n last_accessed_at INTEGER,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_notes_type ON notes(note_type);\nCREATE INDEX IF NOT EXISTS idx_notes_importance ON notes(importance DESC);\nCREATE INDEX IF NOT EXISTS idx_notes_accessed ON notes(last_accessed_at DESC);\n\n-- Note embeddings (only for summaries to reduce storage)\nCREATE TABLE IF NOT EXISTS note_embeddings (\n note_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL,\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(note_id) REFERENCES notes(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Pattern 4: Episodic Segmentation and Consolidation\n-- ============================================================================\n-- Segment long tasks into events and consolidate into compact memories.\n\nCREATE TABLE IF NOT EXISTS events (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_id TEXT NOT NULL,\n episode_id INTEGER, -- Link to parent episode\n step INTEGER NOT NULL,\n phase TEXT, -- 'planning', 'execution', 'reflection', 'learning'\n role TEXT, -- 'user', 'assistant', 'system', 'tool'\n content TEXT NOT NULL,\n features JSON, -- Extracted features for learning\n tool_calls JSON, -- Tool invocations in this event\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n FOREIGN KEY(episode_id) REFERENCES episodes(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_events_session ON events(session_id, step);\nCREATE INDEX IF NOT EXISTS idx_events_phase ON events(phase);\nCREATE INDEX IF NOT EXISTS idx_events_episode ON events(episode_id);\n\n-- Consolidated memories from event windows\nCREATE TABLE IF NOT EXISTS consolidated_memories (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_id TEXT NOT NULL,\n start_event_id INTEGER NOT NULL,\n end_event_id INTEGER NOT NULL,\n phase TEXT,\n summary TEXT NOT NULL,\n key_insights JSON, -- Extracted learnings\n success_patterns JSON, -- What worked\n failure_patterns JSON, -- What didn't work\n quality_score REAL DEFAULT 0.5,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n FOREIGN KEY(start_event_id) REFERENCES events(id),\n FOREIGN KEY(end_event_id) REFERENCES events(id)\n);\n\nCREATE INDEX IF NOT EXISTS idx_consolidated_session ON consolidated_memories(session_id);\nCREATE INDEX IF NOT EXISTS idx_consolidated_quality ON consolidated_memories(quality_score DESC);\n\n-- ============================================================================\n-- Pattern 5: Graph-Aware Recall (Lightweight GraphRAG)\n-- ============================================================================\n-- Build a lightweight GraphRAG overlay for experiences.\n\nCREATE TABLE IF NOT EXISTS exp_nodes (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n kind TEXT NOT NULL, -- 'task', 'skill', 'concept', 'tool', 'outcome'\n label TEXT NOT NULL,\n payload JSON,\n centrality REAL DEFAULT 0.0, -- Graph importance metric\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_exp_nodes_kind ON exp_nodes(kind);\nCREATE INDEX IF NOT EXISTS idx_exp_nodes_label ON exp_nodes(label);\nCREATE INDEX IF NOT EXISTS idx_exp_nodes_centrality ON exp_nodes(centrality DESC);\n\nCREATE TABLE IF NOT EXISTS exp_edges (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n src_node_id INTEGER NOT NULL,\n dst_node_id INTEGER NOT NULL,\n relationship TEXT NOT NULL, -- 'requires', 'produces', 'similar_to', 'refines', 'part_of'\n weight REAL DEFAULT 1.0,\n metadata JSON,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n FOREIGN KEY(src_node_id) REFERENCES exp_nodes(id) ON DELETE CASCADE,\n FOREIGN KEY(dst_node_id) REFERENCES exp_nodes(id) ON DELETE CASCADE,\n UNIQUE(src_node_id, dst_node_id, relationship)\n);\n\nCREATE INDEX IF NOT EXISTS idx_exp_edges_src ON exp_edges(src_node_id);\nCREATE INDEX IF NOT EXISTS idx_exp_edges_dst ON exp_edges(dst_node_id);\nCREATE INDEX IF NOT EXISTS idx_exp_edges_rel ON exp_edges(relationship);\n\n-- Node embeddings for graph-augmented retrieval\nCREATE TABLE IF NOT EXISTS exp_node_embeddings (\n node_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL,\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(node_id) REFERENCES exp_nodes(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Memory Management and Scoring\n-- ============================================================================\n\n-- Track memory quality scores and usage statistics\nCREATE TABLE IF NOT EXISTS memory_scores (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n memory_type TEXT NOT NULL, -- 'episode', 'skill', 'note', 'consolidated'\n memory_id INTEGER NOT NULL,\n quality_score REAL NOT NULL,\n novelty_score REAL,\n relevance_score REAL,\n utility_score REAL,\n computed_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_memory_scores_type ON memory_scores(memory_type, memory_id);\nCREATE INDEX IF NOT EXISTS idx_memory_scores_quality ON memory_scores(quality_score DESC);\n\n-- Memory access patterns for adaptive retrieval\nCREATE TABLE IF NOT EXISTS memory_access_log (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n memory_type TEXT NOT NULL,\n memory_id INTEGER NOT NULL,\n query TEXT,\n relevance_score REAL,\n was_useful BOOLEAN,\n feedback JSON,\n accessed_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_access_log_type ON memory_access_log(memory_type, memory_id);\nCREATE INDEX IF NOT EXISTS idx_access_log_time ON memory_access_log(accessed_at DESC);\n\n-- ============================================================================\n-- Consolidation and Maintenance\n-- ============================================================================\n\n-- Track consolidation jobs and their results\nCREATE TABLE IF NOT EXISTS consolidation_runs (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n job_type TEXT NOT NULL, -- 'episode_to_skill', 'event_to_memory', 'deduplication', 'pruning'\n records_processed INTEGER DEFAULT 0,\n records_created INTEGER DEFAULT 0,\n records_deleted INTEGER DEFAULT 0,\n duration_ms INTEGER,\n status TEXT DEFAULT 'pending', -- 'pending', 'running', 'completed', 'failed'\n error TEXT,\n started_at INTEGER,\n completed_at INTEGER,\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_consolidation_status ON consolidation_runs(status);\nCREATE INDEX IF NOT EXISTS idx_consolidation_type ON consolidation_runs(job_type);\n\n-- ============================================================================\n-- Views for Common Queries\n-- ============================================================================\n\n-- High-value episodes for skill creation\nCREATE VIEW IF NOT EXISTS skill_candidates AS\nSELECT\n task,\n COUNT(*) as attempt_count,\n AVG(reward) as avg_reward,\n AVG(success) as success_rate,\n MAX(id) as latest_episode_id,\n GROUP_CONCAT(id) as episode_ids\nFROM episodes\nWHERE ts > strftime('%s', 'now') - 86400 * 7 -- Last 7 days\nGROUP BY task\nHAVING attempt_count >= 3 AND avg_reward >= 0.7;\n\n-- Top performing skills\nCREATE VIEW IF NOT EXISTS top_skills AS\nSELECT\n s.*,\n COALESCE(s.success_rate, 0) * 0.4 +\n COALESCE(s.uses, 0) * 0.0001 +\n COALESCE(s.avg_reward, 0) * 0.6 as composite_score\nFROM skills s\nORDER BY composite_score DESC;\n\n-- Recent high-quality memories\nCREATE VIEW IF NOT EXISTS recent_quality_memories AS\nSELECT\n 'episode' as type, id, task as title, critique as content, reward as score, created_at\nFROM episodes\nWHERE reward >= 0.7 AND ts > strftime('%s', 'now') - 86400 * 3\nUNION ALL\nSELECT\n 'note' as type, id, title, summary as content, importance as score, created_at\nFROM notes\nWHERE importance >= 0.7 AND created_at > strftime('%s', 'now') - 86400 * 3\nUNION ALL\nSELECT\n 'consolidated' as type, id, session_id as title, summary as content, quality_score as score, created_at\nFROM consolidated_memories\nWHERE quality_score >= 0.7 AND created_at > strftime('%s', 'now') - 86400 * 3\nORDER BY created_at DESC;\n\n-- ============================================================================\n-- Triggers for Auto-Maintenance\n-- ============================================================================\n\n-- Update skill usage statistics\nCREATE TRIGGER IF NOT EXISTS update_skill_last_used\nAFTER UPDATE OF uses ON skills\nBEGIN\n UPDATE skills SET last_used_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\n-- Update note access tracking\nCREATE TRIGGER IF NOT EXISTS update_note_access\nAFTER UPDATE OF access_count ON notes\nBEGIN\n UPDATE notes SET last_accessed_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\n-- Auto-update timestamps\nCREATE TRIGGER IF NOT EXISTS update_skill_timestamp\nAFTER UPDATE ON skills\nBEGIN\n UPDATE skills SET updated_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\nCREATE TRIGGER IF NOT EXISTS update_note_timestamp\nAFTER UPDATE ON notes\nBEGIN\n UPDATE notes SET updated_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\n-- ============================================================================\n-- Initialization Complete\n-- ============================================================================\n-- Schema version: 1.0.0\n-- Compatible with: SQLite 3.35+, sqlite-vec (optional), sqlite-vss (optional)\n-- WASM compatible: Yes (via SQLite-WASM + OPFS)\n--\n-- Performance Optimization:\n-- For production deployments, apply composite index migration for 30-50% query speedup:\n-- - Migration file: db/migrations/003_composite_indexes.sql\n-- - Adds 40+ composite indexes for common query patterns\n-- - Trade-off: 2x slower writes, +15-20% storage (acceptable for read-heavy workloads)\n-- - See: db/migrations/README.md for details\n-- ============================================================================\n";
2
+ export declare const FRONTIER_SCHEMA_SQL = "-- ============================================================================\n-- AgentDB Frontier Features Schema Extension\n-- ============================================================================\n-- Implements cutting-edge memory features:\n-- 1. Causal Memory Graph - Store edges with causal strength, not just similarity\n-- 2. Explainable Recall Certificates - Provenance and justification tracking\n-- ============================================================================\n\n-- ============================================================================\n-- FEATURE 1: Causal Memory Graph\n-- ============================================================================\n\n-- Causal edges between memories with intervention effects\nCREATE TABLE IF NOT EXISTS causal_edges (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n from_memory_id INTEGER NOT NULL,\n from_memory_type TEXT NOT NULL, -- 'episode', 'skill', 'note', 'fact'\n to_memory_id INTEGER NOT NULL,\n to_memory_type TEXT NOT NULL,\n\n -- Traditional similarity\n similarity REAL NOT NULL DEFAULT 0.0,\n\n -- Causal metrics\n uplift REAL, -- E[y|do(x)] - E[y]\n confidence REAL DEFAULT 0.5, -- Confidence in causal claim\n sample_size INTEGER, -- Number of observations\n\n -- Evidence and provenance\n evidence_ids TEXT, -- JSON array of proof IDs\n experiment_ids TEXT, -- JSON array of A/B test IDs\n confounder_score REAL, -- Likelihood of confounding\n\n -- Metadata\n mechanism TEXT, -- Hypothesized causal mechanism\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n last_validated_at INTEGER,\n\n metadata JSON\n\n -- Note: Foreign keys removed to allow flexible causal edges between any concepts\n -- from_memory_id and to_memory_id can be 0 for abstract causal relationships\n);\n\nCREATE INDEX IF NOT EXISTS idx_causal_edges_from ON causal_edges(from_memory_id, from_memory_type);\nCREATE INDEX IF NOT EXISTS idx_causal_edges_to ON causal_edges(to_memory_id, to_memory_type);\nCREATE INDEX IF NOT EXISTS idx_causal_edges_uplift ON causal_edges(uplift DESC);\nCREATE INDEX IF NOT EXISTS idx_causal_edges_confidence ON causal_edges(confidence DESC);\n\n-- Causal experiments (A/B tests for uplift estimation)\nCREATE TABLE IF NOT EXISTS causal_experiments (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n name TEXT NOT NULL,\n hypothesis TEXT NOT NULL,\n treatment_id INTEGER NOT NULL, -- Memory used as treatment\n treatment_type TEXT NOT NULL,\n control_id INTEGER, -- Optional control memory\n\n -- Experiment design\n start_time INTEGER NOT NULL,\n end_time INTEGER,\n sample_size INTEGER DEFAULT 0,\n\n -- Results\n treatment_mean REAL,\n control_mean REAL,\n uplift REAL, -- treatment_mean - control_mean\n p_value REAL,\n confidence_interval_low REAL,\n confidence_interval_high REAL,\n\n -- Status\n status TEXT DEFAULT 'running', -- 'running', 'completed', 'failed'\n\n metadata JSON,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_causal_experiments_status ON causal_experiments(status);\nCREATE INDEX IF NOT EXISTS idx_causal_experiments_treatment ON causal_experiments(treatment_id, treatment_type);\n\n-- Causal observations (individual data points)\nCREATE TABLE IF NOT EXISTS causal_observations (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n experiment_id INTEGER NOT NULL,\n episode_id INTEGER NOT NULL,\n\n -- Treatment assignment\n is_treatment BOOLEAN NOT NULL,\n\n -- Outcome\n outcome_value REAL NOT NULL,\n outcome_type TEXT, -- 'reward', 'success', 'latency'\n\n -- Context\n context JSON,\n observed_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n\n FOREIGN KEY(experiment_id) REFERENCES causal_experiments(id) ON DELETE CASCADE,\n FOREIGN KEY(episode_id) REFERENCES episodes(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_causal_observations_experiment ON causal_observations(experiment_id);\nCREATE INDEX IF NOT EXISTS idx_causal_observations_treatment ON causal_observations(is_treatment);\n\n-- ============================================================================\n-- FEATURE 2: Explainable Recall Certificates\n-- ============================================================================\n\n-- Recall certificates for provenance and justification\nCREATE TABLE IF NOT EXISTS recall_certificates (\n id TEXT PRIMARY KEY, -- UUID or hash\n query_id TEXT NOT NULL,\n query_text TEXT NOT NULL,\n\n -- Retrieved chunks\n chunk_ids TEXT NOT NULL, -- JSON array\n chunk_types TEXT NOT NULL, -- JSON array matching chunk_ids\n\n -- Minimal hitting set (justification)\n minimal_why TEXT, -- JSON array of chunk IDs that justify the answer\n redundancy_ratio REAL, -- len(chunk_ids) / len(minimal_why)\n completeness_score REAL, -- Fraction of query requirements met\n\n -- Provenance chain\n merkle_root TEXT NOT NULL,\n source_hashes TEXT, -- JSON array of source hashes\n proof_chain TEXT, -- JSON Merkle proof\n\n -- Policy compliance\n policy_proof TEXT, -- Proof of policy adherence\n policy_version TEXT,\n access_level TEXT, -- 'public', 'internal', 'confidential', 'restricted'\n\n -- Metadata\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n latency_ms INTEGER,\n\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_recall_certificates_query ON recall_certificates(query_id);\nCREATE INDEX IF NOT EXISTS idx_recall_certificates_created ON recall_certificates(created_at DESC);\n\n-- Provenance sources (for Merkle tree construction)\nCREATE TABLE IF NOT EXISTS provenance_sources (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n source_type TEXT NOT NULL, -- 'episode', 'skill', 'note', 'fact', 'external'\n source_id INTEGER NOT NULL,\n\n -- Content hash\n content_hash TEXT NOT NULL UNIQUE,\n\n -- Lineage\n parent_hash TEXT, -- Previous version\n derived_from TEXT, -- JSON array of parent hashes\n\n -- Metadata\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n creator TEXT, -- User or system identifier\n\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_provenance_sources_type ON provenance_sources(source_type, source_id);\nCREATE INDEX IF NOT EXISTS idx_provenance_sources_hash ON provenance_sources(content_hash);\nCREATE INDEX IF NOT EXISTS idx_provenance_sources_parent ON provenance_sources(parent_hash);\n\n-- Justification paths (why a chunk was included)\nCREATE TABLE IF NOT EXISTS justification_paths (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n certificate_id TEXT NOT NULL,\n chunk_id TEXT NOT NULL,\n chunk_type TEXT NOT NULL,\n\n -- Justification\n reason TEXT NOT NULL, -- 'semantic_match', 'causal_link', 'prerequisite', 'constraint'\n necessity_score REAL NOT NULL, -- How essential is this chunk (0-1)\n\n -- Path to query satisfaction\n path_elements TEXT, -- JSON array describing reasoning path\n\n FOREIGN KEY(certificate_id) REFERENCES recall_certificates(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_justification_paths_cert ON justification_paths(certificate_id);\nCREATE INDEX IF NOT EXISTS idx_justification_paths_chunk ON justification_paths(chunk_id, chunk_type);\n\n-- ============================================================================\n-- Views for Causal Analysis\n-- ============================================================================\n\n-- High-confidence causal relationships\nCREATE VIEW IF NOT EXISTS strong_causal_edges AS\nSELECT\n ce.*,\n CASE\n WHEN ce.uplift > 0 THEN 'positive'\n WHEN ce.uplift < 0 THEN 'negative'\n ELSE 'neutral'\n END as effect_direction,\n ce.uplift * ce.confidence as causal_impact\nFROM causal_edges ce\nWHERE ce.confidence >= 0.7\n AND ce.uplift IS NOT NULL\n AND ABS(ce.uplift) >= 0.1\nORDER BY ABS(ce.uplift) * ce.confidence DESC;\n\n-- Causal chains (multi-hop reasoning)\nCREATE VIEW IF NOT EXISTS causal_chains AS\nWITH RECURSIVE chain(from_id, to_id, depth, path, total_uplift) AS (\n SELECT from_memory_id, to_memory_id, 1,\n from_memory_id || '->' || to_memory_id,\n uplift\n FROM causal_edges\n WHERE confidence >= 0.6\n\n UNION ALL\n\n SELECT chain.from_id, ce.to_memory_id, chain.depth + 1,\n chain.path || '->' || ce.to_memory_id,\n chain.total_uplift + ce.uplift\n FROM chain\n JOIN causal_edges ce ON chain.to_id = ce.from_memory_id\n WHERE chain.depth < 5\n AND ce.confidence >= 0.6\n AND chain.path NOT LIKE '%' || ce.to_memory_id || '%'\n)\nSELECT * FROM chain\nWHERE depth >= 2\nORDER BY total_uplift DESC, depth ASC;\n\n-- ============================================================================\n-- Views for Explainability\n-- ============================================================================\n\n-- Certificate quality metrics\nCREATE VIEW IF NOT EXISTS certificate_quality AS\nSELECT\n rc.id,\n rc.query_id,\n rc.completeness_score,\n rc.redundancy_ratio,\n COUNT(jp.id) as justification_count,\n AVG(jp.necessity_score) as avg_necessity,\n rc.latency_ms\nFROM recall_certificates rc\nLEFT JOIN justification_paths jp ON rc.id = jp.certificate_id\nGROUP BY rc.id;\n\n-- Provenance lineage depth\nCREATE VIEW IF NOT EXISTS provenance_depth AS\nWITH RECURSIVE lineage(hash, depth) AS (\n SELECT content_hash, 0\n FROM provenance_sources\n WHERE parent_hash IS NULL\n\n UNION ALL\n\n SELECT ps.content_hash, lineage.depth + 1\n FROM lineage\n JOIN provenance_sources ps ON lineage.hash = ps.parent_hash\n)\nSELECT\n ps.id,\n ps.source_type,\n ps.source_id,\n ps.content_hash,\n COALESCE(l.depth, 0) as lineage_depth\nFROM provenance_sources ps\nLEFT JOIN lineage l ON ps.content_hash = l.hash;\n\n-- ============================================================================\n-- Triggers for Automatic Maintenance\n-- ============================================================================\n\n-- Update causal edge timestamp\nCREATE TRIGGER IF NOT EXISTS update_causal_edge_timestamp\nAFTER UPDATE ON causal_edges\nBEGIN\n UPDATE causal_edges\n SET updated_at = strftime('%s', 'now')\n WHERE id = NEW.id;\nEND;\n\n-- Validate causal confidence bounds\nCREATE TRIGGER IF NOT EXISTS validate_causal_confidence\nBEFORE INSERT ON causal_edges\nBEGIN\n SELECT CASE\n WHEN NEW.confidence < 0 OR NEW.confidence > 1 THEN\n RAISE(ABORT, 'Confidence must be between 0 and 1')\n END;\nEND;\n\n-- ============================================================================\n-- Functions for Causal Inference (as SQL helpers)\n-- ============================================================================\n\n-- These would typically be implemented in TypeScript, but we provide\n-- SQL views that can assist with common causal queries\n\n-- Instrumental variables (potential instruments for causal inference)\nCREATE VIEW IF NOT EXISTS causal_instruments AS\nSELECT\n e1.id as instrument_id,\n e1.task as instrument,\n e2.id as treatment_id,\n e2.task as treatment,\n e3.id as outcome_id,\n e3.task as outcome\nFROM episodes e1\nCROSS JOIN episodes e2\nCROSS JOIN episodes e3\nWHERE e1.id != e2.id AND e2.id != e3.id AND e1.id != e3.id\n -- Instrument affects treatment\n AND EXISTS (\n SELECT 1 FROM causal_edges\n WHERE from_memory_id = e1.id AND to_memory_id = e2.id\n AND ABS(uplift) > 0.1\n )\n -- Treatment affects outcome\n AND EXISTS (\n SELECT 1 FROM causal_edges\n WHERE from_memory_id = e2.id AND to_memory_id = e3.id\n AND ABS(uplift) > 0.1\n )\n -- Instrument doesn't directly affect outcome (exclusion restriction)\n AND NOT EXISTS (\n SELECT 1 FROM causal_edges\n WHERE from_memory_id = e1.id AND to_memory_id = e3.id\n );\n\n-- ============================================================================\n-- Schema Version\n-- ============================================================================\n-- Version: 2.0.0 (Frontier Features)\n-- Features: Causal Memory Graph, Explainable Recall Certificates\n-- Compatible with: AgentDB 1.x\n--\n-- Performance Optimization:\n-- Apply composite index migration (003_composite_indexes.sql) for:\n-- - 30-50% faster causal edge queries\n-- - Optimized causal chain traversal (multi-hop reasoning)\n-- - Faster experiment analysis and A/B testing\n-- - See: db/migrations/README.md for details\n-- ============================================================================\n\n-- ============================================================================\n-- FEATURE 3: Reinforcement Learning Experiences\n-- ============================================================================\n\n-- Learning experiences for RL training\nCREATE TABLE IF NOT EXISTS learning_experiences (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_id TEXT NOT NULL,\n state TEXT NOT NULL,\n action TEXT NOT NULL,\n reward REAL NOT NULL,\n next_state TEXT,\n success INTEGER NOT NULL DEFAULT 0,\n timestamp INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_experiences_session ON learning_experiences(session_id);\nCREATE INDEX IF NOT EXISTS idx_learning_experiences_timestamp ON learning_experiences(timestamp DESC);\nCREATE INDEX IF NOT EXISTS idx_learning_experiences_reward ON learning_experiences(reward DESC);\n\n-- Learning sessions table for RL session management\nCREATE TABLE IF NOT EXISTS learning_sessions (\n id TEXT PRIMARY KEY,\n user_id TEXT NOT NULL,\n session_type TEXT NOT NULL,\n config JSON NOT NULL,\n start_time INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n end_time INTEGER,\n status TEXT NOT NULL DEFAULT 'active',\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_sessions_user ON learning_sessions(user_id);\nCREATE INDEX IF NOT EXISTS idx_learning_sessions_status ON learning_sessions(status);\nCREATE INDEX IF NOT EXISTS idx_learning_sessions_start ON learning_sessions(start_time DESC);\n";
3
+ //# sourceMappingURL=inline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../../../src/schemas/inline.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,UAAU,khfAAkhf,CAAC;AAC1if,eAAO,MAAM,mBAAmB,0obAA0ob,CAAC"}
@@ -0,0 +1,10 @@
1
+ // GENERATED FILE — do not edit by hand.
2
+ // Source: src/schemas/schema.sql + frontier-schema.sql via scripts/inline-schemas.mjs.
3
+ //
4
+ // These are inlined as string constants so AgentDB.loadSchemas() works in:
5
+ // - the browser (no fs / readFileSync available)
6
+ // - globally-installed CLIs (where __dirname resolution misses /dist/schemas)
7
+ // See ruvnet/agentdb#1, #2.
8
+ export const SCHEMA_SQL = "-- ============================================================================\n-- AgentDB State-of-the-Art Memory Schema\n-- ============================================================================\n-- Implements 5 cutting-edge memory patterns for autonomous agents:\n-- 1. Reflexion-style episodic replay\n-- 2. Skill library from trajectories\n-- 3. Structured mixed memory (facts + summaries)\n-- 4. Episodic segmentation and consolidation\n-- 5. Graph-aware recall\n-- ============================================================================\n\n-- Enable foreign keys\nPRAGMA foreign_keys = ON;\n\n-- ============================================================================\n-- Pattern 1: Reflexion-Style Episodic Replay\n-- ============================================================================\n-- Store self-critique and outcomes after each attempt.\n-- Retrieve nearest failures and fixes before the next run.\n\nCREATE TABLE IF NOT EXISTS episodes (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n ts INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n session_id TEXT NOT NULL,\n task TEXT NOT NULL,\n input TEXT,\n output TEXT,\n critique TEXT,\n reward REAL DEFAULT 0.0,\n success BOOLEAN DEFAULT 0,\n latency_ms INTEGER,\n tokens_used INTEGER,\n tags TEXT, -- JSON array of tags\n metadata JSON,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_episodes_ts ON episodes(ts DESC);\nCREATE INDEX IF NOT EXISTS idx_episodes_session ON episodes(session_id);\nCREATE INDEX IF NOT EXISTS idx_episodes_reward ON episodes(reward DESC);\nCREATE INDEX IF NOT EXISTS idx_episodes_task ON episodes(task);\n\n-- Vector embeddings for episodes (384-dim for all-MiniLM-L6-v2)\n-- Will use sqlite-vec when available, fallback to JSON storage\nCREATE TABLE IF NOT EXISTS episode_embeddings (\n episode_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL, -- Float32Array as BLOB\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(episode_id) REFERENCES episodes(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Pattern 2: Skill Library from Trajectories\n-- ============================================================================\n-- Promote high-reward traces into reusable \"skills\" with typed IO.\n\nCREATE TABLE IF NOT EXISTS skills (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n name TEXT UNIQUE NOT NULL,\n description TEXT,\n signature JSON NOT NULL, -- {inputs: {...}, outputs: {...}}\n code TEXT, -- Tool call manifest or code template\n success_rate REAL DEFAULT 0.0,\n uses INTEGER DEFAULT 0,\n avg_reward REAL DEFAULT 0.0,\n avg_latency_ms INTEGER DEFAULT 0,\n created_from_episode INTEGER, -- Source episode ID\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n last_used_at INTEGER,\n metadata JSON,\n FOREIGN KEY(created_from_episode) REFERENCES episodes(id)\n);\n\nCREATE INDEX IF NOT EXISTS idx_skills_success ON skills(success_rate DESC);\nCREATE INDEX IF NOT EXISTS idx_skills_uses ON skills(uses DESC);\nCREATE INDEX IF NOT EXISTS idx_skills_name ON skills(name);\n\n-- Skill relationships and composition\nCREATE TABLE IF NOT EXISTS skill_links (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n parent_skill_id INTEGER NOT NULL,\n child_skill_id INTEGER NOT NULL,\n relationship TEXT NOT NULL, -- 'prerequisite', 'alternative', 'refinement', 'composition'\n weight REAL DEFAULT 1.0,\n metadata JSON,\n FOREIGN KEY(parent_skill_id) REFERENCES skills(id) ON DELETE CASCADE,\n FOREIGN KEY(child_skill_id) REFERENCES skills(id) ON DELETE CASCADE,\n UNIQUE(parent_skill_id, child_skill_id, relationship)\n);\n\nCREATE INDEX IF NOT EXISTS idx_skill_links_parent ON skill_links(parent_skill_id);\nCREATE INDEX IF NOT EXISTS idx_skill_links_child ON skill_links(child_skill_id);\n\n-- Skill embeddings for semantic search\nCREATE TABLE IF NOT EXISTS skill_embeddings (\n skill_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL,\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(skill_id) REFERENCES skills(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Pattern 3: Structured Mixed Memory (Facts + Summaries)\n-- ============================================================================\n-- Combine facts, summaries, and vectors to avoid over-embedding.\n\n-- Atomic facts as triples (subject-predicate-object)\nCREATE TABLE IF NOT EXISTS facts (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n subject TEXT NOT NULL,\n predicate TEXT NOT NULL,\n object TEXT NOT NULL,\n source_type TEXT, -- 'episode', 'skill', 'external', 'inferred'\n source_id INTEGER,\n confidence REAL DEFAULT 1.0,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n expires_at INTEGER, -- TTL for temporal facts\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_facts_subject ON facts(subject);\nCREATE INDEX IF NOT EXISTS idx_facts_predicate ON facts(predicate);\nCREATE INDEX IF NOT EXISTS idx_facts_object ON facts(object);\nCREATE INDEX IF NOT EXISTS idx_facts_source ON facts(source_type, source_id);\nCREATE INDEX IF NOT EXISTS idx_facts_expires ON facts(expires_at) WHERE expires_at IS NOT NULL;\n\n-- Notes and summaries with semantic embeddings\nCREATE TABLE IF NOT EXISTS notes (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n title TEXT,\n text TEXT NOT NULL,\n summary TEXT, -- Condensed version for context\n note_type TEXT DEFAULT 'general', -- 'insight', 'constraint', 'goal', 'observation'\n importance REAL DEFAULT 0.5,\n access_count INTEGER DEFAULT 0,\n last_accessed_at INTEGER,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_notes_type ON notes(note_type);\nCREATE INDEX IF NOT EXISTS idx_notes_importance ON notes(importance DESC);\nCREATE INDEX IF NOT EXISTS idx_notes_accessed ON notes(last_accessed_at DESC);\n\n-- Note embeddings (only for summaries to reduce storage)\nCREATE TABLE IF NOT EXISTS note_embeddings (\n note_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL,\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(note_id) REFERENCES notes(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Pattern 4: Episodic Segmentation and Consolidation\n-- ============================================================================\n-- Segment long tasks into events and consolidate into compact memories.\n\nCREATE TABLE IF NOT EXISTS events (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_id TEXT NOT NULL,\n episode_id INTEGER, -- Link to parent episode\n step INTEGER NOT NULL,\n phase TEXT, -- 'planning', 'execution', 'reflection', 'learning'\n role TEXT, -- 'user', 'assistant', 'system', 'tool'\n content TEXT NOT NULL,\n features JSON, -- Extracted features for learning\n tool_calls JSON, -- Tool invocations in this event\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n FOREIGN KEY(episode_id) REFERENCES episodes(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_events_session ON events(session_id, step);\nCREATE INDEX IF NOT EXISTS idx_events_phase ON events(phase);\nCREATE INDEX IF NOT EXISTS idx_events_episode ON events(episode_id);\n\n-- Consolidated memories from event windows\nCREATE TABLE IF NOT EXISTS consolidated_memories (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_id TEXT NOT NULL,\n start_event_id INTEGER NOT NULL,\n end_event_id INTEGER NOT NULL,\n phase TEXT,\n summary TEXT NOT NULL,\n key_insights JSON, -- Extracted learnings\n success_patterns JSON, -- What worked\n failure_patterns JSON, -- What didn't work\n quality_score REAL DEFAULT 0.5,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n FOREIGN KEY(start_event_id) REFERENCES events(id),\n FOREIGN KEY(end_event_id) REFERENCES events(id)\n);\n\nCREATE INDEX IF NOT EXISTS idx_consolidated_session ON consolidated_memories(session_id);\nCREATE INDEX IF NOT EXISTS idx_consolidated_quality ON consolidated_memories(quality_score DESC);\n\n-- ============================================================================\n-- Pattern 5: Graph-Aware Recall (Lightweight GraphRAG)\n-- ============================================================================\n-- Build a lightweight GraphRAG overlay for experiences.\n\nCREATE TABLE IF NOT EXISTS exp_nodes (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n kind TEXT NOT NULL, -- 'task', 'skill', 'concept', 'tool', 'outcome'\n label TEXT NOT NULL,\n payload JSON,\n centrality REAL DEFAULT 0.0, -- Graph importance metric\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_exp_nodes_kind ON exp_nodes(kind);\nCREATE INDEX IF NOT EXISTS idx_exp_nodes_label ON exp_nodes(label);\nCREATE INDEX IF NOT EXISTS idx_exp_nodes_centrality ON exp_nodes(centrality DESC);\n\nCREATE TABLE IF NOT EXISTS exp_edges (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n src_node_id INTEGER NOT NULL,\n dst_node_id INTEGER NOT NULL,\n relationship TEXT NOT NULL, -- 'requires', 'produces', 'similar_to', 'refines', 'part_of'\n weight REAL DEFAULT 1.0,\n metadata JSON,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n FOREIGN KEY(src_node_id) REFERENCES exp_nodes(id) ON DELETE CASCADE,\n FOREIGN KEY(dst_node_id) REFERENCES exp_nodes(id) ON DELETE CASCADE,\n UNIQUE(src_node_id, dst_node_id, relationship)\n);\n\nCREATE INDEX IF NOT EXISTS idx_exp_edges_src ON exp_edges(src_node_id);\nCREATE INDEX IF NOT EXISTS idx_exp_edges_dst ON exp_edges(dst_node_id);\nCREATE INDEX IF NOT EXISTS idx_exp_edges_rel ON exp_edges(relationship);\n\n-- Node embeddings for graph-augmented retrieval\nCREATE TABLE IF NOT EXISTS exp_node_embeddings (\n node_id INTEGER PRIMARY KEY,\n embedding BLOB NOT NULL,\n embedding_model TEXT DEFAULT 'all-MiniLM-L6-v2',\n FOREIGN KEY(node_id) REFERENCES exp_nodes(id) ON DELETE CASCADE\n);\n\n-- ============================================================================\n-- Memory Management and Scoring\n-- ============================================================================\n\n-- Track memory quality scores and usage statistics\nCREATE TABLE IF NOT EXISTS memory_scores (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n memory_type TEXT NOT NULL, -- 'episode', 'skill', 'note', 'consolidated'\n memory_id INTEGER NOT NULL,\n quality_score REAL NOT NULL,\n novelty_score REAL,\n relevance_score REAL,\n utility_score REAL,\n computed_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_memory_scores_type ON memory_scores(memory_type, memory_id);\nCREATE INDEX IF NOT EXISTS idx_memory_scores_quality ON memory_scores(quality_score DESC);\n\n-- Memory access patterns for adaptive retrieval\nCREATE TABLE IF NOT EXISTS memory_access_log (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n memory_type TEXT NOT NULL,\n memory_id INTEGER NOT NULL,\n query TEXT,\n relevance_score REAL,\n was_useful BOOLEAN,\n feedback JSON,\n accessed_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_access_log_type ON memory_access_log(memory_type, memory_id);\nCREATE INDEX IF NOT EXISTS idx_access_log_time ON memory_access_log(accessed_at DESC);\n\n-- ============================================================================\n-- Consolidation and Maintenance\n-- ============================================================================\n\n-- Track consolidation jobs and their results\nCREATE TABLE IF NOT EXISTS consolidation_runs (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n job_type TEXT NOT NULL, -- 'episode_to_skill', 'event_to_memory', 'deduplication', 'pruning'\n records_processed INTEGER DEFAULT 0,\n records_created INTEGER DEFAULT 0,\n records_deleted INTEGER DEFAULT 0,\n duration_ms INTEGER,\n status TEXT DEFAULT 'pending', -- 'pending', 'running', 'completed', 'failed'\n error TEXT,\n started_at INTEGER,\n completed_at INTEGER,\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_consolidation_status ON consolidation_runs(status);\nCREATE INDEX IF NOT EXISTS idx_consolidation_type ON consolidation_runs(job_type);\n\n-- ============================================================================\n-- Views for Common Queries\n-- ============================================================================\n\n-- High-value episodes for skill creation\nCREATE VIEW IF NOT EXISTS skill_candidates AS\nSELECT\n task,\n COUNT(*) as attempt_count,\n AVG(reward) as avg_reward,\n AVG(success) as success_rate,\n MAX(id) as latest_episode_id,\n GROUP_CONCAT(id) as episode_ids\nFROM episodes\nWHERE ts > strftime('%s', 'now') - 86400 * 7 -- Last 7 days\nGROUP BY task\nHAVING attempt_count >= 3 AND avg_reward >= 0.7;\n\n-- Top performing skills\nCREATE VIEW IF NOT EXISTS top_skills AS\nSELECT\n s.*,\n COALESCE(s.success_rate, 0) * 0.4 +\n COALESCE(s.uses, 0) * 0.0001 +\n COALESCE(s.avg_reward, 0) * 0.6 as composite_score\nFROM skills s\nORDER BY composite_score DESC;\n\n-- Recent high-quality memories\nCREATE VIEW IF NOT EXISTS recent_quality_memories AS\nSELECT\n 'episode' as type, id, task as title, critique as content, reward as score, created_at\nFROM episodes\nWHERE reward >= 0.7 AND ts > strftime('%s', 'now') - 86400 * 3\nUNION ALL\nSELECT\n 'note' as type, id, title, summary as content, importance as score, created_at\nFROM notes\nWHERE importance >= 0.7 AND created_at > strftime('%s', 'now') - 86400 * 3\nUNION ALL\nSELECT\n 'consolidated' as type, id, session_id as title, summary as content, quality_score as score, created_at\nFROM consolidated_memories\nWHERE quality_score >= 0.7 AND created_at > strftime('%s', 'now') - 86400 * 3\nORDER BY created_at DESC;\n\n-- ============================================================================\n-- Triggers for Auto-Maintenance\n-- ============================================================================\n\n-- Update skill usage statistics\nCREATE TRIGGER IF NOT EXISTS update_skill_last_used\nAFTER UPDATE OF uses ON skills\nBEGIN\n UPDATE skills SET last_used_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\n-- Update note access tracking\nCREATE TRIGGER IF NOT EXISTS update_note_access\nAFTER UPDATE OF access_count ON notes\nBEGIN\n UPDATE notes SET last_accessed_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\n-- Auto-update timestamps\nCREATE TRIGGER IF NOT EXISTS update_skill_timestamp\nAFTER UPDATE ON skills\nBEGIN\n UPDATE skills SET updated_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\nCREATE TRIGGER IF NOT EXISTS update_note_timestamp\nAFTER UPDATE ON notes\nBEGIN\n UPDATE notes SET updated_at = strftime('%s', 'now') WHERE id = NEW.id;\nEND;\n\n-- ============================================================================\n-- Initialization Complete\n-- ============================================================================\n-- Schema version: 1.0.0\n-- Compatible with: SQLite 3.35+, sqlite-vec (optional), sqlite-vss (optional)\n-- WASM compatible: Yes (via SQLite-WASM + OPFS)\n--\n-- Performance Optimization:\n-- For production deployments, apply composite index migration for 30-50% query speedup:\n-- - Migration file: db/migrations/003_composite_indexes.sql\n-- - Adds 40+ composite indexes for common query patterns\n-- - Trade-off: 2x slower writes, +15-20% storage (acceptable for read-heavy workloads)\n-- - See: db/migrations/README.md for details\n-- ============================================================================\n";
9
+ export const FRONTIER_SCHEMA_SQL = "-- ============================================================================\n-- AgentDB Frontier Features Schema Extension\n-- ============================================================================\n-- Implements cutting-edge memory features:\n-- 1. Causal Memory Graph - Store edges with causal strength, not just similarity\n-- 2. Explainable Recall Certificates - Provenance and justification tracking\n-- ============================================================================\n\n-- ============================================================================\n-- FEATURE 1: Causal Memory Graph\n-- ============================================================================\n\n-- Causal edges between memories with intervention effects\nCREATE TABLE IF NOT EXISTS causal_edges (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n from_memory_id INTEGER NOT NULL,\n from_memory_type TEXT NOT NULL, -- 'episode', 'skill', 'note', 'fact'\n to_memory_id INTEGER NOT NULL,\n to_memory_type TEXT NOT NULL,\n\n -- Traditional similarity\n similarity REAL NOT NULL DEFAULT 0.0,\n\n -- Causal metrics\n uplift REAL, -- E[y|do(x)] - E[y]\n confidence REAL DEFAULT 0.5, -- Confidence in causal claim\n sample_size INTEGER, -- Number of observations\n\n -- Evidence and provenance\n evidence_ids TEXT, -- JSON array of proof IDs\n experiment_ids TEXT, -- JSON array of A/B test IDs\n confounder_score REAL, -- Likelihood of confounding\n\n -- Metadata\n mechanism TEXT, -- Hypothesized causal mechanism\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n last_validated_at INTEGER,\n\n metadata JSON\n\n -- Note: Foreign keys removed to allow flexible causal edges between any concepts\n -- from_memory_id and to_memory_id can be 0 for abstract causal relationships\n);\n\nCREATE INDEX IF NOT EXISTS idx_causal_edges_from ON causal_edges(from_memory_id, from_memory_type);\nCREATE INDEX IF NOT EXISTS idx_causal_edges_to ON causal_edges(to_memory_id, to_memory_type);\nCREATE INDEX IF NOT EXISTS idx_causal_edges_uplift ON causal_edges(uplift DESC);\nCREATE INDEX IF NOT EXISTS idx_causal_edges_confidence ON causal_edges(confidence DESC);\n\n-- Causal experiments (A/B tests for uplift estimation)\nCREATE TABLE IF NOT EXISTS causal_experiments (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n name TEXT NOT NULL,\n hypothesis TEXT NOT NULL,\n treatment_id INTEGER NOT NULL, -- Memory used as treatment\n treatment_type TEXT NOT NULL,\n control_id INTEGER, -- Optional control memory\n\n -- Experiment design\n start_time INTEGER NOT NULL,\n end_time INTEGER,\n sample_size INTEGER DEFAULT 0,\n\n -- Results\n treatment_mean REAL,\n control_mean REAL,\n uplift REAL, -- treatment_mean - control_mean\n p_value REAL,\n confidence_interval_low REAL,\n confidence_interval_high REAL,\n\n -- Status\n status TEXT DEFAULT 'running', -- 'running', 'completed', 'failed'\n\n metadata JSON,\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_causal_experiments_status ON causal_experiments(status);\nCREATE INDEX IF NOT EXISTS idx_causal_experiments_treatment ON causal_experiments(treatment_id, treatment_type);\n\n-- Causal observations (individual data points)\nCREATE TABLE IF NOT EXISTS causal_observations (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n experiment_id INTEGER NOT NULL,\n episode_id INTEGER NOT NULL,\n\n -- Treatment assignment\n is_treatment BOOLEAN NOT NULL,\n\n -- Outcome\n outcome_value REAL NOT NULL,\n outcome_type TEXT, -- 'reward', 'success', 'latency'\n\n -- Context\n context JSON,\n observed_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n\n FOREIGN KEY(experiment_id) REFERENCES causal_experiments(id) ON DELETE CASCADE,\n FOREIGN KEY(episode_id) REFERENCES episodes(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_causal_observations_experiment ON causal_observations(experiment_id);\nCREATE INDEX IF NOT EXISTS idx_causal_observations_treatment ON causal_observations(is_treatment);\n\n-- ============================================================================\n-- FEATURE 2: Explainable Recall Certificates\n-- ============================================================================\n\n-- Recall certificates for provenance and justification\nCREATE TABLE IF NOT EXISTS recall_certificates (\n id TEXT PRIMARY KEY, -- UUID or hash\n query_id TEXT NOT NULL,\n query_text TEXT NOT NULL,\n\n -- Retrieved chunks\n chunk_ids TEXT NOT NULL, -- JSON array\n chunk_types TEXT NOT NULL, -- JSON array matching chunk_ids\n\n -- Minimal hitting set (justification)\n minimal_why TEXT, -- JSON array of chunk IDs that justify the answer\n redundancy_ratio REAL, -- len(chunk_ids) / len(minimal_why)\n completeness_score REAL, -- Fraction of query requirements met\n\n -- Provenance chain\n merkle_root TEXT NOT NULL,\n source_hashes TEXT, -- JSON array of source hashes\n proof_chain TEXT, -- JSON Merkle proof\n\n -- Policy compliance\n policy_proof TEXT, -- Proof of policy adherence\n policy_version TEXT,\n access_level TEXT, -- 'public', 'internal', 'confidential', 'restricted'\n\n -- Metadata\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n latency_ms INTEGER,\n\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_recall_certificates_query ON recall_certificates(query_id);\nCREATE INDEX IF NOT EXISTS idx_recall_certificates_created ON recall_certificates(created_at DESC);\n\n-- Provenance sources (for Merkle tree construction)\nCREATE TABLE IF NOT EXISTS provenance_sources (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n source_type TEXT NOT NULL, -- 'episode', 'skill', 'note', 'fact', 'external'\n source_id INTEGER NOT NULL,\n\n -- Content hash\n content_hash TEXT NOT NULL UNIQUE,\n\n -- Lineage\n parent_hash TEXT, -- Previous version\n derived_from TEXT, -- JSON array of parent hashes\n\n -- Metadata\n created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n creator TEXT, -- User or system identifier\n\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_provenance_sources_type ON provenance_sources(source_type, source_id);\nCREATE INDEX IF NOT EXISTS idx_provenance_sources_hash ON provenance_sources(content_hash);\nCREATE INDEX IF NOT EXISTS idx_provenance_sources_parent ON provenance_sources(parent_hash);\n\n-- Justification paths (why a chunk was included)\nCREATE TABLE IF NOT EXISTS justification_paths (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n certificate_id TEXT NOT NULL,\n chunk_id TEXT NOT NULL,\n chunk_type TEXT NOT NULL,\n\n -- Justification\n reason TEXT NOT NULL, -- 'semantic_match', 'causal_link', 'prerequisite', 'constraint'\n necessity_score REAL NOT NULL, -- How essential is this chunk (0-1)\n\n -- Path to query satisfaction\n path_elements TEXT, -- JSON array describing reasoning path\n\n FOREIGN KEY(certificate_id) REFERENCES recall_certificates(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_justification_paths_cert ON justification_paths(certificate_id);\nCREATE INDEX IF NOT EXISTS idx_justification_paths_chunk ON justification_paths(chunk_id, chunk_type);\n\n-- ============================================================================\n-- Views for Causal Analysis\n-- ============================================================================\n\n-- High-confidence causal relationships\nCREATE VIEW IF NOT EXISTS strong_causal_edges AS\nSELECT\n ce.*,\n CASE\n WHEN ce.uplift > 0 THEN 'positive'\n WHEN ce.uplift < 0 THEN 'negative'\n ELSE 'neutral'\n END as effect_direction,\n ce.uplift * ce.confidence as causal_impact\nFROM causal_edges ce\nWHERE ce.confidence >= 0.7\n AND ce.uplift IS NOT NULL\n AND ABS(ce.uplift) >= 0.1\nORDER BY ABS(ce.uplift) * ce.confidence DESC;\n\n-- Causal chains (multi-hop reasoning)\nCREATE VIEW IF NOT EXISTS causal_chains AS\nWITH RECURSIVE chain(from_id, to_id, depth, path, total_uplift) AS (\n SELECT from_memory_id, to_memory_id, 1,\n from_memory_id || '->' || to_memory_id,\n uplift\n FROM causal_edges\n WHERE confidence >= 0.6\n\n UNION ALL\n\n SELECT chain.from_id, ce.to_memory_id, chain.depth + 1,\n chain.path || '->' || ce.to_memory_id,\n chain.total_uplift + ce.uplift\n FROM chain\n JOIN causal_edges ce ON chain.to_id = ce.from_memory_id\n WHERE chain.depth < 5\n AND ce.confidence >= 0.6\n AND chain.path NOT LIKE '%' || ce.to_memory_id || '%'\n)\nSELECT * FROM chain\nWHERE depth >= 2\nORDER BY total_uplift DESC, depth ASC;\n\n-- ============================================================================\n-- Views for Explainability\n-- ============================================================================\n\n-- Certificate quality metrics\nCREATE VIEW IF NOT EXISTS certificate_quality AS\nSELECT\n rc.id,\n rc.query_id,\n rc.completeness_score,\n rc.redundancy_ratio,\n COUNT(jp.id) as justification_count,\n AVG(jp.necessity_score) as avg_necessity,\n rc.latency_ms\nFROM recall_certificates rc\nLEFT JOIN justification_paths jp ON rc.id = jp.certificate_id\nGROUP BY rc.id;\n\n-- Provenance lineage depth\nCREATE VIEW IF NOT EXISTS provenance_depth AS\nWITH RECURSIVE lineage(hash, depth) AS (\n SELECT content_hash, 0\n FROM provenance_sources\n WHERE parent_hash IS NULL\n\n UNION ALL\n\n SELECT ps.content_hash, lineage.depth + 1\n FROM lineage\n JOIN provenance_sources ps ON lineage.hash = ps.parent_hash\n)\nSELECT\n ps.id,\n ps.source_type,\n ps.source_id,\n ps.content_hash,\n COALESCE(l.depth, 0) as lineage_depth\nFROM provenance_sources ps\nLEFT JOIN lineage l ON ps.content_hash = l.hash;\n\n-- ============================================================================\n-- Triggers for Automatic Maintenance\n-- ============================================================================\n\n-- Update causal edge timestamp\nCREATE TRIGGER IF NOT EXISTS update_causal_edge_timestamp\nAFTER UPDATE ON causal_edges\nBEGIN\n UPDATE causal_edges\n SET updated_at = strftime('%s', 'now')\n WHERE id = NEW.id;\nEND;\n\n-- Validate causal confidence bounds\nCREATE TRIGGER IF NOT EXISTS validate_causal_confidence\nBEFORE INSERT ON causal_edges\nBEGIN\n SELECT CASE\n WHEN NEW.confidence < 0 OR NEW.confidence > 1 THEN\n RAISE(ABORT, 'Confidence must be between 0 and 1')\n END;\nEND;\n\n-- ============================================================================\n-- Functions for Causal Inference (as SQL helpers)\n-- ============================================================================\n\n-- These would typically be implemented in TypeScript, but we provide\n-- SQL views that can assist with common causal queries\n\n-- Instrumental variables (potential instruments for causal inference)\nCREATE VIEW IF NOT EXISTS causal_instruments AS\nSELECT\n e1.id as instrument_id,\n e1.task as instrument,\n e2.id as treatment_id,\n e2.task as treatment,\n e3.id as outcome_id,\n e3.task as outcome\nFROM episodes e1\nCROSS JOIN episodes e2\nCROSS JOIN episodes e3\nWHERE e1.id != e2.id AND e2.id != e3.id AND e1.id != e3.id\n -- Instrument affects treatment\n AND EXISTS (\n SELECT 1 FROM causal_edges\n WHERE from_memory_id = e1.id AND to_memory_id = e2.id\n AND ABS(uplift) > 0.1\n )\n -- Treatment affects outcome\n AND EXISTS (\n SELECT 1 FROM causal_edges\n WHERE from_memory_id = e2.id AND to_memory_id = e3.id\n AND ABS(uplift) > 0.1\n )\n -- Instrument doesn't directly affect outcome (exclusion restriction)\n AND NOT EXISTS (\n SELECT 1 FROM causal_edges\n WHERE from_memory_id = e1.id AND to_memory_id = e3.id\n );\n\n-- ============================================================================\n-- Schema Version\n-- ============================================================================\n-- Version: 2.0.0 (Frontier Features)\n-- Features: Causal Memory Graph, Explainable Recall Certificates\n-- Compatible with: AgentDB 1.x\n--\n-- Performance Optimization:\n-- Apply composite index migration (003_composite_indexes.sql) for:\n-- - 30-50% faster causal edge queries\n-- - Optimized causal chain traversal (multi-hop reasoning)\n-- - Faster experiment analysis and A/B testing\n-- - See: db/migrations/README.md for details\n-- ============================================================================\n\n-- ============================================================================\n-- FEATURE 3: Reinforcement Learning Experiences\n-- ============================================================================\n\n-- Learning experiences for RL training\nCREATE TABLE IF NOT EXISTS learning_experiences (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_id TEXT NOT NULL,\n state TEXT NOT NULL,\n action TEXT NOT NULL,\n reward REAL NOT NULL,\n next_state TEXT,\n success INTEGER NOT NULL DEFAULT 0,\n timestamp INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_experiences_session ON learning_experiences(session_id);\nCREATE INDEX IF NOT EXISTS idx_learning_experiences_timestamp ON learning_experiences(timestamp DESC);\nCREATE INDEX IF NOT EXISTS idx_learning_experiences_reward ON learning_experiences(reward DESC);\n\n-- Learning sessions table for RL session management\nCREATE TABLE IF NOT EXISTS learning_sessions (\n id TEXT PRIMARY KEY,\n user_id TEXT NOT NULL,\n session_type TEXT NOT NULL,\n config JSON NOT NULL,\n start_time INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),\n end_time INTEGER,\n status TEXT NOT NULL DEFAULT 'active',\n metadata JSON\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_sessions_user ON learning_sessions(user_id);\nCREATE INDEX IF NOT EXISTS idx_learning_sessions_status ON learning_sessions(status);\nCREATE INDEX IF NOT EXISTS idx_learning_sessions_start ON learning_sessions(start_time DESC);\n";
10
+ //# sourceMappingURL=inline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../src/schemas/inline.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,uFAAuF;AACvF,EAAE;AACF,2EAA2E;AAC3E,mDAAmD;AACnD,gFAAgF;AAChF,4BAA4B;AAE5B,MAAM,CAAC,MAAM,UAAU,GAAG,+gfAA+gf,CAAC;AAC1if,MAAM,CAAC,MAAM,mBAAmB,GAAG,uobAAuob,CAAC"}
@@ -0,0 +1,311 @@
1
+ /**
2
+ * HybridSearch - Combined Vector + Keyword Search for AgentDB
3
+ *
4
+ * Features:
5
+ * - BM25 keyword search with inverted index
6
+ * - Vector similarity search integration
7
+ * - Reciprocal Rank Fusion (RRF) for result combination
8
+ * - Linear and max fusion methods
9
+ * - Configurable weights and fusion strategies
10
+ * - Metadata filtering support
11
+ *
12
+ * @module search/HybridSearch
13
+ */
14
+ import type { VectorBackend } from '../backends/VectorBackend.js';
15
+ /**
16
+ * Options for hybrid search operations
17
+ */
18
+ export interface HybridSearchOptions {
19
+ /** Maximum number of results to return */
20
+ limit: number;
21
+ /** Weight for vector search results (default: 0.7) */
22
+ vectorWeight?: number;
23
+ /** Weight for keyword search results (default: 0.3) */
24
+ keywordWeight?: number;
25
+ /** Metadata filter to apply to results */
26
+ filter?: Record<string, any>;
27
+ /** Fusion method for combining results */
28
+ fusionMethod?: 'rrf' | 'linear' | 'max';
29
+ /** RRF k parameter (default: 60) - higher values reduce impact of top ranks */
30
+ rrfK?: number;
31
+ /** Minimum score threshold (0-1) */
32
+ threshold?: number;
33
+ /** Override efSearch for vector queries */
34
+ efSearch?: number;
35
+ }
36
+ /**
37
+ * Result from hybrid search
38
+ */
39
+ export interface HybridSearchResult {
40
+ /** Document/vector ID */
41
+ id: string;
42
+ /** Combined score (0-1, higher is better) */
43
+ score: number;
44
+ /** Vector similarity score (if vector search was performed) */
45
+ vectorScore?: number;
46
+ /** Keyword relevance score (if keyword search was performed) */
47
+ keywordScore?: number;
48
+ /** Original metadata from vector store */
49
+ metadata?: Record<string, any>;
50
+ /** Source of the result */
51
+ source: 'vector' | 'keyword' | 'both';
52
+ }
53
+ /**
54
+ * Query input for hybrid search
55
+ */
56
+ export interface HybridQuery {
57
+ /** Text query for keyword search */
58
+ text?: string;
59
+ /** Vector embedding for similarity search */
60
+ vector?: Float32Array;
61
+ }
62
+ /**
63
+ * Configuration for BM25 scoring
64
+ */
65
+ export interface BM25Config {
66
+ /** Term frequency saturation parameter (default: 1.2) */
67
+ k1: number;
68
+ /** Document length normalization (default: 0.75) */
69
+ b: number;
70
+ }
71
+ /**
72
+ * KeywordIndex - Inverted index with BM25 scoring for text search
73
+ *
74
+ * Implements the BM25 ranking function for document retrieval:
75
+ * score(D,Q) = SUM(IDF(qi) * (f(qi,D) * (k1 + 1)) / (f(qi,D) + k1 * (1 - b + b * |D|/avgdl)))
76
+ *
77
+ * Where:
78
+ * - IDF(qi) = log((N - n(qi) + 0.5) / (n(qi) + 0.5) + 1)
79
+ * - f(qi,D) = term frequency of qi in document D
80
+ * - |D| = document length
81
+ * - avgdl = average document length
82
+ * - k1, b = tuning parameters
83
+ */
84
+ export declare class KeywordIndex {
85
+ /** Inverted index: term -> posting list */
86
+ private invertedIndex;
87
+ /** Document store: id -> document entry */
88
+ private documents;
89
+ /** Total number of documents */
90
+ private documentCount;
91
+ /** Sum of all document lengths (for average calculation) */
92
+ private totalDocumentLength;
93
+ /** BM25 configuration */
94
+ private config;
95
+ /** Custom stopwords (merged with defaults) */
96
+ private stopwords;
97
+ constructor(config?: Partial<BM25Config>, customStopwords?: string[]);
98
+ /**
99
+ * Tokenize text into terms
100
+ * - Lowercases text
101
+ * - Splits on non-alphanumeric characters
102
+ * - Removes stopwords
103
+ * - Filters short tokens (< 2 chars)
104
+ */
105
+ private tokenize;
106
+ /**
107
+ * Calculate term frequencies for a list of tokens
108
+ */
109
+ private calculateTermFrequencies;
110
+ /**
111
+ * Add a document to the index
112
+ *
113
+ * @param id - Unique document identifier
114
+ * @param text - Document text content
115
+ * @param metadata - Optional metadata to associate with the document
116
+ */
117
+ add(id: string, text: string, metadata?: Record<string, any>): void;
118
+ /**
119
+ * Remove a document from the index
120
+ *
121
+ * @param id - Document ID to remove
122
+ * @returns true if document was removed, false if not found
123
+ */
124
+ remove(id: string): boolean;
125
+ /**
126
+ * Calculate IDF (Inverse Document Frequency) for a term
127
+ * Using BM25 IDF formula: log((N - n(q) + 0.5) / (n(q) + 0.5) + 1)
128
+ */
129
+ private calculateIDF;
130
+ /**
131
+ * Calculate BM25 score for a document given query terms
132
+ */
133
+ private calculateBM25Score;
134
+ /**
135
+ * Search the index for documents matching the query
136
+ *
137
+ * @param query - Search query text
138
+ * @param limit - Maximum number of results
139
+ * @param filter - Optional metadata filter
140
+ * @returns Array of search results sorted by score (descending)
141
+ */
142
+ search(query: string, limit: number, filter?: Record<string, any>): {
143
+ id: string;
144
+ score: number;
145
+ metadata?: Record<string, any>;
146
+ }[];
147
+ /**
148
+ * Check if document metadata matches the filter criteria
149
+ */
150
+ private matchesFilter;
151
+ /**
152
+ * Get index statistics
153
+ */
154
+ getStats(): {
155
+ documentCount: number;
156
+ termCount: number;
157
+ avgDocumentLength: number;
158
+ k1: number;
159
+ b: number;
160
+ };
161
+ /**
162
+ * Update BM25 parameters
163
+ */
164
+ setConfig(config: Partial<BM25Config>): void;
165
+ /**
166
+ * Clear the entire index
167
+ */
168
+ clear(): void;
169
+ /**
170
+ * Check if a document exists in the index
171
+ */
172
+ has(id: string): boolean;
173
+ /**
174
+ * Get document count
175
+ */
176
+ size(): number;
177
+ /**
178
+ * Add stopwords dynamically
179
+ */
180
+ addStopwords(words: string[]): void;
181
+ /**
182
+ * Remove stopwords dynamically
183
+ */
184
+ removeStopwords(words: string[]): void;
185
+ /**
186
+ * Get all indexed terms (for debugging/analysis)
187
+ */
188
+ getTerms(): string[];
189
+ /**
190
+ * Get document frequency for a term
191
+ */
192
+ getDocumentFrequency(term: string): number;
193
+ }
194
+ /**
195
+ * HybridSearch - Combines vector similarity and keyword search
196
+ *
197
+ * Supports multiple fusion strategies:
198
+ * - RRF (Reciprocal Rank Fusion): Robust rank-based fusion
199
+ * - Linear: Weighted score combination
200
+ * - Max: Take maximum score from either source
201
+ *
202
+ * Usage:
203
+ * ```typescript
204
+ * const hybrid = new HybridSearch(vectorBackend, keywordIndex);
205
+ *
206
+ * // Combined search
207
+ * const results = await hybrid.search(
208
+ * { text: "machine learning", vector: embedding },
209
+ * { limit: 10, vectorWeight: 0.7, keywordWeight: 0.3 }
210
+ * );
211
+ *
212
+ * // Vector-only search
213
+ * const vectorResults = await hybrid.search(
214
+ * { vector: embedding },
215
+ * { limit: 10 }
216
+ * );
217
+ *
218
+ * // Keyword-only search
219
+ * const keywordResults = await hybrid.search(
220
+ * { text: "neural networks" },
221
+ * { limit: 10 }
222
+ * );
223
+ * ```
224
+ */
225
+ export declare class HybridSearch {
226
+ private vectorBackend;
227
+ private keywordIndex;
228
+ constructor(vectorBackend: VectorBackend, keywordIndex: KeywordIndex);
229
+ /**
230
+ * Perform hybrid search combining vector and keyword results
231
+ *
232
+ * @param query - Query object containing text and/or vector
233
+ * @param options - Search options including weights and fusion method
234
+ * @returns Combined search results
235
+ */
236
+ search(query: HybridQuery, options: HybridSearchOptions): Promise<HybridSearchResult[]>;
237
+ /**
238
+ * Reciprocal Rank Fusion (RRF)
239
+ *
240
+ * Combines results based on their ranks rather than scores.
241
+ * RRF(d) = SUM(1 / (k + rank(d)))
242
+ *
243
+ * This is robust to different score distributions between sources.
244
+ */
245
+ private reciprocalRankFusion;
246
+ /**
247
+ * Linear Fusion
248
+ *
249
+ * Combines normalized scores linearly:
250
+ * score(d) = vectorWeight * vectorScore(d) + keywordWeight * keywordScore(d)
251
+ */
252
+ private linearFusion;
253
+ /**
254
+ * Max Fusion
255
+ *
256
+ * Takes the maximum normalized score from either source.
257
+ * score(d) = max(vectorScore(d), keywordScore(d))
258
+ */
259
+ private maxFusion;
260
+ /**
261
+ * Normalize vector-only results to HybridSearchResult format
262
+ */
263
+ private normalizeVectorResults;
264
+ /**
265
+ * Normalize keyword-only results to HybridSearchResult format
266
+ */
267
+ private normalizeKeywordResults;
268
+ /**
269
+ * Add a document to the keyword index
270
+ * (Convenience method - delegates to KeywordIndex)
271
+ */
272
+ addDocument(id: string, text: string, metadata?: Record<string, any>): void;
273
+ /**
274
+ * Remove a document from the keyword index
275
+ * (Convenience method - delegates to KeywordIndex)
276
+ */
277
+ removeDocument(id: string): boolean;
278
+ /**
279
+ * Get statistics about the hybrid search system
280
+ */
281
+ getStats(): {
282
+ vector: {
283
+ count: number;
284
+ dimension: number;
285
+ backend: string;
286
+ };
287
+ keyword: {
288
+ documentCount: number;
289
+ termCount: number;
290
+ avgDocumentLength: number;
291
+ };
292
+ };
293
+ /**
294
+ * Get the underlying vector backend
295
+ */
296
+ getVectorBackend(): VectorBackend;
297
+ /**
298
+ * Get the underlying keyword index
299
+ */
300
+ getKeywordIndex(): KeywordIndex;
301
+ }
302
+ /**
303
+ * Create a new KeywordIndex with default configuration
304
+ */
305
+ export declare function createKeywordIndex(config?: Partial<BM25Config>, customStopwords?: string[]): KeywordIndex;
306
+ /**
307
+ * Create a new HybridSearch instance
308
+ */
309
+ export declare function createHybridSearch(vectorBackend: VectorBackend, keywordIndex?: KeywordIndex): HybridSearch;
310
+ export type { VectorBackend, SearchResult, SearchOptions, } from '../backends/VectorBackend.js';
311
+ //# sourceMappingURL=HybridSearch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HybridSearch.d.ts","sourceRoot":"","sources":["../../../src/search/HybridSearch.ts"],"names":[],"mappings":"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"}