squish-memory 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (449) hide show
  1. package/bin/squish-mcp.mjs +40 -42
  2. package/core/scheduler/cron-scheduler.ts +10 -1
  3. package/core/worker.ts +10 -1
  4. package/package.json +119 -119
  5. package/packages/mcp/src/index.ts +99 -36
  6. package/dist/config.d.ts +0 -106
  7. package/dist/config.js +0 -194
  8. package/dist/core/adapters/config/claude-code.d.ts +0 -45
  9. package/dist/core/adapters/config/claude-code.js +0 -113
  10. package/dist/core/adapters/config/cursor.d.ts +0 -26
  11. package/dist/core/adapters/config/cursor.js +0 -74
  12. package/dist/core/adapters/config/opencode.d.ts +0 -23
  13. package/dist/core/adapters/config/opencode.js +0 -73
  14. package/dist/core/adapters/config/windsurf.d.ts +0 -26
  15. package/dist/core/adapters/config/windsurf.js +0 -74
  16. package/dist/core/adapters/index.d.ts +0 -45
  17. package/dist/core/adapters/index.js +0 -84
  18. package/dist/core/adapters/scripts/install-adapter.d.ts +0 -19
  19. package/dist/core/adapters/scripts/install-adapter.js +0 -149
  20. package/dist/core/adapters/timeline.d.ts +0 -23
  21. package/dist/core/adapters/timeline.js +0 -88
  22. package/dist/core/adapters/types.d.ts +0 -137
  23. package/dist/core/adapters/types.js +0 -50
  24. package/dist/core/agent-preferences.d.ts +0 -16
  25. package/dist/core/agent-preferences.js +0 -124
  26. package/dist/core/algorithms/analytics/token-estimator.d.ts +0 -50
  27. package/dist/core/algorithms/analytics/token-estimator.js +0 -154
  28. package/dist/core/algorithms/detection/hash-filters.d.ts +0 -47
  29. package/dist/core/algorithms/detection/hash-filters.js +0 -190
  30. package/dist/core/algorithms/detection/semantic-ranker.d.ts +0 -32
  31. package/dist/core/algorithms/detection/semantic-ranker.js +0 -118
  32. package/dist/core/algorithms/detection/two-stage-detector.d.ts +0 -52
  33. package/dist/core/algorithms/detection/two-stage-detector.js +0 -299
  34. package/dist/core/algorithms/handlers/approve-merge.d.ts +0 -22
  35. package/dist/core/algorithms/handlers/approve-merge.js +0 -179
  36. package/dist/core/algorithms/handlers/detect-duplicates.d.ts +0 -47
  37. package/dist/core/algorithms/handlers/detect-duplicates.js +0 -145
  38. package/dist/core/algorithms/handlers/get-stats.d.ts +0 -39
  39. package/dist/core/algorithms/handlers/get-stats.js +0 -88
  40. package/dist/core/algorithms/handlers/list-proposals.d.ts +0 -45
  41. package/dist/core/algorithms/handlers/list-proposals.js +0 -83
  42. package/dist/core/algorithms/handlers/preview-merge.d.ts +0 -39
  43. package/dist/core/algorithms/handlers/preview-merge.js +0 -93
  44. package/dist/core/algorithms/handlers/reject-merge.d.ts +0 -28
  45. package/dist/core/algorithms/handlers/reject-merge.js +0 -69
  46. package/dist/core/algorithms/handlers/reverse-merge.d.ts +0 -21
  47. package/dist/core/algorithms/handlers/reverse-merge.js +0 -121
  48. package/dist/core/algorithms/index.d.ts +0 -21
  49. package/dist/core/algorithms/index.js +0 -26
  50. package/dist/core/algorithms/operations/cache-maintenance.d.ts +0 -12
  51. package/dist/core/algorithms/operations/cache-maintenance.js +0 -157
  52. package/dist/core/algorithms/safety/safety-checks.d.ts +0 -18
  53. package/dist/core/algorithms/safety/safety-checks.js +0 -179
  54. package/dist/core/algorithms/strategies/merge-strategies.d.ts +0 -50
  55. package/dist/core/algorithms/strategies/merge-strategies.js +0 -288
  56. package/dist/core/algorithms/types.d.ts +0 -125
  57. package/dist/core/algorithms/types.js +0 -5
  58. package/dist/core/algorithms/utils/response-builder.d.ts +0 -28
  59. package/dist/core/algorithms/utils/response-builder.js +0 -37
  60. package/dist/core/associations.d.ts +0 -33
  61. package/dist/core/associations.js +0 -284
  62. package/dist/core/autosave.d.ts +0 -19
  63. package/dist/core/autosave.js +0 -16
  64. package/dist/core/beliefs/decay.d.ts +0 -27
  65. package/dist/core/beliefs/decay.js +0 -217
  66. package/dist/core/beliefs/extractor.d.ts +0 -9
  67. package/dist/core/beliefs/extractor.js +0 -113
  68. package/dist/core/beliefs/store.d.ts +0 -46
  69. package/dist/core/beliefs/store.js +0 -466
  70. package/dist/core/beliefs/types.d.ts +0 -28
  71. package/dist/core/beliefs/types.js +0 -2
  72. package/dist/core/commands/mcp-server.d.ts +0 -2
  73. package/dist/core/commands/mcp-server.js +0 -6
  74. package/dist/core/commands/remember.d.ts +0 -24
  75. package/dist/core/commands/remember.js +0 -144
  76. package/dist/core/compression.d.ts +0 -45
  77. package/dist/core/compression.js +0 -160
  78. package/dist/core/consolidation.d.ts +0 -37
  79. package/dist/core/consolidation.js +0 -248
  80. package/dist/core/context/agent-context.d.ts +0 -106
  81. package/dist/core/context/agent-context.js +0 -274
  82. package/dist/core/context/context-paging.d.ts +0 -80
  83. package/dist/core/context/context-paging.js +0 -328
  84. package/dist/core/context/context-window.d.ts +0 -40
  85. package/dist/core/context/context-window.js +0 -177
  86. package/dist/core/context/context.d.ts +0 -7
  87. package/dist/core/context/context.js +0 -22
  88. package/dist/core/embeddings/embeddings.d.ts +0 -29
  89. package/dist/core/embeddings/embeddings.js +0 -546
  90. package/dist/core/embeddings/google-multimodal.d.ts +0 -14
  91. package/dist/core/embeddings/google-multimodal.js +0 -146
  92. package/dist/core/embeddings/local-embeddings.d.ts +0 -11
  93. package/dist/core/embeddings/local-embeddings.js +0 -11
  94. package/dist/core/embeddings/qmd-client.d.ts +0 -136
  95. package/dist/core/embeddings/qmd-client.js +0 -403
  96. package/dist/core/embeddings/transformers-local.d.ts +0 -64
  97. package/dist/core/embeddings/transformers-local.js +0 -213
  98. package/dist/core/embeddings.d.ts +0 -2
  99. package/dist/core/embeddings.js +0 -3
  100. package/dist/core/error-handling.d.ts +0 -63
  101. package/dist/core/error-handling.js +0 -173
  102. package/dist/core/graph/entity-deduplicator.d.ts +0 -24
  103. package/dist/core/graph/entity-deduplicator.js +0 -183
  104. package/dist/core/graph/graph-builder.d.ts +0 -46
  105. package/dist/core/graph/graph-builder.js +0 -174
  106. package/dist/core/graph/graph-traversal.d.ts +0 -80
  107. package/dist/core/graph/graph-traversal.js +0 -315
  108. package/dist/core/graph/index.d.ts +0 -19
  109. package/dist/core/graph/index.js +0 -13
  110. package/dist/core/graph/llm-entity-extractor.d.ts +0 -49
  111. package/dist/core/graph/llm-entity-extractor.js +0 -313
  112. package/dist/core/graph/multi-hop-retrieval.d.ts +0 -48
  113. package/dist/core/graph/multi-hop-retrieval.js +0 -215
  114. package/dist/core/graph/relationship-extractor.d.ts +0 -48
  115. package/dist/core/graph/relationship-extractor.js +0 -351
  116. package/dist/core/hooks/agent-hooks.d.ts +0 -83
  117. package/dist/core/hooks/agent-hooks.js +0 -521
  118. package/dist/core/hooks/auto-tagger.d.ts +0 -19
  119. package/dist/core/hooks/auto-tagger.js +0 -155
  120. package/dist/core/hooks/capture-filter.d.ts +0 -41
  121. package/dist/core/hooks/capture-filter.js +0 -128
  122. package/dist/core/hot-cache.d.ts +0 -86
  123. package/dist/core/hot-cache.js +0 -285
  124. package/dist/core/index.d.ts +0 -10
  125. package/dist/core/index.js +0 -11
  126. package/dist/core/ingestion/agent-memory.d.ts +0 -22
  127. package/dist/core/ingestion/agent-memory.js +0 -109
  128. package/dist/core/ingestion/core-memory.d.ts +0 -78
  129. package/dist/core/ingestion/core-memory.js +0 -226
  130. package/dist/core/ingestion/learnings.d.ts +0 -57
  131. package/dist/core/ingestion/learnings.js +0 -205
  132. package/dist/core/ingestion/signal-engine.d.ts +0 -41
  133. package/dist/core/ingestion/signal-engine.js +0 -201
  134. package/dist/core/integrations/obsidian-vault.d.ts +0 -31
  135. package/dist/core/integrations/obsidian-vault.js +0 -156
  136. package/dist/core/layers/generator.d.ts +0 -25
  137. package/dist/core/layers/generator.js +0 -76
  138. package/dist/core/lib/db-client.d.ts +0 -114
  139. package/dist/core/lib/db-client.js +0 -130
  140. package/dist/core/lib/parse-embedding.d.ts +0 -9
  141. package/dist/core/lib/parse-embedding.js +0 -58
  142. package/dist/core/lib/schemas.d.ts +0 -132
  143. package/dist/core/lib/schemas.js +0 -87
  144. package/dist/core/lib/types.d.ts +0 -45
  145. package/dist/core/lib/types.js +0 -6
  146. package/dist/core/lib/utils.d.ts +0 -18
  147. package/dist/core/lib/utils.js +0 -145
  148. package/dist/core/lib/validation.d.ts +0 -38
  149. package/dist/core/lib/validation.js +0 -151
  150. package/dist/core/lifecycle.d.ts +0 -25
  151. package/dist/core/lifecycle.js +0 -292
  152. package/dist/core/logger.d.ts +0 -17
  153. package/dist/core/logger.js +0 -46
  154. package/dist/core/mcp/client.d.ts +0 -17
  155. package/dist/core/mcp/client.js +0 -101
  156. package/dist/core/mcp/index.d.ts +0 -6
  157. package/dist/core/mcp/index.js +0 -6
  158. package/dist/core/mcp/server.d.ts +0 -18
  159. package/dist/core/mcp/server.js +0 -157
  160. package/dist/core/mcp/standalone-server.d.ts +0 -13
  161. package/dist/core/mcp/standalone-server.js +0 -46
  162. package/dist/core/mcp/tools.d.ts +0 -7
  163. package/dist/core/mcp/tools.js +0 -278
  164. package/dist/core/mcp/types.d.ts +0 -87
  165. package/dist/core/mcp/types.js +0 -48
  166. package/dist/core/memory/bridge-discovery.d.ts +0 -50
  167. package/dist/core/memory/bridge-discovery.js +0 -291
  168. package/dist/core/memory/categorizer.d.ts +0 -27
  169. package/dist/core/memory/categorizer.js +0 -306
  170. package/dist/core/memory/conflict-detector.d.ts +0 -7
  171. package/dist/core/memory/conflict-detector.js +0 -43
  172. package/dist/core/memory/consolidation.d.ts +0 -42
  173. package/dist/core/memory/consolidation.js +0 -277
  174. package/dist/core/memory/context-collector.d.ts +0 -10
  175. package/dist/core/memory/context-collector.js +0 -56
  176. package/dist/core/memory/contradiction-resolver.d.ts +0 -40
  177. package/dist/core/memory/contradiction-resolver.js +0 -368
  178. package/dist/core/memory/edit-workflow.d.ts +0 -19
  179. package/dist/core/memory/edit-workflow.js +0 -120
  180. package/dist/core/memory/entity-extractor.d.ts +0 -37
  181. package/dist/core/memory/entity-extractor.js +0 -350
  182. package/dist/core/memory/entity-resolver.d.ts +0 -23
  183. package/dist/core/memory/entity-resolver.js +0 -64
  184. package/dist/core/memory/explain.d.ts +0 -18
  185. package/dist/core/memory/explain.js +0 -92
  186. package/dist/core/memory/fact-deriver.d.ts +0 -31
  187. package/dist/core/memory/fact-deriver.js +0 -236
  188. package/dist/core/memory/fact-extractor.d.ts +0 -24
  189. package/dist/core/memory/fact-extractor.js +0 -89
  190. package/dist/core/memory/feedback-tracker.d.ts +0 -12
  191. package/dist/core/memory/feedback-tracker.js +0 -155
  192. package/dist/core/memory/hooks.d.ts +0 -88
  193. package/dist/core/memory/hooks.js +0 -174
  194. package/dist/core/memory/hybrid-retrieval.d.ts +0 -27
  195. package/dist/core/memory/hybrid-retrieval.js +0 -37
  196. package/dist/core/memory/hybrid-scorer.d.ts +0 -40
  197. package/dist/core/memory/hybrid-scorer.js +0 -267
  198. package/dist/core/memory/hybrid-search.d.ts +0 -23
  199. package/dist/core/memory/hybrid-search.js +0 -596
  200. package/dist/core/memory/importance.d.ts +0 -46
  201. package/dist/core/memory/importance.js +0 -241
  202. package/dist/core/memory/index.d.ts +0 -9
  203. package/dist/core/memory/index.js +0 -11
  204. package/dist/core/memory/loader.d.ts +0 -31
  205. package/dist/core/memory/loader.js +0 -141
  206. package/dist/core/memory/markdown/markdown-storage.d.ts +0 -72
  207. package/dist/core/memory/markdown/markdown-storage.js +0 -243
  208. package/dist/core/memory/memories.d.ts +0 -43
  209. package/dist/core/memory/memories.js +0 -452
  210. package/dist/core/memory/memory-lifecycle.d.ts +0 -8
  211. package/dist/core/memory/memory-lifecycle.js +0 -47
  212. package/dist/core/memory/memory-manager.d.ts +0 -15
  213. package/dist/core/memory/memory-manager.js +0 -46
  214. package/dist/core/memory/migrate.d.ts +0 -21
  215. package/dist/core/memory/migrate.js +0 -134
  216. package/dist/core/memory/normalization.d.ts +0 -7
  217. package/dist/core/memory/normalization.js +0 -26
  218. package/dist/core/memory/path-strengthener.d.ts +0 -39
  219. package/dist/core/memory/path-strengthener.js +0 -150
  220. package/dist/core/memory/progressive-disclosure.d.ts +0 -43
  221. package/dist/core/memory/progressive-disclosure.js +0 -280
  222. package/dist/core/memory/query-processor.d.ts +0 -21
  223. package/dist/core/memory/query-processor.js +0 -106
  224. package/dist/core/memory/query-rewriter.d.ts +0 -13
  225. package/dist/core/memory/query-rewriter.js +0 -118
  226. package/dist/core/memory/response-analyzer.d.ts +0 -9
  227. package/dist/core/memory/response-analyzer.js +0 -61
  228. package/dist/core/memory/retrieval-feedback.d.ts +0 -70
  229. package/dist/core/memory/retrieval-feedback.js +0 -213
  230. package/dist/core/memory/serialization.d.ts +0 -10
  231. package/dist/core/memory/serialization.js +0 -84
  232. package/dist/core/memory/stale-cleaner.d.ts +0 -26
  233. package/dist/core/memory/stale-cleaner.js +0 -97
  234. package/dist/core/memory/stats.d.ts +0 -32
  235. package/dist/core/memory/stats.js +0 -143
  236. package/dist/core/memory/telemetry.d.ts +0 -69
  237. package/dist/core/memory/telemetry.js +0 -313
  238. package/dist/core/memory/temporal-facts.d.ts +0 -41
  239. package/dist/core/memory/temporal-facts.js +0 -283
  240. package/dist/core/memory/temporal-parser.d.ts +0 -32
  241. package/dist/core/memory/temporal-parser.js +0 -385
  242. package/dist/core/memory/trigger-detector.d.ts +0 -21
  243. package/dist/core/memory/trigger-detector.js +0 -79
  244. package/dist/core/memory/write-gate.d.ts +0 -54
  245. package/dist/core/memory/write-gate.js +0 -210
  246. package/dist/core/places/index.d.ts +0 -14
  247. package/dist/core/places/index.js +0 -14
  248. package/dist/core/places/memory-places.d.ts +0 -68
  249. package/dist/core/places/memory-places.js +0 -261
  250. package/dist/core/places/places.d.ts +0 -88
  251. package/dist/core/places/places.js +0 -314
  252. package/dist/core/places/rules.d.ts +0 -74
  253. package/dist/core/places/rules.js +0 -240
  254. package/dist/core/places/walking.d.ts +0 -56
  255. package/dist/core/places/walking.js +0 -121
  256. package/dist/core/projects.d.ts +0 -17
  257. package/dist/core/projects.js +0 -116
  258. package/dist/core/redis.d.ts +0 -11
  259. package/dist/core/redis.js +0 -69
  260. package/dist/core/responses.d.ts +0 -96
  261. package/dist/core/responses.js +0 -122
  262. package/dist/core/runtime/trust-report.d.ts +0 -102
  263. package/dist/core/runtime/trust-report.js +0 -107
  264. package/dist/core/runtime/trust-state.d.ts +0 -12
  265. package/dist/core/runtime/trust-state.js +0 -309
  266. package/dist/core/scheduler/cron-scheduler.d.ts +0 -32
  267. package/dist/core/scheduler/cron-scheduler.js +0 -493
  268. package/dist/core/scheduler/heartbeat.d.ts +0 -11
  269. package/dist/core/scheduler/heartbeat.js +0 -73
  270. package/dist/core/scheduler/index.d.ts +0 -8
  271. package/dist/core/scheduler/index.js +0 -8
  272. package/dist/core/scheduler/job-runner.d.ts +0 -11
  273. package/dist/core/scheduler/job-runner.js +0 -164
  274. package/dist/core/search/conversations.d.ts +0 -25
  275. package/dist/core/search/conversations.js +0 -110
  276. package/dist/core/search/entities.d.ts +0 -12
  277. package/dist/core/search/entities.js +0 -31
  278. package/dist/core/search/folder-context.d.ts +0 -25
  279. package/dist/core/search/folder-context.js +0 -119
  280. package/dist/core/search/graph-boost.d.ts +0 -7
  281. package/dist/core/search/graph-boost.js +0 -23
  282. package/dist/core/search/index.d.ts +0 -4
  283. package/dist/core/search/index.js +0 -5
  284. package/dist/core/search/qmd-wrapper.d.ts +0 -36
  285. package/dist/core/search/qmd-wrapper.js +0 -58
  286. package/dist/core/security/encrypt.d.ts +0 -6
  287. package/dist/core/security/encrypt.js +0 -47
  288. package/dist/core/security/governance.d.ts +0 -26
  289. package/dist/core/security/governance.js +0 -79
  290. package/dist/core/security/privacy.d.ts +0 -23
  291. package/dist/core/security/privacy.js +0 -82
  292. package/dist/core/security/secret-detector.d.ts +0 -32
  293. package/dist/core/security/secret-detector.js +0 -88
  294. package/dist/core/session/auto-load.d.ts +0 -6
  295. package/dist/core/session/auto-load.js +0 -144
  296. package/dist/core/session/entity-tracker.d.ts +0 -62
  297. package/dist/core/session/entity-tracker.js +0 -287
  298. package/dist/core/session/index.d.ts +0 -7
  299. package/dist/core/session/index.js +0 -7
  300. package/dist/core/session/reference-resolver.d.ts +0 -26
  301. package/dist/core/session/reference-resolver.js +0 -121
  302. package/dist/core/session/self-iteration-job.d.ts +0 -35
  303. package/dist/core/session/self-iteration-job.js +0 -387
  304. package/dist/core/session/session-hooks.d.ts +0 -18
  305. package/dist/core/session/session-hooks.js +0 -58
  306. package/dist/core/session/types.d.ts +0 -26
  307. package/dist/core/session/types.js +0 -10
  308. package/dist/core/session/working-set.d.ts +0 -50
  309. package/dist/core/session/working-set.js +0 -212
  310. package/dist/core/snapshots/cleanup.d.ts +0 -9
  311. package/dist/core/snapshots/cleanup.js +0 -12
  312. package/dist/core/snapshots/comparison.d.ts +0 -19
  313. package/dist/core/snapshots/comparison.js +0 -43
  314. package/dist/core/snapshots/creation.d.ts +0 -13
  315. package/dist/core/snapshots/creation.js +0 -117
  316. package/dist/core/snapshots/retrieval.d.ts +0 -7
  317. package/dist/core/snapshots/retrieval.js +0 -41
  318. package/dist/core/snapshots/stats.d.ts +0 -11
  319. package/dist/core/snapshots/stats.js +0 -52
  320. package/dist/core/storage/cache.d.ts +0 -13
  321. package/dist/core/storage/cache.js +0 -202
  322. package/dist/core/storage/database.d.ts +0 -12
  323. package/dist/core/storage/database.js +0 -12
  324. package/dist/core/summarization/cleanup.d.ts +0 -9
  325. package/dist/core/summarization/cleanup.js +0 -12
  326. package/dist/core/summarization/queries.d.ts +0 -9
  327. package/dist/core/summarization/queries.js +0 -28
  328. package/dist/core/summarization/stats.d.ts +0 -14
  329. package/dist/core/summarization/stats.js +0 -52
  330. package/dist/core/summarization/strategies.d.ts +0 -24
  331. package/dist/core/summarization/strategies.js +0 -28
  332. package/dist/core/summarization.d.ts +0 -37
  333. package/dist/core/summarization.js +0 -188
  334. package/dist/core/temporal-facts.d.ts +0 -54
  335. package/dist/core/temporal-facts.js +0 -193
  336. package/dist/core/tracing/collector.d.ts +0 -111
  337. package/dist/core/tracing/collector.js +0 -350
  338. package/dist/core/tracing/visualizer.d.ts +0 -32
  339. package/dist/core/tracing/visualizer.js +0 -165
  340. package/dist/core/utils/cleanup-operations.d.ts +0 -13
  341. package/dist/core/utils/cleanup-operations.js +0 -44
  342. package/dist/core/utils/content-extraction.d.ts +0 -19
  343. package/dist/core/utils/content-extraction.js +0 -75
  344. package/dist/core/utils/filter-builder.d.ts +0 -13
  345. package/dist/core/utils/filter-builder.js +0 -44
  346. package/dist/core/utils/history-traversal.d.ts +0 -13
  347. package/dist/core/utils/history-traversal.js +0 -50
  348. package/dist/core/utils/memory-operations.d.ts +0 -17
  349. package/dist/core/utils/memory-operations.js +0 -43
  350. package/dist/core/utils/query-operations.d.ts +0 -18
  351. package/dist/core/utils/query-operations.js +0 -65
  352. package/dist/core/utils/summarization-helpers.d.ts +0 -17
  353. package/dist/core/utils/summarization-helpers.js +0 -33
  354. package/dist/core/utils/temporal-queries.d.ts +0 -13
  355. package/dist/core/utils/temporal-queries.js +0 -27
  356. package/dist/core/utils/vector-operations.d.ts +0 -71
  357. package/dist/core/utils/vector-operations.js +0 -129
  358. package/dist/core/utils/version-management.d.ts +0 -9
  359. package/dist/core/utils/version-management.js +0 -61
  360. package/dist/core/worker.d.ts +0 -82
  361. package/dist/core/worker.js +0 -272
  362. package/dist/db/adapter.d.ts +0 -7
  363. package/dist/db/adapter.js +0 -175
  364. package/dist/db/bootstrap.d.ts +0 -11
  365. package/dist/db/bootstrap.js +0 -1034
  366. package/dist/db/drizzle/schema-sqlite.d.ts +0 -5538
  367. package/dist/db/drizzle/schema-sqlite.js +0 -763
  368. package/dist/db/drizzle/schema.d.ts +0 -4734
  369. package/dist/db/drizzle/schema.js +0 -859
  370. package/dist/db/drizzle.config.d.ts +0 -3
  371. package/dist/db/drizzle.config.js +0 -12
  372. package/dist/db/index.d.ts +0 -7
  373. package/dist/db/index.js +0 -89
  374. package/dist/db/migrations/associations.d.ts +0 -6
  375. package/dist/db/migrations/associations.js +0 -29
  376. package/dist/db/migrations/beliefs.d.ts +0 -10
  377. package/dist/db/migrations/beliefs.js +0 -76
  378. package/dist/db/migrations/core-memory.d.ts +0 -6
  379. package/dist/db/migrations/core-memory.js +0 -29
  380. package/dist/db/migrations/fts.d.ts +0 -6
  381. package/dist/db/migrations/fts.js +0 -52
  382. package/dist/db/migrations/index.d.ts +0 -25
  383. package/dist/db/migrations/index.js +0 -51
  384. package/dist/db/migrations/indexes.d.ts +0 -6
  385. package/dist/db/migrations/indexes.js +0 -30
  386. package/dist/db/migrations/learnings.d.ts +0 -7
  387. package/dist/db/migrations/learnings.js +0 -26
  388. package/dist/db/migrations/maintenance.d.ts +0 -6
  389. package/dist/db/migrations/maintenance.js +0 -61
  390. package/dist/db/migrations/memories.d.ts +0 -7
  391. package/dist/db/migrations/memories.js +0 -16
  392. package/dist/db/migrations/memory-places.d.ts +0 -6
  393. package/dist/db/migrations/memory-places.js +0 -29
  394. package/dist/db/migrations/places.d.ts +0 -6
  395. package/dist/db/migrations/places.js +0 -43
  396. package/dist/db/migrations/projects.d.ts +0 -3
  397. package/dist/db/migrations/projects.js +0 -13
  398. package/dist/db/migrations/tier-conversion.d.ts +0 -7
  399. package/dist/db/migrations/tier-conversion.js +0 -20
  400. package/dist/db/neon.d.ts +0 -8
  401. package/dist/db/neon.js +0 -20
  402. package/dist/db/schema/beliefs.d.ts +0 -9
  403. package/dist/db/schema/beliefs.js +0 -46
  404. package/dist/db/schema/generator.d.ts +0 -38
  405. package/dist/db/schema/generator.js +0 -108
  406. package/dist/db/schema/index.d.ts +0 -39
  407. package/dist/db/schema/index.js +0 -51
  408. package/dist/db/schema/learnings.d.ts +0 -7
  409. package/dist/db/schema/learnings.js +0 -30
  410. package/dist/db/schema/memories.d.ts +0 -7
  411. package/dist/db/schema/memories.js +0 -81
  412. package/dist/db/schema/projects.d.ts +0 -4
  413. package/dist/db/schema/projects.js +0 -31
  414. package/dist/db/schema/tables/context-sessions.d.ts +0 -9
  415. package/dist/db/schema/tables/context-sessions.js +0 -37
  416. package/dist/db/schema/tables/conversations.d.ts +0 -9
  417. package/dist/db/schema/tables/conversations.js +0 -47
  418. package/dist/db/schema/tables/core-memory.d.ts +0 -9
  419. package/dist/db/schema/tables/core-memory.js +0 -41
  420. package/dist/db/schema/tables/entities.d.ts +0 -9
  421. package/dist/db/schema/tables/entities.js +0 -39
  422. package/dist/db/schema/tables/entity-relations.d.ts +0 -9
  423. package/dist/db/schema/tables/entity-relations.js +0 -31
  424. package/dist/db/schema/tables/learnings.d.ts +0 -9
  425. package/dist/db/schema/tables/learnings.js +0 -66
  426. package/dist/db/schema/tables/memories.d.ts +0 -9
  427. package/dist/db/schema/tables/memories.js +0 -161
  428. package/dist/db/schema/tables/memory-associations.d.ts +0 -9
  429. package/dist/db/schema/tables/memory-associations.js +0 -39
  430. package/dist/db/schema/tables/memory-hash-cache.d.ts +0 -9
  431. package/dist/db/schema/tables/memory-hash-cache.js +0 -29
  432. package/dist/db/schema/tables/memory-merge-history.d.ts +0 -9
  433. package/dist/db/schema/tables/memory-merge-history.js +0 -33
  434. package/dist/db/schema/tables/memory-merge-proposals.d.ts +0 -9
  435. package/dist/db/schema/tables/memory-merge-proposals.js +0 -39
  436. package/dist/db/schema/tables/messages.d.ts +0 -9
  437. package/dist/db/schema/tables/messages.js +0 -41
  438. package/dist/db/schema/tables/namespaces.d.ts +0 -9
  439. package/dist/db/schema/tables/namespaces.js +0 -37
  440. package/dist/db/schema/tables/projects.d.ts +0 -9
  441. package/dist/db/schema/tables/projects.js +0 -31
  442. package/dist/db/schema/tables/users.d.ts +0 -9
  443. package/dist/db/schema/tables/users.js +0 -27
  444. package/dist/db/schema.d.ts +0 -3
  445. package/dist/db/schema.js +0 -11
  446. package/dist/db/supabase.d.ts +0 -9
  447. package/dist/db/supabase.js +0 -24
  448. package/dist/packages/mcp/src/index.d.ts +0 -3
  449. package/dist/packages/mcp/src/index.js +0 -733
@@ -1,288 +0,0 @@
1
- /**
2
- * Type-specific merge strategies for different memory types.
3
- * Each type has different merge semantics to preserve meaning and prevent data loss.
4
- */
5
- /**
6
- * Base implementation of MergeStrategy with common functionality.
7
- * Reduces code duplication across specific merge strategies.
8
- */
9
- export class BaseMergeStrategy {
10
- canMerge(sources) {
11
- if (sources.length < 2) {
12
- return { ok: false, reason: 'Need at least 2 memories to merge' };
13
- }
14
- return { ok: true };
15
- }
16
- validateSources(sources) {
17
- return sources.length >= 2;
18
- }
19
- handleEmptySources() {
20
- return {
21
- content: '',
22
- summary: null,
23
- tags: [],
24
- metadata: {},
25
- mergeReason: 'Empty source set',
26
- conflictWarnings: [],
27
- };
28
- }
29
- mergeTags(sources) {
30
- const tagSet = new Set();
31
- for (const source of sources) {
32
- for (const tag of source.tags || []) {
33
- tagSet.add(tag);
34
- }
35
- }
36
- return Array.from(tagSet);
37
- }
38
- buildBaseMetadata(sources, extra) {
39
- return {
40
- mergedFrom: sources.map((m) => m.id),
41
- mergeCount: sources.length,
42
- ...extra,
43
- };
44
- }
45
- sortByDate(sources, order = 'desc') {
46
- const sorted = [...sources].sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());
47
- return order === 'asc' ? [...sorted].reverse() : sorted;
48
- }
49
- sortChronologically(sources) {
50
- return [...sources].sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
51
- }
52
- }
53
- /**
54
- * FACT strategy: Union of information, remove exact duplicates.
55
- * Combines all unique facts into a unified statement with provenance tracking.
56
- */
57
- class FactMergeStrategy extends BaseMergeStrategy {
58
- type = 'fact';
59
- merge(sources) {
60
- if (sources.length === 0) {
61
- return this.handleEmptySources();
62
- }
63
- // Split content into sentences and deduplicate
64
- const sentenceSet = new Set();
65
- const timestamps = [];
66
- for (const source of sources) {
67
- // Extract sentences (split by period, exclamation, question)
68
- const sentences = source.content
69
- .split(/[.!?]\s+/)
70
- .map((s) => s.trim())
71
- .filter((s) => s.length > 0);
72
- for (const sentence of sentences) {
73
- sentenceSet.add(sentence);
74
- }
75
- if (source.createdAt) {
76
- timestamps.push(source.createdAt);
77
- }
78
- }
79
- // Sort sentences for consistency
80
- const mergedSentences = Array.from(sentenceSet).sort();
81
- const content = mergedSentences.join('. ') + (mergedSentences.length > 0 ? '.' : '');
82
- // Build merged metadata with provenance
83
- const metadata = this.buildBaseMetadata(sources, {
84
- timestamps: timestamps.sort(),
85
- });
86
- return {
87
- content,
88
- summary: null,
89
- tags: this.mergeTags(sources),
90
- metadata,
91
- mergeReason: `Merged ${sources.length} facts by combining all unique statements`,
92
- conflictWarnings: [],
93
- };
94
- }
95
- }
96
- /**
97
- * PREFERENCE strategy: Keep latest by timestamp, track evolution history.
98
- * Warns if preferences conflict, indicating user changed their mind.
99
- */
100
- class PreferenceMergeStrategy extends BaseMergeStrategy {
101
- type = 'preference';
102
- merge(sources) {
103
- if (sources.length === 0) {
104
- return this.handleEmptySources();
105
- }
106
- // Sort by creation date (newest first)
107
- const sorted = this.sortByDate(sources);
108
- const latest = sorted[0];
109
- const warnings = [];
110
- // Check for conflicting preferences
111
- const uniqueContents = new Set(sources.map((m) => m.content));
112
- if (uniqueContents.size > 1) {
113
- warnings.push(`Multiple preferences detected: ${Array.from(uniqueContents).join(', ')}`);
114
- warnings.push(`Using latest preference from ${latest.createdAt || 'unknown date'}`);
115
- }
116
- // Build history timeline
117
- const history = sorted.map((m) => ({
118
- preference: m.content,
119
- createdAt: m.createdAt,
120
- confidence: m.confidence || 100,
121
- source: m.source,
122
- }));
123
- const metadata = this.buildBaseMetadata(sources, {
124
- preferenceHistory: history,
125
- latestAt: latest.createdAt,
126
- });
127
- const summary = sources.length > 1
128
- ? `Prefers: ${latest.content} (evolved from ${sources.length} preferences)`
129
- : null;
130
- return {
131
- content: latest.content,
132
- summary,
133
- tags: latest.tags || [],
134
- metadata,
135
- mergeReason: `Merged ${sources.length} preference records, keeping latest from ${latest.createdAt}`,
136
- conflictWarnings: warnings,
137
- };
138
- }
139
- }
140
- /**
141
- * DECISION strategy: Keep latest decision, link to previous ones in timeline.
142
- * Warns if decisions contradict, preserving rationale history.
143
- */
144
- class DecisionMergeStrategy extends BaseMergeStrategy {
145
- type = 'decision';
146
- merge(sources) {
147
- if (sources.length === 0) {
148
- return this.handleEmptySources();
149
- }
150
- // Sort by creation date (newest first)
151
- const sorted = this.sortByDate(sources);
152
- const latest = sorted[0];
153
- const warnings = [];
154
- // Check for conflicting decisions
155
- const uniqueDecisions = new Set(sources.map((m) => m.content));
156
- if (uniqueDecisions.size > 1) {
157
- warnings.push(`Decision changed: was ${sorted[sorted.length - 1].content}, now ${latest.content}`);
158
- }
159
- // Build decision timeline
160
- const timeline = sorted.map((m) => ({
161
- decision: m.content,
162
- createdAt: m.createdAt,
163
- confidence: m.confidence || 100,
164
- rationale: m.summary || 'No rationale recorded',
165
- }));
166
- const metadata = this.buildBaseMetadata(sources, {
167
- decisionTimeline: timeline,
168
- currentDecisionAt: latest.createdAt,
169
- supersedes: sorted.slice(1).map((m) => m.id),
170
- });
171
- const summary = sources.length > 1 ? `Decided: ${latest.content} (${sources.length} decisions)` : null;
172
- return {
173
- content: latest.content,
174
- summary,
175
- tags: latest.tags || [],
176
- metadata,
177
- mergeReason: `Merged ${sources.length} decision records, keeping latest from ${latest.createdAt}`,
178
- conflictWarnings: warnings,
179
- };
180
- }
181
- }
182
- /**
183
- * OBSERVATION strategy: Aggregate observations in chronological order.
184
- * Preserves temporal patterns and frequency information.
185
- */
186
- class ObservationMergeStrategy extends BaseMergeStrategy {
187
- type = 'observation';
188
- merge(sources) {
189
- if (sources.length === 0) {
190
- return this.handleEmptySources();
191
- }
192
- // Sort chronologically
193
- const sorted = this.sortChronologically(sources);
194
- // Create observation summary
195
- const observations = sorted.map((m) => `• ${m.content}`).join('\n');
196
- const metadata = this.buildBaseMetadata(sources, {
197
- observationCount: sources.length,
198
- timeSpan: {
199
- start: sorted[0].createdAt,
200
- end: sorted[sorted.length - 1].createdAt,
201
- },
202
- chronologicalOrder: sorted.map((m) => ({
203
- id: m.id,
204
- content: m.content,
205
- createdAt: m.createdAt,
206
- })),
207
- });
208
- return {
209
- content: `Observations (${sources.length} total):\n${observations}`,
210
- summary: `${sources.length} observations over time period`,
211
- tags: this.mergeTags(sources),
212
- metadata,
213
- mergeReason: `Merged ${sources.length} observations chronologically`,
214
- conflictWarnings: [],
215
- };
216
- }
217
- }
218
- /**
219
- * CONTEXT strategy: Union of unique context, remove exact duplicates.
220
- * Preserves all distinct context items.
221
- */
222
- class ContextMergeStrategy extends BaseMergeStrategy {
223
- type = 'context';
224
- merge(sources) {
225
- if (sources.length === 0) {
226
- return this.handleEmptySources();
227
- }
228
- // Deduplicate by content (exact matches)
229
- const uniqueContexts = new Map();
230
- for (const source of sources) {
231
- if (!uniqueContexts.has(source.content)) {
232
- uniqueContexts.set(source.content, source);
233
- }
234
- }
235
- // Format as list
236
- const contextList = Array.from(uniqueContexts.keys())
237
- .sort()
238
- .map((content) => `• ${content}`)
239
- .join('\n');
240
- const metadata = this.buildBaseMetadata(sources, {
241
- uniqueContextCount: uniqueContexts.size,
242
- totalContextCount: sources.length,
243
- deduplicatedEntries: sources.length - uniqueContexts.size,
244
- });
245
- return {
246
- content: contextList,
247
- summary: `${uniqueContexts.size} context items (${sources.length} total)`,
248
- tags: this.mergeTags(sources),
249
- metadata,
250
- mergeReason: `Merged ${sources.length} context records into ${uniqueContexts.size} unique items`,
251
- conflictWarnings: [],
252
- };
253
- }
254
- }
255
- export const MERGE_STRATEGIES = {
256
- fact: new FactMergeStrategy(),
257
- preference: new PreferenceMergeStrategy(),
258
- decision: new DecisionMergeStrategy(),
259
- observation: new ObservationMergeStrategy(),
260
- context: new ContextMergeStrategy(),
261
- reflection: new ObservationMergeStrategy(),
262
- note: new ObservationMergeStrategy(), // jot uses observation strategy
263
- };
264
- export function getMergeStrategy(type) {
265
- const strategy = MERGE_STRATEGIES[type];
266
- if (!strategy) {
267
- throw new Error(`No merge strategy defined for type: ${type}`);
268
- }
269
- return strategy;
270
- }
271
- export function mergeMemories(sources) {
272
- if (sources.length === 0) {
273
- throw new Error('Cannot merge: no source memories');
274
- }
275
- // All sources must be same type
276
- const type = sources[0].type;
277
- const allSameType = sources.every((m) => m.type === type);
278
- if (!allSameType) {
279
- throw new Error('Cannot merge: memories must be same type');
280
- }
281
- const strategy = getMergeStrategy(type);
282
- const canMerge = strategy.canMerge(sources);
283
- if (!canMerge.ok) {
284
- throw new Error(`Cannot merge: ${canMerge.reason}`);
285
- }
286
- return strategy.merge(sources);
287
- }
288
- //# sourceMappingURL=merge-strategies.js.map
@@ -1,125 +0,0 @@
1
- /**
2
- * TypeScript types and interfaces for memory merging
3
- */
4
- import type { Memory, MemoryMergeProposal } from '../../db/drizzle/schema.js';
5
- /**
6
- * Merge proposal status
7
- */
8
- export type MergeProposalStatus = 'pending' | 'approved' | 'rejected' | 'expired';
9
- /**
10
- * Confidence level for merge suggestions
11
- */
12
- export type ConfidenceLevel = 'high' | 'medium' | 'low';
13
- /**
14
- * Detection method used to find duplicates
15
- */
16
- export type DetectionMethod = 'simhash' | 'minhash' | 'embedding';
17
- /**
18
- * Merge strategy type per memory type
19
- */
20
- export type MergeStrategyType = 'union' | 'latest' | 'voting' | 'custom';
21
- /**
22
- * Memory pair candidate for merging
23
- */
24
- export interface MemoryMergePair {
25
- memory1: Memory;
26
- memory2: Memory;
27
- similarityScore: number;
28
- detectionMethod: DetectionMethod;
29
- confidenceLevel: ConfidenceLevel;
30
- mergeReason: string;
31
- }
32
- /**
33
- * Merge proposal with all details
34
- */
35
- export interface MergeProposalDetails {
36
- proposal: MemoryMergeProposal;
37
- sourceMemories: Memory[];
38
- previewMerged: {
39
- content: string;
40
- summary: string | null;
41
- tags: string[];
42
- metadata: Record<string, unknown>;
43
- };
44
- analysis: {
45
- savedTokens: number;
46
- savedPercentage: number;
47
- conflictWarnings: string[];
48
- };
49
- }
50
- /**
51
- * Merge result after approval
52
- */
53
- export interface MergeResult {
54
- proposalId: string;
55
- canonicalMemoryId: string;
56
- mergedMemoryIds: string[];
57
- tokensSaved: number;
58
- mergedAt: Date;
59
- mergeHistoryId?: string;
60
- }
61
- /**
62
- * Merge reversal result
63
- */
64
- export interface MergeReversal {
65
- mergeHistoryId: string;
66
- canonicalMemoryId: string;
67
- restoredMemoryIds: string[];
68
- reversedAt: Date;
69
- }
70
- /**
71
- * Detection statistics
72
- */
73
- export interface DetectionStatistics {
74
- totalMemories: number;
75
- scannedMemories: number;
76
- candidatesFound: number;
77
- candidatesRanked: number;
78
- estimatedTokensSaved: number;
79
- timeMs: {
80
- stage1: number;
81
- stage2: number;
82
- total: number;
83
- };
84
- }
85
- /**
86
- * Project merge statistics
87
- */
88
- export interface ProjectMergeStatistics {
89
- projectId: string;
90
- totalMemories: number;
91
- mergeableMemories: number;
92
- mergedMemories: number;
93
- canonicalMemories: number;
94
- pendingProposals: number;
95
- approvedMerges: number;
96
- rejectedProposals: number;
97
- reversedMerges: number;
98
- tokensSaved: {
99
- total: number;
100
- formatted: string;
101
- percentage: number;
102
- };
103
- averageMergeSize: number;
104
- }
105
- /**
106
- * Hash cache entry for fast duplicate detection
107
- */
108
- export interface HashCacheEntry {
109
- memoryId: string;
110
- simhash: string;
111
- minhash: number[];
112
- contentHash: string;
113
- lastUpdated: Date;
114
- }
115
- /**
116
- * Stage 1 candidate pair with hash distances
117
- */
118
- export interface Stage1CandidatePair {
119
- memoryId1: string;
120
- memoryId2: string;
121
- simhashDistance: number;
122
- minhashSimilarity: number;
123
- matched: 'simhash' | 'minhash' | 'both';
124
- }
125
- //# sourceMappingURL=types.d.ts.map
@@ -1,5 +0,0 @@
1
- /**
2
- * TypeScript types and interfaces for memory merging
3
- */
4
- export {};
5
- //# sourceMappingURL=types.js.map
@@ -1,28 +0,0 @@
1
- /**
2
- * Unified response builder for algorithm handlers
3
- * Provides consistent response formatting across all algorithm handlers
4
- */
5
- export interface ErrorResponse {
6
- ok: false;
7
- message: string;
8
- error: string;
9
- }
10
- export interface SuccessResponse<T = unknown> {
11
- ok: true;
12
- message: string;
13
- data?: T;
14
- }
15
- export type ApiResponse<T = unknown> = ErrorResponse | SuccessResponse<T>;
16
- /**
17
- * Build a success response with optional data
18
- */
19
- export declare function buildSuccessResponse<T = unknown>(message: string, data?: T): SuccessResponse<T>;
20
- /**
21
- * Build an error response
22
- */
23
- export declare function buildErrorResponse(message: string, error?: unknown): ErrorResponse;
24
- /**
25
- * Wrap async handlers with consistent error handling
26
- */
27
- export declare function withErrorHandler<T>(handler: () => Promise<T>, errorMessage: string): Promise<ApiResponse<T>>;
28
- //# sourceMappingURL=response-builder.d.ts.map
@@ -1,37 +0,0 @@
1
- /**
2
- * Unified response builder for algorithm handlers
3
- * Provides consistent response formatting across all algorithm handlers
4
- */
5
- /**
6
- * Build a success response with optional data
7
- */
8
- export function buildSuccessResponse(message, data) {
9
- const response = { ok: true, message };
10
- if (data !== undefined) {
11
- response.data = data;
12
- }
13
- return response;
14
- }
15
- /**
16
- * Build an error response
17
- */
18
- export function buildErrorResponse(message, error) {
19
- return {
20
- ok: false,
21
- message,
22
- error: error instanceof Error ? error.message : String(error || 'Unknown error'),
23
- };
24
- }
25
- /**
26
- * Wrap async handlers with consistent error handling
27
- */
28
- export async function withErrorHandler(handler, errorMessage) {
29
- try {
30
- const result = await handler();
31
- return buildSuccessResponse(errorMessage, result);
32
- }
33
- catch (error) {
34
- return buildErrorResponse(errorMessage, error);
35
- }
36
- }
37
- //# sourceMappingURL=response-builder.js.map
@@ -1,33 +0,0 @@
1
- /**
2
- * Memory Association Graph (Waypoint Graph)
3
- * Tracks co-occurrence and relationships between memories
4
- */
5
- export type AssociationType = 'co_occurred' | 'supersedes' | 'contradicts' | 'supports' | 'relates_to' | 'duplicate' | 'merged';
6
- /**
7
- * Create or update an association between two memories
8
- */
9
- export declare function createAssociation(fromMemoryId: string, toMemoryId: string, type: AssociationType, weight?: number): Promise<void>;
10
- /**
11
- * Auto-link memories that share entities
12
- * Called after storing a memory to link it to related memories
13
- */
14
- export declare function autoLinkByEntities(newMemoryId: string, entityNames: string[], projectId: string): Promise<number>;
15
- export declare function trackCoactivation(memoryIds: string[]): Promise<void>;
16
- /**
17
- * Get related memories via the association graph
18
- */
19
- export declare function getRelatedMemories(memoryId: string, limit?: number): Promise<any[]>;
20
- /**
21
- * Prune weak associations (weight < threshold)
22
- */
23
- export declare function pruneWeakAssociations(weightThreshold?: number): Promise<number>;
24
- /**
25
- * Get association statistics
26
- */
27
- export declare function getAssociationStats(): Promise<{
28
- totalAssociations: number;
29
- byType: Record<string, number>;
30
- avgWeight: number;
31
- maxWeight: number;
32
- }>;
33
- //# sourceMappingURL=associations.d.ts.map