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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (519) hide show
  1. package/README.md +208 -2593
  2. package/dist/src/backends/GraphBackend.d.ts +8 -8
  3. package/dist/src/backends/GraphBackend.d.ts.map +1 -1
  4. package/dist/src/backends/GraphBackend.js +15 -16
  5. package/dist/src/backends/GraphBackend.js.map +1 -1
  6. package/dist/src/backends/LearningBackend.d.ts +2 -2
  7. package/dist/src/backends/LearningBackend.d.ts.map +1 -1
  8. package/dist/src/backends/LearningBackend.js +10 -11
  9. package/dist/src/backends/LearningBackend.js.map +1 -1
  10. package/dist/src/backends/VectorBackend.d.ts +10 -0
  11. package/dist/src/backends/VectorBackend.d.ts.map +1 -1
  12. package/dist/src/backends/detector.d.ts +3 -25
  13. package/dist/src/backends/detector.d.ts.map +1 -1
  14. package/dist/src/backends/detector.js +15 -119
  15. package/dist/src/backends/detector.js.map +1 -1
  16. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts +55 -1
  17. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts.map +1 -1
  18. package/dist/src/backends/graph/GraphDatabaseAdapter.js +133 -7
  19. package/dist/src/backends/graph/GraphDatabaseAdapter.js.map +1 -1
  20. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts +2 -2
  21. package/dist/src/backends/hnswlib/HNSWLibBackend.d.ts.map +1 -1
  22. package/dist/src/backends/hnswlib/HNSWLibBackend.js +12 -21
  23. package/dist/src/backends/hnswlib/HNSWLibBackend.js.map +1 -1
  24. package/dist/src/backends/index.d.ts +3 -25
  25. package/dist/src/backends/index.d.ts.map +1 -1
  26. package/dist/src/backends/index.js +1 -23
  27. package/dist/src/backends/index.js.map +1 -1
  28. package/dist/src/backends/ruvector/RuVectorBackend.d.ts +4 -4
  29. package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
  30. package/dist/src/backends/ruvector/RuVectorBackend.js +2 -2
  31. package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
  32. package/dist/src/backends/ruvector/RuVectorLearning.d.ts.map +1 -1
  33. package/dist/src/backends/ruvector/RuVectorLearning.js +5 -10
  34. package/dist/src/backends/ruvector/RuVectorLearning.js.map +1 -1
  35. package/dist/src/backends/rvf/SelfLearningRvfBackend.d.ts.map +1 -1
  36. package/dist/src/backends/rvf/SelfLearningRvfBackend.js +45 -2
  37. package/dist/src/backends/rvf/SelfLearningRvfBackend.js.map +1 -1
  38. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts +26 -0
  39. package/dist/src/backends/rvf/SqlJsRvfBackend.d.ts.map +1 -1
  40. package/dist/src/backends/rvf/SqlJsRvfBackend.js +93 -31
  41. package/dist/src/backends/rvf/SqlJsRvfBackend.js.map +1 -1
  42. package/dist/src/benchmark/BenchmarkSuite.d.ts.map +1 -1
  43. package/dist/src/benchmark/BenchmarkSuite.js +0 -2
  44. package/dist/src/benchmark/BenchmarkSuite.js.map +1 -1
  45. package/dist/src/benchmarks/wasm-vector-benchmark.d.ts +10 -0
  46. package/dist/src/benchmarks/wasm-vector-benchmark.d.ts.map +1 -0
  47. package/dist/src/benchmarks/wasm-vector-benchmark.js +196 -0
  48. package/dist/src/benchmarks/wasm-vector-benchmark.js.map +1 -0
  49. package/dist/src/browser/AdvancedFeatures.d.ts.map +1 -1
  50. package/dist/src/browser/AdvancedFeatures.js +10 -3
  51. package/dist/src/browser/AdvancedFeatures.js.map +1 -1
  52. package/dist/src/browser/AttentionBrowser.d.ts.map +1 -1
  53. package/dist/src/browser/AttentionBrowser.js +13 -5
  54. package/dist/src/browser/AttentionBrowser.js.map +1 -1
  55. package/dist/src/browser/HNSWIndex.d.ts +1 -31
  56. package/dist/src/browser/HNSWIndex.d.ts.map +1 -1
  57. package/dist/src/browser/HNSWIndex.js +18 -136
  58. package/dist/src/browser/HNSWIndex.js.map +1 -1
  59. package/dist/src/browser/ProductQuantization.d.ts.map +1 -1
  60. package/dist/src/browser/ProductQuantization.js +1 -0
  61. package/dist/src/browser/ProductQuantization.js.map +1 -1
  62. package/dist/src/browser/index.d.ts +3 -3
  63. package/dist/src/browser/index.d.ts.map +1 -1
  64. package/dist/src/browser/index.js +1 -2
  65. package/dist/src/browser/index.js.map +1 -1
  66. package/dist/src/cli/agentdb-cli.d.ts +2 -3
  67. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  68. package/dist/src/cli/agentdb-cli.js +142 -96
  69. package/dist/src/cli/agentdb-cli.js.map +1 -1
  70. package/dist/src/cli/commands/attention.js +15 -5
  71. package/dist/src/cli/commands/attention.js.map +1 -1
  72. package/dist/src/cli/commands/doctor.d.ts +0 -2
  73. package/dist/src/cli/commands/doctor.d.ts.map +1 -1
  74. package/dist/src/cli/commands/doctor.js +6 -111
  75. package/dist/src/cli/commands/doctor.js.map +1 -1
  76. package/dist/src/cli/commands/hyperbolic.d.ts.map +1 -1
  77. package/dist/src/cli/commands/hyperbolic.js +15 -3
  78. package/dist/src/cli/commands/hyperbolic.js.map +1 -1
  79. package/dist/src/cli/commands/init.d.ts +1 -2
  80. package/dist/src/cli/commands/init.d.ts.map +1 -1
  81. package/dist/src/cli/commands/init.js +7 -30
  82. package/dist/src/cli/commands/init.js.map +1 -1
  83. package/dist/src/cli/commands/install-embeddings.d.ts +1 -1
  84. package/dist/src/cli/commands/install-embeddings.d.ts.map +1 -1
  85. package/dist/src/cli/commands/install-embeddings.js +17 -11
  86. package/dist/src/cli/commands/install-embeddings.js.map +1 -1
  87. package/dist/src/cli/commands/learn.d.ts.map +1 -1
  88. package/dist/src/cli/commands/learn.js +12 -6
  89. package/dist/src/cli/commands/learn.js.map +1 -1
  90. package/dist/src/cli/commands/migrate.d.ts.map +1 -1
  91. package/dist/src/cli/commands/migrate.js +31 -10
  92. package/dist/src/cli/commands/migrate.js.map +1 -1
  93. package/dist/src/cli/commands/route.d.ts.map +1 -1
  94. package/dist/src/cli/commands/route.js +6 -1
  95. package/dist/src/cli/commands/route.js.map +1 -1
  96. package/dist/src/cli/commands/simulate-report.js +14 -2
  97. package/dist/src/cli/commands/simulate-report.js.map +1 -1
  98. package/dist/src/cli/commands/simulate-wizard.js.map +1 -1
  99. package/dist/src/cli/commands/simulate.d.ts +7 -0
  100. package/dist/src/cli/commands/simulate.d.ts.map +1 -0
  101. package/dist/src/cli/commands/simulate.js +100 -0
  102. package/dist/src/cli/commands/simulate.js.map +1 -0
  103. package/dist/src/cli/commands/status.js +1 -5
  104. package/dist/src/cli/commands/status.js.map +1 -1
  105. package/dist/src/cli/lib/attention-config.d.ts +2 -2
  106. package/dist/src/cli/lib/attention-config.d.ts.map +1 -1
  107. package/dist/src/cli/lib/attention-config.js +1 -2
  108. package/dist/src/cli/lib/attention-config.js.map +1 -1
  109. package/dist/src/cli/lib/config-manager.d.ts +110 -0
  110. package/dist/src/cli/lib/config-manager.d.ts.map +1 -0
  111. package/dist/src/cli/lib/config-manager.js +512 -0
  112. package/dist/src/cli/lib/config-manager.js.map +1 -0
  113. package/dist/src/cli/lib/config-validator.d.ts +1 -1
  114. package/dist/src/cli/lib/config-validator.d.ts.map +1 -1
  115. package/dist/src/cli/lib/health-monitor.d.ts +149 -0
  116. package/dist/src/cli/lib/health-monitor.d.ts.map +1 -0
  117. package/dist/src/cli/lib/health-monitor.js +380 -0
  118. package/dist/src/cli/lib/health-monitor.js.map +1 -0
  119. package/dist/src/cli/lib/history-tracker.d.ts +103 -0
  120. package/dist/src/cli/lib/history-tracker.d.ts.map +1 -0
  121. package/dist/src/cli/lib/history-tracker.js +352 -0
  122. package/dist/src/cli/lib/history-tracker.js.map +1 -0
  123. package/dist/src/cli/lib/report-store.d.ts.map +1 -1
  124. package/dist/src/cli/lib/report-store.js +3 -5
  125. package/dist/src/cli/lib/report-store.js.map +1 -1
  126. package/dist/src/cli/lib/simulation-registry.d.ts +1 -1
  127. package/dist/src/cli/lib/simulation-registry.d.ts.map +1 -1
  128. package/dist/src/cli/lib/simulation-registry.js +0 -1
  129. package/dist/src/cli/lib/simulation-registry.js.map +1 -1
  130. package/dist/src/cli/lib/simulation-runner.d.ts +1 -1
  131. package/dist/src/cli/lib/simulation-runner.d.ts.map +1 -1
  132. package/dist/src/cli/lib/simulation-runner.js +1 -4
  133. package/dist/src/cli/lib/simulation-runner.js.map +1 -1
  134. package/dist/src/compatibility/DeprecationWarnings.d.ts.map +1 -1
  135. package/dist/src/compatibility/V1toV2Adapter.d.ts +2 -2
  136. package/dist/src/compatibility/V1toV2Adapter.d.ts.map +1 -1
  137. package/dist/src/compatibility/V1toV2Adapter.js +1 -14
  138. package/dist/src/compatibility/V1toV2Adapter.js.map +1 -1
  139. package/dist/src/compatibility/VersionDetector.d.ts +1 -1
  140. package/dist/src/compatibility/VersionDetector.d.ts.map +1 -1
  141. package/dist/src/compatibility/VersionDetector.js +3 -3
  142. package/dist/src/compatibility/VersionDetector.js.map +1 -1
  143. package/dist/src/compatibility/index.d.ts +3 -0
  144. package/dist/src/compatibility/index.d.ts.map +1 -1
  145. package/dist/src/compatibility/index.js +11 -0
  146. package/dist/src/compatibility/index.js.map +1 -1
  147. package/dist/src/controllers/AttentionService.d.ts +98 -122
  148. package/dist/src/controllers/AttentionService.d.ts.map +1 -1
  149. package/dist/src/controllers/AttentionService.js +463 -238
  150. package/dist/src/controllers/AttentionService.js.map +1 -1
  151. package/dist/src/controllers/CausalMemoryGraph.d.ts +4 -4
  152. package/dist/src/controllers/CausalMemoryGraph.d.ts.map +1 -1
  153. package/dist/src/controllers/CausalMemoryGraph.js +7 -8
  154. package/dist/src/controllers/CausalMemoryGraph.js.map +1 -1
  155. package/dist/src/controllers/CausalRecall.d.ts +3 -2
  156. package/dist/src/controllers/CausalRecall.d.ts.map +1 -1
  157. package/dist/src/controllers/CausalRecall.js +21 -10
  158. package/dist/src/controllers/CausalRecall.js.map +1 -1
  159. package/dist/src/controllers/ContextSynthesizer.d.ts +1 -1
  160. package/dist/src/controllers/ContextSynthesizer.d.ts.map +1 -1
  161. package/dist/src/controllers/EmbeddingService.d.ts +29 -0
  162. package/dist/src/controllers/EmbeddingService.d.ts.map +1 -1
  163. package/dist/src/controllers/EmbeddingService.js +149 -34
  164. package/dist/src/controllers/EmbeddingService.js.map +1 -1
  165. package/dist/src/controllers/EnhancedEmbeddingService.d.ts.map +1 -1
  166. package/dist/src/controllers/EnhancedEmbeddingService.js +14 -7
  167. package/dist/src/controllers/EnhancedEmbeddingService.js.map +1 -1
  168. package/dist/src/controllers/ExplainableRecall.d.ts +5 -4
  169. package/dist/src/controllers/ExplainableRecall.d.ts.map +1 -1
  170. package/dist/src/controllers/ExplainableRecall.js +12 -20
  171. package/dist/src/controllers/ExplainableRecall.js.map +1 -1
  172. package/dist/src/controllers/HNSWIndex.d.ts +5 -4
  173. package/dist/src/controllers/HNSWIndex.d.ts.map +1 -1
  174. package/dist/src/controllers/HNSWIndex.js +6 -9
  175. package/dist/src/controllers/HNSWIndex.js.map +1 -1
  176. package/dist/src/controllers/LearningSystem.d.ts +10 -105
  177. package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
  178. package/dist/src/controllers/LearningSystem.js +28 -39
  179. package/dist/src/controllers/LearningSystem.js.map +1 -1
  180. package/dist/src/controllers/MMRDiversityRanker.d.ts +1 -1
  181. package/dist/src/controllers/MMRDiversityRanker.d.ts.map +1 -1
  182. package/dist/src/controllers/MemoryController.d.ts +15 -2
  183. package/dist/src/controllers/MemoryController.d.ts.map +1 -1
  184. package/dist/src/controllers/MemoryController.js +33 -3
  185. package/dist/src/controllers/MemoryController.js.map +1 -1
  186. package/dist/src/controllers/MetadataFilter.d.ts +3 -3
  187. package/dist/src/controllers/MetadataFilter.d.ts.map +1 -1
  188. package/dist/src/controllers/MetadataFilter.js +6 -9
  189. package/dist/src/controllers/MetadataFilter.js.map +1 -1
  190. package/dist/src/controllers/MincutService.d.ts +92 -0
  191. package/dist/src/controllers/MincutService.d.ts.map +1 -0
  192. package/dist/src/controllers/MincutService.js +336 -0
  193. package/dist/src/controllers/MincutService.js.map +1 -0
  194. package/dist/src/controllers/NightlyLearner.d.ts +3 -4
  195. package/dist/src/controllers/NightlyLearner.d.ts.map +1 -1
  196. package/dist/src/controllers/NightlyLearner.js +17 -22
  197. package/dist/src/controllers/NightlyLearner.js.map +1 -1
  198. package/dist/src/controllers/QUICClient.d.ts +7 -10
  199. package/dist/src/controllers/QUICClient.d.ts.map +1 -1
  200. package/dist/src/controllers/QUICClient.js +3 -3
  201. package/dist/src/controllers/QUICClient.js.map +1 -1
  202. package/dist/src/controllers/QUICServer.d.ts +4 -4
  203. package/dist/src/controllers/QUICServer.d.ts.map +1 -1
  204. package/dist/src/controllers/QUICServer.js +14 -22
  205. package/dist/src/controllers/QUICServer.js.map +1 -1
  206. package/dist/src/controllers/ReasoningBank.d.ts +2 -9
  207. package/dist/src/controllers/ReasoningBank.d.ts.map +1 -1
  208. package/dist/src/controllers/ReasoningBank.js +39 -35
  209. package/dist/src/controllers/ReasoningBank.js.map +1 -1
  210. package/dist/src/controllers/ReflexionMemory.d.ts +51 -1
  211. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  212. package/dist/src/controllers/ReflexionMemory.js +307 -33
  213. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  214. package/dist/src/controllers/SkillLibrary.d.ts +5 -11
  215. package/dist/src/controllers/SkillLibrary.d.ts.map +1 -1
  216. package/dist/src/controllers/SkillLibrary.js +39 -48
  217. package/dist/src/controllers/SkillLibrary.js.map +1 -1
  218. package/dist/src/controllers/SparsificationService.d.ts +151 -0
  219. package/dist/src/controllers/SparsificationService.d.ts.map +1 -0
  220. package/dist/src/controllers/SparsificationService.js +375 -0
  221. package/dist/src/controllers/SparsificationService.js.map +1 -0
  222. package/dist/src/controllers/SyncCoordinator.d.ts +3 -2
  223. package/dist/src/controllers/SyncCoordinator.d.ts.map +1 -1
  224. package/dist/src/controllers/SyncCoordinator.js +2 -2
  225. package/dist/src/controllers/SyncCoordinator.js.map +1 -1
  226. package/dist/src/controllers/WASMVectorSearch.d.ts +7 -6
  227. package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
  228. package/dist/src/controllers/WASMVectorSearch.js +2 -4
  229. package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
  230. package/dist/src/controllers/attention/AttentionCache.d.ts +38 -0
  231. package/dist/src/controllers/attention/AttentionCache.d.ts.map +1 -0
  232. package/dist/src/controllers/attention/AttentionCache.js +80 -0
  233. package/dist/src/controllers/attention/AttentionCache.js.map +1 -0
  234. package/dist/src/controllers/attention/AttentionConfig.d.ts +127 -0
  235. package/dist/src/controllers/attention/AttentionConfig.d.ts.map +1 -0
  236. package/dist/src/controllers/attention/AttentionConfig.js +124 -0
  237. package/dist/src/controllers/attention/AttentionConfig.js.map +1 -0
  238. package/dist/src/controllers/attention/AttentionCore.d.ts +89 -0
  239. package/dist/src/controllers/attention/AttentionCore.d.ts.map +1 -0
  240. package/dist/src/controllers/attention/AttentionCore.js +289 -0
  241. package/dist/src/controllers/attention/AttentionCore.js.map +1 -0
  242. package/dist/src/controllers/attention/AttentionHelpers.d.ts +55 -0
  243. package/dist/src/controllers/attention/AttentionHelpers.d.ts.map +1 -0
  244. package/dist/src/controllers/attention/AttentionHelpers.js +148 -0
  245. package/dist/src/controllers/attention/AttentionHelpers.js.map +1 -0
  246. package/dist/src/controllers/attention/AttentionMetrics.d.ts +55 -0
  247. package/dist/src/controllers/attention/AttentionMetrics.d.ts.map +1 -0
  248. package/dist/src/controllers/attention/AttentionMetrics.js +72 -0
  249. package/dist/src/controllers/attention/AttentionMetrics.js.map +1 -0
  250. package/dist/src/controllers/attention/AttentionWASM.d.ts +98 -0
  251. package/dist/src/controllers/attention/AttentionWASM.d.ts.map +1 -0
  252. package/dist/src/controllers/attention/AttentionWASM.js +147 -0
  253. package/dist/src/controllers/attention/AttentionWASM.js.map +1 -0
  254. package/dist/src/controllers/attention/CrossAttentionController.d.ts +1 -1
  255. package/dist/src/controllers/attention/CrossAttentionController.d.ts.map +1 -1
  256. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts +1 -1
  257. package/dist/src/controllers/attention/MultiHeadAttentionController.d.ts.map +1 -1
  258. package/dist/src/controllers/attention/MultiHeadAttentionController.js +5 -8
  259. package/dist/src/controllers/attention/MultiHeadAttentionController.js.map +1 -1
  260. package/dist/src/controllers/attention/SelfAttentionController.d.ts +1 -1
  261. package/dist/src/controllers/attention/SelfAttentionController.d.ts.map +1 -1
  262. package/dist/src/controllers/attention/index.d.ts +9 -0
  263. package/dist/src/controllers/attention/index.d.ts.map +1 -1
  264. package/dist/src/controllers/attention/index.js +8 -0
  265. package/dist/src/controllers/attention/index.js.map +1 -1
  266. package/dist/src/controllers/frontier-index.d.ts +14 -0
  267. package/dist/src/controllers/frontier-index.d.ts.map +1 -0
  268. package/dist/src/controllers/frontier-index.js +10 -0
  269. package/dist/src/controllers/frontier-index.js.map +1 -0
  270. package/dist/src/controllers/index.d.ts +7 -1
  271. package/dist/src/controllers/index.d.ts.map +1 -1
  272. package/dist/src/controllers/index.js +5 -1
  273. package/dist/src/controllers/index.js.map +1 -1
  274. package/dist/src/controllers/prerequisites.d.ts +76 -0
  275. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  276. package/dist/src/controllers/prerequisites.js +235 -0
  277. package/dist/src/controllers/prerequisites.js.map +1 -0
  278. package/dist/src/core/AgentDB.d.ts +11 -36
  279. package/dist/src/core/AgentDB.d.ts.map +1 -1
  280. package/dist/src/core/AgentDB.js +31 -89
  281. package/dist/src/core/AgentDB.js.map +1 -1
  282. package/dist/src/core/QueryCache.d.ts +1 -1
  283. package/dist/src/core/QueryCache.d.ts.map +1 -1
  284. package/dist/src/core/QueryCache.js +2 -6
  285. package/dist/src/core/QueryCache.js.map +1 -1
  286. package/dist/src/db-fallback.d.ts +40 -3
  287. package/dist/src/db-fallback.d.ts.map +1 -1
  288. package/dist/src/db-fallback.js +308 -84
  289. package/dist/src/db-fallback.js.map +1 -1
  290. package/dist/src/db-test.d.ts +13 -0
  291. package/dist/src/db-test.d.ts.map +1 -0
  292. package/dist/src/db-test.js +55 -0
  293. package/dist/src/db-test.js.map +1 -0
  294. package/dist/src/db-unified.d.ts +76 -0
  295. package/dist/src/db-unified.d.ts.map +1 -0
  296. package/dist/src/db-unified.js +281 -0
  297. package/dist/src/db-unified.js.map +1 -0
  298. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts +58 -0
  299. package/dist/src/embedding/EmbeddingSpaceIdentity.d.ts.map +1 -0
  300. package/dist/src/embedding/EmbeddingSpaceIdentity.js +137 -0
  301. package/dist/src/embedding/EmbeddingSpaceIdentity.js.map +1 -0
  302. package/dist/src/embedding/index.d.ts +3 -0
  303. package/dist/src/embedding/index.d.ts.map +1 -0
  304. package/dist/src/embedding/index.js +2 -0
  305. package/dist/src/embedding/index.js.map +1 -0
  306. package/dist/src/examples/quic-sync-example.d.ts +9 -0
  307. package/dist/src/examples/quic-sync-example.d.ts.map +1 -0
  308. package/dist/src/examples/quic-sync-example.js +169 -0
  309. package/dist/src/examples/quic-sync-example.js.map +1 -0
  310. package/dist/src/examples/wasm-vector-usage.d.ts +12 -0
  311. package/dist/src/examples/wasm-vector-usage.d.ts.map +1 -0
  312. package/dist/src/examples/wasm-vector-usage.js +190 -0
  313. package/dist/src/examples/wasm-vector-usage.js.map +1 -0
  314. package/dist/src/governance/MetaHarnessGateway.d.ts +55 -0
  315. package/dist/src/governance/MetaHarnessGateway.d.ts.map +1 -0
  316. package/dist/src/governance/MetaHarnessGateway.js +65 -0
  317. package/dist/src/governance/MetaHarnessGateway.js.map +1 -0
  318. package/dist/src/governance/RvfExperimentBranch.d.ts +65 -0
  319. package/dist/src/governance/RvfExperimentBranch.d.ts.map +1 -0
  320. package/dist/src/governance/RvfExperimentBranch.js +115 -0
  321. package/dist/src/governance/RvfExperimentBranch.js.map +1 -0
  322. package/dist/src/index.d.ts +7 -25
  323. package/dist/src/index.d.ts.map +1 -1
  324. package/dist/src/index.js +9 -10
  325. package/dist/src/index.js.map +1 -1
  326. package/dist/src/mcp/agentdb-mcp-server.js +162 -159
  327. package/dist/src/mcp/agentdb-mcp-server.js.map +1 -1
  328. package/dist/src/mcp/learning-tools-handlers.d.ts +16 -0
  329. package/dist/src/mcp/learning-tools-handlers.d.ts.map +1 -0
  330. package/dist/src/mcp/learning-tools-handlers.js +105 -0
  331. package/dist/src/mcp/learning-tools-handlers.js.map +1 -0
  332. package/dist/src/model/ModelCacheLoader.d.ts +24 -0
  333. package/dist/src/model/ModelCacheLoader.d.ts.map +1 -0
  334. package/dist/src/model/ModelCacheLoader.js +123 -0
  335. package/dist/src/model/ModelCacheLoader.js.map +1 -0
  336. package/dist/src/observability/integration.d.ts +3 -3
  337. package/dist/src/observability/integration.d.ts.map +1 -1
  338. package/dist/src/observability/integration.js +2 -0
  339. package/dist/src/observability/integration.js.map +1 -1
  340. package/dist/src/observability/telemetry.d.ts +3 -3
  341. package/dist/src/observability/telemetry.d.ts.map +1 -1
  342. package/dist/src/observability/telemetry.js +3 -5
  343. package/dist/src/observability/telemetry.js.map +1 -1
  344. package/dist/src/optimizations/BatchOperations.d.ts +6 -6
  345. package/dist/src/optimizations/BatchOperations.d.ts.map +1 -1
  346. package/dist/src/optimizations/BatchOperations.js +6 -5
  347. package/dist/src/optimizations/BatchOperations.js.map +1 -1
  348. package/dist/src/optimizations/Quantization.d.ts +330 -0
  349. package/dist/src/optimizations/Quantization.d.ts.map +1 -0
  350. package/dist/src/optimizations/Quantization.js +793 -0
  351. package/dist/src/optimizations/Quantization.js.map +1 -0
  352. package/dist/src/optimizations/QueryOptimizer.d.ts +4 -4
  353. package/dist/src/optimizations/QueryOptimizer.d.ts.map +1 -1
  354. package/dist/src/optimizations/QueryOptimizer.js +1 -3
  355. package/dist/src/optimizations/QueryOptimizer.js.map +1 -1
  356. package/dist/src/optimizations/ToolCache.d.ts +4 -4
  357. package/dist/src/optimizations/ToolCache.d.ts.map +1 -1
  358. package/dist/src/optimizations/ToolCache.js.map +1 -1
  359. package/dist/src/quantization/vector-quantization.d.ts.map +1 -1
  360. package/dist/src/quantization/vector-quantization.js +1 -5
  361. package/dist/src/quantization/vector-quantization.js.map +1 -1
  362. package/dist/src/schemas/inline.d.ts +3 -0
  363. package/dist/src/schemas/inline.d.ts.map +1 -0
  364. package/dist/src/schemas/inline.js +10 -0
  365. package/dist/src/schemas/inline.js.map +1 -0
  366. package/dist/src/search/HybridSearch.d.ts +6 -6
  367. package/dist/src/search/HybridSearch.d.ts.map +1 -1
  368. package/dist/src/search/HybridSearch.js.map +1 -1
  369. package/dist/src/security/input-validation.d.ts +34 -12
  370. package/dist/src/security/input-validation.d.ts.map +1 -1
  371. package/dist/src/security/input-validation.js +46 -1
  372. package/dist/src/security/input-validation.js.map +1 -1
  373. package/dist/src/security/limits.d.ts +150 -0
  374. package/dist/src/security/limits.d.ts.map +1 -0
  375. package/dist/src/security/limits.js +288 -0
  376. package/dist/src/security/limits.js.map +1 -0
  377. package/dist/src/security/mcp-policy.d.ts +13 -0
  378. package/dist/src/security/mcp-policy.d.ts.map +1 -0
  379. package/dist/src/security/mcp-policy.js +66 -0
  380. package/dist/src/security/mcp-policy.js.map +1 -0
  381. package/dist/src/security/path-security.d.ts +100 -0
  382. package/dist/src/security/path-security.d.ts.map +1 -0
  383. package/dist/src/security/path-security.js +339 -0
  384. package/dist/src/security/path-security.js.map +1 -0
  385. package/dist/src/security/validation.d.ts +95 -0
  386. package/dist/src/security/validation.d.ts.map +1 -0
  387. package/dist/src/security/validation.js +315 -0
  388. package/dist/src/security/validation.js.map +1 -0
  389. package/dist/src/services/AttentionService.d.ts.map +1 -1
  390. package/dist/src/services/AttentionService.js +2 -4
  391. package/dist/src/services/AttentionService.js.map +1 -1
  392. package/dist/src/services/LLMRouter.d.ts +2 -2
  393. package/dist/src/services/LLMRouter.d.ts.map +1 -1
  394. package/dist/src/services/LLMRouter.js +3 -9
  395. package/dist/src/services/LLMRouter.js.map +1 -1
  396. package/dist/src/services/audit-logger.service.d.ts +168 -0
  397. package/dist/src/services/audit-logger.service.d.ts.map +1 -0
  398. package/dist/src/services/audit-logger.service.js +331 -0
  399. package/dist/src/services/audit-logger.service.js.map +1 -0
  400. package/dist/src/services/enhanced-embeddings.d.ts +271 -0
  401. package/dist/src/services/enhanced-embeddings.d.ts.map +1 -0
  402. package/dist/src/services/enhanced-embeddings.js +1035 -0
  403. package/dist/src/services/enhanced-embeddings.js.map +1 -0
  404. package/dist/src/services/federated-learning.d.ts +172 -0
  405. package/dist/src/services/federated-learning.d.ts.map +1 -0
  406. package/dist/src/services/federated-learning.js +342 -0
  407. package/dist/src/services/federated-learning.js.map +1 -0
  408. package/dist/src/simd/simd-vector-ops.d.ts.map +1 -1
  409. package/dist/src/simd/simd-vector-ops.js +0 -2
  410. package/dist/src/simd/simd-vector-ops.js.map +1 -1
  411. package/dist/src/types/attention.d.ts +249 -0
  412. package/dist/src/types/attention.d.ts.map +1 -0
  413. package/dist/src/types/attention.js +43 -0
  414. package/dist/src/types/attention.js.map +1 -0
  415. package/dist/src/types/database.types.d.ts +11 -11
  416. package/dist/src/types/database.types.d.ts.map +1 -1
  417. package/dist/src/types/database.types.js +2 -4
  418. package/dist/src/types/database.types.js.map +1 -1
  419. package/dist/src/types/graph.d.ts +29 -0
  420. package/dist/src/types/graph.d.ts.map +1 -0
  421. package/dist/src/types/graph.js +8 -0
  422. package/dist/src/types/graph.js.map +1 -0
  423. package/dist/src/types/quic.d.ts +518 -0
  424. package/dist/src/types/quic.d.ts.map +1 -0
  425. package/dist/src/types/quic.js +272 -0
  426. package/dist/src/types/quic.js.map +1 -0
  427. package/dist/src/utils/attention-metrics.d.ts +76 -0
  428. package/dist/src/utils/attention-metrics.d.ts.map +1 -0
  429. package/dist/src/utils/attention-metrics.js +178 -0
  430. package/dist/src/utils/attention-metrics.js.map +1 -0
  431. package/dist/src/wasm-loader.d.ts +0 -1
  432. package/dist/src/wasm-loader.d.ts.map +1 -1
  433. package/dist/src/wasm-loader.js +0 -2
  434. package/dist/src/wasm-loader.js.map +1 -1
  435. package/dist/src/wrappers/agentdb-fast.d.ts +5 -4
  436. package/dist/src/wrappers/agentdb-fast.d.ts.map +1 -1
  437. package/dist/src/wrappers/agentdb-fast.js +6 -13
  438. package/dist/src/wrappers/agentdb-fast.js.map +1 -1
  439. package/dist/src/wrappers/attention-fallbacks.d.ts +0 -8
  440. package/dist/src/wrappers/attention-fallbacks.d.ts.map +1 -1
  441. package/dist/src/wrappers/attention-fallbacks.js +3 -6
  442. package/dist/src/wrappers/attention-fallbacks.js.map +1 -1
  443. package/dist/src/wrappers/attention-native.d.ts +111 -0
  444. package/dist/src/wrappers/attention-native.d.ts.map +1 -0
  445. package/dist/src/wrappers/attention-native.js +273 -0
  446. package/dist/src/wrappers/attention-native.js.map +1 -0
  447. package/dist/src/wrappers/embedding-service.d.ts +4 -4
  448. package/dist/src/wrappers/embedding-service.d.ts.map +1 -1
  449. package/dist/src/wrappers/embedding-service.js +2 -8
  450. package/dist/src/wrappers/embedding-service.js.map +1 -1
  451. package/dist/src/wrappers/gnn-wrapper.d.ts.map +1 -1
  452. package/dist/src/wrappers/gnn-wrapper.js +3 -7
  453. package/dist/src/wrappers/gnn-wrapper.js.map +1 -1
  454. package/package.json +87 -18
  455. package/scripts/postinstall.cjs +13 -144
  456. package/dist/src/cli/tests/agentdb-cli.test.d.ts +0 -8
  457. package/dist/src/cli/tests/agentdb-cli.test.d.ts.map +0 -1
  458. package/dist/src/cli/tests/agentdb-cli.test.js +0 -50
  459. package/dist/src/cli/tests/agentdb-cli.test.js.map +0 -1
  460. package/dist/src/cli/tests/attention-cli.test.d.ts +0 -5
  461. package/dist/src/cli/tests/attention-cli.test.d.ts.map +0 -1
  462. package/dist/src/cli/tests/attention-cli.test.js +0 -257
  463. package/dist/src/cli/tests/attention-cli.test.js.map +0 -1
  464. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  465. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  466. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  467. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  468. package/dist/src/coordination/index.d.ts +0 -10
  469. package/dist/src/coordination/index.d.ts.map +0 -1
  470. package/dist/src/coordination/index.js +0 -10
  471. package/dist/src/coordination/index.js.map +0 -1
  472. package/dist/src/tests/attention-service.test.d.ts +0 -7
  473. package/dist/src/tests/attention-service.test.d.ts.map +0 -1
  474. package/dist/src/tests/attention-service.test.js +0 -401
  475. package/dist/src/tests/attention-service.test.js.map +0 -1
  476. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.d.ts +0 -7
  477. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.d.ts.map +0 -1
  478. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.js +0 -283
  479. package/dist/src/tests/integration/compatibility/backwards-compat.integration.test.js.map +0 -1
  480. package/dist/src/tests/query-cache.test.d.ts +0 -7
  481. package/dist/src/tests/query-cache.test.d.ts.map +0 -1
  482. package/dist/src/tests/query-cache.test.js +0 -343
  483. package/dist/src/tests/query-cache.test.js.map +0 -1
  484. package/dist/src/tests/ruvector-integration.test.d.ts +0 -14
  485. package/dist/src/tests/ruvector-integration.test.d.ts.map +0 -1
  486. package/dist/src/tests/ruvector-integration.test.js +0 -1156
  487. package/dist/src/tests/ruvector-integration.test.js.map +0 -1
  488. package/dist/src/tests/unit/auth/crypto.utils.test.d.ts +0 -6
  489. package/dist/src/tests/unit/auth/crypto.utils.test.d.ts.map +0 -1
  490. package/dist/src/tests/unit/auth/crypto.utils.test.js +0 -310
  491. package/dist/src/tests/unit/auth/crypto.utils.test.js.map +0 -1
  492. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.d.ts +0 -5
  493. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.d.ts.map +0 -1
  494. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.js +0 -207
  495. package/dist/src/tests/unit/compatibility/deprecation-warnings.test.js.map +0 -1
  496. package/dist/src/tests/unit/compatibility/migration-utils.test.d.ts +0 -5
  497. package/dist/src/tests/unit/compatibility/migration-utils.test.d.ts.map +0 -1
  498. package/dist/src/tests/unit/compatibility/migration-utils.test.js +0 -264
  499. package/dist/src/tests/unit/compatibility/migration-utils.test.js.map +0 -1
  500. package/dist/src/tests/unit/compatibility/v1-adapter.test.d.ts +0 -7
  501. package/dist/src/tests/unit/compatibility/v1-adapter.test.d.ts.map +0 -1
  502. package/dist/src/tests/unit/compatibility/v1-adapter.test.js +0 -228
  503. package/dist/src/tests/unit/compatibility/v1-adapter.test.js.map +0 -1
  504. package/dist/src/tests/unit/compatibility/version-detector.test.d.ts +0 -10
  505. package/dist/src/tests/unit/compatibility/version-detector.test.d.ts.map +0 -1
  506. package/dist/src/tests/unit/compatibility/version-detector.test.js +0 -162
  507. package/dist/src/tests/unit/compatibility/version-detector.test.js.map +0 -1
  508. package/dist/src/tests/vector-quantization.test.d.ts +0 -5
  509. package/dist/src/tests/vector-quantization.test.d.ts.map +0 -1
  510. package/dist/src/tests/vector-quantization.test.js +0 -338
  511. package/dist/src/tests/vector-quantization.test.js.map +0 -1
  512. package/dist/src/tests/wasm-vector-search.test.d.ts +0 -7
  513. package/dist/src/tests/wasm-vector-search.test.d.ts.map +0 -1
  514. package/dist/src/tests/wasm-vector-search.test.js +0 -193
  515. package/dist/src/tests/wasm-vector-search.test.js.map +0 -1
  516. package/dist/src/utils/crypto.utils.d.ts +0 -122
  517. package/dist/src/utils/crypto.utils.d.ts.map +0 -1
  518. package/dist/src/utils/crypto.utils.js +0 -296
  519. package/dist/src/utils/crypto.utils.js.map +0 -1
@@ -1,283 +0,0 @@
1
- /**
2
- * Integration Tests for Backwards Compatibility Layer
3
- *
4
- * Tests that v1.x code runs unchanged on v2.0 backend
5
- */
6
- import { describe, it, expect, vi } from 'vitest';
7
- import { V1toV2Adapter } from '../../../compatibility/V1toV2Adapter';
8
- import { VersionDetector } from '../../../compatibility/VersionDetector';
9
- import { DeprecationWarnings } from '../../../compatibility/DeprecationWarnings';
10
- import { MigrationUtilities } from '../../../compatibility/MigrationUtilities';
11
- // Mock v2 AgentDB instance
12
- const createMockV2Instance = () => ({
13
- swarms: {
14
- create: vi.fn().mockResolvedValue({ id: 'swarm-1', topology: 'mesh' }),
15
- status: vi.fn().mockResolvedValue({
16
- id: 'swarm-1',
17
- topology: 'mesh',
18
- agents: [],
19
- health: { status: 'healthy', uptime: 1000 }
20
- }),
21
- destroy: vi.fn().mockResolvedValue(undefined)
22
- },
23
- agents: {
24
- spawn: vi.fn().mockResolvedValue({ id: 'agent-1', type: 'coder' })
25
- },
26
- tasks: {
27
- orchestrate: vi.fn().mockResolvedValue({ id: 'task-1', status: 'pending' }),
28
- status: vi.fn().mockResolvedValue({ id: 'task-1', status: 'completed' }),
29
- wait: vi.fn().mockResolvedValue({ id: 'task-1', result: 'success' })
30
- },
31
- memory: {
32
- store: vi.fn().mockResolvedValue(undefined),
33
- retrieve: vi.fn().mockResolvedValue('test-value'),
34
- vectorSearch: vi.fn().mockResolvedValue([
35
- { id: 'id1', metadata: { key: 'value1' }, score: 0.9 }
36
- ])
37
- }
38
- });
39
- describe('Backwards Compatibility Integration', () => {
40
- describe('Complete v1.x workflow on v2.0 backend', () => {
41
- it('should support full v1.x lifecycle', async () => {
42
- const mockV2 = createMockV2Instance();
43
- const adapter = new V1toV2Adapter(mockV2);
44
- // v1.x initialization
45
- const swarm = await adapter.initSwarm({ topology: 'mesh', maxAgents: 8 });
46
- expect(swarm.id).toBe('swarm-1');
47
- expect(mockV2.swarms.create).toHaveBeenCalled();
48
- // v1.x agent spawning
49
- const agent = await adapter.spawnAgent('coder', { name: 'TestCoder' });
50
- expect(agent.id).toBe('agent-1');
51
- expect(mockV2.agents.spawn).toHaveBeenCalled();
52
- // v1.x task orchestration
53
- const task = await adapter.orchestrateTask('Build feature', {
54
- strategy: 'parallel',
55
- priority: 'high'
56
- });
57
- expect(task.id).toBe('task-1');
58
- expect(mockV2.tasks.orchestrate).toHaveBeenCalled();
59
- // v1.x memory operations
60
- await adapter.setMemory('key', 'value');
61
- expect(mockV2.memory.store).toHaveBeenCalledWith('key', 'value');
62
- const value = await adapter.getMemory('key');
63
- expect(value).toBe('test-value');
64
- expect(mockV2.memory.retrieve).toHaveBeenCalledWith('key');
65
- // v1.x memory search
66
- const results = await adapter.searchMemory('test query', 10);
67
- expect(results).toHaveLength(1);
68
- expect(results[0].key).toBe('id1');
69
- expect(mockV2.memory.vectorSearch).toHaveBeenCalled();
70
- // v1.x status check
71
- const status = await adapter.getSwarmStatus();
72
- expect(status.swarmId).toBe('swarm-1');
73
- expect(mockV2.swarms.status).toHaveBeenCalled();
74
- // v1.x cleanup
75
- await adapter.destroySwarm();
76
- expect(mockV2.swarms.destroy).toHaveBeenCalled();
77
- });
78
- it('should emit deprecation warnings for all v1 APIs', async () => {
79
- const mockV2 = createMockV2Instance();
80
- const adapter = new V1toV2Adapter(mockV2);
81
- await adapter.initSwarm({ topology: 'mesh' });
82
- await adapter.spawnAgent('coder');
83
- await adapter.orchestrateTask('task');
84
- await adapter.setMemory('key', 'value');
85
- await adapter.getMemory('key');
86
- await adapter.searchMemory('query');
87
- await adapter.getSwarmStatus();
88
- await adapter.destroySwarm();
89
- const warnings = adapter.getWarnings();
90
- expect(warnings.length).toBeGreaterThanOrEqual(8);
91
- });
92
- });
93
- describe('Version detection integration', () => {
94
- it('should detect v1.x from simple config', () => {
95
- const config = {
96
- memoryPath: './db',
97
- topology: 'mesh'
98
- };
99
- const result = VersionDetector.detect(config, 'AgenticFlow');
100
- expect(result.version).toBe('1.x');
101
- });
102
- it('should detect v2.0 from structured config', () => {
103
- const config = {
104
- backend: 'agentdb',
105
- memory: {
106
- path: './db',
107
- backend: 'ruvector',
108
- enableHNSW: true
109
- }
110
- };
111
- const result = VersionDetector.detect(config, 'AgenticFlow');
112
- expect(result.version).toBe('2.0');
113
- });
114
- it('should provide migration path for each v1 API', () => {
115
- const v1APIs = [
116
- 'initSwarm',
117
- 'spawnAgent',
118
- 'orchestrateTask',
119
- 'getMemory',
120
- 'setMemory',
121
- 'searchMemory',
122
- 'getSwarmStatus',
123
- 'destroySwarm'
124
- ];
125
- for (const api of v1APIs) {
126
- expect(VersionDetector.isV1API(api)).toBe(true);
127
- const v2API = VersionDetector.getAPIMapping(api);
128
- expect(v2API).toBeDefined();
129
- expect(v2API).toContain('.');
130
- }
131
- });
132
- });
133
- describe('Migration utilities integration', () => {
134
- it('should analyze complete v1 codebase', () => {
135
- const v1Code = `
136
- import { AgenticFlow } from 'agentic-flow';
137
-
138
- async function main() {
139
- const flow = new AgenticFlow({
140
- memoryPath: './swarm.db',
141
- topology: 'mesh'
142
- });
143
-
144
- await flow.initSwarm({ topology: 'mesh' });
145
- const agent = await flow.spawnAgent('coder');
146
- const task = await flow.orchestrateTask('Build feature');
147
- await flow.setMemory('status', 'active');
148
- const status = await flow.getMemory('status');
149
- const results = await flow.searchMemory('feature');
150
- const swarmStatus = await flow.getSwarmStatus();
151
- await flow.destroySwarm();
152
- }
153
- `;
154
- const report = MigrationUtilities.analyzeCode(v1Code);
155
- expect(report.v1APIsFound.length).toBeGreaterThan(0);
156
- expect(report.suggestedMigrations.length).toBeGreaterThan(0);
157
- expect(report.estimatedEffort).toBe('low');
158
- });
159
- it('should generate valid v2 code', () => {
160
- const v1Code = `
161
- import { AgenticFlow } from 'agentic-flow';
162
- const flow = new AgenticFlow();
163
- await flow.initSwarm({ topology: 'mesh' });
164
- await flow.spawnAgent('coder');
165
- `;
166
- const v2Code = MigrationUtilities.generateMigrationScript(v1Code);
167
- expect(v2Code).toContain('AgenticFlowV2');
168
- expect(v2Code).toContain('swarms.create');
169
- expect(v2Code).toContain('agents.spawn');
170
- expect(v2Code).not.toContain('initSwarm');
171
- expect(v2Code).not.toContain('spawnAgent');
172
- });
173
- it('should validate v2 config correctly', () => {
174
- const validConfig = {
175
- backend: 'agentdb',
176
- version: '2.0',
177
- memory: {
178
- path: './db',
179
- backend: 'ruvector',
180
- enableHNSW: true,
181
- enableQuantization: true
182
- },
183
- swarm: {
184
- topology: 'mesh',
185
- maxAgents: 8,
186
- strategy: 'auto'
187
- },
188
- routing: {
189
- provider: 'anthropic',
190
- model: 'claude-3-opus',
191
- optimization: 'quality'
192
- }
193
- };
194
- const result = MigrationUtilities.validateMigratedConfig(validConfig);
195
- expect(result.valid).toBe(true);
196
- expect(result.errors).toHaveLength(0);
197
- });
198
- it('should convert v1 config to v2 config', () => {
199
- const v1Config = {
200
- memoryPath: './swarm.db',
201
- topology: 'mesh',
202
- maxAgents: 10,
203
- provider: 'anthropic',
204
- model: 'claude-3-opus'
205
- };
206
- const v2Config = MigrationUtilities.convertV1ConfigToV2(v1Config);
207
- expect(v2Config.backend).toBe('agentdb');
208
- expect(v2Config.version).toBe('2.0');
209
- expect(v2Config.memory.path).toBe('./swarm.db');
210
- expect(v2Config.memory.backend).toBe('ruvector');
211
- expect(v2Config.memory.enableHNSW).toBe(true);
212
- expect(v2Config.swarm.topology).toBe('mesh');
213
- expect(v2Config.swarm.maxAgents).toBe(10);
214
- expect(v2Config.routing.provider).toBe('anthropic');
215
- expect(v2Config.routing.model).toBe('claude-3-opus');
216
- });
217
- });
218
- describe('Deprecation warnings integration', () => {
219
- it('should support different severity levels', () => {
220
- const consoleSpy = vi.spyOn(console, 'warn').mockImplementation(() => { });
221
- // Silent mode
222
- const silent = new DeprecationWarnings({ severity: 'silent' });
223
- silent.warn('test', {
224
- message: 'Test',
225
- migration: 'Test',
226
- documentation: 'Test'
227
- });
228
- expect(consoleSpy).not.toHaveBeenCalled();
229
- // Soft mode
230
- const soft = new DeprecationWarnings({ severity: 'soft' });
231
- soft.warn('test', {
232
- message: 'Test',
233
- migration: 'Test',
234
- documentation: 'Test'
235
- });
236
- expect(consoleSpy).toHaveBeenCalled();
237
- consoleSpy.mockRestore();
238
- });
239
- it('should track warning history', () => {
240
- const warnings = new DeprecationWarnings();
241
- warnings.warn('api1', {
242
- message: 'Test 1',
243
- migration: 'Migration 1',
244
- documentation: 'Doc 1'
245
- });
246
- warnings.warn('api2', {
247
- message: 'Test 2',
248
- migration: 'Migration 2',
249
- documentation: 'Doc 2'
250
- });
251
- expect(warnings.getWarningCount()).toBe(2);
252
- expect(warnings.hasWarnings()).toBe(true);
253
- warnings.clearWarnings();
254
- expect(warnings.getWarningCount()).toBe(0);
255
- expect(warnings.hasWarnings()).toBe(false);
256
- });
257
- });
258
- describe('Performance', () => {
259
- it('should have minimal adapter overhead (<1ms)', async () => {
260
- const mockV2 = createMockV2Instance();
261
- const adapter = new V1toV2Adapter(mockV2);
262
- const start = performance.now();
263
- await adapter.initSwarm({ topology: 'mesh' });
264
- const end = performance.now();
265
- const adapterOverhead = end - start;
266
- expect(adapterOverhead).toBeLessThan(1); // <1ms overhead
267
- });
268
- it('should handle high-volume API calls efficiently', async () => {
269
- const mockV2 = createMockV2Instance();
270
- const adapter = new V1toV2Adapter(mockV2);
271
- const start = performance.now();
272
- const promises = [];
273
- for (let i = 0; i < 100; i++) {
274
- promises.push(adapter.setMemory(`key${i}`, `value${i}`));
275
- }
276
- await Promise.all(promises);
277
- const end = performance.now();
278
- const avgTime = (end - start) / 100;
279
- expect(avgTime).toBeLessThan(1); // <1ms per call
280
- });
281
- });
282
- });
283
- //# sourceMappingURL=backwards-compat.integration.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"backwards-compat.integration.test.js","sourceRoot":"","sources":["../../../../../src/tests/integration/compatibility/backwards-compat.integration.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /**
2
- * QueryCache Test Suite
3
- *
4
- * Comprehensive tests for LRU query cache functionality
5
- */
6
- export {};
7
- //# sourceMappingURL=query-cache.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"query-cache.test.d.ts","sourceRoot":"","sources":["../../../src/tests/query-cache.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -1,343 +0,0 @@
1
- /**
2
- * QueryCache Test Suite
3
- *
4
- * Comprehensive tests for LRU query cache functionality
5
- */
6
- import { describe, it, expect, beforeEach } from 'vitest';
7
- import { QueryCache } from '../core/QueryCache.js';
8
- describe('QueryCache', () => {
9
- let cache;
10
- beforeEach(() => {
11
- cache = new QueryCache({
12
- maxSize: 10,
13
- defaultTTL: 1000, // 1 second for testing
14
- enabled: true,
15
- });
16
- });
17
- describe('Basic Operations', () => {
18
- it('should store and retrieve values', () => {
19
- cache.set('key1', 'value1');
20
- expect(cache.get('key1')).toBe('value1');
21
- });
22
- it('should return undefined for non-existent keys', () => {
23
- expect(cache.get('nonexistent')).toBeUndefined();
24
- });
25
- it('should check if key exists', () => {
26
- cache.set('key1', 'value1');
27
- expect(cache.has('key1')).toBe(true);
28
- expect(cache.has('nonexistent')).toBe(false);
29
- });
30
- it('should delete entries', () => {
31
- cache.set('key1', 'value1');
32
- expect(cache.delete('key1')).toBe(true);
33
- expect(cache.has('key1')).toBe(false);
34
- expect(cache.delete('nonexistent')).toBe(false);
35
- });
36
- it('should clear all entries', () => {
37
- cache.set('key1', 'value1');
38
- cache.set('key2', 'value2');
39
- cache.clear();
40
- expect(cache.has('key1')).toBe(false);
41
- expect(cache.has('key2')).toBe(false);
42
- });
43
- });
44
- describe('Key Generation', () => {
45
- it('should generate consistent keys for same inputs', () => {
46
- const key1 = cache.generateKey('SELECT * FROM table', ['param1', 'param2'], 'test');
47
- const key2 = cache.generateKey('SELECT * FROM table', ['param1', 'param2'], 'test');
48
- expect(key1).toBe(key2);
49
- });
50
- it('should generate different keys for different inputs', () => {
51
- const key1 = cache.generateKey('SELECT * FROM table1', [], 'test');
52
- const key2 = cache.generateKey('SELECT * FROM table2', [], 'test');
53
- expect(key1).not.toBe(key2);
54
- });
55
- it('should include category in key', () => {
56
- const key1 = cache.generateKey('SELECT *', [], 'episodes');
57
- const key2 = cache.generateKey('SELECT *', [], 'skills');
58
- expect(key1).not.toBe(key2);
59
- expect(key1.startsWith('episodes:')).toBe(true);
60
- expect(key2.startsWith('skills:')).toBe(true);
61
- });
62
- });
63
- describe('LRU Eviction', () => {
64
- it('should evict least recently used entry when full', () => {
65
- // Fill cache to capacity
66
- for (let i = 0; i < 10; i++) {
67
- cache.set(`key${i}`, `value${i}`);
68
- }
69
- // Access key5 to make it recently used
70
- cache.get('key5');
71
- // Add new entry, should evict key0 (least recently used)
72
- cache.set('key10', 'value10');
73
- expect(cache.has('key0')).toBe(false);
74
- expect(cache.has('key5')).toBe(true);
75
- expect(cache.has('key10')).toBe(true);
76
- });
77
- it('should update LRU order on access', () => {
78
- cache.set('key1', 'value1');
79
- cache.set('key2', 'value2');
80
- cache.set('key3', 'value3');
81
- // Access key1 to make it most recently used
82
- cache.get('key1');
83
- // Fill remaining capacity
84
- for (let i = 4; i <= 10; i++) {
85
- cache.set(`key${i}`, `value${i}`);
86
- }
87
- // Add one more, should evict key2 (now least recently used)
88
- cache.set('key11', 'value11');
89
- expect(cache.has('key1')).toBe(true); // Still there because we accessed it
90
- expect(cache.has('key2')).toBe(false); // Evicted
91
- });
92
- });
93
- describe('TTL (Time To Live)', () => {
94
- it('should expire entries after TTL', async () => {
95
- cache.set('key1', 'value1', 100); // 100ms TTL
96
- expect(cache.get('key1')).toBe('value1');
97
- // Wait for expiration
98
- await new Promise((resolve) => setTimeout(resolve, 150));
99
- expect(cache.get('key1')).toBeUndefined();
100
- });
101
- it('should use default TTL when not specified', async () => {
102
- cache.set('key1', 'value1'); // Uses default 1000ms TTL
103
- expect(cache.get('key1')).toBe('value1');
104
- // Should still be valid after 500ms
105
- await new Promise((resolve) => setTimeout(resolve, 500));
106
- expect(cache.get('key1')).toBe('value1');
107
- });
108
- it('should prune expired entries', async () => {
109
- cache.set('key1', 'value1', 100);
110
- cache.set('key2', 'value2', 5000);
111
- await new Promise((resolve) => setTimeout(resolve, 150));
112
- const pruned = cache.pruneExpired();
113
- expect(pruned).toBe(1);
114
- expect(cache.has('key1')).toBe(false);
115
- expect(cache.has('key2')).toBe(true);
116
- });
117
- });
118
- describe('Statistics', () => {
119
- it('should track cache hits', () => {
120
- cache.set('key1', 'value1');
121
- cache.get('key1'); // hit
122
- cache.get('key1'); // hit
123
- const stats = cache.getStatistics();
124
- expect(stats.hits).toBe(2);
125
- expect(stats.misses).toBe(0);
126
- expect(stats.hitRate).toBe(100);
127
- });
128
- it('should track cache misses', () => {
129
- cache.get('nonexistent'); // miss
130
- cache.get('nonexistent'); // miss
131
- const stats = cache.getStatistics();
132
- expect(stats.hits).toBe(0);
133
- expect(stats.misses).toBe(2);
134
- expect(stats.hitRate).toBe(0);
135
- });
136
- it('should calculate hit rate correctly', () => {
137
- cache.set('key1', 'value1');
138
- cache.get('key1'); // hit
139
- cache.get('nonexistent'); // miss
140
- cache.get('key1'); // hit
141
- const stats = cache.getStatistics();
142
- expect(stats.hits).toBe(2);
143
- expect(stats.misses).toBe(1);
144
- expect(stats.hitRate).toBeCloseTo(66.67, 1);
145
- });
146
- it('should track evictions', () => {
147
- for (let i = 0; i < 11; i++) {
148
- cache.set(`key${i}`, `value${i}`);
149
- }
150
- const stats = cache.getStatistics();
151
- expect(stats.evictions).toBe(1);
152
- });
153
- it('should track memory usage', () => {
154
- cache.set('key1', 'short');
155
- cache.set('key2', 'a much longer string value');
156
- const stats = cache.getStatistics();
157
- expect(stats.memoryUsed).toBeGreaterThan(0);
158
- });
159
- it('should track entries by category', () => {
160
- const key1 = cache.generateKey('sql1', [], 'episodes');
161
- const key2 = cache.generateKey('sql2', [], 'episodes');
162
- const key3 = cache.generateKey('sql3', [], 'skills');
163
- cache.set(key1, 'value1');
164
- cache.set(key2, 'value2');
165
- cache.set(key3, 'value3');
166
- const stats = cache.getStatistics();
167
- expect(stats.entriesByCategory['episodes']).toBe(2);
168
- expect(stats.entriesByCategory['skills']).toBe(1);
169
- });
170
- it('should reset statistics', () => {
171
- cache.set('key1', 'value1');
172
- cache.get('key1');
173
- cache.get('nonexistent');
174
- cache.resetStatistics();
175
- const stats = cache.getStatistics();
176
- expect(stats.hits).toBe(0);
177
- expect(stats.misses).toBe(0);
178
- });
179
- });
180
- describe('Category Invalidation', () => {
181
- it('should invalidate entries by category', () => {
182
- const episodeKey1 = cache.generateKey('sql1', [], 'episodes');
183
- const episodeKey2 = cache.generateKey('sql2', [], 'episodes');
184
- const skillKey = cache.generateKey('sql3', [], 'skills');
185
- cache.set(episodeKey1, 'value1');
186
- cache.set(episodeKey2, 'value2');
187
- cache.set(skillKey, 'value3');
188
- const invalidated = cache.invalidateCategory('episodes');
189
- expect(invalidated).toBe(2);
190
- expect(cache.has(episodeKey1)).toBe(false);
191
- expect(cache.has(episodeKey2)).toBe(false);
192
- expect(cache.has(skillKey)).toBe(true);
193
- });
194
- it('should return 0 when no entries match category', () => {
195
- const invalidated = cache.invalidateCategory('nonexistent');
196
- expect(invalidated).toBe(0);
197
- });
198
- });
199
- describe('Complex Data Types', () => {
200
- it('should cache arrays', () => {
201
- const data = [1, 2, 3, 4, 5];
202
- cache.set('array', data);
203
- expect(cache.get('array')).toEqual(data);
204
- });
205
- it('should cache objects', () => {
206
- const data = { name: 'test', value: 42 };
207
- cache.set('object', data);
208
- expect(cache.get('object')).toEqual(data);
209
- });
210
- it('should cache Float32Array', () => {
211
- const data = new Float32Array([1.1, 2.2, 3.3]);
212
- cache.set('float32', data);
213
- expect(cache.get('float32')).toEqual(data);
214
- });
215
- it('should cache buffers', () => {
216
- const data = Buffer.from('test data');
217
- cache.set('buffer', data);
218
- expect(cache.get('buffer')).toEqual(data);
219
- });
220
- it('should not cache results exceeding max size', () => {
221
- const largeCache = new QueryCache({
222
- maxSize: 10,
223
- maxResultSize: 100, // 100 bytes max
224
- });
225
- const smallData = 'small';
226
- const largeData = 'x'.repeat(200); // 400 bytes (UTF-16)
227
- largeCache.set('small', smallData);
228
- largeCache.set('large', largeData);
229
- expect(largeCache.has('small')).toBe(true);
230
- expect(largeCache.has('large')).toBe(false);
231
- });
232
- });
233
- describe('Configuration', () => {
234
- it('should respect enabled flag', () => {
235
- const disabledCache = new QueryCache({ enabled: false });
236
- disabledCache.set('key1', 'value1');
237
- expect(disabledCache.get('key1')).toBeUndefined();
238
- });
239
- it('should enable/disable caching dynamically', () => {
240
- cache.set('key1', 'value1');
241
- expect(cache.get('key1')).toBe('value1');
242
- cache.setEnabled(false);
243
- expect(cache.get('key1')).toBeUndefined();
244
- cache.setEnabled(true);
245
- cache.set('key2', 'value2');
246
- expect(cache.get('key2')).toBe('value2');
247
- });
248
- it('should return current configuration', () => {
249
- const config = cache.getConfig();
250
- expect(config.maxSize).toBe(10);
251
- expect(config.defaultTTL).toBe(1000);
252
- expect(config.enabled).toBe(true);
253
- });
254
- it('should update configuration', () => {
255
- cache.updateConfig({ maxSize: 20, defaultTTL: 2000 });
256
- const config = cache.getConfig();
257
- expect(config.maxSize).toBe(20);
258
- expect(config.defaultTTL).toBe(2000);
259
- });
260
- });
261
- describe('Cache Warming', () => {
262
- it('should execute warmup function', async () => {
263
- let executed = false;
264
- await cache.warm(async () => {
265
- executed = true;
266
- });
267
- expect(executed).toBe(true);
268
- });
269
- it('should pre-populate cache during warmup', async () => {
270
- await cache.warm(async (c) => {
271
- c.set('preloaded1', 'value1');
272
- c.set('preloaded2', 'value2');
273
- });
274
- expect(cache.get('preloaded1')).toBe('value1');
275
- expect(cache.get('preloaded2')).toBe('value2');
276
- });
277
- });
278
- describe('Thread Safety Simulation', () => {
279
- it('should handle concurrent operations', async () => {
280
- const promises = [];
281
- // Simulate concurrent reads and writes
282
- for (let i = 0; i < 20; i++) {
283
- promises.push(Promise.resolve().then(() => {
284
- cache.set(`key${i}`, `value${i}`);
285
- return cache.get(`key${i}`);
286
- }));
287
- }
288
- const results = await Promise.all(promises);
289
- // Check that we got valid results (may not all be present due to LRU)
290
- expect(results.filter((r) => r !== undefined).length).toBeGreaterThan(0);
291
- });
292
- });
293
- describe('Memory Efficiency', () => {
294
- it('should estimate size correctly for strings', () => {
295
- cache.set('key1', 'test'); // ~8 bytes
296
- const stats = cache.getStatistics();
297
- expect(stats.memoryUsed).toBeGreaterThan(0);
298
- expect(stats.memoryUsed).toBeLessThan(100);
299
- });
300
- it('should estimate size correctly for numbers', () => {
301
- cache.set('key1', 42);
302
- const stats = cache.getStatistics();
303
- expect(stats.memoryUsed).toBe(8); // 8 bytes for number
304
- });
305
- it('should estimate size correctly for arrays', () => {
306
- cache.set('key1', [1, 2, 3, 4, 5]);
307
- const stats = cache.getStatistics();
308
- expect(stats.memoryUsed).toBe(40); // 5 numbers * 8 bytes
309
- });
310
- });
311
- describe('Edge Cases', () => {
312
- it('should handle null values', () => {
313
- cache.set('key1', null);
314
- expect(cache.get('key1')).toBeNull();
315
- });
316
- it('should handle undefined values', () => {
317
- cache.set('key1', undefined);
318
- expect(cache.get('key1')).toBeUndefined();
319
- });
320
- it('should handle empty strings', () => {
321
- cache.set('key1', '');
322
- expect(cache.get('key1')).toBe('');
323
- });
324
- it('should handle zero values', () => {
325
- cache.set('key1', 0);
326
- expect(cache.get('key1')).toBe(0);
327
- });
328
- it('should handle boolean values', () => {
329
- cache.set('key1', false);
330
- cache.set('key2', true);
331
- expect(cache.get('key1')).toBe(false);
332
- expect(cache.get('key2')).toBe(true);
333
- });
334
- it('should handle maximum capacity', () => {
335
- const maxCache = new QueryCache({ maxSize: 1 });
336
- maxCache.set('key1', 'value1');
337
- maxCache.set('key2', 'value2');
338
- expect(maxCache.has('key1')).toBe(false);
339
- expect(maxCache.has('key2')).toBe(true);
340
- });
341
- });
342
- });
343
- //# sourceMappingURL=query-cache.test.js.map