@claude-flow/memory 3.0.0-alpha.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 (214) hide show
  1. package/.agentic-flow/intelligence.json +16 -0
  2. package/README.md +249 -0
  3. package/__tests__/coverage/base.css +224 -0
  4. package/__tests__/coverage/block-navigation.js +87 -0
  5. package/__tests__/coverage/coverage-final.json +19 -0
  6. package/__tests__/coverage/favicon.png +0 -0
  7. package/__tests__/coverage/index.html +206 -0
  8. package/__tests__/coverage/lcov-report/base.css +224 -0
  9. package/__tests__/coverage/lcov-report/block-navigation.js +87 -0
  10. package/__tests__/coverage/lcov-report/favicon.png +0 -0
  11. package/__tests__/coverage/lcov-report/index.html +206 -0
  12. package/__tests__/coverage/lcov-report/prettify.css +1 -0
  13. package/__tests__/coverage/lcov-report/prettify.js +2 -0
  14. package/__tests__/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  15. package/__tests__/coverage/lcov-report/sorter.js +210 -0
  16. package/__tests__/coverage/lcov-report/src/agentdb-adapter.ts.html +2737 -0
  17. package/__tests__/coverage/lcov-report/src/agentdb-backend.ts.html +3130 -0
  18. package/__tests__/coverage/lcov-report/src/application/commands/delete-memory.command.ts.html +601 -0
  19. package/__tests__/coverage/lcov-report/src/application/commands/index.html +131 -0
  20. package/__tests__/coverage/lcov-report/src/application/commands/store-memory.command.ts.html +394 -0
  21. package/__tests__/coverage/lcov-report/src/application/queries/index.html +116 -0
  22. package/__tests__/coverage/lcov-report/src/application/queries/search-memory.query.ts.html +796 -0
  23. package/__tests__/coverage/lcov-report/src/application/services/index.html +116 -0
  24. package/__tests__/coverage/lcov-report/src/application/services/memory-application-service.ts.html +793 -0
  25. package/__tests__/coverage/lcov-report/src/cache-manager.ts.html +1633 -0
  26. package/__tests__/coverage/lcov-report/src/database-provider.ts.html +1618 -0
  27. package/__tests__/coverage/lcov-report/src/domain/entities/index.html +116 -0
  28. package/__tests__/coverage/lcov-report/src/domain/entities/memory-entry.ts.html +952 -0
  29. package/__tests__/coverage/lcov-report/src/domain/services/index.html +116 -0
  30. package/__tests__/coverage/lcov-report/src/domain/services/memory-domain-service.ts.html +1294 -0
  31. package/__tests__/coverage/lcov-report/src/hnsw-index.ts.html +3124 -0
  32. package/__tests__/coverage/lcov-report/src/hybrid-backend.ts.html +2167 -0
  33. package/__tests__/coverage/lcov-report/src/index.html +266 -0
  34. package/__tests__/coverage/lcov-report/src/infrastructure/repositories/hybrid-memory-repository.ts.html +1633 -0
  35. package/__tests__/coverage/lcov-report/src/infrastructure/repositories/index.html +116 -0
  36. package/__tests__/coverage/lcov-report/src/migration.ts.html +2092 -0
  37. package/__tests__/coverage/lcov-report/src/query-builder.ts.html +1711 -0
  38. package/__tests__/coverage/lcov-report/src/sqlite-backend.ts.html +2281 -0
  39. package/__tests__/coverage/lcov-report/src/sqljs-backend.ts.html +2374 -0
  40. package/__tests__/coverage/lcov-report/src/types.ts.html +2266 -0
  41. package/__tests__/coverage/lcov.info +10238 -0
  42. package/__tests__/coverage/prettify.css +1 -0
  43. package/__tests__/coverage/prettify.js +2 -0
  44. package/__tests__/coverage/sort-arrow-sprite.png +0 -0
  45. package/__tests__/coverage/sorter.js +210 -0
  46. package/__tests__/coverage/src/agentdb-adapter.ts.html +2737 -0
  47. package/__tests__/coverage/src/agentdb-backend.ts.html +3130 -0
  48. package/__tests__/coverage/src/application/commands/delete-memory.command.ts.html +601 -0
  49. package/__tests__/coverage/src/application/commands/index.html +131 -0
  50. package/__tests__/coverage/src/application/commands/store-memory.command.ts.html +394 -0
  51. package/__tests__/coverage/src/application/queries/index.html +116 -0
  52. package/__tests__/coverage/src/application/queries/search-memory.query.ts.html +796 -0
  53. package/__tests__/coverage/src/application/services/index.html +116 -0
  54. package/__tests__/coverage/src/application/services/memory-application-service.ts.html +793 -0
  55. package/__tests__/coverage/src/cache-manager.ts.html +1633 -0
  56. package/__tests__/coverage/src/database-provider.ts.html +1618 -0
  57. package/__tests__/coverage/src/domain/entities/index.html +116 -0
  58. package/__tests__/coverage/src/domain/entities/memory-entry.ts.html +952 -0
  59. package/__tests__/coverage/src/domain/services/index.html +116 -0
  60. package/__tests__/coverage/src/domain/services/memory-domain-service.ts.html +1294 -0
  61. package/__tests__/coverage/src/hnsw-index.ts.html +3124 -0
  62. package/__tests__/coverage/src/hybrid-backend.ts.html +2167 -0
  63. package/__tests__/coverage/src/index.html +266 -0
  64. package/__tests__/coverage/src/infrastructure/repositories/hybrid-memory-repository.ts.html +1633 -0
  65. package/__tests__/coverage/src/infrastructure/repositories/index.html +116 -0
  66. package/__tests__/coverage/src/migration.ts.html +2092 -0
  67. package/__tests__/coverage/src/query-builder.ts.html +1711 -0
  68. package/__tests__/coverage/src/sqlite-backend.ts.html +2281 -0
  69. package/__tests__/coverage/src/sqljs-backend.ts.html +2374 -0
  70. package/__tests__/coverage/src/types.ts.html +2266 -0
  71. package/benchmarks/cache-hit-rate.bench.ts +535 -0
  72. package/benchmarks/hnsw-indexing.bench.ts +552 -0
  73. package/benchmarks/memory-write.bench.ts +469 -0
  74. package/benchmarks/vector-search.bench.ts +449 -0
  75. package/dist/agentdb-adapter.d.ts +146 -0
  76. package/dist/agentdb-adapter.d.ts.map +1 -0
  77. package/dist/agentdb-adapter.js +679 -0
  78. package/dist/agentdb-adapter.js.map +1 -0
  79. package/dist/agentdb-backend.d.ts +214 -0
  80. package/dist/agentdb-backend.d.ts.map +1 -0
  81. package/dist/agentdb-backend.js +827 -0
  82. package/dist/agentdb-backend.js.map +1 -0
  83. package/dist/agentdb-backend.test.d.ts +7 -0
  84. package/dist/agentdb-backend.test.d.ts.map +1 -0
  85. package/dist/agentdb-backend.test.js +258 -0
  86. package/dist/agentdb-backend.test.js.map +1 -0
  87. package/dist/application/commands/delete-memory.command.d.ts +65 -0
  88. package/dist/application/commands/delete-memory.command.d.ts.map +1 -0
  89. package/dist/application/commands/delete-memory.command.js +129 -0
  90. package/dist/application/commands/delete-memory.command.js.map +1 -0
  91. package/dist/application/commands/store-memory.command.d.ts +48 -0
  92. package/dist/application/commands/store-memory.command.d.ts.map +1 -0
  93. package/dist/application/commands/store-memory.command.js +72 -0
  94. package/dist/application/commands/store-memory.command.js.map +1 -0
  95. package/dist/application/index.d.ts +12 -0
  96. package/dist/application/index.d.ts.map +1 -0
  97. package/dist/application/index.js +15 -0
  98. package/dist/application/index.js.map +1 -0
  99. package/dist/application/queries/search-memory.query.d.ts +72 -0
  100. package/dist/application/queries/search-memory.query.d.ts.map +1 -0
  101. package/dist/application/queries/search-memory.query.js +143 -0
  102. package/dist/application/queries/search-memory.query.js.map +1 -0
  103. package/dist/application/services/memory-application-service.d.ts +121 -0
  104. package/dist/application/services/memory-application-service.d.ts.map +1 -0
  105. package/dist/application/services/memory-application-service.js +190 -0
  106. package/dist/application/services/memory-application-service.js.map +1 -0
  107. package/dist/cache-manager.d.ts +134 -0
  108. package/dist/cache-manager.d.ts.map +1 -0
  109. package/dist/cache-manager.js +407 -0
  110. package/dist/cache-manager.js.map +1 -0
  111. package/dist/database-provider.d.ts +86 -0
  112. package/dist/database-provider.d.ts.map +1 -0
  113. package/dist/database-provider.js +385 -0
  114. package/dist/database-provider.js.map +1 -0
  115. package/dist/database-provider.test.d.ts +7 -0
  116. package/dist/database-provider.test.d.ts.map +1 -0
  117. package/dist/database-provider.test.js +285 -0
  118. package/dist/database-provider.test.js.map +1 -0
  119. package/dist/domain/entities/memory-entry.d.ts +143 -0
  120. package/dist/domain/entities/memory-entry.d.ts.map +1 -0
  121. package/dist/domain/entities/memory-entry.js +226 -0
  122. package/dist/domain/entities/memory-entry.js.map +1 -0
  123. package/dist/domain/index.d.ts +11 -0
  124. package/dist/domain/index.d.ts.map +1 -0
  125. package/dist/domain/index.js +12 -0
  126. package/dist/domain/index.js.map +1 -0
  127. package/dist/domain/repositories/memory-repository.interface.d.ts +102 -0
  128. package/dist/domain/repositories/memory-repository.interface.d.ts.map +1 -0
  129. package/dist/domain/repositories/memory-repository.interface.js +11 -0
  130. package/dist/domain/repositories/memory-repository.interface.js.map +1 -0
  131. package/dist/domain/services/memory-domain-service.d.ts +105 -0
  132. package/dist/domain/services/memory-domain-service.d.ts.map +1 -0
  133. package/dist/domain/services/memory-domain-service.js +297 -0
  134. package/dist/domain/services/memory-domain-service.js.map +1 -0
  135. package/dist/hnsw-index.d.ts +111 -0
  136. package/dist/hnsw-index.d.ts.map +1 -0
  137. package/dist/hnsw-index.js +781 -0
  138. package/dist/hnsw-index.js.map +1 -0
  139. package/dist/hybrid-backend.d.ts +217 -0
  140. package/dist/hybrid-backend.d.ts.map +1 -0
  141. package/dist/hybrid-backend.js +491 -0
  142. package/dist/hybrid-backend.js.map +1 -0
  143. package/dist/hybrid-backend.test.d.ts +8 -0
  144. package/dist/hybrid-backend.test.d.ts.map +1 -0
  145. package/dist/hybrid-backend.test.js +320 -0
  146. package/dist/hybrid-backend.test.js.map +1 -0
  147. package/dist/index.d.ts +188 -0
  148. package/dist/index.d.ts.map +1 -0
  149. package/dist/index.js +345 -0
  150. package/dist/index.js.map +1 -0
  151. package/dist/infrastructure/index.d.ts +17 -0
  152. package/dist/infrastructure/index.d.ts.map +1 -0
  153. package/dist/infrastructure/index.js +16 -0
  154. package/dist/infrastructure/index.js.map +1 -0
  155. package/dist/infrastructure/repositories/hybrid-memory-repository.d.ts +66 -0
  156. package/dist/infrastructure/repositories/hybrid-memory-repository.d.ts.map +1 -0
  157. package/dist/infrastructure/repositories/hybrid-memory-repository.js +409 -0
  158. package/dist/infrastructure/repositories/hybrid-memory-repository.js.map +1 -0
  159. package/dist/migration.d.ts +68 -0
  160. package/dist/migration.d.ts.map +1 -0
  161. package/dist/migration.js +513 -0
  162. package/dist/migration.js.map +1 -0
  163. package/dist/query-builder.d.ts +211 -0
  164. package/dist/query-builder.d.ts.map +1 -0
  165. package/dist/query-builder.js +438 -0
  166. package/dist/query-builder.js.map +1 -0
  167. package/dist/sqlite-backend.d.ts +121 -0
  168. package/dist/sqlite-backend.d.ts.map +1 -0
  169. package/dist/sqlite-backend.js +564 -0
  170. package/dist/sqlite-backend.js.map +1 -0
  171. package/dist/sqljs-backend.d.ts +128 -0
  172. package/dist/sqljs-backend.d.ts.map +1 -0
  173. package/dist/sqljs-backend.js +598 -0
  174. package/dist/sqljs-backend.js.map +1 -0
  175. package/dist/types.d.ts +481 -0
  176. package/dist/types.d.ts.map +1 -0
  177. package/dist/types.js +58 -0
  178. package/dist/types.js.map +1 -0
  179. package/docs/AGENTDB-INTEGRATION.md +388 -0
  180. package/docs/CROSS_PLATFORM.md +505 -0
  181. package/docs/WINDOWS_SUPPORT.md +422 -0
  182. package/examples/agentdb-example.ts +345 -0
  183. package/examples/cross-platform-usage.ts +326 -0
  184. package/framework/benchmark.ts +112 -0
  185. package/package.json +31 -0
  186. package/src/agentdb-adapter.ts +884 -0
  187. package/src/agentdb-backend.test.ts +339 -0
  188. package/src/agentdb-backend.ts +1016 -0
  189. package/src/application/commands/delete-memory.command.ts +172 -0
  190. package/src/application/commands/store-memory.command.ts +103 -0
  191. package/src/application/index.ts +36 -0
  192. package/src/application/queries/search-memory.query.ts +237 -0
  193. package/src/application/services/memory-application-service.ts +236 -0
  194. package/src/cache-manager.ts +516 -0
  195. package/src/database-provider.test.ts +364 -0
  196. package/src/database-provider.ts +511 -0
  197. package/src/domain/entities/memory-entry.ts +289 -0
  198. package/src/domain/index.ts +35 -0
  199. package/src/domain/repositories/memory-repository.interface.ts +120 -0
  200. package/src/domain/services/memory-domain-service.ts +403 -0
  201. package/src/hnsw-index.ts +1013 -0
  202. package/src/hybrid-backend.test.ts +399 -0
  203. package/src/hybrid-backend.ts +694 -0
  204. package/src/index.ts +515 -0
  205. package/src/infrastructure/index.ts +23 -0
  206. package/src/infrastructure/repositories/hybrid-memory-repository.ts +516 -0
  207. package/src/migration.ts +669 -0
  208. package/src/query-builder.ts +542 -0
  209. package/src/sqlite-backend.ts +732 -0
  210. package/src/sqljs-backend.ts +763 -0
  211. package/src/types.ts +727 -0
  212. package/tsconfig.json +9 -0
  213. package/tsconfig.tsbuildinfo +1 -0
  214. package/verify-cross-platform.ts +170 -0
@@ -0,0 +1,481 @@
1
+ /**
2
+ * V3 Unified Memory Types
3
+ *
4
+ * Type definitions for the unified memory system based on AgentDB with HNSW indexing.
5
+ * Supports 150x-12,500x faster vector search compared to brute-force approaches.
6
+ *
7
+ * @module v3/memory/types
8
+ */
9
+ /**
10
+ * Memory entry type classification
11
+ */
12
+ export type MemoryType = 'episodic' | 'semantic' | 'procedural' | 'working' | 'cache';
13
+ /**
14
+ * Access level for memory entries
15
+ */
16
+ export type AccessLevel = 'private' | 'team' | 'swarm' | 'public' | 'system';
17
+ /**
18
+ * Consistency level for distributed memory operations
19
+ */
20
+ export type ConsistencyLevel = 'strong' | 'eventual' | 'session' | 'weak';
21
+ /**
22
+ * Distance metrics for vector similarity search
23
+ */
24
+ export type DistanceMetric = 'cosine' | 'euclidean' | 'dot' | 'manhattan';
25
+ /**
26
+ * Core memory entry structure with vector embedding support
27
+ */
28
+ export interface MemoryEntry {
29
+ /** Unique identifier */
30
+ id: string;
31
+ /** Human-readable key for retrieval */
32
+ key: string;
33
+ /** Actual content of the memory */
34
+ content: string;
35
+ /** Vector embedding for semantic search (Float32Array for efficiency) */
36
+ embedding?: Float32Array;
37
+ /** Type of memory */
38
+ type: MemoryType;
39
+ /** Namespace for organization */
40
+ namespace: string;
41
+ /** Tags for categorization and filtering */
42
+ tags: string[];
43
+ /** Additional metadata */
44
+ metadata: Record<string, unknown>;
45
+ /** Owner agent ID */
46
+ ownerId?: string;
47
+ /** Access level */
48
+ accessLevel: AccessLevel;
49
+ /** Creation timestamp */
50
+ createdAt: number;
51
+ /** Last update timestamp */
52
+ updatedAt: number;
53
+ /** Expiration timestamp (optional) */
54
+ expiresAt?: number;
55
+ /** Version number for optimistic locking */
56
+ version: number;
57
+ /** References to other memory entries */
58
+ references: string[];
59
+ /** Access count for usage tracking */
60
+ accessCount: number;
61
+ /** Last access timestamp */
62
+ lastAccessedAt: number;
63
+ }
64
+ /**
65
+ * Input for creating a new memory entry
66
+ */
67
+ export interface MemoryEntryInput {
68
+ key: string;
69
+ content: string;
70
+ type?: MemoryType;
71
+ namespace?: string;
72
+ tags?: string[];
73
+ metadata?: Record<string, unknown>;
74
+ ownerId?: string;
75
+ accessLevel?: AccessLevel;
76
+ expiresAt?: number;
77
+ references?: string[];
78
+ }
79
+ /**
80
+ * Partial update for a memory entry
81
+ */
82
+ export interface MemoryEntryUpdate {
83
+ content?: string;
84
+ tags?: string[];
85
+ metadata?: Record<string, unknown>;
86
+ accessLevel?: AccessLevel;
87
+ expiresAt?: number;
88
+ references?: string[];
89
+ }
90
+ /**
91
+ * Query type for memory retrieval
92
+ */
93
+ export type QueryType = 'semantic' | 'exact' | 'prefix' | 'tag' | 'hybrid';
94
+ /**
95
+ * Memory query specification
96
+ */
97
+ export interface MemoryQuery {
98
+ /** Type of query to perform */
99
+ type: QueryType;
100
+ /** Content for semantic search (will be embedded) */
101
+ content?: string;
102
+ /** Pre-computed embedding for semantic search */
103
+ embedding?: Float32Array;
104
+ /** Exact key to match */
105
+ key?: string;
106
+ /** Key prefix to match */
107
+ keyPrefix?: string;
108
+ /** Namespace filter */
109
+ namespace?: string;
110
+ /** Tag filters (entries must have all specified tags) */
111
+ tags?: string[];
112
+ /** Memory type filter */
113
+ memoryType?: MemoryType;
114
+ /** Access level filter */
115
+ accessLevel?: AccessLevel;
116
+ /** Owner filter */
117
+ ownerId?: string;
118
+ /** Metadata filters */
119
+ metadata?: Record<string, unknown>;
120
+ /** Time range filters */
121
+ createdAfter?: number;
122
+ createdBefore?: number;
123
+ updatedAfter?: number;
124
+ updatedBefore?: number;
125
+ /** Maximum number of results */
126
+ limit: number;
127
+ /** Offset for pagination */
128
+ offset?: number;
129
+ /** Minimum similarity threshold (0-1) for semantic search */
130
+ threshold?: number;
131
+ /** Include expired entries */
132
+ includeExpired?: boolean;
133
+ /** Distance metric for semantic search */
134
+ distanceMetric?: DistanceMetric;
135
+ }
136
+ /**
137
+ * Search result with similarity score
138
+ */
139
+ export interface SearchResult {
140
+ /** The memory entry */
141
+ entry: MemoryEntry;
142
+ /** Similarity score (0-1, higher is better) */
143
+ score: number;
144
+ /** Distance from query vector */
145
+ distance: number;
146
+ }
147
+ /**
148
+ * Search options for HNSW vector search
149
+ */
150
+ export interface SearchOptions {
151
+ /** Number of results to return */
152
+ k: number;
153
+ /** Search expansion factor (higher = more accurate, slower) */
154
+ ef?: number;
155
+ /** Minimum similarity threshold (0-1) */
156
+ threshold?: number;
157
+ /** Distance metric */
158
+ metric?: DistanceMetric;
159
+ /** Additional filters to apply post-search */
160
+ filters?: MemoryQuery;
161
+ }
162
+ /**
163
+ * HNSW index configuration
164
+ */
165
+ export interface HNSWConfig {
166
+ /** Vector dimensions (e.g., 1536 for OpenAI embeddings) */
167
+ dimensions: number;
168
+ /** Maximum number of connections per layer (default: 16) */
169
+ M: number;
170
+ /** Size of the dynamic candidate list during construction (default: 200) */
171
+ efConstruction: number;
172
+ /** Maximum elements the index can hold */
173
+ maxElements: number;
174
+ /** Distance metric */
175
+ metric: DistanceMetric;
176
+ /** Enable quantization for memory efficiency */
177
+ quantization?: QuantizationConfig;
178
+ }
179
+ /**
180
+ * Quantization configuration for memory reduction
181
+ */
182
+ export interface QuantizationConfig {
183
+ /** Quantization type */
184
+ type: 'binary' | 'scalar' | 'product';
185
+ /** Number of bits for scalar quantization */
186
+ bits?: 4 | 8 | 16;
187
+ /** Number of subquantizers for product quantization */
188
+ subquantizers?: number;
189
+ /** Codebook size for product quantization */
190
+ codebookSize?: number;
191
+ }
192
+ /**
193
+ * HNSW index statistics
194
+ */
195
+ export interface HNSWStats {
196
+ /** Total number of vectors in the index */
197
+ vectorCount: number;
198
+ /** Memory usage in bytes */
199
+ memoryUsage: number;
200
+ /** Average search time in milliseconds */
201
+ avgSearchTime: number;
202
+ /** Index build time in milliseconds */
203
+ buildTime: number;
204
+ /** Compression ratio if quantization is enabled */
205
+ compressionRatio?: number;
206
+ }
207
+ /**
208
+ * Memory backend interface for storage and retrieval
209
+ */
210
+ export interface IMemoryBackend {
211
+ /** Initialize the backend */
212
+ initialize(): Promise<void>;
213
+ /** Shutdown the backend */
214
+ shutdown(): Promise<void>;
215
+ /** Store a memory entry */
216
+ store(entry: MemoryEntry): Promise<void>;
217
+ /** Retrieve a memory entry by ID */
218
+ get(id: string): Promise<MemoryEntry | null>;
219
+ /** Retrieve a memory entry by key within a namespace */
220
+ getByKey(namespace: string, key: string): Promise<MemoryEntry | null>;
221
+ /** Update a memory entry */
222
+ update(id: string, update: MemoryEntryUpdate): Promise<MemoryEntry | null>;
223
+ /** Delete a memory entry */
224
+ delete(id: string): Promise<boolean>;
225
+ /** Query memory entries */
226
+ query(query: MemoryQuery): Promise<MemoryEntry[]>;
227
+ /** Semantic vector search */
228
+ search(embedding: Float32Array, options: SearchOptions): Promise<SearchResult[]>;
229
+ /** Bulk insert entries */
230
+ bulkInsert(entries: MemoryEntry[]): Promise<void>;
231
+ /** Bulk delete entries */
232
+ bulkDelete(ids: string[]): Promise<number>;
233
+ /** Get entry count */
234
+ count(namespace?: string): Promise<number>;
235
+ /** List all namespaces */
236
+ listNamespaces(): Promise<string[]>;
237
+ /** Clear all entries in a namespace */
238
+ clearNamespace(namespace: string): Promise<number>;
239
+ /** Get backend statistics */
240
+ getStats(): Promise<BackendStats>;
241
+ /** Perform health check */
242
+ healthCheck(): Promise<HealthCheckResult>;
243
+ }
244
+ /**
245
+ * Backend statistics
246
+ */
247
+ export interface BackendStats {
248
+ /** Total number of entries */
249
+ totalEntries: number;
250
+ /** Entries by namespace */
251
+ entriesByNamespace: Record<string, number>;
252
+ /** Entries by type */
253
+ entriesByType: Record<MemoryType, number>;
254
+ /** Total memory usage in bytes */
255
+ memoryUsage: number;
256
+ /** HNSW index statistics */
257
+ hnswStats?: HNSWStats;
258
+ /** Cache statistics */
259
+ cacheStats?: CacheStats;
260
+ /** Average query time in milliseconds */
261
+ avgQueryTime: number;
262
+ /** Average search time in milliseconds */
263
+ avgSearchTime: number;
264
+ }
265
+ /**
266
+ * Health check result
267
+ */
268
+ export interface HealthCheckResult {
269
+ /** Overall health status */
270
+ status: 'healthy' | 'degraded' | 'unhealthy';
271
+ /** Individual component health */
272
+ components: {
273
+ storage: ComponentHealth;
274
+ index: ComponentHealth;
275
+ cache: ComponentHealth;
276
+ };
277
+ /** Health check timestamp */
278
+ timestamp: number;
279
+ /** Any issues detected */
280
+ issues: string[];
281
+ /** Recommendations for improvement */
282
+ recommendations: string[];
283
+ }
284
+ /**
285
+ * Individual component health status
286
+ */
287
+ export interface ComponentHealth {
288
+ status: 'healthy' | 'degraded' | 'unhealthy';
289
+ latency: number;
290
+ message?: string;
291
+ }
292
+ /**
293
+ * Cache configuration
294
+ */
295
+ export interface CacheConfig {
296
+ /** Maximum number of entries in the cache */
297
+ maxSize: number;
298
+ /** Default TTL in milliseconds */
299
+ ttl: number;
300
+ /** Enable LRU eviction */
301
+ lruEnabled: boolean;
302
+ /** Maximum memory usage in bytes */
303
+ maxMemory?: number;
304
+ /** Enable write-through caching */
305
+ writeThrough: boolean;
306
+ }
307
+ /**
308
+ * Cache statistics
309
+ */
310
+ export interface CacheStats {
311
+ /** Number of entries in cache */
312
+ size: number;
313
+ /** Cache hit rate (0-1) */
314
+ hitRate: number;
315
+ /** Total cache hits */
316
+ hits: number;
317
+ /** Total cache misses */
318
+ misses: number;
319
+ /** Total evictions */
320
+ evictions: number;
321
+ /** Memory usage in bytes */
322
+ memoryUsage: number;
323
+ }
324
+ /**
325
+ * Cached entry wrapper
326
+ */
327
+ export interface CachedEntry<T> {
328
+ /** The cached data */
329
+ data: T;
330
+ /** When the entry was cached */
331
+ cachedAt: number;
332
+ /** When the entry expires */
333
+ expiresAt: number;
334
+ /** Last access timestamp */
335
+ lastAccessedAt: number;
336
+ /** Access count */
337
+ accessCount: number;
338
+ }
339
+ /**
340
+ * Migration source type
341
+ */
342
+ export type MigrationSource = 'sqlite' | 'markdown' | 'json' | 'memory-manager' | 'swarm-memory' | 'distributed-memory';
343
+ /**
344
+ * Migration configuration
345
+ */
346
+ export interface MigrationConfig {
347
+ /** Source backend type */
348
+ source: MigrationSource;
349
+ /** Source path or connection string */
350
+ sourcePath: string;
351
+ /** Batch size for migration */
352
+ batchSize: number;
353
+ /** Generate embeddings during migration */
354
+ generateEmbeddings: boolean;
355
+ /** Validate data during migration */
356
+ validateData: boolean;
357
+ /** Continue on error */
358
+ continueOnError: boolean;
359
+ /** Namespace mapping */
360
+ namespaceMapping?: Record<string, string>;
361
+ /** Type mapping */
362
+ typeMapping?: Record<string, MemoryType>;
363
+ }
364
+ /**
365
+ * Migration progress
366
+ */
367
+ export interface MigrationProgress {
368
+ /** Total entries to migrate */
369
+ total: number;
370
+ /** Entries migrated so far */
371
+ migrated: number;
372
+ /** Entries failed */
373
+ failed: number;
374
+ /** Entries skipped */
375
+ skipped: number;
376
+ /** Current batch number */
377
+ currentBatch: number;
378
+ /** Total batches */
379
+ totalBatches: number;
380
+ /** Progress percentage (0-100) */
381
+ percentage: number;
382
+ /** Estimated time remaining in milliseconds */
383
+ estimatedTimeRemaining: number;
384
+ /** Errors encountered */
385
+ errors: MigrationError[];
386
+ }
387
+ /**
388
+ * Migration error
389
+ */
390
+ export interface MigrationError {
391
+ /** Entry ID or key that failed */
392
+ entryId: string;
393
+ /** Error message */
394
+ message: string;
395
+ /** Error code */
396
+ code: string;
397
+ /** Whether the error is recoverable */
398
+ recoverable: boolean;
399
+ }
400
+ /**
401
+ * Migration result
402
+ */
403
+ export interface MigrationResult {
404
+ /** Whether migration completed successfully */
405
+ success: boolean;
406
+ /** Final progress state */
407
+ progress: MigrationProgress;
408
+ /** Total time taken in milliseconds */
409
+ duration: number;
410
+ /** Summary message */
411
+ summary: string;
412
+ }
413
+ /**
414
+ * Memory event types
415
+ */
416
+ export type MemoryEventType = 'entry:created' | 'entry:updated' | 'entry:deleted' | 'entry:accessed' | 'entry:expired' | 'cache:hit' | 'cache:miss' | 'cache:eviction' | 'index:rebuilt' | 'migration:started' | 'migration:progress' | 'migration:completed' | 'migration:failed';
417
+ /**
418
+ * Memory event payload
419
+ */
420
+ export interface MemoryEvent {
421
+ type: MemoryEventType;
422
+ timestamp: number;
423
+ data: Record<string, unknown>;
424
+ }
425
+ /**
426
+ * Memory event handler
427
+ */
428
+ export type MemoryEventHandler = (event: MemoryEvent) => void | Promise<void>;
429
+ /**
430
+ * SONA learning mode for adaptive memory
431
+ */
432
+ export type SONAMode = 'real-time' | 'balanced' | 'research' | 'edge' | 'batch';
433
+ /**
434
+ * Learning pattern from SONA integration
435
+ */
436
+ export interface LearningPattern {
437
+ /** Pattern ID */
438
+ id: string;
439
+ /** Pattern data */
440
+ data: Record<string, unknown>;
441
+ /** SONA mode used */
442
+ mode: SONAMode;
443
+ /** Reward signal */
444
+ reward: number;
445
+ /** Trajectory data */
446
+ trajectory: unknown[];
447
+ /** Adaptation time in milliseconds */
448
+ adaptationTime: number;
449
+ /** Creation timestamp */
450
+ createdAt: number;
451
+ }
452
+ /**
453
+ * Embedding generator function type
454
+ */
455
+ export type EmbeddingGenerator = (content: string) => Promise<Float32Array>;
456
+ /**
457
+ * Generates a unique memory ID
458
+ */
459
+ export declare function generateMemoryId(): string;
460
+ /**
461
+ * Creates a default memory entry
462
+ */
463
+ export declare function createDefaultEntry(input: MemoryEntryInput): MemoryEntry;
464
+ /**
465
+ * Performance targets for V3 memory system
466
+ */
467
+ export declare const PERFORMANCE_TARGETS: {
468
+ /** Maximum vector search time for 100k vectors */
469
+ readonly MAX_SEARCH_TIME_100K: 1;
470
+ /** Maximum write time per entry */
471
+ readonly MAX_WRITE_TIME: 5;
472
+ /** Maximum batch insert time per entry */
473
+ readonly MAX_BATCH_INSERT_TIME: 1;
474
+ /** Target memory reduction from legacy systems */
475
+ readonly MEMORY_REDUCTION_TARGET: 0.5;
476
+ /** Minimum search improvement over brute force */
477
+ readonly MIN_SEARCH_IMPROVEMENT: 150;
478
+ /** Maximum search improvement over brute force */
479
+ readonly MAX_SEARCH_IMPROVEMENT: 12500;
480
+ };
481
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,58 @@
1
+ /**
2
+ * V3 Unified Memory Types
3
+ *
4
+ * Type definitions for the unified memory system based on AgentDB with HNSW indexing.
5
+ * Supports 150x-12,500x faster vector search compared to brute-force approaches.
6
+ *
7
+ * @module v3/memory/types
8
+ */
9
+ /**
10
+ * Generates a unique memory ID
11
+ */
12
+ export function generateMemoryId() {
13
+ const timestamp = Date.now().toString(36);
14
+ const random = Math.random().toString(36).substring(2, 10);
15
+ return `mem_${timestamp}_${random}`;
16
+ }
17
+ /**
18
+ * Creates a default memory entry
19
+ */
20
+ export function createDefaultEntry(input) {
21
+ const now = Date.now();
22
+ return {
23
+ id: generateMemoryId(),
24
+ key: input.key,
25
+ content: input.content,
26
+ type: input.type || 'semantic',
27
+ namespace: input.namespace || 'default',
28
+ tags: input.tags || [],
29
+ metadata: input.metadata || {},
30
+ ownerId: input.ownerId,
31
+ accessLevel: input.accessLevel || 'private',
32
+ createdAt: now,
33
+ updatedAt: now,
34
+ expiresAt: input.expiresAt,
35
+ version: 1,
36
+ references: input.references || [],
37
+ accessCount: 0,
38
+ lastAccessedAt: now,
39
+ };
40
+ }
41
+ /**
42
+ * Performance targets for V3 memory system
43
+ */
44
+ export const PERFORMANCE_TARGETS = {
45
+ /** Maximum vector search time for 100k vectors */
46
+ MAX_SEARCH_TIME_100K: 1, // ms
47
+ /** Maximum write time per entry */
48
+ MAX_WRITE_TIME: 5, // ms
49
+ /** Maximum batch insert time per entry */
50
+ MAX_BATCH_INSERT_TIME: 1, // ms
51
+ /** Target memory reduction from legacy systems */
52
+ MEMORY_REDUCTION_TARGET: 0.5, // 50%
53
+ /** Minimum search improvement over brute force */
54
+ MIN_SEARCH_IMPROVEMENT: 150, // 150x
55
+ /** Maximum search improvement over brute force */
56
+ MAX_SEARCH_IMPROVEMENT: 12500, // 12,500x
57
+ };
58
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAwpBH;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3D,OAAO,OAAO,SAAS,IAAI,MAAM,EAAE,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAuB;IACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO;QACL,EAAE,EAAE,gBAAgB,EAAE;QACtB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,UAAU;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,SAAS;QACvC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;QAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,SAAS;QAC3C,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,OAAO,EAAE,CAAC;QACV,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;QAClC,WAAW,EAAE,CAAC;QACd,cAAc,EAAE,GAAG;KACpB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,kDAAkD;IAClD,oBAAoB,EAAE,CAAC,EAAE,KAAK;IAE9B,mCAAmC;IACnC,cAAc,EAAE,CAAC,EAAE,KAAK;IAExB,0CAA0C;IAC1C,qBAAqB,EAAE,CAAC,EAAE,KAAK;IAE/B,kDAAkD;IAClD,uBAAuB,EAAE,GAAG,EAAE,MAAM;IAEpC,kDAAkD;IAClD,sBAAsB,EAAE,GAAG,EAAE,OAAO;IAEpC,kDAAkD;IAClD,sBAAsB,EAAE,KAAK,EAAE,UAAU;CACjC,CAAC"}