agentdb 2.0.0-alpha.2 → 2.0.0-alpha.2.1

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 (314) hide show
  1. package/dist/agentdb.min.js +4 -4
  2. package/dist/simulation/cli.js +0 -0
  3. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  4. package/dist/src/cli/agentdb-cli.js +78 -0
  5. package/dist/src/cli/agentdb-cli.js.map +1 -1
  6. package/package.json +3 -3
  7. package/src/cli/agentdb-cli.ts +78 -0
  8. package/dist/agentdb-advanced.js +0 -2110
  9. package/dist/agentdb-advanced.min.js +0 -1
  10. package/dist/backends/GraphBackend.d.ts +0 -196
  11. package/dist/backends/GraphBackend.d.ts.map +0 -1
  12. package/dist/backends/GraphBackend.js +0 -33
  13. package/dist/backends/GraphBackend.js.map +0 -1
  14. package/dist/backends/LearningBackend.d.ts +0 -148
  15. package/dist/backends/LearningBackend.d.ts.map +0 -1
  16. package/dist/backends/LearningBackend.js +0 -27
  17. package/dist/backends/LearningBackend.js.map +0 -1
  18. package/dist/backends/VectorBackend.d.ts +0 -119
  19. package/dist/backends/VectorBackend.d.ts.map +0 -1
  20. package/dist/backends/VectorBackend.js +0 -14
  21. package/dist/backends/VectorBackend.js.map +0 -1
  22. package/dist/backends/detector.d.ts +0 -81
  23. package/dist/backends/detector.d.ts.map +0 -1
  24. package/dist/backends/detector.js +0 -192
  25. package/dist/backends/detector.js.map +0 -1
  26. package/dist/backends/factory.d.ts +0 -50
  27. package/dist/backends/factory.d.ts.map +0 -1
  28. package/dist/backends/factory.js +0 -161
  29. package/dist/backends/factory.js.map +0 -1
  30. package/dist/backends/graph/GraphDatabaseAdapter.d.ts +0 -139
  31. package/dist/backends/graph/GraphDatabaseAdapter.d.ts.map +0 -1
  32. package/dist/backends/graph/GraphDatabaseAdapter.js +0 -194
  33. package/dist/backends/graph/GraphDatabaseAdapter.js.map +0 -1
  34. package/dist/backends/hnswlib/HNSWLibBackend.d.ts +0 -92
  35. package/dist/backends/hnswlib/HNSWLibBackend.d.ts.map +0 -1
  36. package/dist/backends/hnswlib/HNSWLibBackend.js +0 -316
  37. package/dist/backends/hnswlib/HNSWLibBackend.js.map +0 -1
  38. package/dist/backends/hnswlib/index.d.ts +0 -7
  39. package/dist/backends/hnswlib/index.d.ts.map +0 -1
  40. package/dist/backends/hnswlib/index.js +0 -7
  41. package/dist/backends/hnswlib/index.js.map +0 -1
  42. package/dist/backends/index.d.ts +0 -14
  43. package/dist/backends/index.d.ts.map +0 -1
  44. package/dist/backends/index.js +0 -13
  45. package/dist/backends/index.js.map +0 -1
  46. package/dist/backends/ruvector/RuVectorBackend.d.ts +0 -75
  47. package/dist/backends/ruvector/RuVectorBackend.d.ts.map +0 -1
  48. package/dist/backends/ruvector/RuVectorBackend.js +0 -198
  49. package/dist/backends/ruvector/RuVectorBackend.js.map +0 -1
  50. package/dist/backends/ruvector/RuVectorLearning.d.ts +0 -104
  51. package/dist/backends/ruvector/RuVectorLearning.d.ts.map +0 -1
  52. package/dist/backends/ruvector/RuVectorLearning.js +0 -177
  53. package/dist/backends/ruvector/RuVectorLearning.js.map +0 -1
  54. package/dist/backends/ruvector/index.d.ts +0 -9
  55. package/dist/backends/ruvector/index.d.ts.map +0 -1
  56. package/dist/backends/ruvector/index.js +0 -8
  57. package/dist/backends/ruvector/index.js.map +0 -1
  58. package/dist/benchmarks/wasm-vector-benchmark.d.ts +0 -10
  59. package/dist/benchmarks/wasm-vector-benchmark.d.ts.map +0 -1
  60. package/dist/benchmarks/wasm-vector-benchmark.js +0 -196
  61. package/dist/benchmarks/wasm-vector-benchmark.js.map +0 -1
  62. package/dist/browser/AdvancedFeatures.d.ts +0 -144
  63. package/dist/browser/AdvancedFeatures.d.ts.map +0 -1
  64. package/dist/browser/AdvancedFeatures.js +0 -430
  65. package/dist/browser/AdvancedFeatures.js.map +0 -1
  66. package/dist/browser/HNSWIndex.d.ts +0 -117
  67. package/dist/browser/HNSWIndex.d.ts.map +0 -1
  68. package/dist/browser/HNSWIndex.js +0 -402
  69. package/dist/browser/HNSWIndex.js.map +0 -1
  70. package/dist/browser/ProductQuantization.d.ts +0 -107
  71. package/dist/browser/ProductQuantization.d.ts.map +0 -1
  72. package/dist/browser/ProductQuantization.js +0 -337
  73. package/dist/browser/ProductQuantization.js.map +0 -1
  74. package/dist/browser/browser/AdvancedFeatures.d.ts +0 -144
  75. package/dist/browser/browser/AdvancedFeatures.d.ts.map +0 -1
  76. package/dist/browser/browser/AdvancedFeatures.js +0 -427
  77. package/dist/browser/browser/HNSWIndex.d.ts +0 -117
  78. package/dist/browser/browser/HNSWIndex.d.ts.map +0 -1
  79. package/dist/browser/browser/HNSWIndex.js +0 -402
  80. package/dist/browser/browser/ProductQuantization.d.ts +0 -107
  81. package/dist/browser/browser/ProductQuantization.d.ts.map +0 -1
  82. package/dist/browser/browser/ProductQuantization.js +0 -348
  83. package/dist/browser/browser/index.d.ts +0 -223
  84. package/dist/browser/browser/index.d.ts.map +0 -1
  85. package/dist/browser/browser/index.js +0 -233
  86. package/dist/browser/index.d.ts +0 -223
  87. package/dist/browser/index.d.ts.map +0 -1
  88. package/dist/browser/index.js +0 -225
  89. package/dist/browser/index.js.map +0 -1
  90. package/dist/cli/agentdb-cli.d.ts +0 -154
  91. package/dist/cli/agentdb-cli.d.ts.map +0 -1
  92. package/dist/cli/agentdb-cli.js +0 -2273
  93. package/dist/cli/agentdb-cli.js.map +0 -1
  94. package/dist/cli/agentdb.db +0 -0
  95. package/dist/cli/commands/init.d.ts +0 -12
  96. package/dist/cli/commands/init.d.ts.map +0 -1
  97. package/dist/cli/commands/init.js +0 -115
  98. package/dist/cli/commands/init.js.map +0 -1
  99. package/dist/cli/commands/install-embeddings.d.ts +0 -10
  100. package/dist/cli/commands/install-embeddings.d.ts.map +0 -1
  101. package/dist/cli/commands/install-embeddings.js +0 -68
  102. package/dist/cli/commands/install-embeddings.js.map +0 -1
  103. package/dist/cli/commands/migrate.d.ts +0 -15
  104. package/dist/cli/commands/migrate.d.ts.map +0 -1
  105. package/dist/cli/commands/migrate.js +0 -425
  106. package/dist/cli/commands/migrate.js.map +0 -1
  107. package/dist/cli/commands/status.d.ts +0 -10
  108. package/dist/cli/commands/status.d.ts.map +0 -1
  109. package/dist/cli/commands/status.js +0 -129
  110. package/dist/cli/commands/status.js.map +0 -1
  111. package/dist/controllers/CausalMemoryGraph.d.ts +0 -126
  112. package/dist/controllers/CausalMemoryGraph.d.ts.map +0 -1
  113. package/dist/controllers/CausalMemoryGraph.js +0 -323
  114. package/dist/controllers/CausalMemoryGraph.js.map +0 -1
  115. package/dist/controllers/CausalRecall.d.ts +0 -139
  116. package/dist/controllers/CausalRecall.d.ts.map +0 -1
  117. package/dist/controllers/CausalRecall.js +0 -356
  118. package/dist/controllers/CausalRecall.js.map +0 -1
  119. package/dist/controllers/ContextSynthesizer.d.ts +0 -65
  120. package/dist/controllers/ContextSynthesizer.d.ts.map +0 -1
  121. package/dist/controllers/ContextSynthesizer.js +0 -208
  122. package/dist/controllers/ContextSynthesizer.js.map +0 -1
  123. package/dist/controllers/EmbeddingService.d.ts +0 -37
  124. package/dist/controllers/EmbeddingService.d.ts.map +0 -1
  125. package/dist/controllers/EmbeddingService.js +0 -136
  126. package/dist/controllers/EmbeddingService.js.map +0 -1
  127. package/dist/controllers/EnhancedEmbeddingService.d.ts +0 -50
  128. package/dist/controllers/EnhancedEmbeddingService.d.ts.map +0 -1
  129. package/dist/controllers/EnhancedEmbeddingService.js +0 -119
  130. package/dist/controllers/EnhancedEmbeddingService.js.map +0 -1
  131. package/dist/controllers/ExplainableRecall.d.ts +0 -163
  132. package/dist/controllers/ExplainableRecall.d.ts.map +0 -1
  133. package/dist/controllers/ExplainableRecall.js +0 -485
  134. package/dist/controllers/ExplainableRecall.js.map +0 -1
  135. package/dist/controllers/HNSWIndex.d.ts +0 -128
  136. package/dist/controllers/HNSWIndex.d.ts.map +0 -1
  137. package/dist/controllers/HNSWIndex.js +0 -361
  138. package/dist/controllers/HNSWIndex.js.map +0 -1
  139. package/dist/controllers/LearningSystem.d.ts +0 -195
  140. package/dist/controllers/LearningSystem.d.ts.map +0 -1
  141. package/dist/controllers/LearningSystem.js +0 -929
  142. package/dist/controllers/LearningSystem.js.map +0 -1
  143. package/dist/controllers/MMRDiversityRanker.d.ts +0 -50
  144. package/dist/controllers/MMRDiversityRanker.d.ts.map +0 -1
  145. package/dist/controllers/MMRDiversityRanker.js +0 -130
  146. package/dist/controllers/MMRDiversityRanker.js.map +0 -1
  147. package/dist/controllers/MetadataFilter.d.ts +0 -70
  148. package/dist/controllers/MetadataFilter.d.ts.map +0 -1
  149. package/dist/controllers/MetadataFilter.js +0 -243
  150. package/dist/controllers/MetadataFilter.js.map +0 -1
  151. package/dist/controllers/NightlyLearner.d.ts +0 -114
  152. package/dist/controllers/NightlyLearner.d.ts.map +0 -1
  153. package/dist/controllers/NightlyLearner.js +0 -394
  154. package/dist/controllers/NightlyLearner.js.map +0 -1
  155. package/dist/controllers/QUICClient.d.ts +0 -109
  156. package/dist/controllers/QUICClient.d.ts.map +0 -1
  157. package/dist/controllers/QUICClient.js +0 -299
  158. package/dist/controllers/QUICClient.js.map +0 -1
  159. package/dist/controllers/QUICServer.d.ts +0 -121
  160. package/dist/controllers/QUICServer.d.ts.map +0 -1
  161. package/dist/controllers/QUICServer.js +0 -383
  162. package/dist/controllers/QUICServer.js.map +0 -1
  163. package/dist/controllers/ReasoningBank.d.ts +0 -196
  164. package/dist/controllers/ReasoningBank.d.ts.map +0 -1
  165. package/dist/controllers/ReasoningBank.js +0 -494
  166. package/dist/controllers/ReasoningBank.js.map +0 -1
  167. package/dist/controllers/ReflexionMemory.d.ts +0 -125
  168. package/dist/controllers/ReflexionMemory.d.ts.map +0 -1
  169. package/dist/controllers/ReflexionMemory.js +0 -521
  170. package/dist/controllers/ReflexionMemory.js.map +0 -1
  171. package/dist/controllers/SkillLibrary.d.ts +0 -149
  172. package/dist/controllers/SkillLibrary.d.ts.map +0 -1
  173. package/dist/controllers/SkillLibrary.js +0 -547
  174. package/dist/controllers/SkillLibrary.js.map +0 -1
  175. package/dist/controllers/SyncCoordinator.d.ts +0 -120
  176. package/dist/controllers/SyncCoordinator.d.ts.map +0 -1
  177. package/dist/controllers/SyncCoordinator.js +0 -441
  178. package/dist/controllers/SyncCoordinator.js.map +0 -1
  179. package/dist/controllers/WASMVectorSearch.d.ts +0 -89
  180. package/dist/controllers/WASMVectorSearch.d.ts.map +0 -1
  181. package/dist/controllers/WASMVectorSearch.js +0 -234
  182. package/dist/controllers/WASMVectorSearch.js.map +0 -1
  183. package/dist/controllers/frontier-index.d.ts +0 -14
  184. package/dist/controllers/frontier-index.d.ts.map +0 -1
  185. package/dist/controllers/frontier-index.js +0 -10
  186. package/dist/controllers/frontier-index.js.map +0 -1
  187. package/dist/controllers/index.d.ts +0 -30
  188. package/dist/controllers/index.d.ts.map +0 -1
  189. package/dist/controllers/index.js +0 -18
  190. package/dist/controllers/index.js.map +0 -1
  191. package/dist/db-fallback.d.ts +0 -26
  192. package/dist/db-fallback.d.ts.map +0 -1
  193. package/dist/db-fallback.js +0 -264
  194. package/dist/db-fallback.js.map +0 -1
  195. package/dist/db-test.d.ts +0 -13
  196. package/dist/db-test.d.ts.map +0 -1
  197. package/dist/db-test.js +0 -55
  198. package/dist/db-test.js.map +0 -1
  199. package/dist/db-unified.d.ts +0 -76
  200. package/dist/db-unified.d.ts.map +0 -1
  201. package/dist/db-unified.js +0 -278
  202. package/dist/db-unified.js.map +0 -1
  203. package/dist/examples/quic-sync-example.d.ts +0 -9
  204. package/dist/examples/quic-sync-example.d.ts.map +0 -1
  205. package/dist/examples/quic-sync-example.js +0 -169
  206. package/dist/examples/quic-sync-example.js.map +0 -1
  207. package/dist/examples/wasm-vector-usage.d.ts +0 -12
  208. package/dist/examples/wasm-vector-usage.d.ts.map +0 -1
  209. package/dist/examples/wasm-vector-usage.js +0 -190
  210. package/dist/examples/wasm-vector-usage.js.map +0 -1
  211. package/dist/index.d.ts +0 -28
  212. package/dist/index.d.ts.map +0 -1
  213. package/dist/index.js +0 -35
  214. package/dist/index.js.map +0 -1
  215. package/dist/malp/core/ccc.d.ts +0 -99
  216. package/dist/malp/core/ccc.d.ts.map +0 -1
  217. package/dist/malp/core/ccc.js +0 -181
  218. package/dist/malp/core/ccc.js.map +0 -1
  219. package/dist/malp/core/index.d.ts +0 -9
  220. package/dist/malp/core/index.d.ts.map +0 -1
  221. package/dist/malp/core/index.js +0 -9
  222. package/dist/malp/core/index.js.map +0 -1
  223. package/dist/malp/core/linalg.d.ts +0 -101
  224. package/dist/malp/core/linalg.d.ts.map +0 -1
  225. package/dist/malp/core/linalg.js +0 -278
  226. package/dist/malp/core/linalg.js.map +0 -1
  227. package/dist/malp/core/optimizer.d.ts +0 -68
  228. package/dist/malp/core/optimizer.d.ts.map +0 -1
  229. package/dist/malp/core/optimizer.js +0 -160
  230. package/dist/malp/core/optimizer.js.map +0 -1
  231. package/dist/malp/index.d.ts +0 -33
  232. package/dist/malp/index.d.ts.map +0 -1
  233. package/dist/malp/index.js +0 -37
  234. package/dist/malp/index.js.map +0 -1
  235. package/dist/malp/metrics/agreement.d.ts +0 -106
  236. package/dist/malp/metrics/agreement.d.ts.map +0 -1
  237. package/dist/malp/metrics/agreement.js +0 -199
  238. package/dist/malp/metrics/agreement.js.map +0 -1
  239. package/dist/malp/metrics/comparison.d.ts +0 -93
  240. package/dist/malp/metrics/comparison.d.ts.map +0 -1
  241. package/dist/malp/metrics/comparison.js +0 -256
  242. package/dist/malp/metrics/comparison.js.map +0 -1
  243. package/dist/malp/metrics/index.d.ts +0 -8
  244. package/dist/malp/metrics/index.d.ts.map +0 -1
  245. package/dist/malp/metrics/index.js +0 -8
  246. package/dist/malp/metrics/index.js.map +0 -1
  247. package/dist/malp/metrics/performance.d.ts +0 -61
  248. package/dist/malp/metrics/performance.d.ts.map +0 -1
  249. package/dist/malp/metrics/performance.js +0 -190
  250. package/dist/malp/metrics/performance.js.map +0 -1
  251. package/dist/malp/models/index.d.ts +0 -7
  252. package/dist/malp/models/index.d.ts.map +0 -1
  253. package/dist/malp/models/index.js +0 -7
  254. package/dist/malp/models/index.js.map +0 -1
  255. package/dist/malp/models/malp.d.ts +0 -116
  256. package/dist/malp/models/malp.d.ts.map +0 -1
  257. package/dist/malp/models/malp.js +0 -206
  258. package/dist/malp/models/malp.js.map +0 -1
  259. package/dist/malp/models/regressor.d.ts +0 -80
  260. package/dist/malp/models/regressor.d.ts.map +0 -1
  261. package/dist/malp/models/regressor.js +0 -229
  262. package/dist/malp/models/regressor.js.map +0 -1
  263. package/dist/malp/reasoningbank_validator.d.ts +0 -187
  264. package/dist/malp/reasoningbank_validator.d.ts.map +0 -1
  265. package/dist/malp/reasoningbank_validator.js +0 -246
  266. package/dist/malp/reasoningbank_validator.js.map +0 -1
  267. package/dist/malp/wasm_bindings.d.ts +0 -344
  268. package/dist/malp/wasm_bindings.d.ts.map +0 -1
  269. package/dist/malp/wasm_bindings.js +0 -9
  270. package/dist/malp/wasm_bindings.js.map +0 -1
  271. package/dist/mcp/agentdb-mcp-server.d.ts +0 -8
  272. package/dist/mcp/agentdb-mcp-server.d.ts.map +0 -1
  273. package/dist/mcp/agentdb-mcp-server.js +0 -2116
  274. package/dist/mcp/agentdb-mcp-server.js.map +0 -1
  275. package/dist/mcp/learning-tools-handlers.d.ts +0 -16
  276. package/dist/mcp/learning-tools-handlers.d.ts.map +0 -1
  277. package/dist/mcp/learning-tools-handlers.js +0 -105
  278. package/dist/mcp/learning-tools-handlers.js.map +0 -1
  279. package/dist/optimizations/BatchOperations.d.ts +0 -109
  280. package/dist/optimizations/BatchOperations.d.ts.map +0 -1
  281. package/dist/optimizations/BatchOperations.js +0 -407
  282. package/dist/optimizations/BatchOperations.js.map +0 -1
  283. package/dist/optimizations/QueryOptimizer.d.ts +0 -83
  284. package/dist/optimizations/QueryOptimizer.d.ts.map +0 -1
  285. package/dist/optimizations/QueryOptimizer.js +0 -228
  286. package/dist/optimizations/QueryOptimizer.js.map +0 -1
  287. package/dist/optimizations/ToolCache.d.ts +0 -137
  288. package/dist/optimizations/ToolCache.d.ts.map +0 -1
  289. package/dist/optimizations/ToolCache.js +0 -281
  290. package/dist/optimizations/ToolCache.js.map +0 -1
  291. package/dist/optimizations/index.d.ts +0 -10
  292. package/dist/optimizations/index.d.ts.map +0 -1
  293. package/dist/optimizations/index.js +0 -8
  294. package/dist/optimizations/index.js.map +0 -1
  295. package/dist/security/input-validation.d.ts +0 -109
  296. package/dist/security/input-validation.d.ts.map +0 -1
  297. package/dist/security/input-validation.js +0 -398
  298. package/dist/security/input-validation.js.map +0 -1
  299. package/dist/security/limits.d.ts +0 -150
  300. package/dist/security/limits.d.ts.map +0 -1
  301. package/dist/security/limits.js +0 -288
  302. package/dist/security/limits.js.map +0 -1
  303. package/dist/security/path-security.d.ts +0 -100
  304. package/dist/security/path-security.d.ts.map +0 -1
  305. package/dist/security/path-security.js +0 -337
  306. package/dist/security/path-security.js.map +0 -1
  307. package/dist/security/validation.d.ts +0 -95
  308. package/dist/security/validation.d.ts.map +0 -1
  309. package/dist/security/validation.js +0 -315
  310. package/dist/security/validation.js.map +0 -1
  311. package/dist/types/quic.d.ts +0 -518
  312. package/dist/types/quic.d.ts.map +0 -1
  313. package/dist/types/quic.js +0 -272
  314. package/dist/types/quic.js.map +0 -1
@@ -1,37 +0,0 @@
1
- /**
2
- * EmbeddingService - Text Embedding Generation
3
- *
4
- * Handles text-to-vector embedding generation using various models.
5
- * Supports both local (transformers.js) and remote (OpenAI, etc.) embeddings.
6
- */
7
- export interface EmbeddingConfig {
8
- model: string;
9
- dimension: number;
10
- provider: 'transformers' | 'openai' | 'local';
11
- apiKey?: string;
12
- }
13
- export declare class EmbeddingService {
14
- private config;
15
- private pipeline;
16
- private cache;
17
- constructor(config: EmbeddingConfig);
18
- /**
19
- * Initialize the embedding service
20
- */
21
- initialize(): Promise<void>;
22
- /**
23
- * Generate embedding for text
24
- */
25
- embed(text: string): Promise<Float32Array>;
26
- /**
27
- * Batch embed multiple texts
28
- */
29
- embedBatch(texts: string[]): Promise<Float32Array[]>;
30
- /**
31
- * Clear embedding cache
32
- */
33
- clearCache(): void;
34
- private embedOpenAI;
35
- private mockEmbedding;
36
- }
37
- //# sourceMappingURL=EmbeddingService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmbeddingService.d.ts","sourceRoot":"","sources":["../../src/controllers/EmbeddingService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,cAAc,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAM;IACtB,OAAO,CAAC,KAAK,CAA4B;gBAE7B,MAAM,EAAE,eAAe;IAKnC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BjC;;OAEG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAgChD;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAI1D;;OAEG;IACH,UAAU,IAAI,IAAI;YAQJ,WAAW;IAiBzB,OAAO,CAAC,aAAa;CAmCtB"}
@@ -1,136 +0,0 @@
1
- /**
2
- * EmbeddingService - Text Embedding Generation
3
- *
4
- * Handles text-to-vector embedding generation using various models.
5
- * Supports both local (transformers.js) and remote (OpenAI, etc.) embeddings.
6
- */
7
- export class EmbeddingService {
8
- config;
9
- pipeline; // transformers.js pipeline
10
- cache;
11
- constructor(config) {
12
- this.config = config;
13
- this.cache = new Map();
14
- }
15
- /**
16
- * Initialize the embedding service
17
- */
18
- async initialize() {
19
- if (this.config.provider === 'transformers') {
20
- // Use transformers.js for local embeddings
21
- try {
22
- const transformers = await import('@xenova/transformers');
23
- // Set Hugging Face token if available from environment
24
- const hfToken = process.env.HUGGINGFACE_API_KEY || process.env.HF_TOKEN;
25
- if (hfToken) {
26
- // Set the token for Transformers.js to use
27
- if (transformers.env && typeof transformers.env === 'object') {
28
- transformers.env.HF_TOKEN = hfToken;
29
- console.log('🔑 Using Hugging Face API key from environment');
30
- }
31
- }
32
- this.pipeline = await transformers.pipeline('feature-extraction', this.config.model);
33
- console.log(`✅ Transformers.js loaded: ${this.config.model}`);
34
- }
35
- catch (error) {
36
- const errorMessage = error instanceof Error ? error.message : String(error);
37
- console.warn(`⚠️ Transformers.js initialization failed: ${errorMessage}`);
38
- console.warn(' Falling back to mock embeddings for testing');
39
- console.warn(' Set HUGGINGFACE_API_KEY environment variable for real embeddings');
40
- this.pipeline = null;
41
- }
42
- }
43
- }
44
- /**
45
- * Generate embedding for text
46
- */
47
- async embed(text) {
48
- // Check cache
49
- const cacheKey = `${this.config.model}:${text}`;
50
- if (this.cache.has(cacheKey)) {
51
- return this.cache.get(cacheKey);
52
- }
53
- let embedding;
54
- if (this.config.provider === 'transformers' && this.pipeline) {
55
- // Use transformers.js
56
- const output = await this.pipeline(text, { pooling: 'mean', normalize: true });
57
- embedding = new Float32Array(output.data);
58
- }
59
- else if (this.config.provider === 'openai' && this.config.apiKey) {
60
- // Use OpenAI API
61
- embedding = await this.embedOpenAI(text);
62
- }
63
- else {
64
- // Mock embedding for testing
65
- embedding = this.mockEmbedding(text);
66
- }
67
- // Cache result
68
- if (this.cache.size > 10000) {
69
- // Simple LRU: clear half the cache
70
- const keysToDelete = Array.from(this.cache.keys()).slice(0, 5000);
71
- keysToDelete.forEach(k => this.cache.delete(k));
72
- }
73
- this.cache.set(cacheKey, embedding);
74
- return embedding;
75
- }
76
- /**
77
- * Batch embed multiple texts
78
- */
79
- async embedBatch(texts) {
80
- return Promise.all(texts.map(text => this.embed(text)));
81
- }
82
- /**
83
- * Clear embedding cache
84
- */
85
- clearCache() {
86
- this.cache.clear();
87
- }
88
- // ========================================================================
89
- // Private Methods
90
- // ========================================================================
91
- async embedOpenAI(text) {
92
- const response = await fetch('https://api.openai.com/v1/embeddings', {
93
- method: 'POST',
94
- headers: {
95
- 'Authorization': `Bearer ${this.config.apiKey}`,
96
- 'Content-Type': 'application/json'
97
- },
98
- body: JSON.stringify({
99
- model: this.config.model,
100
- input: text
101
- })
102
- });
103
- const data = await response.json();
104
- return new Float32Array(data.data[0].embedding);
105
- }
106
- mockEmbedding(text) {
107
- // Simple deterministic mock embedding for testing
108
- const embedding = new Float32Array(this.config.dimension);
109
- // Handle null/undefined/empty text
110
- if (!text || text.length === 0) {
111
- return new Array(this.config.dimension).fill(0);
112
- }
113
- // Use simple hash-based generation
114
- let hash = 0;
115
- for (let i = 0; i < text.length; i++) {
116
- hash = ((hash << 5) - hash) + text.charCodeAt(i);
117
- hash = hash & hash; // Convert to 32bit integer
118
- }
119
- // Fill embedding with pseudo-random values based on hash
120
- for (let i = 0; i < this.config.dimension; i++) {
121
- const seed = hash + i * 31;
122
- embedding[i] = Math.sin(seed) * Math.cos(seed * 0.5);
123
- }
124
- // Normalize
125
- let norm = 0;
126
- for (let i = 0; i < embedding.length; i++) {
127
- norm += embedding[i] * embedding[i];
128
- }
129
- norm = Math.sqrt(norm);
130
- for (let i = 0; i < embedding.length; i++) {
131
- embedding[i] /= norm;
132
- }
133
- return embedding;
134
- }
135
- }
136
- //# sourceMappingURL=EmbeddingService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmbeddingService.js","sourceRoot":"","sources":["../../src/controllers/EmbeddingService.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- /**
2
- * Enhanced EmbeddingService with WASM Acceleration
3
- *
4
- * Extends the base EmbeddingService with WASM-accelerated batch operations
5
- * and improved performance for large-scale embedding generation.
6
- */
7
- import { EmbeddingService, EmbeddingConfig } from './EmbeddingService.js';
8
- export interface EnhancedEmbeddingConfig extends EmbeddingConfig {
9
- enableWASM?: boolean;
10
- enableBatchProcessing?: boolean;
11
- batchSize?: number;
12
- }
13
- export declare class EnhancedEmbeddingService extends EmbeddingService {
14
- private wasmSearch;
15
- private enhancedConfig;
16
- constructor(config: EnhancedEmbeddingConfig);
17
- /**
18
- * Initialize WASM acceleration
19
- */
20
- private initializeWASM;
21
- /**
22
- * Enhanced batch embedding with parallel processing
23
- */
24
- embedBatch(texts: string[]): Promise<Float32Array[]>;
25
- /**
26
- * Calculate similarity between two texts using WASM acceleration
27
- */
28
- similarity(textA: string, textB: string): Promise<number>;
29
- /**
30
- * Find most similar texts from a corpus
31
- */
32
- findMostSimilar(query: string, corpus: string[], k?: number): Promise<Array<{
33
- text: string;
34
- similarity: number;
35
- index: number;
36
- }>>;
37
- /**
38
- * Get service statistics
39
- */
40
- getStats(): {
41
- cacheSize: number;
42
- wasmEnabled: boolean;
43
- simdEnabled: boolean;
44
- };
45
- /**
46
- * Cosine similarity fallback
47
- */
48
- private cosineSimilarity;
49
- }
50
- //# sourceMappingURL=EnhancedEmbeddingService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnhancedEmbeddingService.d.ts","sourceRoot":"","sources":["../../src/controllers/EnhancedEmbeddingService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG1E,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,wBAAyB,SAAQ,gBAAgB;IAC5D,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,cAAc,CAA0B;gBAEpC,MAAM,EAAE,uBAAuB;IAc3C;;OAEG;IACH,OAAO,CAAC,cAAc;IAYtB;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAsB1D;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAc/D;;OAEG;IACG,eAAe,CACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EAAE,EAChB,CAAC,GAAE,MAAU,GACZ,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IA0BtE;;OAEG;IACH,QAAQ,IAAI;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,WAAW,EAAE,OAAO,CAAC;KACtB;IAUD;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAczB"}
@@ -1,119 +0,0 @@
1
- /**
2
- * Enhanced EmbeddingService with WASM Acceleration
3
- *
4
- * Extends the base EmbeddingService with WASM-accelerated batch operations
5
- * and improved performance for large-scale embedding generation.
6
- */
7
- import { EmbeddingService } from './EmbeddingService.js';
8
- import { WASMVectorSearch } from './WASMVectorSearch.js';
9
- export class EnhancedEmbeddingService extends EmbeddingService {
10
- wasmSearch = null;
11
- enhancedConfig;
12
- constructor(config) {
13
- super(config);
14
- this.enhancedConfig = {
15
- enableWASM: true,
16
- enableBatchProcessing: true,
17
- batchSize: 100,
18
- ...config,
19
- };
20
- if (this.enhancedConfig.enableWASM) {
21
- this.initializeWASM();
22
- }
23
- }
24
- /**
25
- * Initialize WASM acceleration
26
- */
27
- initializeWASM() {
28
- const mockDb = {
29
- prepare: () => ({ all: () => [], get: () => null, run: () => ({}) }),
30
- exec: () => { },
31
- };
32
- this.wasmSearch = new WASMVectorSearch(mockDb, {
33
- enableWASM: true,
34
- batchSize: this.enhancedConfig.batchSize || 100,
35
- });
36
- }
37
- /**
38
- * Enhanced batch embedding with parallel processing
39
- */
40
- async embedBatch(texts) {
41
- if (!this.enhancedConfig.enableBatchProcessing || texts.length < 10) {
42
- return super.embedBatch(texts);
43
- }
44
- const batchSize = this.enhancedConfig.batchSize || 100;
45
- const batches = [];
46
- // Split into batches
47
- for (let i = 0; i < texts.length; i += batchSize) {
48
- batches.push(texts.slice(i, i + batchSize));
49
- }
50
- // Process batches in parallel
51
- const results = await Promise.all(batches.map(batch => super.embedBatch(batch)));
52
- // Flatten results
53
- return results.flat();
54
- }
55
- /**
56
- * Calculate similarity between two texts using WASM acceleration
57
- */
58
- async similarity(textA, textB) {
59
- const [embeddingA, embeddingB] = await Promise.all([
60
- this.embed(textA),
61
- this.embed(textB),
62
- ]);
63
- if (this.wasmSearch) {
64
- return this.wasmSearch.cosineSimilarity(embeddingA, embeddingB);
65
- }
66
- // Fallback to manual calculation
67
- return this.cosineSimilarity(embeddingA, embeddingB);
68
- }
69
- /**
70
- * Find most similar texts from a corpus
71
- */
72
- async findMostSimilar(query, corpus, k = 5) {
73
- const queryEmbedding = await this.embed(query);
74
- const corpusEmbeddings = await this.embedBatch(corpus);
75
- let similarities;
76
- if (this.wasmSearch) {
77
- similarities = this.wasmSearch.batchSimilarity(queryEmbedding, corpusEmbeddings);
78
- }
79
- else {
80
- similarities = corpusEmbeddings.map(emb => this.cosineSimilarity(queryEmbedding, emb));
81
- }
82
- // Create results with indices
83
- const results = corpus.map((text, index) => ({
84
- text,
85
- similarity: similarities[index],
86
- index,
87
- }));
88
- // Sort by similarity and take top k
89
- results.sort((a, b) => b.similarity - a.similarity);
90
- return results.slice(0, k);
91
- }
92
- /**
93
- * Get service statistics
94
- */
95
- getStats() {
96
- const wasmStats = this.wasmSearch?.getStats();
97
- return {
98
- cacheSize: this.cache.size,
99
- wasmEnabled: wasmStats?.wasmAvailable ?? false,
100
- simdEnabled: wasmStats?.simdAvailable ?? false,
101
- };
102
- }
103
- /**
104
- * Cosine similarity fallback
105
- */
106
- cosineSimilarity(a, b) {
107
- let dotProduct = 0;
108
- let normA = 0;
109
- let normB = 0;
110
- for (let i = 0; i < a.length; i++) {
111
- dotProduct += a[i] * b[i];
112
- normA += a[i] * a[i];
113
- normB += b[i] * b[i];
114
- }
115
- const denom = Math.sqrt(normA) * Math.sqrt(normB);
116
- return denom === 0 ? 0 : dotProduct / denom;
117
- }
118
- }
119
- //# sourceMappingURL=EnhancedEmbeddingService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnhancedEmbeddingService.js","sourceRoot":"","sources":["../../src/controllers/EnhancedEmbeddingService.ts"],"names":[],"mappings":"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"}
@@ -1,163 +0,0 @@
1
- /**
2
- * ExplainableRecall - Provenance and Justification for Memory Retrieval
3
- *
4
- * Every retrieval returns:
5
- * - Minimal hitting set of facts that justify the answer
6
- * - Merkle proof chain for provenance
7
- * - Policy compliance certificates
8
- *
9
- * Based on:
10
- * - Minimal hitting set algorithms
11
- * - Merkle tree provenance
12
- * - Explainable AI techniques
13
- */
14
- type Database = any;
15
- export interface RecallCertificate {
16
- id: string;
17
- queryId: string;
18
- queryText: string;
19
- chunkIds: string[];
20
- chunkTypes: string[];
21
- minimalWhy: string[];
22
- redundancyRatio: number;
23
- completenessScore: number;
24
- merkleRoot: string;
25
- sourceHashes: string[];
26
- proofChain: MerkleProof[];
27
- policyProof?: string;
28
- policyVersion?: string;
29
- accessLevel: 'public' | 'internal' | 'confidential' | 'restricted';
30
- latencyMs?: number;
31
- metadata?: Record<string, any>;
32
- }
33
- export interface MerkleProof {
34
- hash: string;
35
- position: 'left' | 'right';
36
- }
37
- export interface JustificationPath {
38
- chunkId: string;
39
- chunkType: string;
40
- reason: 'semantic_match' | 'causal_link' | 'prerequisite' | 'constraint';
41
- necessityScore: number;
42
- pathElements: string[];
43
- }
44
- export interface ProvenanceSource {
45
- id?: number;
46
- sourceType: 'episode' | 'skill' | 'note' | 'fact' | 'external';
47
- sourceId: number;
48
- contentHash: string;
49
- parentHash?: string;
50
- derivedFrom?: string[];
51
- creator?: string;
52
- metadata?: Record<string, any>;
53
- }
54
- export declare class ExplainableRecall {
55
- private db;
56
- constructor(db: Database);
57
- /**
58
- * Create a recall certificate for a retrieval operation
59
- */
60
- createCertificate(params: {
61
- queryId: string;
62
- queryText: string;
63
- chunks: Array<{
64
- id: string;
65
- type: string;
66
- content: string;
67
- relevance: number;
68
- }>;
69
- requirements: string[];
70
- accessLevel?: string;
71
- }): RecallCertificate;
72
- /**
73
- * Verify a recall certificate
74
- */
75
- verifyCertificate(certificateId: string): {
76
- valid: boolean;
77
- issues: string[];
78
- };
79
- /**
80
- * Get justification for why a chunk was included
81
- */
82
- getJustification(certificateId: string, chunkId: string): JustificationPath | null;
83
- /**
84
- * Get provenance lineage for a source
85
- */
86
- getProvenanceLineage(contentHash: string): ProvenanceSource[];
87
- /**
88
- * Trace provenance lineage for a certificate
89
- * Returns full provenance chain from certificate to original sources
90
- */
91
- traceProvenance(certificateId: string): {
92
- certificate: RecallCertificate;
93
- sources: Map<string, ProvenanceSource[]>;
94
- graph: {
95
- nodes: Array<{
96
- id: string;
97
- type: string;
98
- label: string;
99
- }>;
100
- edges: Array<{
101
- from: string;
102
- to: string;
103
- type: string;
104
- }>;
105
- };
106
- };
107
- /**
108
- * Audit certificate access
109
- */
110
- auditCertificate(certificateId: string): {
111
- certificate: RecallCertificate;
112
- justifications: JustificationPath[];
113
- provenance: Map<string, ProvenanceSource[]>;
114
- quality: {
115
- completeness: number;
116
- redundancy: number;
117
- avgNecessity: number;
118
- };
119
- };
120
- /**
121
- * Compute minimal hitting set using greedy algorithm
122
- * A hitting set contains at least one element from each requirement
123
- */
124
- private computeMinimalHittingSet;
125
- /**
126
- * Calculate completeness score
127
- */
128
- private calculateCompleteness;
129
- /**
130
- * Get or create provenance record
131
- */
132
- private getOrCreateProvenance;
133
- private _episodeStmt?;
134
- private _skillStmt?;
135
- private _noteStmt?;
136
- private _factStmt?;
137
- /**
138
- * Get content hash for a memory
139
- */
140
- private getContentHash;
141
- /**
142
- * Build Merkle tree from hashes
143
- */
144
- private buildMerkleTree;
145
- /**
146
- * Get Merkle proof for a leaf
147
- */
148
- private getMerkleProof;
149
- /**
150
- * Generate certificate ID
151
- */
152
- private generateCertificateId;
153
- /**
154
- * Store justification paths
155
- */
156
- private storeJustificationPaths;
157
- /**
158
- * Determine reason for inclusion
159
- */
160
- private determineReason;
161
- }
162
- export {};
163
- //# sourceMappingURL=ExplainableRecall.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExplainableRecall.d.ts","sourceRoot":"","sources":["../../src/controllers/ExplainableRecall.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,KAAK,QAAQ,GAAG,GAAG,CAAC;AAGpB,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAGlB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IAGrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAG1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,WAAW,EAAE,CAAC;IAG1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,QAAQ,GAAG,UAAU,GAAG,cAAc,GAAG,YAAY,CAAC;IAEnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,GAAG,aAAa,GAAG,cAAc,GAAG,YAAY,CAAC;IACzE,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;IAC/D,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,EAAE,CAAW;gBAET,EAAE,EAAE,QAAQ;IAIxB;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAChF,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,iBAAiB;IA8ErB;;OAEG;IACH,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG;QACxC,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB;IA+CD;;OAEG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IAiBlF;;OAEG;IACH,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,EAAE;IA4B7D;;;OAGG;IACH,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG;QACtC,WAAW,EAAE,iBAAiB,CAAC;QAC/B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACzC,KAAK,EAAE;YACL,KAAK,EAAE,KAAK,CAAC;gBAAE,EAAE,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;YAC1D,KAAK,EAAE,KAAK,CAAC;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,EAAE,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;SAC1D,CAAC;KACH;IAuFD;;OAEG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG;QACvC,WAAW,EAAE,iBAAiB,CAAC;QAC/B,cAAc,EAAE,iBAAiB,EAAE,CAAC;QACpC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC5C,OAAO,EAAE;YACP,YAAY,EAAE,MAAM,CAAC;YACrB,UAAU,EAAE,MAAM,CAAC;YACnB,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC;KACH;IAiED;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IA6ChC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAkB7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,YAAY,CAAC,CAAM;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAM;IACzB,OAAO,CAAC,SAAS,CAAC,CAAM;IACxB,OAAO,CAAC,SAAS,CAAC,CAAM;IAExB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqCtB;;OAEG;IACH,OAAO,CAAC,eAAe;IA0BvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAK7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkC/B;;OAEG;IACH,OAAO,CAAC,eAAe;CASxB"}