@danielsimonjr/memoryjs 1.0.0 → 1.2.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 (300) hide show
  1. package/README.md +385 -113
  2. package/README.md.backup-1768084780988 +266 -0
  3. package/dist/index.cjs +24156 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +16967 -0
  6. package/dist/index.d.ts +16963 -11
  7. package/dist/index.js +23887 -19
  8. package/dist/index.js.map +1 -1
  9. package/dist/workers/levenshteinWorker.cjs +102 -0
  10. package/dist/workers/levenshteinWorker.cjs.map +1 -0
  11. package/dist/workers/levenshteinWorker.js +57 -91
  12. package/dist/workers/levenshteinWorker.js.map +1 -1
  13. package/package.json +75 -69
  14. package/dist/core/EntityManager.d.ts +0 -268
  15. package/dist/core/EntityManager.d.ts.map +0 -1
  16. package/dist/core/EntityManager.js +0 -512
  17. package/dist/core/EntityManager.js.map +0 -1
  18. package/dist/core/GraphEventEmitter.d.ts +0 -202
  19. package/dist/core/GraphEventEmitter.d.ts.map +0 -1
  20. package/dist/core/GraphEventEmitter.js +0 -347
  21. package/dist/core/GraphEventEmitter.js.map +0 -1
  22. package/dist/core/GraphStorage.d.ts +0 -395
  23. package/dist/core/GraphStorage.d.ts.map +0 -1
  24. package/dist/core/GraphStorage.js +0 -786
  25. package/dist/core/GraphStorage.js.map +0 -1
  26. package/dist/core/GraphTraversal.d.ts +0 -141
  27. package/dist/core/GraphTraversal.d.ts.map +0 -1
  28. package/dist/core/GraphTraversal.js +0 -574
  29. package/dist/core/GraphTraversal.js.map +0 -1
  30. package/dist/core/HierarchyManager.d.ts +0 -111
  31. package/dist/core/HierarchyManager.d.ts.map +0 -1
  32. package/dist/core/HierarchyManager.js +0 -225
  33. package/dist/core/HierarchyManager.js.map +0 -1
  34. package/dist/core/ManagerContext.d.ts +0 -76
  35. package/dist/core/ManagerContext.d.ts.map +0 -1
  36. package/dist/core/ManagerContext.js +0 -129
  37. package/dist/core/ManagerContext.js.map +0 -1
  38. package/dist/core/ObservationManager.d.ts +0 -85
  39. package/dist/core/ObservationManager.d.ts.map +0 -1
  40. package/dist/core/ObservationManager.js +0 -124
  41. package/dist/core/ObservationManager.js.map +0 -1
  42. package/dist/core/RelationManager.d.ts +0 -131
  43. package/dist/core/RelationManager.d.ts.map +0 -1
  44. package/dist/core/RelationManager.js +0 -212
  45. package/dist/core/RelationManager.js.map +0 -1
  46. package/dist/core/SQLiteStorage.d.ts +0 -354
  47. package/dist/core/SQLiteStorage.d.ts.map +0 -1
  48. package/dist/core/SQLiteStorage.js +0 -919
  49. package/dist/core/SQLiteStorage.js.map +0 -1
  50. package/dist/core/StorageFactory.d.ts +0 -45
  51. package/dist/core/StorageFactory.d.ts.map +0 -1
  52. package/dist/core/StorageFactory.js +0 -65
  53. package/dist/core/StorageFactory.js.map +0 -1
  54. package/dist/core/TransactionManager.d.ts +0 -464
  55. package/dist/core/TransactionManager.d.ts.map +0 -1
  56. package/dist/core/TransactionManager.js +0 -869
  57. package/dist/core/TransactionManager.js.map +0 -1
  58. package/dist/core/index.d.ts +0 -17
  59. package/dist/core/index.d.ts.map +0 -1
  60. package/dist/core/index.js +0 -20
  61. package/dist/core/index.js.map +0 -1
  62. package/dist/features/AnalyticsManager.d.ts +0 -44
  63. package/dist/features/AnalyticsManager.d.ts.map +0 -1
  64. package/dist/features/AnalyticsManager.js +0 -224
  65. package/dist/features/AnalyticsManager.js.map +0 -1
  66. package/dist/features/ArchiveManager.d.ts +0 -133
  67. package/dist/features/ArchiveManager.d.ts.map +0 -1
  68. package/dist/features/ArchiveManager.js +0 -282
  69. package/dist/features/ArchiveManager.js.map +0 -1
  70. package/dist/features/CompressionManager.d.ts +0 -119
  71. package/dist/features/CompressionManager.d.ts.map +0 -1
  72. package/dist/features/CompressionManager.js +0 -470
  73. package/dist/features/CompressionManager.js.map +0 -1
  74. package/dist/features/IOManager.d.ts +0 -225
  75. package/dist/features/IOManager.d.ts.map +0 -1
  76. package/dist/features/IOManager.js +0 -1093
  77. package/dist/features/IOManager.js.map +0 -1
  78. package/dist/features/KeywordExtractor.d.ts +0 -61
  79. package/dist/features/KeywordExtractor.d.ts.map +0 -1
  80. package/dist/features/KeywordExtractor.js +0 -127
  81. package/dist/features/KeywordExtractor.js.map +0 -1
  82. package/dist/features/ObservationNormalizer.d.ts +0 -90
  83. package/dist/features/ObservationNormalizer.d.ts.map +0 -1
  84. package/dist/features/ObservationNormalizer.js +0 -194
  85. package/dist/features/ObservationNormalizer.js.map +0 -1
  86. package/dist/features/StreamingExporter.d.ts +0 -128
  87. package/dist/features/StreamingExporter.d.ts.map +0 -1
  88. package/dist/features/StreamingExporter.js +0 -212
  89. package/dist/features/StreamingExporter.js.map +0 -1
  90. package/dist/features/TagManager.d.ts +0 -147
  91. package/dist/features/TagManager.d.ts.map +0 -1
  92. package/dist/features/TagManager.js +0 -211
  93. package/dist/features/TagManager.js.map +0 -1
  94. package/dist/features/index.d.ts +0 -14
  95. package/dist/features/index.d.ts.map +0 -1
  96. package/dist/features/index.js +0 -15
  97. package/dist/features/index.js.map +0 -1
  98. package/dist/index.d.ts.map +0 -1
  99. package/dist/search/BM25Search.d.ts +0 -148
  100. package/dist/search/BM25Search.d.ts.map +0 -1
  101. package/dist/search/BM25Search.js +0 -340
  102. package/dist/search/BM25Search.js.map +0 -1
  103. package/dist/search/BasicSearch.d.ts +0 -51
  104. package/dist/search/BasicSearch.d.ts.map +0 -1
  105. package/dist/search/BasicSearch.js +0 -138
  106. package/dist/search/BasicSearch.js.map +0 -1
  107. package/dist/search/BooleanSearch.d.ts +0 -98
  108. package/dist/search/BooleanSearch.d.ts.map +0 -1
  109. package/dist/search/BooleanSearch.js +0 -431
  110. package/dist/search/BooleanSearch.js.map +0 -1
  111. package/dist/search/EarlyTerminationManager.d.ts +0 -140
  112. package/dist/search/EarlyTerminationManager.d.ts.map +0 -1
  113. package/dist/search/EarlyTerminationManager.js +0 -280
  114. package/dist/search/EarlyTerminationManager.js.map +0 -1
  115. package/dist/search/EmbeddingCache.d.ts +0 -175
  116. package/dist/search/EmbeddingCache.d.ts.map +0 -1
  117. package/dist/search/EmbeddingCache.js +0 -247
  118. package/dist/search/EmbeddingCache.js.map +0 -1
  119. package/dist/search/EmbeddingService.d.ts +0 -277
  120. package/dist/search/EmbeddingService.d.ts.map +0 -1
  121. package/dist/search/EmbeddingService.js +0 -531
  122. package/dist/search/EmbeddingService.js.map +0 -1
  123. package/dist/search/FuzzySearch.d.ts +0 -118
  124. package/dist/search/FuzzySearch.d.ts.map +0 -1
  125. package/dist/search/FuzzySearch.js +0 -313
  126. package/dist/search/FuzzySearch.js.map +0 -1
  127. package/dist/search/HybridScorer.d.ts +0 -181
  128. package/dist/search/HybridScorer.d.ts.map +0 -1
  129. package/dist/search/HybridScorer.js +0 -258
  130. package/dist/search/HybridScorer.js.map +0 -1
  131. package/dist/search/HybridSearchManager.d.ts +0 -80
  132. package/dist/search/HybridSearchManager.d.ts.map +0 -1
  133. package/dist/search/HybridSearchManager.js +0 -188
  134. package/dist/search/HybridSearchManager.js.map +0 -1
  135. package/dist/search/IncrementalIndexer.d.ts +0 -201
  136. package/dist/search/IncrementalIndexer.d.ts.map +0 -1
  137. package/dist/search/IncrementalIndexer.js +0 -343
  138. package/dist/search/IncrementalIndexer.js.map +0 -1
  139. package/dist/search/OptimizedInvertedIndex.d.ts +0 -163
  140. package/dist/search/OptimizedInvertedIndex.d.ts.map +0 -1
  141. package/dist/search/OptimizedInvertedIndex.js +0 -359
  142. package/dist/search/OptimizedInvertedIndex.js.map +0 -1
  143. package/dist/search/ParallelSearchExecutor.d.ts +0 -172
  144. package/dist/search/ParallelSearchExecutor.d.ts.map +0 -1
  145. package/dist/search/ParallelSearchExecutor.js +0 -310
  146. package/dist/search/ParallelSearchExecutor.js.map +0 -1
  147. package/dist/search/QuantizedVectorStore.d.ts +0 -171
  148. package/dist/search/QuantizedVectorStore.d.ts.map +0 -1
  149. package/dist/search/QuantizedVectorStore.js +0 -308
  150. package/dist/search/QuantizedVectorStore.js.map +0 -1
  151. package/dist/search/QueryAnalyzer.d.ts +0 -76
  152. package/dist/search/QueryAnalyzer.d.ts.map +0 -1
  153. package/dist/search/QueryAnalyzer.js +0 -228
  154. package/dist/search/QueryAnalyzer.js.map +0 -1
  155. package/dist/search/QueryCostEstimator.d.ts +0 -244
  156. package/dist/search/QueryCostEstimator.d.ts.map +0 -1
  157. package/dist/search/QueryCostEstimator.js +0 -653
  158. package/dist/search/QueryCostEstimator.js.map +0 -1
  159. package/dist/search/QueryPlanCache.d.ts +0 -220
  160. package/dist/search/QueryPlanCache.d.ts.map +0 -1
  161. package/dist/search/QueryPlanCache.js +0 -380
  162. package/dist/search/QueryPlanCache.js.map +0 -1
  163. package/dist/search/QueryPlanner.d.ts +0 -58
  164. package/dist/search/QueryPlanner.d.ts.map +0 -1
  165. package/dist/search/QueryPlanner.js +0 -138
  166. package/dist/search/QueryPlanner.js.map +0 -1
  167. package/dist/search/RankedSearch.d.ts +0 -71
  168. package/dist/search/RankedSearch.d.ts.map +0 -1
  169. package/dist/search/RankedSearch.js +0 -239
  170. package/dist/search/RankedSearch.js.map +0 -1
  171. package/dist/search/ReflectionManager.d.ts +0 -120
  172. package/dist/search/ReflectionManager.d.ts.map +0 -1
  173. package/dist/search/ReflectionManager.js +0 -232
  174. package/dist/search/ReflectionManager.js.map +0 -1
  175. package/dist/search/SavedSearchManager.d.ts +0 -79
  176. package/dist/search/SavedSearchManager.d.ts.map +0 -1
  177. package/dist/search/SavedSearchManager.js +0 -147
  178. package/dist/search/SavedSearchManager.js.map +0 -1
  179. package/dist/search/SearchFilterChain.d.ts +0 -120
  180. package/dist/search/SearchFilterChain.d.ts.map +0 -1
  181. package/dist/search/SearchFilterChain.js +0 -186
  182. package/dist/search/SearchFilterChain.js.map +0 -1
  183. package/dist/search/SearchManager.d.ts +0 -326
  184. package/dist/search/SearchManager.d.ts.map +0 -1
  185. package/dist/search/SearchManager.js +0 -454
  186. package/dist/search/SearchManager.js.map +0 -1
  187. package/dist/search/SearchSuggestions.d.ts +0 -27
  188. package/dist/search/SearchSuggestions.d.ts.map +0 -1
  189. package/dist/search/SearchSuggestions.js +0 -58
  190. package/dist/search/SearchSuggestions.js.map +0 -1
  191. package/dist/search/SemanticSearch.d.ts +0 -149
  192. package/dist/search/SemanticSearch.d.ts.map +0 -1
  193. package/dist/search/SemanticSearch.js +0 -324
  194. package/dist/search/SemanticSearch.js.map +0 -1
  195. package/dist/search/SymbolicSearch.d.ts +0 -61
  196. package/dist/search/SymbolicSearch.d.ts.map +0 -1
  197. package/dist/search/SymbolicSearch.js +0 -164
  198. package/dist/search/SymbolicSearch.js.map +0 -1
  199. package/dist/search/TFIDFEventSync.d.ts +0 -85
  200. package/dist/search/TFIDFEventSync.d.ts.map +0 -1
  201. package/dist/search/TFIDFEventSync.js +0 -134
  202. package/dist/search/TFIDFEventSync.js.map +0 -1
  203. package/dist/search/TFIDFIndexManager.d.ts +0 -151
  204. package/dist/search/TFIDFIndexManager.d.ts.map +0 -1
  205. package/dist/search/TFIDFIndexManager.js +0 -433
  206. package/dist/search/TFIDFIndexManager.js.map +0 -1
  207. package/dist/search/VectorStore.d.ts +0 -235
  208. package/dist/search/VectorStore.d.ts.map +0 -1
  209. package/dist/search/VectorStore.js +0 -312
  210. package/dist/search/VectorStore.js.map +0 -1
  211. package/dist/search/index.d.ts +0 -35
  212. package/dist/search/index.d.ts.map +0 -1
  213. package/dist/search/index.js +0 -53
  214. package/dist/search/index.js.map +0 -1
  215. package/dist/types/index.d.ts +0 -13
  216. package/dist/types/index.d.ts.map +0 -1
  217. package/dist/types/index.js +0 -13
  218. package/dist/types/index.js.map +0 -1
  219. package/dist/types/types.d.ts +0 -1811
  220. package/dist/types/types.d.ts.map +0 -1
  221. package/dist/types/types.js +0 -10
  222. package/dist/types/types.js.map +0 -1
  223. package/dist/utils/BatchProcessor.d.ts +0 -271
  224. package/dist/utils/BatchProcessor.d.ts.map +0 -1
  225. package/dist/utils/BatchProcessor.js +0 -377
  226. package/dist/utils/BatchProcessor.js.map +0 -1
  227. package/dist/utils/MemoryMonitor.d.ts +0 -176
  228. package/dist/utils/MemoryMonitor.d.ts.map +0 -1
  229. package/dist/utils/MemoryMonitor.js +0 -306
  230. package/dist/utils/MemoryMonitor.js.map +0 -1
  231. package/dist/utils/WorkerPoolManager.d.ts +0 -233
  232. package/dist/utils/WorkerPoolManager.d.ts.map +0 -1
  233. package/dist/utils/WorkerPoolManager.js +0 -421
  234. package/dist/utils/WorkerPoolManager.js.map +0 -1
  235. package/dist/utils/compressedCache.d.ts +0 -221
  236. package/dist/utils/compressedCache.d.ts.map +0 -1
  237. package/dist/utils/compressedCache.js +0 -349
  238. package/dist/utils/compressedCache.js.map +0 -1
  239. package/dist/utils/compressionUtil.d.ts +0 -214
  240. package/dist/utils/compressionUtil.d.ts.map +0 -1
  241. package/dist/utils/compressionUtil.js +0 -248
  242. package/dist/utils/compressionUtil.js.map +0 -1
  243. package/dist/utils/constants.d.ts +0 -245
  244. package/dist/utils/constants.d.ts.map +0 -1
  245. package/dist/utils/constants.js +0 -253
  246. package/dist/utils/constants.js.map +0 -1
  247. package/dist/utils/entityUtils.d.ts +0 -379
  248. package/dist/utils/entityUtils.d.ts.map +0 -1
  249. package/dist/utils/entityUtils.js +0 -649
  250. package/dist/utils/entityUtils.js.map +0 -1
  251. package/dist/utils/errors.d.ts +0 -95
  252. package/dist/utils/errors.d.ts.map +0 -1
  253. package/dist/utils/errors.js +0 -146
  254. package/dist/utils/errors.js.map +0 -1
  255. package/dist/utils/formatters.d.ts +0 -145
  256. package/dist/utils/formatters.d.ts.map +0 -1
  257. package/dist/utils/formatters.js +0 -133
  258. package/dist/utils/formatters.js.map +0 -1
  259. package/dist/utils/index.d.ts +0 -26
  260. package/dist/utils/index.d.ts.map +0 -1
  261. package/dist/utils/index.js +0 -88
  262. package/dist/utils/index.js.map +0 -1
  263. package/dist/utils/indexes.d.ts +0 -270
  264. package/dist/utils/indexes.d.ts.map +0 -1
  265. package/dist/utils/indexes.js +0 -527
  266. package/dist/utils/indexes.js.map +0 -1
  267. package/dist/utils/logger.d.ts +0 -31
  268. package/dist/utils/logger.d.ts.map +0 -1
  269. package/dist/utils/logger.js +0 -41
  270. package/dist/utils/logger.js.map +0 -1
  271. package/dist/utils/operationUtils.d.ts +0 -124
  272. package/dist/utils/operationUtils.d.ts.map +0 -1
  273. package/dist/utils/operationUtils.js +0 -176
  274. package/dist/utils/operationUtils.js.map +0 -1
  275. package/dist/utils/parallelUtils.d.ts +0 -76
  276. package/dist/utils/parallelUtils.d.ts.map +0 -1
  277. package/dist/utils/parallelUtils.js +0 -192
  278. package/dist/utils/parallelUtils.js.map +0 -1
  279. package/dist/utils/schemas.d.ts +0 -556
  280. package/dist/utils/schemas.d.ts.map +0 -1
  281. package/dist/utils/schemas.js +0 -485
  282. package/dist/utils/schemas.js.map +0 -1
  283. package/dist/utils/searchAlgorithms.d.ts +0 -99
  284. package/dist/utils/searchAlgorithms.d.ts.map +0 -1
  285. package/dist/utils/searchAlgorithms.js +0 -168
  286. package/dist/utils/searchAlgorithms.js.map +0 -1
  287. package/dist/utils/searchCache.d.ts +0 -108
  288. package/dist/utils/searchCache.d.ts.map +0 -1
  289. package/dist/utils/searchCache.js +0 -210
  290. package/dist/utils/searchCache.js.map +0 -1
  291. package/dist/utils/taskScheduler.d.ts +0 -294
  292. package/dist/utils/taskScheduler.d.ts.map +0 -1
  293. package/dist/utils/taskScheduler.js +0 -487
  294. package/dist/utils/taskScheduler.js.map +0 -1
  295. package/dist/workers/index.d.ts +0 -12
  296. package/dist/workers/index.d.ts.map +0 -1
  297. package/dist/workers/index.js +0 -10
  298. package/dist/workers/index.js.map +0 -1
  299. package/dist/workers/levenshteinWorker.d.ts +0 -60
  300. package/dist/workers/levenshteinWorker.d.ts.map +0 -1
@@ -1,111 +0,0 @@
1
- /**
2
- * Hierarchy Manager
3
- *
4
- * Handles entity hierarchy operations (parent-child relationships).
5
- * Extracted from EntityManager (Phase 4: Consolidate God Objects).
6
- *
7
- * @module core/HierarchyManager
8
- */
9
- import type { Entity, KnowledgeGraph } from '../types/index.js';
10
- import type { GraphStorage } from './GraphStorage.js';
11
- /**
12
- * Manages hierarchical relationships between entities.
13
- */
14
- export declare class HierarchyManager {
15
- private storage;
16
- constructor(storage: GraphStorage);
17
- /**
18
- * Set the parent of an entity.
19
- *
20
- * Validates:
21
- * - Entity and parent exist
22
- * - Setting parent won't create a cycle
23
- *
24
- * @param entityName - Entity to set parent for
25
- * @param parentName - Parent entity name (null to remove parent)
26
- * @returns Updated entity
27
- * @throws {EntityNotFoundError} If entity or parent not found
28
- * @throws {CycleDetectedError} If setting parent would create a cycle
29
- */
30
- setEntityParent(entityName: string, parentName: string | null): Promise<Entity>;
31
- /**
32
- * Check if setting a parent would create a cycle in the hierarchy.
33
- *
34
- * @param graph - Knowledge graph
35
- * @param entityName - Entity to set parent for
36
- * @param parentName - Proposed parent
37
- * @returns True if cycle would be created
38
- */
39
- private wouldCreateCycle;
40
- /**
41
- * Get the immediate children of an entity.
42
- *
43
- * @param entityName - Parent entity name
44
- * @returns Array of child entities
45
- * @throws {EntityNotFoundError} If entity not found
46
- */
47
- getChildren(entityName: string): Promise<Entity[]>;
48
- /**
49
- * Get the parent of an entity.
50
- *
51
- * @param entityName - Entity name
52
- * @returns Parent entity or null if no parent
53
- * @throws {EntityNotFoundError} If entity not found
54
- */
55
- getParent(entityName: string): Promise<Entity | null>;
56
- /**
57
- * Get all ancestors of an entity (parent, grandparent, etc.).
58
- *
59
- * @param entityName - Entity name
60
- * @returns Array of ancestor entities (ordered from immediate parent to root)
61
- * @throws {EntityNotFoundError} If entity not found
62
- */
63
- getAncestors(entityName: string): Promise<Entity[]>;
64
- /**
65
- * Get all descendants of an entity (children, grandchildren, etc.).
66
- *
67
- * Uses breadth-first traversal.
68
- *
69
- * @param entityName - Entity name
70
- * @returns Array of descendant entities
71
- * @throws {EntityNotFoundError} If entity not found
72
- */
73
- getDescendants(entityName: string): Promise<Entity[]>;
74
- /**
75
- * Get the entire subtree rooted at an entity (entity + all descendants).
76
- *
77
- * Includes relations between entities in the subtree.
78
- *
79
- * @param entityName - Root entity name
80
- * @returns Knowledge graph containing subtree
81
- * @throws {EntityNotFoundError} If entity not found
82
- */
83
- getSubtree(entityName: string): Promise<KnowledgeGraph>;
84
- /**
85
- * Get root entities (entities with no parent).
86
- *
87
- * @returns Array of root entities
88
- */
89
- getRootEntities(): Promise<Entity[]>;
90
- /**
91
- * Get the depth of an entity in the hierarchy.
92
- *
93
- * Root entities have depth 0, their children depth 1, etc.
94
- *
95
- * @param entityName - Entity name
96
- * @returns Depth (number of ancestors)
97
- * @throws {EntityNotFoundError} If entity not found
98
- */
99
- getEntityDepth(entityName: string): Promise<number>;
100
- /**
101
- * Move an entity to a new parent (maintaining its descendants).
102
- *
103
- * Alias for setEntityParent.
104
- *
105
- * @param entityName - Entity to move
106
- * @param newParentName - New parent name (null to make root)
107
- * @returns Updated entity
108
- */
109
- moveEntity(entityName: string, newParentName: string | null): Promise<Entity>;
110
- }
111
- //# sourceMappingURL=HierarchyManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HierarchyManager.d.ts","sourceRoot":"","sources":["../../src/core/HierarchyManager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAA0B,MAAM,mBAAmB,CAAC;AACxF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD;;GAEG;AACH,qBAAa,gBAAgB;IACf,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAEzC;;;;;;;;;;;;OAYG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAgCrF;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAwBxB;;;;;;OAMG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAWxD;;;;;;OAMG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgB3D;;;;;;OAMG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAmBzD;;;;;;;;OAQG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAwB3D;;;;;;;;OAQG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAuB7D;;;;OAIG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAK1C;;;;;;;;OAQG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKzD;;;;;;;;OAQG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;CAGpF"}
@@ -1,225 +0,0 @@
1
- /**
2
- * Hierarchy Manager
3
- *
4
- * Handles entity hierarchy operations (parent-child relationships).
5
- * Extracted from EntityManager (Phase 4: Consolidate God Objects).
6
- *
7
- * @module core/HierarchyManager
8
- */
9
- import { EntityNotFoundError, CycleDetectedError } from '../utils/errors.js';
10
- /**
11
- * Manages hierarchical relationships between entities.
12
- */
13
- export class HierarchyManager {
14
- storage;
15
- constructor(storage) {
16
- this.storage = storage;
17
- }
18
- /**
19
- * Set the parent of an entity.
20
- *
21
- * Validates:
22
- * - Entity and parent exist
23
- * - Setting parent won't create a cycle
24
- *
25
- * @param entityName - Entity to set parent for
26
- * @param parentName - Parent entity name (null to remove parent)
27
- * @returns Updated entity
28
- * @throws {EntityNotFoundError} If entity or parent not found
29
- * @throws {CycleDetectedError} If setting parent would create a cycle
30
- */
31
- async setEntityParent(entityName, parentName) {
32
- // Use read-only graph for validation checks
33
- const readGraph = await this.storage.loadGraph();
34
- const entityExists = readGraph.entities.find(e => e.name === entityName);
35
- if (!entityExists) {
36
- throw new EntityNotFoundError(entityName);
37
- }
38
- // If setting a parent, validate it exists and doesn't create a cycle
39
- if (parentName !== null) {
40
- const parent = readGraph.entities.find(e => e.name === parentName);
41
- if (!parent) {
42
- throw new EntityNotFoundError(parentName);
43
- }
44
- // Check for cycles
45
- if (this.wouldCreateCycle(readGraph, entityName, parentName)) {
46
- throw new CycleDetectedError(entityName, parentName);
47
- }
48
- }
49
- // Get mutable copy for write operation
50
- const graph = await this.storage.getGraphForMutation();
51
- const entity = graph.entities.find(e => e.name === entityName);
52
- entity.parentId = parentName || undefined;
53
- entity.lastModified = new Date().toISOString();
54
- await this.storage.saveGraph(graph);
55
- return entity;
56
- }
57
- /**
58
- * Check if setting a parent would create a cycle in the hierarchy.
59
- *
60
- * @param graph - Knowledge graph
61
- * @param entityName - Entity to set parent for
62
- * @param parentName - Proposed parent
63
- * @returns True if cycle would be created
64
- */
65
- wouldCreateCycle(graph, entityName, parentName) {
66
- const visited = new Set();
67
- let current = parentName;
68
- while (current) {
69
- if (visited.has(current)) {
70
- return true; // Cycle detected in existing hierarchy
71
- }
72
- if (current === entityName) {
73
- return true; // Would create a cycle
74
- }
75
- visited.add(current);
76
- const currentEntity = graph.entities.find(e => e.name === current);
77
- current = currentEntity?.parentId;
78
- }
79
- return false;
80
- }
81
- /**
82
- * Get the immediate children of an entity.
83
- *
84
- * @param entityName - Parent entity name
85
- * @returns Array of child entities
86
- * @throws {EntityNotFoundError} If entity not found
87
- */
88
- async getChildren(entityName) {
89
- const graph = await this.storage.loadGraph();
90
- // Verify entity exists
91
- if (!graph.entities.find(e => e.name === entityName)) {
92
- throw new EntityNotFoundError(entityName);
93
- }
94
- return graph.entities.filter(e => e.parentId === entityName);
95
- }
96
- /**
97
- * Get the parent of an entity.
98
- *
99
- * @param entityName - Entity name
100
- * @returns Parent entity or null if no parent
101
- * @throws {EntityNotFoundError} If entity not found
102
- */
103
- async getParent(entityName) {
104
- const graph = await this.storage.loadGraph();
105
- const entity = graph.entities.find(e => e.name === entityName);
106
- if (!entity) {
107
- throw new EntityNotFoundError(entityName);
108
- }
109
- if (!entity.parentId) {
110
- return null;
111
- }
112
- const parent = graph.entities.find(e => e.name === entity.parentId);
113
- return parent || null;
114
- }
115
- /**
116
- * Get all ancestors of an entity (parent, grandparent, etc.).
117
- *
118
- * @param entityName - Entity name
119
- * @returns Array of ancestor entities (ordered from immediate parent to root)
120
- * @throws {EntityNotFoundError} If entity not found
121
- */
122
- async getAncestors(entityName) {
123
- const graph = await this.storage.loadGraph();
124
- const ancestors = [];
125
- let current = graph.entities.find(e => e.name === entityName);
126
- if (!current) {
127
- throw new EntityNotFoundError(entityName);
128
- }
129
- while (current.parentId) {
130
- const parent = graph.entities.find(e => e.name === current.parentId);
131
- if (!parent)
132
- break;
133
- ancestors.push(parent);
134
- current = parent;
135
- }
136
- return ancestors;
137
- }
138
- /**
139
- * Get all descendants of an entity (children, grandchildren, etc.).
140
- *
141
- * Uses breadth-first traversal.
142
- *
143
- * @param entityName - Entity name
144
- * @returns Array of descendant entities
145
- * @throws {EntityNotFoundError} If entity not found
146
- */
147
- async getDescendants(entityName) {
148
- const graph = await this.storage.loadGraph();
149
- // Verify entity exists
150
- if (!graph.entities.find(e => e.name === entityName)) {
151
- throw new EntityNotFoundError(entityName);
152
- }
153
- const descendants = [];
154
- const toProcess = [entityName];
155
- while (toProcess.length > 0) {
156
- const current = toProcess.shift();
157
- const children = graph.entities.filter(e => e.parentId === current);
158
- for (const child of children) {
159
- descendants.push(child);
160
- toProcess.push(child.name);
161
- }
162
- }
163
- return descendants;
164
- }
165
- /**
166
- * Get the entire subtree rooted at an entity (entity + all descendants).
167
- *
168
- * Includes relations between entities in the subtree.
169
- *
170
- * @param entityName - Root entity name
171
- * @returns Knowledge graph containing subtree
172
- * @throws {EntityNotFoundError} If entity not found
173
- */
174
- async getSubtree(entityName) {
175
- const graph = await this.storage.loadGraph();
176
- const entity = graph.entities.find(e => e.name === entityName);
177
- if (!entity) {
178
- throw new EntityNotFoundError(entityName);
179
- }
180
- const descendants = await this.getDescendants(entityName);
181
- const subtreeEntities = [entity, ...descendants];
182
- const subtreeEntityNames = new Set(subtreeEntities.map(e => e.name));
183
- // Include relations between entities in the subtree
184
- const subtreeRelations = graph.relations.filter(r => subtreeEntityNames.has(r.from) && subtreeEntityNames.has(r.to));
185
- return {
186
- entities: subtreeEntities,
187
- relations: subtreeRelations,
188
- };
189
- }
190
- /**
191
- * Get root entities (entities with no parent).
192
- *
193
- * @returns Array of root entities
194
- */
195
- async getRootEntities() {
196
- const graph = await this.storage.loadGraph();
197
- return graph.entities.filter(e => !e.parentId);
198
- }
199
- /**
200
- * Get the depth of an entity in the hierarchy.
201
- *
202
- * Root entities have depth 0, their children depth 1, etc.
203
- *
204
- * @param entityName - Entity name
205
- * @returns Depth (number of ancestors)
206
- * @throws {EntityNotFoundError} If entity not found
207
- */
208
- async getEntityDepth(entityName) {
209
- const ancestors = await this.getAncestors(entityName);
210
- return ancestors.length;
211
- }
212
- /**
213
- * Move an entity to a new parent (maintaining its descendants).
214
- *
215
- * Alias for setEntityParent.
216
- *
217
- * @param entityName - Entity to move
218
- * @param newParentName - New parent name (null to make root)
219
- * @returns Updated entity
220
- */
221
- async moveEntity(entityName, newParentName) {
222
- return await this.setEntityParent(entityName, newParentName);
223
- }
224
- }
225
- //# sourceMappingURL=HierarchyManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HierarchyManager.js","sourceRoot":"","sources":["../../src/core/HierarchyManager.ts"],"names":[],"mappings":"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"}
@@ -1,76 +0,0 @@
1
- /**
2
- * Manager Context
3
- *
4
- * Central context holding all manager instances with lazy initialization.
5
- * Provides direct manager access for toolHandlers.
6
- * Phase 4: Removed convenience methods - use managers directly.
7
- *
8
- * @module core/ManagerContext
9
- */
10
- import { GraphStorage } from './GraphStorage.js';
11
- import { EntityManager } from './EntityManager.js';
12
- import { RelationManager } from './RelationManager.js';
13
- import { ObservationManager } from './ObservationManager.js';
14
- import { HierarchyManager } from './HierarchyManager.js';
15
- import { GraphTraversal } from './GraphTraversal.js';
16
- import { SearchManager } from '../search/SearchManager.js';
17
- import { RankedSearch } from '../search/RankedSearch.js';
18
- import { SemanticSearch } from '../search/index.js';
19
- import { IOManager } from '../features/IOManager.js';
20
- import { TagManager } from '../features/TagManager.js';
21
- import { AnalyticsManager } from '../features/AnalyticsManager.js';
22
- import { CompressionManager } from '../features/CompressionManager.js';
23
- import { ArchiveManager } from '../features/ArchiveManager.js';
24
- /**
25
- * Context holding all manager instances with lazy initialization.
26
- * Provides direct manager access for toolHandlers.
27
- */
28
- export declare class ManagerContext {
29
- readonly storage: GraphStorage;
30
- private readonly savedSearchesFilePath;
31
- private readonly tagAliasesFilePath;
32
- private _entityManager?;
33
- private _relationManager?;
34
- private _observationManager?;
35
- private _hierarchyManager?;
36
- private _graphTraversal?;
37
- private _searchManager?;
38
- private _semanticSearch?;
39
- private _rankedSearch?;
40
- private _ioManager?;
41
- private _tagManager?;
42
- private _analyticsManager?;
43
- private _compressionManager?;
44
- private _archiveManager?;
45
- constructor(memoryFilePath: string);
46
- /** EntityManager - Entity CRUD and tag operations */
47
- get entityManager(): EntityManager;
48
- /** RelationManager - Relation CRUD */
49
- get relationManager(): RelationManager;
50
- /** ObservationManager - Observation CRUD */
51
- get observationManager(): ObservationManager;
52
- /** HierarchyManager - Entity hierarchy operations */
53
- get hierarchyManager(): HierarchyManager;
54
- /** GraphTraversal - Phase 4 Sprint 6-8: Graph traversal algorithms */
55
- get graphTraversal(): GraphTraversal;
56
- /** SearchManager - All search operations */
57
- get searchManager(): SearchManager;
58
- /**
59
- * SemanticSearch - Phase 4 Sprint 12: Semantic similarity search.
60
- * Returns null if no embedding provider is configured.
61
- */
62
- get semanticSearch(): SemanticSearch | null;
63
- /** RankedSearch - Phase 11: TF-IDF/BM25 ranked search for hybrid search */
64
- get rankedSearch(): RankedSearch;
65
- /** IOManager - Import, export, and backup operations */
66
- get ioManager(): IOManager;
67
- /** TagManager - Tag alias management */
68
- get tagManager(): TagManager;
69
- /** AnalyticsManager - Graph statistics and validation */
70
- get analyticsManager(): AnalyticsManager;
71
- /** CompressionManager - Duplicate detection and entity merging */
72
- get compressionManager(): CompressionManager;
73
- /** ArchiveManager - Entity archival operations */
74
- get archiveManager(): ArchiveManager;
75
- }
76
- //# sourceMappingURL=ManagerContext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ManagerContext.d.ts","sourceRoot":"","sources":["../../src/core/ManagerContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAA6C,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D;;;GAGG;AACH,qBAAa,cAAc;IAGzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAG5C,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,mBAAmB,CAAC,CAAqB;IACjD,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAwB;IAChD,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,OAAO,CAAC,mBAAmB,CAAC,CAAqB;IACjD,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE7B,cAAc,EAAE,MAAM;IAclC,qDAAqD;IACrD,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED,sCAAsC;IACtC,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,4CAA4C;IAC5C,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED,qDAAqD;IACrD,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAED,sEAAsE;IACtE,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,4CAA4C;IAC5C,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,cAAc,GAAG,IAAI,CAa1C;IAED,2EAA2E;IAC3E,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,wDAAwD;IACxD,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,wCAAwC;IACxC,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED,yDAAyD;IACzD,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAED,kEAAkE;IAClE,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED,kDAAkD;IAClD,IAAI,cAAc,IAAI,cAAc,CAEnC;CACF"}
@@ -1,129 +0,0 @@
1
- /**
2
- * Manager Context
3
- *
4
- * Central context holding all manager instances with lazy initialization.
5
- * Provides direct manager access for toolHandlers.
6
- * Phase 4: Removed convenience methods - use managers directly.
7
- *
8
- * @module core/ManagerContext
9
- */
10
- import path from 'path';
11
- import { createStorageFromPath } from './StorageFactory.js';
12
- import { EntityManager } from './EntityManager.js';
13
- import { RelationManager } from './RelationManager.js';
14
- import { ObservationManager } from './ObservationManager.js';
15
- import { HierarchyManager } from './HierarchyManager.js';
16
- import { GraphTraversal } from './GraphTraversal.js';
17
- import { SearchManager } from '../search/SearchManager.js';
18
- import { RankedSearch } from '../search/RankedSearch.js';
19
- import { SemanticSearch, createEmbeddingService, createVectorStore } from '../search/index.js';
20
- import { IOManager } from '../features/IOManager.js';
21
- import { TagManager } from '../features/TagManager.js';
22
- import { AnalyticsManager } from '../features/AnalyticsManager.js';
23
- import { CompressionManager } from '../features/CompressionManager.js';
24
- import { ArchiveManager } from '../features/ArchiveManager.js';
25
- import { getEmbeddingConfig } from '../utils/constants.js';
26
- /**
27
- * Context holding all manager instances with lazy initialization.
28
- * Provides direct manager access for toolHandlers.
29
- */
30
- export class ManagerContext {
31
- // Type as GraphStorage for manager compatibility; actual instance may be SQLiteStorage
32
- // which implements the same interface via duck typing
33
- storage;
34
- savedSearchesFilePath;
35
- tagAliasesFilePath;
36
- // Lazy-initialized managers
37
- _entityManager;
38
- _relationManager;
39
- _observationManager;
40
- _hierarchyManager;
41
- _graphTraversal;
42
- _searchManager;
43
- _semanticSearch;
44
- _rankedSearch;
45
- _ioManager;
46
- _tagManager;
47
- _analyticsManager;
48
- _compressionManager;
49
- _archiveManager;
50
- constructor(memoryFilePath) {
51
- // Derive paths for saved searches and tag aliases
52
- const dir = path.dirname(memoryFilePath);
53
- const basename = path.basename(memoryFilePath, path.extname(memoryFilePath));
54
- this.savedSearchesFilePath = path.join(dir, `${basename}-saved-searches.jsonl`);
55
- this.tagAliasesFilePath = path.join(dir, `${basename}-tag-aliases.jsonl`);
56
- // Use StorageFactory to respect MEMORY_STORAGE_TYPE environment variable
57
- // Type assertion: SQLiteStorage implements same interface as GraphStorage
58
- this.storage = createStorageFromPath(memoryFilePath);
59
- }
60
- // ==================== MANAGER ACCESSORS ====================
61
- // Use these for direct manager access in toolHandlers
62
- /** EntityManager - Entity CRUD and tag operations */
63
- get entityManager() {
64
- return (this._entityManager ??= new EntityManager(this.storage));
65
- }
66
- /** RelationManager - Relation CRUD */
67
- get relationManager() {
68
- return (this._relationManager ??= new RelationManager(this.storage));
69
- }
70
- /** ObservationManager - Observation CRUD */
71
- get observationManager() {
72
- return (this._observationManager ??= new ObservationManager(this.storage));
73
- }
74
- /** HierarchyManager - Entity hierarchy operations */
75
- get hierarchyManager() {
76
- return (this._hierarchyManager ??= new HierarchyManager(this.storage));
77
- }
78
- /** GraphTraversal - Phase 4 Sprint 6-8: Graph traversal algorithms */
79
- get graphTraversal() {
80
- return (this._graphTraversal ??= new GraphTraversal(this.storage));
81
- }
82
- /** SearchManager - All search operations */
83
- get searchManager() {
84
- return (this._searchManager ??= new SearchManager(this.storage, this.savedSearchesFilePath));
85
- }
86
- /**
87
- * SemanticSearch - Phase 4 Sprint 12: Semantic similarity search.
88
- * Returns null if no embedding provider is configured.
89
- */
90
- get semanticSearch() {
91
- if (this._semanticSearch === undefined) {
92
- const config = getEmbeddingConfig();
93
- const embeddingService = createEmbeddingService(config);
94
- if (embeddingService) {
95
- const vectorStore = createVectorStore('jsonl'); // Use in-memory for now
96
- this._semanticSearch = new SemanticSearch(embeddingService, vectorStore);
97
- }
98
- else {
99
- this._semanticSearch = null;
100
- }
101
- }
102
- return this._semanticSearch;
103
- }
104
- /** RankedSearch - Phase 11: TF-IDF/BM25 ranked search for hybrid search */
105
- get rankedSearch() {
106
- return (this._rankedSearch ??= new RankedSearch(this.storage));
107
- }
108
- /** IOManager - Import, export, and backup operations */
109
- get ioManager() {
110
- return (this._ioManager ??= new IOManager(this.storage));
111
- }
112
- /** TagManager - Tag alias management */
113
- get tagManager() {
114
- return (this._tagManager ??= new TagManager(this.tagAliasesFilePath));
115
- }
116
- /** AnalyticsManager - Graph statistics and validation */
117
- get analyticsManager() {
118
- return (this._analyticsManager ??= new AnalyticsManager(this.storage));
119
- }
120
- /** CompressionManager - Duplicate detection and entity merging */
121
- get compressionManager() {
122
- return (this._compressionManager ??= new CompressionManager(this.storage));
123
- }
124
- /** ArchiveManager - Entity archival operations */
125
- get archiveManager() {
126
- return (this._archiveManager ??= new ArchiveManager(this.storage));
127
- }
128
- }
129
- //# sourceMappingURL=ManagerContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ManagerContext.js","sourceRoot":"","sources":["../../src/core/ManagerContext.ts"],"names":[],"mappings":"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"}
@@ -1,85 +0,0 @@
1
- /**
2
- * Observation Manager
3
- *
4
- * Handles observation CRUD operations for entities.
5
- * Extracted from EntityManager (Phase 4: Consolidate God Objects).
6
- *
7
- * @module core/ObservationManager
8
- */
9
- import type { GraphStorage } from './GraphStorage.js';
10
- /**
11
- * Manages observation operations for entities in the knowledge graph.
12
- */
13
- export declare class ObservationManager {
14
- private storage;
15
- constructor(storage: GraphStorage);
16
- /**
17
- * Add observations to multiple entities in a single batch operation.
18
- *
19
- * This method performs the following operations:
20
- * - Adds new observations to specified entities
21
- * - Filters out duplicate observations (already present)
22
- * - Updates lastModified timestamp only if new observations were added
23
- * - ATOMIC: All updates are saved in a single operation
24
- *
25
- * @param observations - Array of entity names and observations to add
26
- * @returns Promise resolving to array of results showing which observations were added
27
- * @throws {EntityNotFoundError} If any entity is not found
28
- *
29
- * @example
30
- * ```typescript
31
- * const manager = new ObservationManager(storage);
32
- *
33
- * // Add observations to multiple entities
34
- * const results = await manager.addObservations([
35
- * { entityName: 'Alice', contents: ['Completed project X', 'Started project Y'] },
36
- * { entityName: 'Bob', contents: ['Joined team meeting'] }
37
- * ]);
38
- *
39
- * // Check what was added (duplicates are filtered out)
40
- * results.forEach(r => {
41
- * console.log(`${r.entityName}: added ${r.addedObservations.length} new observations`);
42
- * });
43
- * ```
44
- */
45
- addObservations(observations: {
46
- entityName: string;
47
- contents: string[];
48
- }[]): Promise<{
49
- entityName: string;
50
- addedObservations: string[];
51
- }[]>;
52
- /**
53
- * Delete observations from multiple entities in a single batch operation.
54
- *
55
- * This method performs the following operations:
56
- * - Removes specified observations from entities
57
- * - Updates lastModified timestamp only if observations were deleted
58
- * - Silently ignores entities that don't exist (no error thrown)
59
- * - ATOMIC: All deletions are saved in a single operation
60
- *
61
- * @param deletions - Array of entity names and observations to delete
62
- * @returns Promise that resolves when deletion is complete
63
- *
64
- * @example
65
- * ```typescript
66
- * const manager = new ObservationManager(storage);
67
- *
68
- * // Delete observations from multiple entities
69
- * await manager.deleteObservations([
70
- * { entityName: 'Alice', observations: ['Old observation 1', 'Old observation 2'] },
71
- * { entityName: 'Bob', observations: ['Outdated info'] }
72
- * ]);
73
- *
74
- * // Safe to delete from non-existent entities (no error)
75
- * await manager.deleteObservations([
76
- * { entityName: 'NonExistent', observations: ['Some text'] }
77
- * ]); // No error thrown
78
- * ```
79
- */
80
- deleteObservations(deletions: {
81
- entityName: string;
82
- observations: string[];
83
- }[]): Promise<void>;
84
- }
85
- //# sourceMappingURL=ObservationManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ObservationManager.d.ts","sourceRoot":"","sources":["../../src/core/ObservationManager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD;;GAEG;AACH,qBAAa,kBAAkB;IACjB,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,eAAe,CACnB,YAAY,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,GACzD,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IAiCjE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,kBAAkB,CACtB,SAAS,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,GAC1D,OAAO,CAAC,IAAI,CAAC;CAyBjB"}