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,47 +0,0 @@
1
- /**
2
- * MCP Tool: detect_duplicate_memories
3
- *
4
- * Scans for duplicate or similar memories and creates merge proposals
5
- * Entry point for memory merging workflow
6
- */
7
- interface DetectDuplicatesInput {
8
- projectId?: string;
9
- threshold?: number;
10
- memoryType?: 'fact' | 'preference' | 'decision' | 'observation' | 'context';
11
- limit?: number;
12
- autoCreateProposals?: boolean;
13
- }
14
- interface DetectDuplicatesResponse {
15
- ok: boolean;
16
- message: string;
17
- data?: {
18
- projectId: string;
19
- duplicateCount: number;
20
- proposalsCreated: number;
21
- proposalIds: string[];
22
- statistics: {
23
- totalMemories: number;
24
- scannedMemories: number;
25
- candidatesFound: number;
26
- estimatedTokensSaved: number;
27
- };
28
- timing: {
29
- stage1Ms: number;
30
- stage2Ms: number;
31
- totalMs: number;
32
- };
33
- };
34
- error?: string;
35
- }
36
- /**
37
- * Handle detect_duplicate_memories tool call
38
- *
39
- * Algorithm:
40
- * 1. Run two-stage detection (SimHash → embedding similarity)
41
- * 2. Filter by safety checks
42
- * 3. Create merge proposals in database
43
- * 4. Return summary
44
- */
45
- export declare function handleDetectDuplicates(input: DetectDuplicatesInput): Promise<DetectDuplicatesResponse>;
46
- export {};
47
- //# sourceMappingURL=detect-duplicates.d.ts.map
@@ -1,145 +0,0 @@
1
- /**
2
- * MCP Tool: detect_duplicate_memories
3
- *
4
- * Scans for duplicate or similar memories and creates merge proposals
5
- * Entry point for memory merging workflow
6
- */
7
- import { randomUUID } from 'crypto';
8
- import { detectDuplicates } from '../detection/two-stage-detector.js';
9
- import { runSafetyChecks } from '../safety/safety-checks.js';
10
- import { mergeMemories } from '../strategies/merge-strategies.js';
11
- import { estimateTokensSaved } from '../analytics/token-estimator.js';
12
- import { getDb } from '../../../db/index.js';
13
- import { getSchema } from '../../../db/schema.js';
14
- import { createDatabaseClient } from '../../../core/storage/database.js';
15
- import { buildSuccessResponse, buildErrorResponse } from '../utils/response-builder.js';
16
- /**
17
- * Handle detect_duplicate_memories tool call
18
- *
19
- * Algorithm:
20
- * 1. Run two-stage detection (SimHash → embedding similarity)
21
- * 2. Filter by safety checks
22
- * 3. Create merge proposals in database
23
- * 4. Return summary
24
- */
25
- export async function handleDetectDuplicates(input) {
26
- try {
27
- const projectId = input.projectId;
28
- const threshold = input.threshold ?? 0.85;
29
- const memoryType = input.memoryType;
30
- const limit = input.limit ?? 50;
31
- const autoCreateProposals = input.autoCreateProposals !== false;
32
- if (!projectId) {
33
- return buildErrorResponse('projectId is required', 'projectId is required');
34
- }
35
- // Run detection
36
- const startTime = Date.now();
37
- const detectionResult = await detectDuplicates({
38
- projectId,
39
- threshold,
40
- type: memoryType,
41
- limit,
42
- });
43
- const detectionTime = Date.now() - startTime;
44
- if (detectionResult.candidates.length === 0) {
45
- return buildSuccessResponse('No duplicates found', {
46
- projectId,
47
- duplicateCount: 0,
48
- proposalsCreated: 0,
49
- proposalIds: [],
50
- statistics: {
51
- totalMemories: detectionResult.statistics.totalMemories,
52
- scannedMemories: detectionResult.statistics.totalMemories,
53
- candidatesFound: 0,
54
- estimatedTokensSaved: 0,
55
- },
56
- timing: {
57
- stage1Ms: detectionResult.stage1Time,
58
- stage2Ms: detectionResult.stage2Time,
59
- totalMs: detectionTime,
60
- },
61
- });
62
- }
63
- if (!autoCreateProposals) {
64
- return buildSuccessResponse(`Found ${detectionResult.candidates.length} potential duplicates`, {
65
- projectId,
66
- duplicateCount: detectionResult.candidates.length,
67
- proposalsCreated: 0,
68
- proposalIds: [],
69
- statistics: {
70
- totalMemories: detectionResult.statistics.totalMemories,
71
- scannedMemories: detectionResult.statistics.totalMemories,
72
- candidatesFound: detectionResult.candidates.length,
73
- estimatedTokensSaved: 0,
74
- },
75
- timing: {
76
- stage1Ms: detectionResult.stage1Time,
77
- stage2Ms: detectionResult.stage2Time,
78
- totalMs: detectionTime,
79
- },
80
- });
81
- }
82
- // Create proposals for detected duplicates
83
- const db = createDatabaseClient(await getDb());
84
- const schema = await getSchema();
85
- const proposalIds = [];
86
- let estimatedTokensSaved = 0;
87
- for (const candidate of detectionResult.candidates) {
88
- const sources = [candidate.memory1, candidate.memory2];
89
- // Run safety checks
90
- const safetyResult = runSafetyChecks(sources, {
91
- similarityScore: candidate.similarityScore,
92
- });
93
- if (!safetyResult.passed) {
94
- // Skip this candidate if safety checks fail
95
- continue;
96
- }
97
- // Merge memories
98
- const merged = mergeMemories(sources);
99
- // Estimate tokens saved
100
- const tokensSaved = estimateTokensSaved(sources, merged);
101
- estimatedTokensSaved += tokensSaved;
102
- // Create proposal
103
- const proposalId = randomUUID();
104
- await db.insert(schema.memoryMergeProposals).values({
105
- id: proposalId,
106
- projectId: projectId,
107
- userId: candidate.memory1.userId,
108
- sourceMemoryIds: [candidate.memory1.id, candidate.memory2.id],
109
- proposedContent: merged.content,
110
- proposedSummary: merged.summary,
111
- proposedTags: merged.tags,
112
- proposedMetadata: merged.metadata,
113
- detectionMethod: candidate.detectionMethod,
114
- similarityScore: candidate.similarityScore,
115
- confidenceLevel: candidate.confidenceLevel,
116
- mergeReason: candidate.mergeReason,
117
- conflictWarnings: merged.conflictWarnings,
118
- status: 'pending',
119
- createdAt: new Date(),
120
- });
121
- proposalIds.push(proposalId);
122
- }
123
- return buildSuccessResponse(`Created ${proposalIds.length} merge proposals from ${detectionResult.candidates.length} duplicates`, {
124
- projectId,
125
- duplicateCount: detectionResult.candidates.length,
126
- proposalsCreated: proposalIds.length,
127
- proposalIds,
128
- statistics: {
129
- totalMemories: detectionResult.statistics.totalMemories,
130
- scannedMemories: detectionResult.statistics.totalMemories,
131
- candidatesFound: detectionResult.candidates.length,
132
- estimatedTokensSaved,
133
- },
134
- timing: {
135
- stage1Ms: detectionResult.stage1Time,
136
- stage2Ms: detectionResult.stage2Time,
137
- totalMs: detectionTime,
138
- },
139
- });
140
- }
141
- catch (error) {
142
- return buildErrorResponse('Failed to detect duplicates', error);
143
- }
144
- }
145
- //# sourceMappingURL=detect-duplicates.js.map
@@ -1,39 +0,0 @@
1
- /**
2
- * MCP Tool: get_merge_stats
3
- *
4
- * Returns statistics about memory merges for a project
5
- */
6
- interface GetMergeStatsInput {
7
- projectId: string;
8
- }
9
- interface MergeStats {
10
- projectId: string;
11
- totalMemories: number;
12
- mergeableMemories: number;
13
- mergedMemories: number;
14
- canonicalMemories: number;
15
- pendingProposals: number;
16
- approvedMerges: number;
17
- rejectedProposals: number;
18
- tokensSaved: {
19
- total: number;
20
- formatted: string;
21
- percentage: number;
22
- };
23
- averageMergeSize: number;
24
- reversedMerges: number;
25
- }
26
- interface GetMergeStatsResponse {
27
- ok: boolean;
28
- message: string;
29
- data?: MergeStats;
30
- error?: string;
31
- }
32
- /**
33
- * Handle get_merge_stats tool call
34
- *
35
- * Gathers merge statistics for a project
36
- */
37
- export declare function handleGetMergeStats(input: GetMergeStatsInput): Promise<GetMergeStatsResponse>;
38
- export {};
39
- //# sourceMappingURL=get-stats.d.ts.map
@@ -1,88 +0,0 @@
1
- /**
2
- * MCP Tool: get_merge_stats
3
- *
4
- * Returns statistics about memory merges for a project
5
- */
6
- import { getDb } from '../../../db/index.js';
7
- import { getSchema } from '../../../db/schema.js';
8
- import { createDatabaseClient } from '../../../core/storage/database.js';
9
- import { eq } from 'drizzle-orm';
10
- import { calculateProjectTokenSavings, formatTokenCount } from '../analytics/token-estimator.js';
11
- /**
12
- * Handle get_merge_stats tool call
13
- *
14
- * Gathers merge statistics for a project
15
- */
16
- export async function handleGetMergeStats(input) {
17
- try {
18
- const { projectId } = input;
19
- if (!projectId) {
20
- return {
21
- ok: false,
22
- message: 'projectId is required',
23
- error: 'projectId is required',
24
- };
25
- }
26
- const db = createDatabaseClient(await getDb());
27
- const schema = await getSchema();
28
- // Get all memories in project
29
- const memories = await db
30
- .select()
31
- .from(schema.memories)
32
- .where(eq(schema.memories.projectId, projectId));
33
- // Get merge history
34
- const mergeHistory = await db
35
- .select()
36
- .from(schema.memoryMergeHistory)
37
- .where(eq(schema.memoryMergeHistory.projectId, projectId));
38
- // Get proposals
39
- const allProposals = await db
40
- .select()
41
- .from(schema.memoryMergeProposals)
42
- .where(eq(schema.memoryMergeProposals.projectId, projectId));
43
- // Calculate statistics
44
- const totalMemories = memories.length;
45
- const mergedMemories = memories.filter((m) => m.isMerged).length;
46
- const canonicalMemories = memories.filter((m) => m.isCanonical).length;
47
- const mergeableMemories = memories.filter((m) => m.isMergeable && !m.isMerged && m.isActive).length;
48
- const pendingProposals = allProposals.filter((p) => p.status === 'pending').length;
49
- const approvedMerges = allProposals.filter((p) => p.status === 'approved').length;
50
- const rejectedProposals = allProposals.filter((p) => p.status === 'rejected').length;
51
- const reversedMerges = mergeHistory.filter((m) => m.isReversed).length;
52
- // Calculate token savings
53
- const tokenStats = await calculateProjectTokenSavings(projectId);
54
- // Calculate average merge size (memories per canonical)
55
- const averageMergeSize = canonicalMemories > 0
56
- ? Math.round((mergedMemories + canonicalMemories) / canonicalMemories)
57
- : 1;
58
- return {
59
- ok: true,
60
- message: 'Merge statistics retrieved',
61
- data: {
62
- projectId,
63
- totalMemories,
64
- mergeableMemories,
65
- mergedMemories,
66
- canonicalMemories,
67
- pendingProposals,
68
- approvedMerges,
69
- rejectedProposals,
70
- tokensSaved: {
71
- total: tokenStats.totalSaved,
72
- formatted: formatTokenCount(tokenStats.totalSaved),
73
- percentage: tokenStats.tokenSavingPercentage,
74
- },
75
- averageMergeSize,
76
- reversedMerges,
77
- },
78
- };
79
- }
80
- catch (error) {
81
- return {
82
- ok: false,
83
- message: 'Failed to get merge statistics',
84
- error: error instanceof Error ? error.message : 'Unknown error',
85
- };
86
- }
87
- }
88
- //# sourceMappingURL=get-stats.js.map
@@ -1,45 +0,0 @@
1
- /**
2
- * MCP Tool: list_merge_proposals
3
- *
4
- * Lists pending merge proposals for user review
5
- */
6
- interface ListProposalsInput {
7
- projectId: string;
8
- status?: 'pending' | 'approved' | 'rejected' | 'expired';
9
- limit?: number;
10
- }
11
- interface ProposalSummary {
12
- id: string;
13
- projectId: string;
14
- sourceMemoryIds: string[];
15
- status: 'pending' | 'approved' | 'rejected' | 'expired';
16
- confidenceLevel: 'high' | 'medium' | 'low';
17
- similarityScore: number;
18
- mergeReason: string;
19
- createdAt: string;
20
- conflictWarnings: string[];
21
- }
22
- interface ListProposalsResponse {
23
- ok: boolean;
24
- message: string;
25
- data?: {
26
- projectId: string;
27
- count: number;
28
- proposals: ProposalSummary[];
29
- byStatus: {
30
- pending: number;
31
- approved: number;
32
- rejected: number;
33
- expired: number;
34
- };
35
- };
36
- error?: string;
37
- }
38
- /**
39
- * Handle list_merge_proposals tool call
40
- *
41
- * Lists merge proposals that are waiting for user review
42
- */
43
- export declare function handleListProposals(input: ListProposalsInput): Promise<ListProposalsResponse>;
44
- export {};
45
- //# sourceMappingURL=list-proposals.d.ts.map
@@ -1,83 +0,0 @@
1
- /**
2
- * MCP Tool: list_merge_proposals
3
- *
4
- * Lists pending merge proposals for user review
5
- */
6
- import { getDb } from '../../../db/index.js';
7
- import { getSchema } from '../../../db/schema.js';
8
- import { createDatabaseClient } from '../../../core/storage/database.js';
9
- import { eq, desc } from 'drizzle-orm';
10
- /**
11
- * Handle list_merge_proposals tool call
12
- *
13
- * Lists merge proposals that are waiting for user review
14
- */
15
- export async function handleListProposals(input) {
16
- try {
17
- const { projectId, status, limit = 20 } = input;
18
- if (!projectId) {
19
- return {
20
- ok: false,
21
- message: 'projectId is required',
22
- error: 'projectId is required',
23
- };
24
- }
25
- const db = createDatabaseClient(await getDb());
26
- const schema = await getSchema();
27
- // Build query
28
- let query = db
29
- .select()
30
- .from(schema.memoryMergeProposals)
31
- .where(eq(schema.memoryMergeProposals.projectId, projectId));
32
- // Filter by status if specified
33
- if (status) {
34
- query = query.where(eq(schema.memoryMergeProposals.status, status));
35
- }
36
- // Order by creation date (newest first)
37
- query = query.orderBy(desc(schema.memoryMergeProposals.createdAt));
38
- // Limit results
39
- query = query.limit(limit);
40
- const proposals = await query;
41
- // Count by status for the project
42
- const allProposals = await db
43
- .select()
44
- .from(schema.memoryMergeProposals)
45
- .where(eq(schema.memoryMergeProposals.projectId, projectId));
46
- const byStatus = {
47
- pending: allProposals.filter((p) => p.status === 'pending').length,
48
- approved: allProposals.filter((p) => p.status === 'approved').length,
49
- rejected: allProposals.filter((p) => p.status === 'rejected').length,
50
- expired: allProposals.filter((p) => p.status === 'expired').length,
51
- };
52
- // Format proposals
53
- const formattedProposals = proposals.map((p) => ({
54
- id: p.id,
55
- projectId: p.projectId,
56
- sourceMemoryIds: p.sourceMemoryIds || [],
57
- status: p.status || 'pending',
58
- confidenceLevel: p.confidenceLevel || 'medium',
59
- similarityScore: typeof p.similarityScore === 'string' ? parseFloat(p.similarityScore) : p.similarityScore || 0,
60
- mergeReason: p.mergeReason || '',
61
- createdAt: p.createdAt?.toISOString() || '',
62
- conflictWarnings: p.conflictWarnings || [],
63
- }));
64
- return {
65
- ok: true,
66
- message: `Found ${formattedProposals.length} proposals (${byStatus.pending} pending)`,
67
- data: {
68
- projectId,
69
- count: formattedProposals.length,
70
- proposals: formattedProposals,
71
- byStatus,
72
- },
73
- };
74
- }
75
- catch (error) {
76
- return {
77
- ok: false,
78
- message: 'Failed to list proposals',
79
- error: error instanceof Error ? error.message : 'Unknown error',
80
- };
81
- }
82
- }
83
- //# sourceMappingURL=list-proposals.js.map
@@ -1,39 +0,0 @@
1
- /**
2
- * Shows a preview of the merged result without executing the merge.
3
- */
4
- interface PreviewMergeInput {
5
- proposalId: string;
6
- }
7
- interface PreviewMergeResponse {
8
- ok: boolean;
9
- message: string;
10
- data?: {
11
- proposalId: string;
12
- sourceMemories: Array<{
13
- id: string;
14
- type: string;
15
- content: string;
16
- summary: string | null;
17
- tags: string[];
18
- createdAt: string;
19
- }>;
20
- mergedResult: {
21
- content: string;
22
- summary: string | null;
23
- tags: string[];
24
- metadata: Record<string, unknown>;
25
- };
26
- analysis: {
27
- mergeReason: string;
28
- conflictWarnings: string[];
29
- savedTokens: number;
30
- savedPercentage: number;
31
- similarityScore: number;
32
- confidenceLevel: string;
33
- };
34
- };
35
- error?: string;
36
- }
37
- export declare function handlePreviewMerge(input: PreviewMergeInput): Promise<PreviewMergeResponse>;
38
- export {};
39
- //# sourceMappingURL=preview-merge.d.ts.map
@@ -1,93 +0,0 @@
1
- /**
2
- * Shows a preview of the merged result without executing the merge.
3
- */
4
- import { getDb } from '../../../db/index.js';
5
- import { getSchema } from '../../../db/schema.js';
6
- import { createDatabaseClient } from '../../../core/storage/database.js';
7
- import { eq } from 'drizzle-orm';
8
- import { estimateMergeSavingsPreview } from '../analytics/token-estimator.js';
9
- import { mergeMemories } from '../strategies/merge-strategies.js';
10
- export async function handlePreviewMerge(input) {
11
- try {
12
- const { proposalId } = input;
13
- if (!proposalId) {
14
- return {
15
- ok: false,
16
- message: 'proposalId is required',
17
- error: 'proposalId is required',
18
- };
19
- }
20
- const db = createDatabaseClient(await getDb());
21
- const schema = await getSchema();
22
- // Load proposal
23
- const [proposal] = await db
24
- .select()
25
- .from(schema.memoryMergeProposals)
26
- .where(eq(schema.memoryMergeProposals.id, proposalId));
27
- if (!proposal) {
28
- return {
29
- ok: false,
30
- message: 'Proposal not found',
31
- error: `Proposal ${proposalId} not found`,
32
- };
33
- }
34
- // Load source memories
35
- const sourceIds = proposal.sourceMemoryIds || [];
36
- const sourceMemories = [];
37
- for (const id of sourceIds) {
38
- const [memory] = await db.select().from(schema.memories).where(eq(schema.memories.id, id));
39
- if (memory) {
40
- sourceMemories.push(memory);
41
- }
42
- }
43
- if (sourceMemories.length === 0) {
44
- return {
45
- ok: false,
46
- message: 'No source memories found',
47
- error: 'Could not load source memories',
48
- };
49
- }
50
- // Regenerate merged result from source memories (should match proposal)
51
- const merged = mergeMemories(sourceMemories);
52
- // Calculate token savings
53
- const savings = estimateMergeSavingsPreview(sourceMemories, merged);
54
- // Format response
55
- return {
56
- ok: true,
57
- message: 'Merge preview generated',
58
- data: {
59
- proposalId,
60
- sourceMemories: sourceMemories.map((m) => ({
61
- id: m.id,
62
- type: m.type,
63
- content: m.content,
64
- summary: m.summary,
65
- tags: m.tags || [],
66
- createdAt: m.createdAt?.toISOString() || '',
67
- })),
68
- mergedResult: {
69
- content: merged.content,
70
- summary: merged.summary,
71
- tags: merged.tags,
72
- metadata: merged.metadata,
73
- },
74
- analysis: {
75
- mergeReason: merged.mergeReason,
76
- conflictWarnings: merged.conflictWarnings,
77
- savedTokens: savings.savedTokens,
78
- savedPercentage: savings.savedPercentage,
79
- similarityScore: proposal.similarityScore || 0,
80
- confidenceLevel: proposal.confidenceLevel || 'unknown',
81
- },
82
- },
83
- };
84
- }
85
- catch (error) {
86
- return {
87
- ok: false,
88
- message: 'Failed to preview merge',
89
- error: error instanceof Error ? error.message : 'Unknown error',
90
- };
91
- }
92
- }
93
- //# sourceMappingURL=preview-merge.js.map
@@ -1,28 +0,0 @@
1
- /**
2
- * MCP Tool: reject_merge
3
- *
4
- * Rejects a merge proposal without executing it
5
- */
6
- interface RejectMergeInput {
7
- proposalId: string;
8
- reviewNotes?: string;
9
- }
10
- interface RejectMergeResponse {
11
- ok: boolean;
12
- message: string;
13
- data?: {
14
- proposalId: string;
15
- previousStatus: string;
16
- newStatus: string;
17
- rejectedAt: string;
18
- };
19
- error?: string;
20
- }
21
- /**
22
- * Handle reject_merge tool call
23
- *
24
- * Marks a merge proposal as rejected without executing it
25
- */
26
- export declare function handleRejectMerge(input: RejectMergeInput): Promise<RejectMergeResponse>;
27
- export {};
28
- //# sourceMappingURL=reject-merge.d.ts.map
@@ -1,69 +0,0 @@
1
- /**
2
- * MCP Tool: reject_merge
3
- *
4
- * Rejects a merge proposal without executing it
5
- */
6
- import { getDb } from '../../../db/index.js';
7
- import { getSchema } from '../../../db/schema.js';
8
- import { createDatabaseClient } from '../../../core/storage/database.js';
9
- import { eq } from 'drizzle-orm';
10
- /**
11
- * Handle reject_merge tool call
12
- *
13
- * Marks a merge proposal as rejected without executing it
14
- */
15
- export async function handleRejectMerge(input) {
16
- try {
17
- const { proposalId, reviewNotes } = input;
18
- if (!proposalId) {
19
- return {
20
- ok: false,
21
- message: 'proposalId is required',
22
- error: 'proposalId is required',
23
- };
24
- }
25
- const db = createDatabaseClient(await getDb());
26
- const schema = await getSchema();
27
- // Load proposal
28
- const [proposal] = await db
29
- .select()
30
- .from(schema.memoryMergeProposals)
31
- .where(eq(schema.memoryMergeProposals.id, proposalId));
32
- if (!proposal) {
33
- return {
34
- ok: false,
35
- message: 'Proposal not found',
36
- error: `Proposal ${proposalId} not found`,
37
- };
38
- }
39
- const previousStatus = proposal.status;
40
- // Update status to rejected
41
- const now = new Date();
42
- await db
43
- .update(schema.memoryMergeProposals)
44
- .set({
45
- status: 'rejected',
46
- reviewedAt: now,
47
- reviewNotes: reviewNotes || `Rejected without comment`,
48
- })
49
- .where(eq(schema.memoryMergeProposals.id, proposalId));
50
- return {
51
- ok: true,
52
- message: `Merge proposal rejected`,
53
- data: {
54
- proposalId,
55
- previousStatus: previousStatus || 'unknown',
56
- newStatus: 'rejected',
57
- rejectedAt: now.toISOString(),
58
- },
59
- };
60
- }
61
- catch (error) {
62
- return {
63
- ok: false,
64
- message: 'Failed to reject merge',
65
- error: error instanceof Error ? error.message : 'Unknown error',
66
- };
67
- }
68
- }
69
- //# sourceMappingURL=reject-merge.js.map