agentdb 1.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 (361) hide show
  1. package/LICENSE +38 -0
  2. package/LICENSE-APACHE +190 -0
  3. package/LICENSE-MIT +21 -0
  4. package/README.md +953 -0
  5. package/bin/agentdb.js +485 -0
  6. package/bin/plugin-cli-wrapper.mjs +21 -0
  7. package/dist/cache/query-cache.d.ts +105 -0
  8. package/dist/cache/query-cache.d.ts.map +1 -0
  9. package/dist/cache/query-cache.js +224 -0
  10. package/dist/cache/query-cache.js.map +1 -0
  11. package/dist/cache/query-cache.mjs +219 -0
  12. package/dist/cli/cache/query-cache.d.ts +104 -0
  13. package/dist/cli/cache/query-cache.js +244 -0
  14. package/dist/cli/cli/db-commands.d.ts +48 -0
  15. package/dist/cli/cli/db-commands.js +613 -0
  16. package/dist/cli/commands.d.ts +7 -0
  17. package/dist/cli/commands.d.ts.map +1 -0
  18. package/dist/cli/commands.js +113 -0
  19. package/dist/cli/commands.js.map +1 -0
  20. package/dist/cli/commands.mjs +104 -0
  21. package/dist/cli/core/backend-interface.d.ts +70 -0
  22. package/dist/cli/core/backend-interface.js +15 -0
  23. package/dist/cli/core/native-backend.d.ts +140 -0
  24. package/dist/cli/core/native-backend.js +432 -0
  25. package/dist/cli/core/vector-db.d.ts +126 -0
  26. package/dist/cli/core/vector-db.js +338 -0
  27. package/dist/cli/core/wasm-backend.d.ts +95 -0
  28. package/dist/cli/core/wasm-backend.js +418 -0
  29. package/dist/cli/db-commands.d.ts +49 -0
  30. package/dist/cli/db-commands.d.ts.map +1 -0
  31. package/dist/cli/db-commands.js +533 -0
  32. package/dist/cli/db-commands.js.map +1 -0
  33. package/dist/cli/db-commands.mjs +522 -0
  34. package/dist/cli/generator.d.ts +11 -0
  35. package/dist/cli/generator.d.ts.map +1 -0
  36. package/dist/cli/generator.js +567 -0
  37. package/dist/cli/generator.js.map +1 -0
  38. package/dist/cli/generator.mjs +527 -0
  39. package/dist/cli/help.d.ts +18 -0
  40. package/dist/cli/help.d.ts.map +1 -0
  41. package/dist/cli/help.js +676 -0
  42. package/dist/cli/help.js.map +1 -0
  43. package/dist/cli/help.mjs +667 -0
  44. package/dist/cli/index/hnsw.d.ts +164 -0
  45. package/dist/cli/index/hnsw.js +558 -0
  46. package/dist/cli/plugin-cli.d.ts +7 -0
  47. package/dist/cli/plugin-cli.d.ts.map +1 -0
  48. package/dist/cli/plugin-cli.js +295 -0
  49. package/dist/cli/plugin-cli.js.map +1 -0
  50. package/dist/cli/plugin-cli.mjs +289 -0
  51. package/dist/cli/quantization/product-quantization.d.ts +108 -0
  52. package/dist/cli/quantization/product-quantization.js +350 -0
  53. package/dist/cli/query/query-builder.d.ts +322 -0
  54. package/dist/cli/query/query-builder.js +600 -0
  55. package/dist/cli/templates.d.ts +14 -0
  56. package/dist/cli/templates.d.ts.map +1 -0
  57. package/dist/cli/templates.js +182 -0
  58. package/dist/cli/templates.js.map +1 -0
  59. package/dist/cli/templates.mjs +176 -0
  60. package/dist/cli/types/index.d.ts +116 -0
  61. package/dist/cli/types/index.js +5 -0
  62. package/dist/cli/types.d.ts +91 -0
  63. package/dist/cli/types.d.ts.map +1 -0
  64. package/dist/cli/types.js +6 -0
  65. package/dist/cli/types.js.map +1 -0
  66. package/dist/cli/types.mjs +4 -0
  67. package/dist/cli/wizard/index.d.ts +6 -0
  68. package/dist/cli/wizard/index.d.ts.map +1 -0
  69. package/dist/cli/wizard/index.js +138 -0
  70. package/dist/cli/wizard/index.js.map +1 -0
  71. package/dist/cli/wizard/index.mjs +131 -0
  72. package/dist/cli/wizard/prompts.d.ts +11 -0
  73. package/dist/cli/wizard/prompts.d.ts.map +1 -0
  74. package/dist/cli/wizard/prompts.js +482 -0
  75. package/dist/cli/wizard/prompts.js.map +1 -0
  76. package/dist/cli/wizard/prompts.mjs +470 -0
  77. package/dist/cli/wizard/validator.d.ts +13 -0
  78. package/dist/cli/wizard/validator.d.ts.map +1 -0
  79. package/dist/cli/wizard/validator.js +234 -0
  80. package/dist/cli/wizard/validator.js.map +1 -0
  81. package/dist/cli/wizard/validator.mjs +224 -0
  82. package/dist/core/backend-interface.d.ts +71 -0
  83. package/dist/core/backend-interface.d.ts.map +1 -0
  84. package/dist/core/backend-interface.js +16 -0
  85. package/dist/core/backend-interface.js.map +1 -0
  86. package/dist/core/backend-interface.mjs +12 -0
  87. package/dist/core/native-backend.d.ts +141 -0
  88. package/dist/core/native-backend.d.ts.map +1 -0
  89. package/dist/core/native-backend.js +457 -0
  90. package/dist/core/native-backend.js.map +1 -0
  91. package/dist/core/native-backend.mjs +449 -0
  92. package/dist/core/vector-db.d.ts +127 -0
  93. package/dist/core/vector-db.d.ts.map +1 -0
  94. package/dist/core/vector-db.js +266 -0
  95. package/dist/core/vector-db.js.map +1 -0
  96. package/dist/core/vector-db.mjs +261 -0
  97. package/dist/core/wasm-backend.d.ts +96 -0
  98. package/dist/core/wasm-backend.d.ts.map +1 -0
  99. package/dist/core/wasm-backend.js +393 -0
  100. package/dist/core/wasm-backend.js.map +1 -0
  101. package/dist/core/wasm-backend.mjs +385 -0
  102. package/dist/index/hnsw-optimized.d.ts +75 -0
  103. package/dist/index/hnsw-optimized.d.ts.map +1 -0
  104. package/dist/index/hnsw-optimized.js +412 -0
  105. package/dist/index/hnsw-optimized.js.map +1 -0
  106. package/dist/index/hnsw-optimized.mjs +407 -0
  107. package/dist/index/hnsw.d.ts +165 -0
  108. package/dist/index/hnsw.d.ts.map +1 -0
  109. package/dist/index/hnsw.js +521 -0
  110. package/dist/index/hnsw.js.map +1 -0
  111. package/dist/index/hnsw.mjs +516 -0
  112. package/dist/index.d.ts +57 -0
  113. package/dist/index.d.ts.map +1 -0
  114. package/dist/index.js +82 -0
  115. package/dist/index.js.map +1 -0
  116. package/dist/index.mjs +63 -0
  117. package/dist/mcp-server.d.ts +27 -0
  118. package/dist/mcp-server.d.ts.map +1 -0
  119. package/dist/mcp-server.js +789 -0
  120. package/dist/mcp-server.js.map +1 -0
  121. package/dist/mcp-server.mjs +784 -0
  122. package/dist/plugins/base-plugin.d.ts +114 -0
  123. package/dist/plugins/base-plugin.d.ts.map +1 -0
  124. package/dist/plugins/base-plugin.js +313 -0
  125. package/dist/plugins/base-plugin.js.map +1 -0
  126. package/dist/plugins/base-plugin.mjs +275 -0
  127. package/dist/plugins/implementations/active-learning.d.ts +135 -0
  128. package/dist/plugins/implementations/active-learning.d.ts.map +1 -0
  129. package/dist/plugins/implementations/active-learning.js +372 -0
  130. package/dist/plugins/implementations/active-learning.js.map +1 -0
  131. package/dist/plugins/implementations/active-learning.mjs +367 -0
  132. package/dist/plugins/implementations/actor-critic.d.ts +64 -0
  133. package/dist/plugins/implementations/actor-critic.d.ts.map +1 -0
  134. package/dist/plugins/implementations/actor-critic.js +363 -0
  135. package/dist/plugins/implementations/actor-critic.js.map +1 -0
  136. package/dist/plugins/implementations/actor-critic.mjs +358 -0
  137. package/dist/plugins/implementations/adversarial-training.d.ts +133 -0
  138. package/dist/plugins/implementations/adversarial-training.d.ts.map +1 -0
  139. package/dist/plugins/implementations/adversarial-training.js +409 -0
  140. package/dist/plugins/implementations/adversarial-training.js.map +1 -0
  141. package/dist/plugins/implementations/adversarial-training.mjs +404 -0
  142. package/dist/plugins/implementations/curriculum-learning.d.ts +132 -0
  143. package/dist/plugins/implementations/curriculum-learning.d.ts.map +1 -0
  144. package/dist/plugins/implementations/curriculum-learning.js +354 -0
  145. package/dist/plugins/implementations/curriculum-learning.js.map +1 -0
  146. package/dist/plugins/implementations/curriculum-learning.mjs +349 -0
  147. package/dist/plugins/implementations/decision-transformer.d.ts +77 -0
  148. package/dist/plugins/implementations/decision-transformer.d.ts.map +1 -0
  149. package/dist/plugins/implementations/decision-transformer.js +422 -0
  150. package/dist/plugins/implementations/decision-transformer.js.map +1 -0
  151. package/dist/plugins/implementations/decision-transformer.mjs +417 -0
  152. package/dist/plugins/implementations/federated-learning.d.ts +126 -0
  153. package/dist/plugins/implementations/federated-learning.d.ts.map +1 -0
  154. package/dist/plugins/implementations/federated-learning.js +436 -0
  155. package/dist/plugins/implementations/federated-learning.js.map +1 -0
  156. package/dist/plugins/implementations/federated-learning.mjs +431 -0
  157. package/dist/plugins/implementations/index.d.ts +30 -0
  158. package/dist/plugins/implementations/index.d.ts.map +1 -0
  159. package/dist/plugins/implementations/index.js +45 -0
  160. package/dist/plugins/implementations/index.js.map +1 -0
  161. package/dist/plugins/implementations/index.mjs +31 -0
  162. package/dist/plugins/implementations/multi-task-learning.d.ts +115 -0
  163. package/dist/plugins/implementations/multi-task-learning.d.ts.map +1 -0
  164. package/dist/plugins/implementations/multi-task-learning.js +369 -0
  165. package/dist/plugins/implementations/multi-task-learning.js.map +1 -0
  166. package/dist/plugins/implementations/multi-task-learning.mjs +364 -0
  167. package/dist/plugins/implementations/neural-architecture-search.d.ts +148 -0
  168. package/dist/plugins/implementations/neural-architecture-search.d.ts.map +1 -0
  169. package/dist/plugins/implementations/neural-architecture-search.js +379 -0
  170. package/dist/plugins/implementations/neural-architecture-search.js.map +1 -0
  171. package/dist/plugins/implementations/neural-architecture-search.mjs +374 -0
  172. package/dist/plugins/implementations/q-learning.d.ts +98 -0
  173. package/dist/plugins/implementations/q-learning.d.ts.map +1 -0
  174. package/dist/plugins/implementations/q-learning.js +435 -0
  175. package/dist/plugins/implementations/q-learning.js.map +1 -0
  176. package/dist/plugins/implementations/q-learning.mjs +430 -0
  177. package/dist/plugins/implementations/sarsa.d.ts +103 -0
  178. package/dist/plugins/implementations/sarsa.d.ts.map +1 -0
  179. package/dist/plugins/implementations/sarsa.js +347 -0
  180. package/dist/plugins/implementations/sarsa.js.map +1 -0
  181. package/dist/plugins/implementations/sarsa.mjs +342 -0
  182. package/dist/plugins/index.d.ts +107 -0
  183. package/dist/plugins/index.d.ts.map +1 -0
  184. package/dist/plugins/index.js +179 -0
  185. package/dist/plugins/index.js.map +1 -0
  186. package/dist/plugins/index.mjs +168 -0
  187. package/dist/plugins/interface.d.ts +439 -0
  188. package/dist/plugins/interface.d.ts.map +1 -0
  189. package/dist/plugins/interface.js +12 -0
  190. package/dist/plugins/interface.js.map +1 -0
  191. package/dist/plugins/interface.mjs +10 -0
  192. package/dist/plugins/learning-plugin.interface.d.ts +257 -0
  193. package/dist/plugins/learning-plugin.interface.d.ts.map +1 -0
  194. package/dist/plugins/learning-plugin.interface.js +7 -0
  195. package/dist/plugins/learning-plugin.interface.js.map +1 -0
  196. package/dist/plugins/learning-plugin.interface.mjs +5 -0
  197. package/dist/plugins/plugin-exports.d.ts +71 -0
  198. package/dist/plugins/plugin-exports.d.ts.map +1 -0
  199. package/dist/plugins/plugin-exports.js +78 -0
  200. package/dist/plugins/plugin-exports.js.map +1 -0
  201. package/dist/plugins/plugin-exports.mjs +69 -0
  202. package/dist/plugins/registry.d.ts +206 -0
  203. package/dist/plugins/registry.d.ts.map +1 -0
  204. package/dist/plugins/registry.js +365 -0
  205. package/dist/plugins/registry.js.map +1 -0
  206. package/dist/plugins/registry.mjs +356 -0
  207. package/dist/plugins/validator.d.ts +63 -0
  208. package/dist/plugins/validator.d.ts.map +1 -0
  209. package/dist/plugins/validator.js +464 -0
  210. package/dist/plugins/validator.js.map +1 -0
  211. package/dist/plugins/validator.mjs +458 -0
  212. package/dist/quantization/binary-quantization.d.ts +104 -0
  213. package/dist/quantization/binary-quantization.d.ts.map +1 -0
  214. package/dist/quantization/binary-quantization.js +246 -0
  215. package/dist/quantization/binary-quantization.js.map +1 -0
  216. package/dist/quantization/binary-quantization.mjs +240 -0
  217. package/dist/quantization/optimized-pq.d.ts +138 -0
  218. package/dist/quantization/optimized-pq.d.ts.map +1 -0
  219. package/dist/quantization/optimized-pq.js +320 -0
  220. package/dist/quantization/optimized-pq.js.map +1 -0
  221. package/dist/quantization/optimized-pq.mjs +313 -0
  222. package/dist/quantization/product-quantization.d.ts +109 -0
  223. package/dist/quantization/product-quantization.d.ts.map +1 -0
  224. package/dist/quantization/product-quantization.js +287 -0
  225. package/dist/quantization/product-quantization.js.map +1 -0
  226. package/dist/quantization/product-quantization.mjs +282 -0
  227. package/dist/quantization/scalar-quantization.d.ts +100 -0
  228. package/dist/quantization/scalar-quantization.d.ts.map +1 -0
  229. package/dist/quantization/scalar-quantization.js +324 -0
  230. package/dist/quantization/scalar-quantization.js.map +1 -0
  231. package/dist/quantization/scalar-quantization.mjs +319 -0
  232. package/dist/query/index.d.ts +6 -0
  233. package/dist/query/index.d.ts.map +1 -0
  234. package/dist/query/index.js +9 -0
  235. package/dist/query/index.js.map +1 -0
  236. package/dist/query/index.mjs +4 -0
  237. package/dist/query/query-builder.d.ts +323 -0
  238. package/dist/query/query-builder.d.ts.map +1 -0
  239. package/dist/query/query-builder.js +524 -0
  240. package/dist/query/query-builder.js.map +1 -0
  241. package/dist/query/query-builder.mjs +519 -0
  242. package/dist/reasoning/context-synthesizer.d.ts +57 -0
  243. package/dist/reasoning/context-synthesizer.d.ts.map +1 -0
  244. package/dist/reasoning/context-synthesizer.js +224 -0
  245. package/dist/reasoning/context-synthesizer.js.map +1 -0
  246. package/dist/reasoning/context-synthesizer.mjs +219 -0
  247. package/dist/reasoning/experience-curator.d.ts +66 -0
  248. package/dist/reasoning/experience-curator.d.ts.map +1 -0
  249. package/dist/reasoning/experience-curator.js +288 -0
  250. package/dist/reasoning/experience-curator.js.map +1 -0
  251. package/dist/reasoning/experience-curator.mjs +283 -0
  252. package/dist/reasoning/memory-optimizer.d.ts +69 -0
  253. package/dist/reasoning/memory-optimizer.d.ts.map +1 -0
  254. package/dist/reasoning/memory-optimizer.js +331 -0
  255. package/dist/reasoning/memory-optimizer.js.map +1 -0
  256. package/dist/reasoning/memory-optimizer.mjs +326 -0
  257. package/dist/reasoning/pattern-matcher.d.ts +59 -0
  258. package/dist/reasoning/pattern-matcher.d.ts.map +1 -0
  259. package/dist/reasoning/pattern-matcher.js +229 -0
  260. package/dist/reasoning/pattern-matcher.js.map +1 -0
  261. package/dist/reasoning/pattern-matcher.mjs +224 -0
  262. package/dist/reasoningbank/adapter/agentdb-adapter.d.ts +118 -0
  263. package/dist/reasoningbank/adapter/agentdb-adapter.d.ts.map +1 -0
  264. package/dist/reasoningbank/adapter/agentdb-adapter.js +477 -0
  265. package/dist/reasoningbank/adapter/agentdb-adapter.js.map +1 -0
  266. package/dist/reasoningbank/adapter/types.d.ts +113 -0
  267. package/dist/reasoningbank/adapter/types.d.ts.map +1 -0
  268. package/dist/reasoningbank/adapter/types.js +9 -0
  269. package/dist/reasoningbank/adapter/types.js.map +1 -0
  270. package/dist/reasoningbank/cli/commands.d.ts +16 -0
  271. package/dist/reasoningbank/cli/commands.d.ts.map +1 -0
  272. package/dist/reasoningbank/cli/commands.js +272 -0
  273. package/dist/reasoningbank/cli/commands.js.map +1 -0
  274. package/dist/reasoningbank/mcp/agentdb-tools.d.ts +319 -0
  275. package/dist/reasoningbank/mcp/agentdb-tools.d.ts.map +1 -0
  276. package/dist/reasoningbank/mcp/agentdb-tools.js +301 -0
  277. package/dist/reasoningbank/mcp/agentdb-tools.js.map +1 -0
  278. package/dist/reasoningbank/migration/migrate.d.ts +25 -0
  279. package/dist/reasoningbank/migration/migrate.d.ts.map +1 -0
  280. package/dist/reasoningbank/migration/migrate.js +178 -0
  281. package/dist/reasoningbank/migration/migrate.js.map +1 -0
  282. package/dist/reasoningbank/reasoning/context-synthesizer.d.ts +37 -0
  283. package/dist/reasoningbank/reasoning/context-synthesizer.d.ts.map +1 -0
  284. package/dist/reasoningbank/reasoning/context-synthesizer.js +114 -0
  285. package/dist/reasoningbank/reasoning/context-synthesizer.js.map +1 -0
  286. package/dist/reasoningbank/reasoning/experience-curator.d.ts +39 -0
  287. package/dist/reasoningbank/reasoning/experience-curator.d.ts.map +1 -0
  288. package/dist/reasoningbank/reasoning/experience-curator.js +98 -0
  289. package/dist/reasoningbank/reasoning/experience-curator.js.map +1 -0
  290. package/dist/reasoningbank/reasoning/memory-optimizer.d.ts +44 -0
  291. package/dist/reasoningbank/reasoning/memory-optimizer.d.ts.map +1 -0
  292. package/dist/reasoningbank/reasoning/memory-optimizer.js +184 -0
  293. package/dist/reasoningbank/reasoning/memory-optimizer.js.map +1 -0
  294. package/dist/reasoningbank/reasoning/pattern-matcher.d.ts +40 -0
  295. package/dist/reasoningbank/reasoning/pattern-matcher.d.ts.map +1 -0
  296. package/dist/reasoningbank/reasoning/pattern-matcher.js +87 -0
  297. package/dist/reasoningbank/reasoning/pattern-matcher.js.map +1 -0
  298. package/dist/reasoningbank/sync/quic-sync.d.ts +77 -0
  299. package/dist/reasoningbank/sync/quic-sync.d.ts.map +1 -0
  300. package/dist/reasoningbank/sync/quic-sync.js +165 -0
  301. package/dist/reasoningbank/sync/quic-sync.js.map +1 -0
  302. package/dist/sync/conflict.d.ts +78 -0
  303. package/dist/sync/conflict.d.ts.map +1 -0
  304. package/dist/sync/conflict.js +202 -0
  305. package/dist/sync/conflict.js.map +1 -0
  306. package/dist/sync/conflict.mjs +196 -0
  307. package/dist/sync/coordinator.d.ts +111 -0
  308. package/dist/sync/coordinator.d.ts.map +1 -0
  309. package/dist/sync/coordinator.js +256 -0
  310. package/dist/sync/coordinator.js.map +1 -0
  311. package/dist/sync/coordinator.mjs +250 -0
  312. package/dist/sync/delta.d.ts +81 -0
  313. package/dist/sync/delta.d.ts.map +1 -0
  314. package/dist/sync/delta.js +245 -0
  315. package/dist/sync/delta.js.map +1 -0
  316. package/dist/sync/delta.mjs +238 -0
  317. package/dist/sync/index.d.ts +11 -0
  318. package/dist/sync/index.d.ts.map +1 -0
  319. package/dist/sync/index.js +22 -0
  320. package/dist/sync/index.js.map +1 -0
  321. package/dist/sync/index.mjs +9 -0
  322. package/dist/sync/quic-sync.d.ts +81 -0
  323. package/dist/sync/quic-sync.d.ts.map +1 -0
  324. package/dist/sync/quic-sync.js +329 -0
  325. package/dist/sync/quic-sync.js.map +1 -0
  326. package/dist/sync/quic-sync.mjs +323 -0
  327. package/dist/sync/types.d.ts +168 -0
  328. package/dist/sync/types.d.ts.map +1 -0
  329. package/dist/sync/types.js +8 -0
  330. package/dist/sync/types.js.map +1 -0
  331. package/dist/sync/types.mjs +6 -0
  332. package/dist/types/index.d.ts +117 -0
  333. package/dist/types/index.d.ts.map +1 -0
  334. package/dist/types/index.js +6 -0
  335. package/dist/types/index.js.map +1 -0
  336. package/dist/types/index.mjs +4 -0
  337. package/dist/wasm-loader.d.ts +32 -0
  338. package/dist/wasm-loader.d.ts.map +1 -0
  339. package/dist/wasm-loader.js +75 -0
  340. package/dist/wasm-loader.js.map +1 -0
  341. package/dist/wasm-loader.mjs +64 -0
  342. package/examples/adaptive-learning.ts +284 -0
  343. package/examples/browser/README.md +732 -0
  344. package/examples/browser/adaptive-recommendations/index.html +427 -0
  345. package/examples/browser/collaborative-filtering/index.html +310 -0
  346. package/examples/browser/continual-learning/index.html +736 -0
  347. package/examples/browser/experience-replay/index.html +616 -0
  348. package/examples/browser/index.html +369 -0
  349. package/examples/browser/meta-learning/index.html +789 -0
  350. package/examples/browser/neuro-symbolic/index.html +692 -0
  351. package/examples/browser/pattern-learning/index.html +620 -0
  352. package/examples/browser/quantum-inspired/index.html +728 -0
  353. package/examples/browser/rag/index.html +624 -0
  354. package/examples/browser/swarm-intelligence/index.html +811 -0
  355. package/examples/browser-basic.html +170 -0
  356. package/examples/hnsw-example.ts +148 -0
  357. package/examples/node-basic.js +70 -0
  358. package/examples/quic-sync-example.ts +310 -0
  359. package/examples/quick-start.js +68 -0
  360. package/examples/wasm-example.ts +222 -0
  361. package/package.json +118 -0
@@ -0,0 +1,168 @@
1
+ /**
2
+ * SQLiteVector QUIC Sync - Type Definitions
3
+ *
4
+ * Core types for real-time vector database synchronization over QUIC
5
+ */
6
+ /**
7
+ * Vector change operation types
8
+ */
9
+ export type ChangeOperation = 'insert' | 'update' | 'delete';
10
+ /**
11
+ * Individual vector change record
12
+ */
13
+ export interface VectorChange {
14
+ /** Change ID (sequential) */
15
+ id: number;
16
+ /** Operation type */
17
+ operation: ChangeOperation;
18
+ /** Shard identifier */
19
+ shardId: string;
20
+ /** Vector ID */
21
+ vectorId: string;
22
+ /** Vector data (null for deletes) */
23
+ vector?: Float32Array;
24
+ /** Metadata (null for deletes) */
25
+ metadata?: Record<string, any>;
26
+ /** Timestamp (microseconds since epoch) */
27
+ timestamp: number;
28
+ /** Source node ID */
29
+ sourceNode: string;
30
+ /** Version vector for causal ordering */
31
+ versionVector: Map<string, number>;
32
+ }
33
+ /**
34
+ * Delta package for transmission
35
+ */
36
+ export interface VectorDelta {
37
+ /** Shard ID */
38
+ shardId: string;
39
+ /** Starting change ID (inclusive) */
40
+ fromChangeId: number;
41
+ /** Ending change ID (inclusive) */
42
+ toChangeId: number;
43
+ /** Compressed changes */
44
+ changes: VectorChange[];
45
+ /** Checksum for validation */
46
+ checksum: string;
47
+ /** Compression algorithm used */
48
+ compression: 'none' | 'msgpack' | 'lz4';
49
+ }
50
+ /**
51
+ * Conflict resolution strategies
52
+ */
53
+ export type ConflictStrategy = 'last-write-wins' | 'first-write-wins' | 'merge' | 'manual';
54
+ /**
55
+ * Conflict detected during sync
56
+ */
57
+ export interface SyncConflict {
58
+ /** Conflict ID */
59
+ id: string;
60
+ /** Shard ID */
61
+ shardId: string;
62
+ /** Vector ID with conflict */
63
+ vectorId: string;
64
+ /** Local change */
65
+ localChange: VectorChange;
66
+ /** Remote change */
67
+ remoteChange: VectorChange;
68
+ /** Timestamp when detected */
69
+ detectedAt: number;
70
+ }
71
+ /**
72
+ * Sync result after completing synchronization
73
+ */
74
+ export interface SyncResult {
75
+ /** Shard ID that was synced */
76
+ shardId: string;
77
+ /** Number of changes applied */
78
+ changesApplied: number;
79
+ /** Number of conflicts detected */
80
+ conflictsDetected: number;
81
+ /** Conflicts resolved automatically */
82
+ conflictsResolved: number;
83
+ /** Conflicts requiring manual resolution */
84
+ conflictsUnresolved: SyncConflict[];
85
+ /** Sync duration in milliseconds */
86
+ durationMs: number;
87
+ /** Success status */
88
+ success: boolean;
89
+ /** Error message if failed */
90
+ error?: string;
91
+ }
92
+ /**
93
+ * Sync session state for persistence
94
+ */
95
+ export interface SyncSession {
96
+ /** Session ID */
97
+ id: string;
98
+ /** Node ID */
99
+ nodeId: string;
100
+ /** Shard IDs being synced */
101
+ shardIds: string[];
102
+ /** Last synced change ID per shard */
103
+ lastChangeIds: Map<string, number>;
104
+ /** Version vectors per shard */
105
+ versionVectors: Map<string, Map<string, number>>;
106
+ /** Pending conflicts */
107
+ pendingConflicts: SyncConflict[];
108
+ /** Session created timestamp */
109
+ createdAt: number;
110
+ /** Last updated timestamp */
111
+ updatedAt: number;
112
+ }
113
+ /**
114
+ * Shard synchronization state
115
+ */
116
+ export interface ShardState {
117
+ /** Shard ID */
118
+ shardId: string;
119
+ /** Current change ID */
120
+ currentChangeId: number;
121
+ /** Version vector */
122
+ versionVector: Map<string, number>;
123
+ /** Total vector count */
124
+ vectorCount: number;
125
+ /** Last sync timestamp */
126
+ lastSyncAt: number;
127
+ /** Sync status */
128
+ status: 'idle' | 'syncing' | 'error';
129
+ }
130
+ /**
131
+ * Sync configuration
132
+ */
133
+ export interface SyncConfig {
134
+ /** Conflict resolution strategy */
135
+ conflictStrategy: ConflictStrategy;
136
+ /** Batch size for delta transmission */
137
+ batchSize: number;
138
+ /** Enable compression */
139
+ compression: boolean;
140
+ /** Sync interval in milliseconds (0 = manual only) */
141
+ syncIntervalMs: number;
142
+ /** Maximum retry attempts */
143
+ maxRetries: number;
144
+ /** Retry backoff in milliseconds */
145
+ retryBackoffMs: number;
146
+ /** Enable session persistence */
147
+ persistSession: boolean;
148
+ }
149
+ /**
150
+ * Coordinator statistics
151
+ */
152
+ export interface CoordinatorStats {
153
+ /** Total shards managed */
154
+ totalShards: number;
155
+ /** Active sync operations */
156
+ activeSyncs: number;
157
+ /** Total syncs completed */
158
+ totalSyncs: number;
159
+ /** Total conflicts detected */
160
+ totalConflicts: number;
161
+ /** Average sync duration (ms) */
162
+ avgSyncDurationMs: number;
163
+ /** Total bytes sent */
164
+ bytesSent: number;
165
+ /** Total bytes received */
166
+ bytesReceived: number;
167
+ }
168
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * SQLiteVector QUIC Sync - Type Definitions
4
+ *
5
+ * Core types for real-time vector database synchronization over QUIC
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * SQLiteVector QUIC Sync - Type Definitions
3
+ *
4
+ * Core types for real-time vector database synchronization over QUIC
5
+ */
6
+ export {};
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Type definitions for SQLiteVector with ReasoningBank integration
3
+ */
4
+ export interface VectorMetadata {
5
+ [key: string]: any;
6
+ }
7
+ export interface Vector {
8
+ id?: string;
9
+ embedding: number[];
10
+ metadata?: VectorMetadata;
11
+ norm?: number;
12
+ timestamp?: number;
13
+ }
14
+ export interface SearchResult<T = any> {
15
+ id: string;
16
+ score: number;
17
+ embedding: number[];
18
+ metadata?: T;
19
+ }
20
+ export type SimilarityMetric = 'cosine' | 'euclidean' | 'dot';
21
+ export interface DatabaseConfig {
22
+ path?: string;
23
+ memoryMode?: boolean;
24
+ cacheSize?: number;
25
+ walMode?: boolean;
26
+ mmapSize?: number;
27
+ queryCache?: QueryCacheConfig;
28
+ quantization?: QuantizationConfig;
29
+ }
30
+ export interface QueryCacheConfig {
31
+ enabled?: boolean;
32
+ maxSize?: number;
33
+ ttl?: number;
34
+ enableStats?: boolean;
35
+ }
36
+ export interface QuantizationConfig {
37
+ enabled?: boolean;
38
+ dimensions: number;
39
+ subvectors: number;
40
+ bits: number;
41
+ kmeansIterations?: number;
42
+ trainOnInsert?: boolean;
43
+ minVectorsForTraining?: number;
44
+ }
45
+ export interface Pattern {
46
+ id: string;
47
+ embedding: number[];
48
+ taskType: string;
49
+ approach: string;
50
+ successRate: number;
51
+ avgDuration: number;
52
+ metadata: PatternMetadata;
53
+ timestamp: number;
54
+ }
55
+ export interface PatternMetadata {
56
+ domain: string;
57
+ complexity: 'simple' | 'medium' | 'complex';
58
+ iterations: number;
59
+ learningSource: 'success' | 'failure' | 'adaptation';
60
+ tags: string[];
61
+ [key: string]: any;
62
+ }
63
+ export interface Experience {
64
+ id?: string;
65
+ taskEmbedding: number[];
66
+ taskDescription: string;
67
+ success: boolean;
68
+ duration: number;
69
+ approach: string;
70
+ outcome: string;
71
+ quality: number;
72
+ metadata: ExperienceMetadata;
73
+ timestamp?: number;
74
+ }
75
+ export interface ExperienceMetadata {
76
+ domain: string;
77
+ agentType?: string;
78
+ errorType?: string;
79
+ tokensUsed?: number;
80
+ iterationCount?: number;
81
+ [key: string]: any;
82
+ }
83
+ export interface Context {
84
+ taskEmbedding: number[];
85
+ patterns: Pattern[];
86
+ experiences: Experience[];
87
+ sessionHistory: any[];
88
+ synthesizedContext: string;
89
+ confidence: number;
90
+ }
91
+ export interface MemoryNode {
92
+ id: string;
93
+ embeddings: number[][];
94
+ count: number;
95
+ centroid: number[];
96
+ quality: number;
97
+ metadata: {
98
+ originalIds: string[];
99
+ domains: string[];
100
+ timeRange: [number, number];
101
+ };
102
+ }
103
+ export interface CollapseStrategy {
104
+ type: 'graph' | 'hierarchical' | 'temporal';
105
+ threshold: number;
106
+ maxNodes?: number;
107
+ preserveRecent?: boolean;
108
+ }
109
+ export interface LearningMetrics {
110
+ totalExecutions: number;
111
+ successRate: number;
112
+ avgDuration: number;
113
+ tokenEfficiency: number;
114
+ domainExpertise: Map<string, number>;
115
+ improvementRate: number;
116
+ }
117
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Type definitions for SQLiteVector with ReasoningBank integration
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Type definitions for SQLiteVector with ReasoningBank integration
3
+ */
4
+ export {};
@@ -0,0 +1,32 @@
1
+ /**
2
+ * WASM module loader for Node.js and browser environments
3
+ * Handles sql.js initialization and provides unified interface
4
+ */
5
+ import { SqlJsStatic } from 'sql.js';
6
+ interface WasmInitOptions {
7
+ locateFile?: (file: string) => string;
8
+ }
9
+ /**
10
+ * Initialize sql.js WASM module
11
+ * Automatically detects Node.js vs browser environment
12
+ */
13
+ export declare function initWasm(options?: WasmInitOptions): Promise<void>;
14
+ /**
15
+ * Get initialized sql.js module
16
+ * Throws if not initialized
17
+ */
18
+ export declare function getWasm(): SqlJsStatic;
19
+ /**
20
+ * Check if WASM is initialized
21
+ */
22
+ export declare function isInitialized(): boolean;
23
+ /**
24
+ * Reset initialization state (mainly for testing)
25
+ */
26
+ export declare function resetWasm(): void;
27
+ /**
28
+ * Initialize sql.js and return the module (convenience function)
29
+ */
30
+ export declare function initSQL(options?: WasmInitOptions): Promise<SqlJsStatic>;
31
+ export {};
32
+ //# sourceMappingURL=wasm-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-loader.d.ts","sourceRoot":"","sources":["../src/wasm-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAkB,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAKhD,UAAU,eAAe;IACvB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACvC;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBvE;AAED;;;GAGG;AACH,wBAAgB,OAAO,IAAI,WAAW,CAKrC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAGhC;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAG7E"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ /**
3
+ * WASM module loader for Node.js and browser environments
4
+ * Handles sql.js initialization and provides unified interface
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.initWasm = initWasm;
11
+ exports.getWasm = getWasm;
12
+ exports.isInitialized = isInitialized;
13
+ exports.resetWasm = resetWasm;
14
+ exports.initSQL = initSQL;
15
+ const sql_js_1 = __importDefault(require("sql.js"));
16
+ let sqlJs = null;
17
+ let initialized = false;
18
+ /**
19
+ * Initialize sql.js WASM module
20
+ * Automatically detects Node.js vs browser environment
21
+ */
22
+ async function initWasm(options) {
23
+ if (initialized) {
24
+ return;
25
+ }
26
+ try {
27
+ // Initialize sql.js with appropriate configuration
28
+ sqlJs = await (0, sql_js_1.default)({
29
+ locateFile: options?.locateFile || ((file) => {
30
+ // Default locator: Use CDN in browser, node_modules in Node.js
31
+ if (typeof window !== 'undefined') {
32
+ return `https://sql.js.org/dist/${file}`;
33
+ }
34
+ // In Node.js, sql.js package includes the WASM file
35
+ return `node_modules/sql.js/dist/${file}`;
36
+ })
37
+ });
38
+ initialized = true;
39
+ }
40
+ catch (error) {
41
+ throw new Error(`Failed to initialize sql.js WASM module: ${error instanceof Error ? error.message : String(error)}\n` +
42
+ 'Make sure sql.js is installed: npm install sql.js');
43
+ }
44
+ }
45
+ /**
46
+ * Get initialized sql.js module
47
+ * Throws if not initialized
48
+ */
49
+ function getWasm() {
50
+ if (!initialized || !sqlJs) {
51
+ throw new Error('WASM module not initialized. Call initWasm() first.');
52
+ }
53
+ return sqlJs;
54
+ }
55
+ /**
56
+ * Check if WASM is initialized
57
+ */
58
+ function isInitialized() {
59
+ return initialized;
60
+ }
61
+ /**
62
+ * Reset initialization state (mainly for testing)
63
+ */
64
+ function resetWasm() {
65
+ sqlJs = null;
66
+ initialized = false;
67
+ }
68
+ /**
69
+ * Initialize sql.js and return the module (convenience function)
70
+ */
71
+ async function initSQL(options) {
72
+ await initWasm(options);
73
+ return getWasm();
74
+ }
75
+ //# sourceMappingURL=wasm-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-loader.js","sourceRoot":"","sources":["../src/wasm-loader.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;AAeH,4BAyBC;AAMD,0BAKC;AAKD,sCAEC;AAKD,8BAGC;AAKD,0BAGC;AAxED,oDAAgD;AAEhD,IAAI,KAAK,GAAuB,IAAI,CAAC;AACrC,IAAI,WAAW,GAAG,KAAK,CAAC;AAMxB;;;GAGG;AACI,KAAK,UAAU,QAAQ,CAAC,OAAyB;IACtD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,mDAAmD;QACnD,KAAK,GAAG,MAAM,IAAA,gBAAS,EAAC;YACtB,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC3C,+DAA+D;gBAC/D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;oBAClC,OAAO,2BAA2B,IAAI,EAAE,CAAC;gBAC3C,CAAC;gBACD,oDAAoD;gBACpD,OAAO,4BAA4B,IAAI,EAAE,CAAC;YAC5C,CAAC,CAAC;SACH,CAAC,CAAC;QAEH,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,4CAA4C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;YACtG,mDAAmD,CACpD,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,OAAO;IACrB,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa;IAC3B,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS;IACvB,KAAK,GAAG,IAAI,CAAC;IACb,WAAW,GAAG,KAAK,CAAC;AACtB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,OAAO,CAAC,OAAyB;IACrD,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxB,OAAO,OAAO,EAAE,CAAC;AACnB,CAAC"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * WASM module loader for Node.js and browser environments
3
+ * Handles sql.js initialization and provides unified interface
4
+ */
5
+ import initSqlJs from 'sql.js';
6
+ let sqlJs = null;
7
+ let initialized = false;
8
+ /**
9
+ * Initialize sql.js WASM module
10
+ * Automatically detects Node.js vs browser environment
11
+ */
12
+ export async function initWasm(options) {
13
+ if (initialized) {
14
+ return;
15
+ }
16
+ try {
17
+ // Initialize sql.js with appropriate configuration
18
+ sqlJs = await initSqlJs({
19
+ locateFile: options?.locateFile || ((file) => {
20
+ // Default locator: Use CDN in browser, node_modules in Node.js
21
+ if (typeof window !== 'undefined') {
22
+ return `https://sql.js.org/dist/${file}`;
23
+ }
24
+ // In Node.js, sql.js package includes the WASM file
25
+ return `node_modules/sql.js/dist/${file}`;
26
+ })
27
+ });
28
+ initialized = true;
29
+ }
30
+ catch (error) {
31
+ throw new Error(`Failed to initialize sql.js WASM module: ${error instanceof Error ? error.message : String(error)}\n` +
32
+ 'Make sure sql.js is installed: npm install sql.js');
33
+ }
34
+ }
35
+ /**
36
+ * Get initialized sql.js module
37
+ * Throws if not initialized
38
+ */
39
+ export function getWasm() {
40
+ if (!initialized || !sqlJs) {
41
+ throw new Error('WASM module not initialized. Call initWasm() first.');
42
+ }
43
+ return sqlJs;
44
+ }
45
+ /**
46
+ * Check if WASM is initialized
47
+ */
48
+ export function isInitialized() {
49
+ return initialized;
50
+ }
51
+ /**
52
+ * Reset initialization state (mainly for testing)
53
+ */
54
+ export function resetWasm() {
55
+ sqlJs = null;
56
+ initialized = false;
57
+ }
58
+ /**
59
+ * Initialize sql.js and return the module (convenience function)
60
+ */
61
+ export async function initSQL(options) {
62
+ await initWasm(options);
63
+ return getWasm();
64
+ }