@danielsimonjr/memoryjs 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +266 -0
  3. package/dist/core/EntityManager.d.ts +268 -0
  4. package/dist/core/EntityManager.d.ts.map +1 -0
  5. package/dist/core/EntityManager.js +512 -0
  6. package/dist/core/EntityManager.js.map +1 -0
  7. package/dist/core/GraphEventEmitter.d.ts +202 -0
  8. package/dist/core/GraphEventEmitter.d.ts.map +1 -0
  9. package/dist/core/GraphEventEmitter.js +347 -0
  10. package/dist/core/GraphEventEmitter.js.map +1 -0
  11. package/dist/core/GraphStorage.d.ts +395 -0
  12. package/dist/core/GraphStorage.d.ts.map +1 -0
  13. package/dist/core/GraphStorage.js +786 -0
  14. package/dist/core/GraphStorage.js.map +1 -0
  15. package/dist/core/GraphTraversal.d.ts +141 -0
  16. package/dist/core/GraphTraversal.d.ts.map +1 -0
  17. package/dist/core/GraphTraversal.js +574 -0
  18. package/dist/core/GraphTraversal.js.map +1 -0
  19. package/dist/core/HierarchyManager.d.ts +111 -0
  20. package/dist/core/HierarchyManager.d.ts.map +1 -0
  21. package/dist/core/HierarchyManager.js +225 -0
  22. package/dist/core/HierarchyManager.js.map +1 -0
  23. package/dist/core/ManagerContext.d.ts +76 -0
  24. package/dist/core/ManagerContext.d.ts.map +1 -0
  25. package/dist/core/ManagerContext.js +129 -0
  26. package/dist/core/ManagerContext.js.map +1 -0
  27. package/dist/core/ObservationManager.d.ts +85 -0
  28. package/dist/core/ObservationManager.d.ts.map +1 -0
  29. package/dist/core/ObservationManager.js +124 -0
  30. package/dist/core/ObservationManager.js.map +1 -0
  31. package/dist/core/RelationManager.d.ts +131 -0
  32. package/dist/core/RelationManager.d.ts.map +1 -0
  33. package/dist/core/RelationManager.js +212 -0
  34. package/dist/core/RelationManager.js.map +1 -0
  35. package/dist/core/SQLiteStorage.d.ts +354 -0
  36. package/dist/core/SQLiteStorage.d.ts.map +1 -0
  37. package/dist/core/SQLiteStorage.js +919 -0
  38. package/dist/core/SQLiteStorage.js.map +1 -0
  39. package/dist/core/StorageFactory.d.ts +45 -0
  40. package/dist/core/StorageFactory.d.ts.map +1 -0
  41. package/dist/core/StorageFactory.js +65 -0
  42. package/dist/core/StorageFactory.js.map +1 -0
  43. package/dist/core/TransactionManager.d.ts +464 -0
  44. package/dist/core/TransactionManager.d.ts.map +1 -0
  45. package/dist/core/TransactionManager.js +869 -0
  46. package/dist/core/TransactionManager.js.map +1 -0
  47. package/dist/core/index.d.ts +17 -0
  48. package/dist/core/index.d.ts.map +1 -0
  49. package/dist/core/index.js +20 -0
  50. package/dist/core/index.js.map +1 -0
  51. package/dist/features/AnalyticsManager.d.ts +44 -0
  52. package/dist/features/AnalyticsManager.d.ts.map +1 -0
  53. package/dist/features/AnalyticsManager.js +224 -0
  54. package/dist/features/AnalyticsManager.js.map +1 -0
  55. package/dist/features/ArchiveManager.d.ts +133 -0
  56. package/dist/features/ArchiveManager.d.ts.map +1 -0
  57. package/dist/features/ArchiveManager.js +282 -0
  58. package/dist/features/ArchiveManager.js.map +1 -0
  59. package/dist/features/CompressionManager.d.ts +119 -0
  60. package/dist/features/CompressionManager.d.ts.map +1 -0
  61. package/dist/features/CompressionManager.js +470 -0
  62. package/dist/features/CompressionManager.js.map +1 -0
  63. package/dist/features/IOManager.d.ts +225 -0
  64. package/dist/features/IOManager.d.ts.map +1 -0
  65. package/dist/features/IOManager.js +1093 -0
  66. package/dist/features/IOManager.js.map +1 -0
  67. package/dist/features/KeywordExtractor.d.ts +61 -0
  68. package/dist/features/KeywordExtractor.d.ts.map +1 -0
  69. package/dist/features/KeywordExtractor.js +127 -0
  70. package/dist/features/KeywordExtractor.js.map +1 -0
  71. package/dist/features/ObservationNormalizer.d.ts +90 -0
  72. package/dist/features/ObservationNormalizer.d.ts.map +1 -0
  73. package/dist/features/ObservationNormalizer.js +194 -0
  74. package/dist/features/ObservationNormalizer.js.map +1 -0
  75. package/dist/features/StreamingExporter.d.ts +128 -0
  76. package/dist/features/StreamingExporter.d.ts.map +1 -0
  77. package/dist/features/StreamingExporter.js +212 -0
  78. package/dist/features/StreamingExporter.js.map +1 -0
  79. package/dist/features/TagManager.d.ts +147 -0
  80. package/dist/features/TagManager.d.ts.map +1 -0
  81. package/dist/features/TagManager.js +211 -0
  82. package/dist/features/TagManager.js.map +1 -0
  83. package/dist/features/index.d.ts +14 -0
  84. package/dist/features/index.d.ts.map +1 -0
  85. package/dist/features/index.js +15 -0
  86. package/dist/features/index.js.map +1 -0
  87. package/dist/index.d.ts +15 -0
  88. package/dist/index.d.ts.map +1 -0
  89. package/dist/index.js +20 -0
  90. package/dist/index.js.map +1 -0
  91. package/dist/search/BM25Search.d.ts +148 -0
  92. package/dist/search/BM25Search.d.ts.map +1 -0
  93. package/dist/search/BM25Search.js +340 -0
  94. package/dist/search/BM25Search.js.map +1 -0
  95. package/dist/search/BasicSearch.d.ts +51 -0
  96. package/dist/search/BasicSearch.d.ts.map +1 -0
  97. package/dist/search/BasicSearch.js +138 -0
  98. package/dist/search/BasicSearch.js.map +1 -0
  99. package/dist/search/BooleanSearch.d.ts +98 -0
  100. package/dist/search/BooleanSearch.d.ts.map +1 -0
  101. package/dist/search/BooleanSearch.js +431 -0
  102. package/dist/search/BooleanSearch.js.map +1 -0
  103. package/dist/search/EarlyTerminationManager.d.ts +140 -0
  104. package/dist/search/EarlyTerminationManager.d.ts.map +1 -0
  105. package/dist/search/EarlyTerminationManager.js +280 -0
  106. package/dist/search/EarlyTerminationManager.js.map +1 -0
  107. package/dist/search/EmbeddingCache.d.ts +175 -0
  108. package/dist/search/EmbeddingCache.d.ts.map +1 -0
  109. package/dist/search/EmbeddingCache.js +247 -0
  110. package/dist/search/EmbeddingCache.js.map +1 -0
  111. package/dist/search/EmbeddingService.d.ts +277 -0
  112. package/dist/search/EmbeddingService.d.ts.map +1 -0
  113. package/dist/search/EmbeddingService.js +531 -0
  114. package/dist/search/EmbeddingService.js.map +1 -0
  115. package/dist/search/FuzzySearch.d.ts +118 -0
  116. package/dist/search/FuzzySearch.d.ts.map +1 -0
  117. package/dist/search/FuzzySearch.js +313 -0
  118. package/dist/search/FuzzySearch.js.map +1 -0
  119. package/dist/search/HybridScorer.d.ts +181 -0
  120. package/dist/search/HybridScorer.d.ts.map +1 -0
  121. package/dist/search/HybridScorer.js +258 -0
  122. package/dist/search/HybridScorer.js.map +1 -0
  123. package/dist/search/HybridSearchManager.d.ts +80 -0
  124. package/dist/search/HybridSearchManager.d.ts.map +1 -0
  125. package/dist/search/HybridSearchManager.js +188 -0
  126. package/dist/search/HybridSearchManager.js.map +1 -0
  127. package/dist/search/IncrementalIndexer.d.ts +201 -0
  128. package/dist/search/IncrementalIndexer.d.ts.map +1 -0
  129. package/dist/search/IncrementalIndexer.js +343 -0
  130. package/dist/search/IncrementalIndexer.js.map +1 -0
  131. package/dist/search/OptimizedInvertedIndex.d.ts +163 -0
  132. package/dist/search/OptimizedInvertedIndex.d.ts.map +1 -0
  133. package/dist/search/OptimizedInvertedIndex.js +359 -0
  134. package/dist/search/OptimizedInvertedIndex.js.map +1 -0
  135. package/dist/search/ParallelSearchExecutor.d.ts +172 -0
  136. package/dist/search/ParallelSearchExecutor.d.ts.map +1 -0
  137. package/dist/search/ParallelSearchExecutor.js +310 -0
  138. package/dist/search/ParallelSearchExecutor.js.map +1 -0
  139. package/dist/search/QuantizedVectorStore.d.ts +171 -0
  140. package/dist/search/QuantizedVectorStore.d.ts.map +1 -0
  141. package/dist/search/QuantizedVectorStore.js +308 -0
  142. package/dist/search/QuantizedVectorStore.js.map +1 -0
  143. package/dist/search/QueryAnalyzer.d.ts +76 -0
  144. package/dist/search/QueryAnalyzer.d.ts.map +1 -0
  145. package/dist/search/QueryAnalyzer.js +228 -0
  146. package/dist/search/QueryAnalyzer.js.map +1 -0
  147. package/dist/search/QueryCostEstimator.d.ts +244 -0
  148. package/dist/search/QueryCostEstimator.d.ts.map +1 -0
  149. package/dist/search/QueryCostEstimator.js +653 -0
  150. package/dist/search/QueryCostEstimator.js.map +1 -0
  151. package/dist/search/QueryPlanCache.d.ts +220 -0
  152. package/dist/search/QueryPlanCache.d.ts.map +1 -0
  153. package/dist/search/QueryPlanCache.js +380 -0
  154. package/dist/search/QueryPlanCache.js.map +1 -0
  155. package/dist/search/QueryPlanner.d.ts +58 -0
  156. package/dist/search/QueryPlanner.d.ts.map +1 -0
  157. package/dist/search/QueryPlanner.js +138 -0
  158. package/dist/search/QueryPlanner.js.map +1 -0
  159. package/dist/search/RankedSearch.d.ts +71 -0
  160. package/dist/search/RankedSearch.d.ts.map +1 -0
  161. package/dist/search/RankedSearch.js +239 -0
  162. package/dist/search/RankedSearch.js.map +1 -0
  163. package/dist/search/ReflectionManager.d.ts +120 -0
  164. package/dist/search/ReflectionManager.d.ts.map +1 -0
  165. package/dist/search/ReflectionManager.js +232 -0
  166. package/dist/search/ReflectionManager.js.map +1 -0
  167. package/dist/search/SavedSearchManager.d.ts +79 -0
  168. package/dist/search/SavedSearchManager.d.ts.map +1 -0
  169. package/dist/search/SavedSearchManager.js +147 -0
  170. package/dist/search/SavedSearchManager.js.map +1 -0
  171. package/dist/search/SearchFilterChain.d.ts +120 -0
  172. package/dist/search/SearchFilterChain.d.ts.map +1 -0
  173. package/dist/search/SearchFilterChain.js +186 -0
  174. package/dist/search/SearchFilterChain.js.map +1 -0
  175. package/dist/search/SearchManager.d.ts +326 -0
  176. package/dist/search/SearchManager.d.ts.map +1 -0
  177. package/dist/search/SearchManager.js +454 -0
  178. package/dist/search/SearchManager.js.map +1 -0
  179. package/dist/search/SearchSuggestions.d.ts +27 -0
  180. package/dist/search/SearchSuggestions.d.ts.map +1 -0
  181. package/dist/search/SearchSuggestions.js +58 -0
  182. package/dist/search/SearchSuggestions.js.map +1 -0
  183. package/dist/search/SemanticSearch.d.ts +149 -0
  184. package/dist/search/SemanticSearch.d.ts.map +1 -0
  185. package/dist/search/SemanticSearch.js +324 -0
  186. package/dist/search/SemanticSearch.js.map +1 -0
  187. package/dist/search/SymbolicSearch.d.ts +61 -0
  188. package/dist/search/SymbolicSearch.d.ts.map +1 -0
  189. package/dist/search/SymbolicSearch.js +164 -0
  190. package/dist/search/SymbolicSearch.js.map +1 -0
  191. package/dist/search/TFIDFEventSync.d.ts +85 -0
  192. package/dist/search/TFIDFEventSync.d.ts.map +1 -0
  193. package/dist/search/TFIDFEventSync.js +134 -0
  194. package/dist/search/TFIDFEventSync.js.map +1 -0
  195. package/dist/search/TFIDFIndexManager.d.ts +151 -0
  196. package/dist/search/TFIDFIndexManager.d.ts.map +1 -0
  197. package/dist/search/TFIDFIndexManager.js +433 -0
  198. package/dist/search/TFIDFIndexManager.js.map +1 -0
  199. package/dist/search/VectorStore.d.ts +235 -0
  200. package/dist/search/VectorStore.d.ts.map +1 -0
  201. package/dist/search/VectorStore.js +312 -0
  202. package/dist/search/VectorStore.js.map +1 -0
  203. package/dist/search/index.d.ts +35 -0
  204. package/dist/search/index.d.ts.map +1 -0
  205. package/dist/search/index.js +53 -0
  206. package/dist/search/index.js.map +1 -0
  207. package/dist/types/index.d.ts +13 -0
  208. package/dist/types/index.d.ts.map +1 -0
  209. package/dist/types/index.js +13 -0
  210. package/dist/types/index.js.map +1 -0
  211. package/dist/types/types.d.ts +1811 -0
  212. package/dist/types/types.d.ts.map +1 -0
  213. package/dist/types/types.js +10 -0
  214. package/dist/types/types.js.map +1 -0
  215. package/dist/utils/BatchProcessor.d.ts +271 -0
  216. package/dist/utils/BatchProcessor.d.ts.map +1 -0
  217. package/dist/utils/BatchProcessor.js +377 -0
  218. package/dist/utils/BatchProcessor.js.map +1 -0
  219. package/dist/utils/MemoryMonitor.d.ts +176 -0
  220. package/dist/utils/MemoryMonitor.d.ts.map +1 -0
  221. package/dist/utils/MemoryMonitor.js +306 -0
  222. package/dist/utils/MemoryMonitor.js.map +1 -0
  223. package/dist/utils/WorkerPoolManager.d.ts +233 -0
  224. package/dist/utils/WorkerPoolManager.d.ts.map +1 -0
  225. package/dist/utils/WorkerPoolManager.js +421 -0
  226. package/dist/utils/WorkerPoolManager.js.map +1 -0
  227. package/dist/utils/compressedCache.d.ts +221 -0
  228. package/dist/utils/compressedCache.d.ts.map +1 -0
  229. package/dist/utils/compressedCache.js +349 -0
  230. package/dist/utils/compressedCache.js.map +1 -0
  231. package/dist/utils/compressionUtil.d.ts +214 -0
  232. package/dist/utils/compressionUtil.d.ts.map +1 -0
  233. package/dist/utils/compressionUtil.js +248 -0
  234. package/dist/utils/compressionUtil.js.map +1 -0
  235. package/dist/utils/constants.d.ts +245 -0
  236. package/dist/utils/constants.d.ts.map +1 -0
  237. package/dist/utils/constants.js +253 -0
  238. package/dist/utils/constants.js.map +1 -0
  239. package/dist/utils/entityUtils.d.ts +379 -0
  240. package/dist/utils/entityUtils.d.ts.map +1 -0
  241. package/dist/utils/entityUtils.js +649 -0
  242. package/dist/utils/entityUtils.js.map +1 -0
  243. package/dist/utils/errors.d.ts +95 -0
  244. package/dist/utils/errors.d.ts.map +1 -0
  245. package/dist/utils/errors.js +146 -0
  246. package/dist/utils/errors.js.map +1 -0
  247. package/dist/utils/formatters.d.ts +145 -0
  248. package/dist/utils/formatters.d.ts.map +1 -0
  249. package/dist/utils/formatters.js +133 -0
  250. package/dist/utils/formatters.js.map +1 -0
  251. package/dist/utils/index.d.ts +26 -0
  252. package/dist/utils/index.d.ts.map +1 -0
  253. package/dist/utils/index.js +88 -0
  254. package/dist/utils/index.js.map +1 -0
  255. package/dist/utils/indexes.d.ts +270 -0
  256. package/dist/utils/indexes.d.ts.map +1 -0
  257. package/dist/utils/indexes.js +527 -0
  258. package/dist/utils/indexes.js.map +1 -0
  259. package/dist/utils/logger.d.ts +31 -0
  260. package/dist/utils/logger.d.ts.map +1 -0
  261. package/dist/utils/logger.js +41 -0
  262. package/dist/utils/logger.js.map +1 -0
  263. package/dist/utils/operationUtils.d.ts +124 -0
  264. package/dist/utils/operationUtils.d.ts.map +1 -0
  265. package/dist/utils/operationUtils.js +176 -0
  266. package/dist/utils/operationUtils.js.map +1 -0
  267. package/dist/utils/parallelUtils.d.ts +76 -0
  268. package/dist/utils/parallelUtils.d.ts.map +1 -0
  269. package/dist/utils/parallelUtils.js +192 -0
  270. package/dist/utils/parallelUtils.js.map +1 -0
  271. package/dist/utils/schemas.d.ts +556 -0
  272. package/dist/utils/schemas.d.ts.map +1 -0
  273. package/dist/utils/schemas.js +485 -0
  274. package/dist/utils/schemas.js.map +1 -0
  275. package/dist/utils/searchAlgorithms.d.ts +99 -0
  276. package/dist/utils/searchAlgorithms.d.ts.map +1 -0
  277. package/dist/utils/searchAlgorithms.js +168 -0
  278. package/dist/utils/searchAlgorithms.js.map +1 -0
  279. package/dist/utils/searchCache.d.ts +108 -0
  280. package/dist/utils/searchCache.d.ts.map +1 -0
  281. package/dist/utils/searchCache.js +210 -0
  282. package/dist/utils/searchCache.js.map +1 -0
  283. package/dist/utils/taskScheduler.d.ts +294 -0
  284. package/dist/utils/taskScheduler.d.ts.map +1 -0
  285. package/dist/utils/taskScheduler.js +487 -0
  286. package/dist/utils/taskScheduler.js.map +1 -0
  287. package/dist/workers/index.d.ts +12 -0
  288. package/dist/workers/index.d.ts.map +1 -0
  289. package/dist/workers/index.js +10 -0
  290. package/dist/workers/index.js.map +1 -0
  291. package/dist/workers/levenshteinWorker.d.ts +60 -0
  292. package/dist/workers/levenshteinWorker.d.ts.map +1 -0
  293. package/dist/workers/levenshteinWorker.js +99 -0
  294. package/dist/workers/levenshteinWorker.js.map +1 -0
  295. package/package.json +69 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransactionManager.js","sourceRoot":"","sources":["../../src/core/TransactionManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Core Module Barrel Export
3
+ * Phase 4: Added ObservationManager, HierarchyManager, and GraphTraversal exports
4
+ */
5
+ export { GraphStorage } from './GraphStorage.js';
6
+ export { SQLiteStorage } from './SQLiteStorage.js';
7
+ export { EntityManager } from './EntityManager.js';
8
+ export { RelationManager } from './RelationManager.js';
9
+ export { ObservationManager } from './ObservationManager.js';
10
+ export { HierarchyManager } from './HierarchyManager.js';
11
+ export { ManagerContext } from './ManagerContext.js';
12
+ export { GraphTraversal } from './GraphTraversal.js';
13
+ export { ManagerContext as KnowledgeGraphManager } from './ManagerContext.js';
14
+ export { TransactionManager, OperationType, BatchTransaction, type TransactionOperation, type TransactionResult, } from './TransactionManager.js';
15
+ export { createStorage, createStorageFromPath } from './StorageFactory.js';
16
+ export { GraphEventEmitter } from './GraphEventEmitter.js';
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,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;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,cAAc,IAAI,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Core Module Barrel Export
3
+ * Phase 4: Added ObservationManager, HierarchyManager, and GraphTraversal exports
4
+ */
5
+ export { GraphStorage } from './GraphStorage.js';
6
+ export { SQLiteStorage } from './SQLiteStorage.js';
7
+ export { EntityManager } from './EntityManager.js';
8
+ export { RelationManager } from './RelationManager.js';
9
+ export { ObservationManager } from './ObservationManager.js';
10
+ export { HierarchyManager } from './HierarchyManager.js';
11
+ export { ManagerContext } from './ManagerContext.js';
12
+ // Phase 4 Sprint 6-8: Graph traversal algorithms
13
+ export { GraphTraversal } from './GraphTraversal.js';
14
+ // Backward compatibility alias
15
+ export { ManagerContext as KnowledgeGraphManager } from './ManagerContext.js';
16
+ export { TransactionManager, OperationType, BatchTransaction, } from './TransactionManager.js';
17
+ export { createStorage, createStorageFromPath } from './StorageFactory.js';
18
+ // Phase 10 Sprint 2: Graph change events
19
+ export { GraphEventEmitter } from './GraphEventEmitter.js';
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,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,iDAAiD;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,+BAA+B;AAC/B,OAAO,EAAE,cAAc,IAAI,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,gBAAgB,GAGjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,yCAAyC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Analytics Manager
3
+ *
4
+ * Handles graph statistics and validation operations.
5
+ * Extracted from SearchManager (Phase 4: Consolidate God Objects).
6
+ *
7
+ * @module features/AnalyticsManager
8
+ */
9
+ import type { GraphStorage } from '../core/GraphStorage.js';
10
+ import type { GraphStats, ValidationReport } from '../types/index.js';
11
+ /**
12
+ * Manages analytics operations for the knowledge graph.
13
+ */
14
+ export declare class AnalyticsManager {
15
+ private storage;
16
+ constructor(storage: GraphStorage);
17
+ /**
18
+ * Validate the knowledge graph structure and data integrity.
19
+ *
20
+ * Checks for:
21
+ * - Orphaned relations (pointing to non-existent entities)
22
+ * - Duplicate entity names
23
+ * - Invalid entity data (missing name/type, invalid observations)
24
+ * - Isolated entities (no relations)
25
+ * - Empty observations
26
+ * - Missing metadata (createdAt, lastModified)
27
+ *
28
+ * @returns Validation report with errors, warnings, and summary
29
+ */
30
+ validateGraph(): Promise<ValidationReport>;
31
+ /**
32
+ * Get comprehensive statistics about the knowledge graph.
33
+ *
34
+ * Provides metrics including:
35
+ * - Total counts of entities and relations
36
+ * - Entity and relation type distributions
37
+ * - Oldest and newest entities/relations
38
+ * - Date ranges for entities and relations
39
+ *
40
+ * @returns Graph statistics object
41
+ */
42
+ getGraphStats(): Promise<GraphStats>;
43
+ }
44
+ //# sourceMappingURL=AnalyticsManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyticsManager.d.ts","sourceRoot":"","sources":["../../src/features/AnalyticsManager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAsC,MAAM,mBAAmB,CAAC;AAE1G;;GAEG;AACH,qBAAa,gBAAgB;IACf,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAEzC;;;;;;;;;;;;OAYG;IACG,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAmIhD;;;;;;;;;;OAUG;IACG,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;CAsE3C"}
@@ -0,0 +1,224 @@
1
+ /**
2
+ * Analytics Manager
3
+ *
4
+ * Handles graph statistics and validation operations.
5
+ * Extracted from SearchManager (Phase 4: Consolidate God Objects).
6
+ *
7
+ * @module features/AnalyticsManager
8
+ */
9
+ /**
10
+ * Manages analytics operations for the knowledge graph.
11
+ */
12
+ export class AnalyticsManager {
13
+ storage;
14
+ constructor(storage) {
15
+ this.storage = storage;
16
+ }
17
+ /**
18
+ * Validate the knowledge graph structure and data integrity.
19
+ *
20
+ * Checks for:
21
+ * - Orphaned relations (pointing to non-existent entities)
22
+ * - Duplicate entity names
23
+ * - Invalid entity data (missing name/type, invalid observations)
24
+ * - Isolated entities (no relations)
25
+ * - Empty observations
26
+ * - Missing metadata (createdAt, lastModified)
27
+ *
28
+ * @returns Validation report with errors, warnings, and summary
29
+ */
30
+ async validateGraph() {
31
+ const graph = await this.storage.loadGraph();
32
+ const issues = [];
33
+ const warnings = [];
34
+ // Create a set of all entity names for fast lookup
35
+ const entityNames = new Set(graph.entities.map(e => e.name));
36
+ // Check for orphaned relations (relations pointing to non-existent entities)
37
+ for (const relation of graph.relations) {
38
+ if (!entityNames.has(relation.from)) {
39
+ issues.push({
40
+ type: 'orphaned_relation',
41
+ message: `Relation has non-existent source entity: "${relation.from}"`,
42
+ details: { relation, missingEntity: relation.from },
43
+ });
44
+ }
45
+ if (!entityNames.has(relation.to)) {
46
+ issues.push({
47
+ type: 'orphaned_relation',
48
+ message: `Relation has non-existent target entity: "${relation.to}"`,
49
+ details: { relation, missingEntity: relation.to },
50
+ });
51
+ }
52
+ }
53
+ // Check for duplicate entity names
54
+ const entityNameCounts = new Map();
55
+ for (const entity of graph.entities) {
56
+ const count = entityNameCounts.get(entity.name) || 0;
57
+ entityNameCounts.set(entity.name, count + 1);
58
+ }
59
+ for (const [name, count] of entityNameCounts.entries()) {
60
+ if (count > 1) {
61
+ issues.push({
62
+ type: 'duplicate_entity',
63
+ message: `Duplicate entity name found: "${name}" (${count} instances)`,
64
+ details: { entityName: name, count },
65
+ });
66
+ }
67
+ }
68
+ // Check for entities with invalid data
69
+ for (const entity of graph.entities) {
70
+ if (!entity.name || entity.name.trim() === '') {
71
+ issues.push({
72
+ type: 'invalid_data',
73
+ message: 'Entity has empty or missing name',
74
+ details: { entity },
75
+ });
76
+ }
77
+ if (!entity.entityType || entity.entityType.trim() === '') {
78
+ issues.push({
79
+ type: 'invalid_data',
80
+ message: `Entity "${entity.name}" has empty or missing entityType`,
81
+ details: { entity },
82
+ });
83
+ }
84
+ if (!Array.isArray(entity.observations)) {
85
+ issues.push({
86
+ type: 'invalid_data',
87
+ message: `Entity "${entity.name}" has invalid observations (not an array)`,
88
+ details: { entity },
89
+ });
90
+ }
91
+ }
92
+ // Warnings: Check for isolated entities (no relations)
93
+ const entitiesInRelations = new Set();
94
+ for (const relation of graph.relations) {
95
+ entitiesInRelations.add(relation.from);
96
+ entitiesInRelations.add(relation.to);
97
+ }
98
+ for (const entity of graph.entities) {
99
+ if (!entitiesInRelations.has(entity.name) && graph.relations.length > 0) {
100
+ warnings.push({
101
+ type: 'isolated_entity',
102
+ message: `Entity "${entity.name}" has no relations to other entities`,
103
+ details: { entityName: entity.name },
104
+ });
105
+ }
106
+ }
107
+ // Warnings: Check for entities with empty observations
108
+ for (const entity of graph.entities) {
109
+ if (entity.observations.length === 0) {
110
+ warnings.push({
111
+ type: 'empty_observations',
112
+ message: `Entity "${entity.name}" has no observations`,
113
+ details: { entityName: entity.name },
114
+ });
115
+ }
116
+ }
117
+ // Warnings: Check for missing metadata (createdAt, lastModified)
118
+ for (const entity of graph.entities) {
119
+ if (!entity.createdAt) {
120
+ warnings.push({
121
+ type: 'missing_metadata',
122
+ message: `Entity "${entity.name}" is missing createdAt timestamp`,
123
+ details: { entityName: entity.name, field: 'createdAt' },
124
+ });
125
+ }
126
+ if (!entity.lastModified) {
127
+ warnings.push({
128
+ type: 'missing_metadata',
129
+ message: `Entity "${entity.name}" is missing lastModified timestamp`,
130
+ details: { entityName: entity.name, field: 'lastModified' },
131
+ });
132
+ }
133
+ }
134
+ // Count specific issues
135
+ const orphanedRelationsCount = issues.filter(e => e.type === 'orphaned_relation').length;
136
+ const entitiesWithoutRelationsCount = warnings.filter(w => w.type === 'isolated_entity').length;
137
+ return {
138
+ isValid: issues.length === 0,
139
+ issues,
140
+ warnings,
141
+ summary: {
142
+ totalErrors: issues.length,
143
+ totalWarnings: warnings.length,
144
+ orphanedRelationsCount,
145
+ entitiesWithoutRelationsCount,
146
+ },
147
+ };
148
+ }
149
+ /**
150
+ * Get comprehensive statistics about the knowledge graph.
151
+ *
152
+ * Provides metrics including:
153
+ * - Total counts of entities and relations
154
+ * - Entity and relation type distributions
155
+ * - Oldest and newest entities/relations
156
+ * - Date ranges for entities and relations
157
+ *
158
+ * @returns Graph statistics object
159
+ */
160
+ async getGraphStats() {
161
+ const graph = await this.storage.loadGraph();
162
+ // Calculate entity type counts
163
+ const entityTypesCounts = {};
164
+ graph.entities.forEach(e => {
165
+ entityTypesCounts[e.entityType] = (entityTypesCounts[e.entityType] || 0) + 1;
166
+ });
167
+ // Calculate relation type counts
168
+ const relationTypesCounts = {};
169
+ graph.relations.forEach(r => {
170
+ relationTypesCounts[r.relationType] = (relationTypesCounts[r.relationType] || 0) + 1;
171
+ });
172
+ // Find oldest and newest entities
173
+ let oldestEntity;
174
+ let newestEntity;
175
+ let earliestEntityDate = null;
176
+ let latestEntityDate = null;
177
+ graph.entities.forEach(e => {
178
+ const date = new Date(e.createdAt || '');
179
+ if (!earliestEntityDate || date < earliestEntityDate) {
180
+ earliestEntityDate = date;
181
+ oldestEntity = { name: e.name, date: e.createdAt || '' };
182
+ }
183
+ if (!latestEntityDate || date > latestEntityDate) {
184
+ latestEntityDate = date;
185
+ newestEntity = { name: e.name, date: e.createdAt || '' };
186
+ }
187
+ });
188
+ // Find oldest and newest relations
189
+ let oldestRelation;
190
+ let newestRelation;
191
+ let earliestRelationDate = null;
192
+ let latestRelationDate = null;
193
+ graph.relations.forEach(r => {
194
+ const date = new Date(r.createdAt || '');
195
+ if (!earliestRelationDate || date < earliestRelationDate) {
196
+ earliestRelationDate = date;
197
+ oldestRelation = { from: r.from, to: r.to, relationType: r.relationType, date: r.createdAt || '' };
198
+ }
199
+ if (!latestRelationDate || date > latestRelationDate) {
200
+ latestRelationDate = date;
201
+ newestRelation = { from: r.from, to: r.to, relationType: r.relationType, date: r.createdAt || '' };
202
+ }
203
+ });
204
+ return {
205
+ totalEntities: graph.entities.length,
206
+ totalRelations: graph.relations.length,
207
+ entityTypesCounts,
208
+ relationTypesCounts,
209
+ oldestEntity,
210
+ newestEntity,
211
+ oldestRelation,
212
+ newestRelation,
213
+ entityDateRange: earliestEntityDate && latestEntityDate ? {
214
+ earliest: earliestEntityDate.toISOString(),
215
+ latest: latestEntityDate.toISOString()
216
+ } : undefined,
217
+ relationDateRange: earliestRelationDate && latestRelationDate ? {
218
+ earliest: earliestRelationDate.toISOString(),
219
+ latest: latestRelationDate.toISOString()
220
+ } : undefined,
221
+ };
222
+ }
223
+ }
224
+ //# sourceMappingURL=AnalyticsManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyticsManager.js","sourceRoot":"","sources":["../../src/features/AnalyticsManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Archive Manager
3
+ *
4
+ * Handles archiving (removal) of entities based on criteria.
5
+ * Archives are stored as compressed files for space-efficient long-term storage.
6
+ * Extracted from EntityManager (Phase 4: Consolidate God Objects).
7
+ * Enhanced with brotli compression in Phase 3 Sprint 5.
8
+ *
9
+ * @module features/ArchiveManager
10
+ */
11
+ import type { LongRunningOperationOptions } from '../types/index.js';
12
+ import type { GraphStorage } from '../core/GraphStorage.js';
13
+ /**
14
+ * Criteria for archiving entities.
15
+ */
16
+ export interface ArchiveCriteria {
17
+ /** Entities older than this date (ISO 8601) */
18
+ olderThan?: string;
19
+ /** Entities with importance less than this value */
20
+ importanceLessThan?: number;
21
+ /** Entities with any of these tags */
22
+ tags?: string[];
23
+ }
24
+ /**
25
+ * Options for archive operations.
26
+ * Phase 9B: Extended with LongRunningOperationOptions.
27
+ */
28
+ export interface ArchiveOptions extends LongRunningOperationOptions {
29
+ /** Dry run mode - preview without making changes */
30
+ dryRun?: boolean;
31
+ /** Whether to save archived entities to a compressed file (default: true) */
32
+ saveToFile?: boolean;
33
+ }
34
+ /**
35
+ * Result of archive operation.
36
+ * Extends ArchiveResultExtended with compression statistics.
37
+ */
38
+ export interface ArchiveResult {
39
+ /** Number of entities archived */
40
+ archived: number;
41
+ /** Names of archived entities */
42
+ entityNames: string[];
43
+ /** Path to the archive file (if created) */
44
+ archivePath?: string;
45
+ /** Original size of archive data in bytes */
46
+ originalSize?: number;
47
+ /** Compressed size in bytes */
48
+ compressedSize?: number;
49
+ /** Compression ratio (compressedSize / originalSize). Lower is better. */
50
+ compressionRatio?: number;
51
+ }
52
+ /**
53
+ * Manages archive operations for the knowledge graph.
54
+ *
55
+ * Archives are stored as brotli-compressed files in the `.archives` directory.
56
+ * Maximum compression quality is used for optimal long-term storage.
57
+ */
58
+ export declare class ArchiveManager {
59
+ private storage;
60
+ private readonly archiveDir;
61
+ constructor(storage: GraphStorage);
62
+ /**
63
+ * Archive old or low-importance entities.
64
+ *
65
+ * Entities matching ANY of the criteria are archived:
66
+ * - lastModified older than olderThan date
67
+ * - importance less than importanceLessThan
68
+ * - has at least one tag from tags array
69
+ *
70
+ * By default, archived entities are saved to a compressed file before
71
+ * being removed from the active graph. Use `saveToFile: false` to
72
+ * skip creating the archive file.
73
+ *
74
+ * Phase 9B: Supports progress tracking and cancellation via options.
75
+ *
76
+ * @param criteria - Archiving criteria
77
+ * @param options - Archive options (dryRun, saveToFile, onProgress, signal)
78
+ * @returns Archive result with count, entity names, and compression stats
79
+ * @throws {OperationCancelledError} If operation is cancelled via signal (Phase 9B)
80
+ *
81
+ * @example
82
+ * ```typescript
83
+ * // Archive old entities with compression
84
+ * const result = await manager.archiveEntities({
85
+ * olderThan: '2023-01-01T00:00:00Z',
86
+ * importanceLessThan: 3
87
+ * });
88
+ * console.log(`Archived ${result.archived} entities`);
89
+ * console.log(`Compressed from ${result.originalSize} to ${result.compressedSize} bytes`);
90
+ *
91
+ * // Preview without making changes
92
+ * const preview = await manager.archiveEntities(criteria, { dryRun: true });
93
+ *
94
+ * // With progress tracking and cancellation (Phase 9B)
95
+ * const controller = new AbortController();
96
+ * const result = await manager.archiveEntities(criteria, {
97
+ * signal: controller.signal,
98
+ * onProgress: (p) => console.log(`${p.percentage}% complete`),
99
+ * });
100
+ * ```
101
+ */
102
+ archiveEntities(criteria: ArchiveCriteria, options?: ArchiveOptions | boolean): Promise<ArchiveResult>;
103
+ /**
104
+ * Save entities to a compressed archive file.
105
+ *
106
+ * Creates a brotli-compressed file in the `.archives` directory
107
+ * with maximum compression quality for space efficiency.
108
+ *
109
+ * @param entities - Entities to archive
110
+ * @returns Archive file path and compression statistics
111
+ */
112
+ private saveToArchive;
113
+ /**
114
+ * List all available archives.
115
+ *
116
+ * @returns Array of archive information with compression details
117
+ */
118
+ listArchives(): Promise<Array<{
119
+ fileName: string;
120
+ filePath: string;
121
+ timestamp: string;
122
+ entityCount: number;
123
+ compressed: boolean;
124
+ originalSize?: number;
125
+ compressedSize?: number;
126
+ compressionRatio?: number;
127
+ }>>;
128
+ /**
129
+ * Get the path to the archives directory.
130
+ */
131
+ getArchiveDir(): string;
132
+ }
133
+ //# sourceMappingURL=ArchiveManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchiveManager.d.ts","sourceRoot":"","sources":["../../src/features/ArchiveManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAU,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAS5D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,2BAA2B;IACjE,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;GAKG;AACH,qBAAa,cAAc;IAGb,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAEhB,OAAO,EAAE,YAAY;IAMzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACG,eAAe,CACnB,QAAQ,EAAE,eAAe,EACzB,OAAO,GAAE,cAAc,GAAG,OAAY,GACrC,OAAO,CAAC,aAAa,CAAC;IAuIzB;;;;;;;;OAQG;YACW,aAAa;IAmD3B;;;;OAIG;IACG,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC;QAClC,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;IA6DH;;OAEG;IACH,aAAa,IAAI,MAAM;CAGxB"}