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,78 +0,0 @@
1
- /**
2
- * Core Memory Service - Always-in-context memory (Tier 1)
3
- *
4
- * Small, persistent, always-visible memory block (< 2KB total).
5
- * This memory is automatically injected into every agent interaction.
6
- */
7
- type CoreMemorySection = 'persona' | 'user_info' | 'project_context' | 'working_notes';
8
- interface CoreMemoryContent {
9
- persona: string;
10
- user_info: string;
11
- project_context: string;
12
- working_notes: string;
13
- }
14
- /**
15
- * Initialize core memory for a project
16
- */
17
- export declare function initializeCoreMemory(projectId: string, userId?: string): Promise<void>;
18
- /**
19
- * Get all core memory sections for a project
20
- */
21
- export declare function getCoreMemory(projectId: string): Promise<CoreMemoryContent>;
22
- /**
23
- * Get a specific core memory section
24
- */
25
- export declare function getCoreMemorySection(projectId: string, section: CoreMemorySection): Promise<string>;
26
- /**
27
- * Update (replace) a core memory section
28
- */
29
- export declare function editCoreMemorySection(projectId: string, section: CoreMemorySection, content: string): Promise<{
30
- success: boolean;
31
- message?: string;
32
- sizeBytes?: number;
33
- tokensEstimate?: number;
34
- }>;
35
- /**
36
- * Append content to a core memory section
37
- */
38
- export declare function appendCoreMemorySection(projectId: string, section: CoreMemorySection, text: string): Promise<{
39
- success: boolean;
40
- message?: string;
41
- sizeBytes?: number;
42
- }>;
43
- /**
44
- * Replace text within a core memory section
45
- */
46
- export declare function replaceCoreMemoryText(projectId: string, section: CoreMemorySection, oldText: string, newText: string): Promise<{
47
- success: boolean;
48
- message?: string;
49
- sizeBytes?: number;
50
- }>;
51
- /**
52
- * Get core memory stats
53
- */
54
- export declare function getCoreMemoryStats(projectId: string): Promise<{
55
- totalBytes: number;
56
- totalTokens: number;
57
- maxBytes: number;
58
- maxTokens: number;
59
- usagePercent: number;
60
- tokenUsagePercent: number;
61
- sections: Array<{
62
- section: string;
63
- sizeBytes: number;
64
- tokensEstimate: number;
65
- version: number;
66
- updatedAt: Date;
67
- }>;
68
- }>;
69
- /**
70
- * Estimate token count from text (rough approximation: 1 token ≈ 4 chars)
71
- * Import from context-window.ts - single source of truth
72
- */
73
- export { estimateTokens } from '../context/context-window.js';
74
- /**
75
- * Get core memory formatted for context injection
76
- */
77
- export declare function formatCoreMemoryForInjection(projectId: string): Promise<string>;
78
- //# sourceMappingURL=core-memory.d.ts.map
@@ -1,226 +0,0 @@
1
- /**
2
- * Core Memory Service - Always-in-context memory (Tier 1)
3
- *
4
- * Small, persistent, always-visible memory block (< 2KB total).
5
- * This memory is automatically injected into every agent interaction.
6
- */
7
- import { eq, and, sql } from 'drizzle-orm';
8
- import { getDb } from '../../db/index.js';
9
- import { getSchema } from '../../db/schema.js';
10
- import { createDatabaseClient } from '../storage/database.js';
11
- import config from '../../config.js';
12
- import { estimateTokens } from '../context/context-window.js';
13
- // Use configurable limits from environment
14
- const MAX_TOTAL_SIZE_BYTES = config.coreMemoryTotalBytes;
15
- const MAX_SECTION_SIZE_BYTES = config.coreMemorySectionBytes;
16
- /**
17
- * Initialize core memory for a project
18
- */
19
- export async function initializeCoreMemory(projectId, userId) {
20
- const db = createDatabaseClient(await getDb());
21
- const schema = await getSchema();
22
- const { coreMemory } = schema;
23
- const sections = ['persona', 'user_info', 'project_context', 'working_notes'];
24
- for (const section of sections) {
25
- const existing = await db
26
- .select()
27
- .from(coreMemory)
28
- .where(and(eq(coreMemory.projectId, projectId), eq(coreMemory.section, section)))
29
- .limit(1);
30
- if (existing.length === 0) {
31
- await db.insert(coreMemory).values({
32
- projectId: projectId,
33
- userId: userId,
34
- section,
35
- content: '',
36
- sizeBytes: 0,
37
- version: 1,
38
- });
39
- }
40
- }
41
- }
42
- /**
43
- * Get all core memory sections for a project
44
- */
45
- export async function getCoreMemory(projectId) {
46
- const db = createDatabaseClient(await getDb());
47
- const schema = await getSchema();
48
- const { coreMemory } = schema;
49
- const sections = await db
50
- .select()
51
- .from(coreMemory)
52
- .where(eq(coreMemory.projectId, projectId));
53
- const content = {
54
- persona: '',
55
- user_info: '',
56
- project_context: '',
57
- working_notes: '',
58
- };
59
- for (const section of sections) {
60
- const key = section.section;
61
- content[key] = section.content || '';
62
- }
63
- return content;
64
- }
65
- /**
66
- * Get a specific core memory section
67
- */
68
- export async function getCoreMemorySection(projectId, section) {
69
- const db = createDatabaseClient(await getDb());
70
- const schema = await getSchema();
71
- const { coreMemory } = schema;
72
- const result = await db
73
- .select()
74
- .from(coreMemory)
75
- .where(and(eq(coreMemory.projectId, projectId), eq(coreMemory.section, section)))
76
- .limit(1);
77
- return result[0]?.content || '';
78
- }
79
- /**
80
- * Update (replace) a core memory section
81
- */
82
- export async function editCoreMemorySection(projectId, section, content) {
83
- const sizeBytes = Buffer.byteLength(content, 'utf8');
84
- const tokensEstimate = estimateTokens(content);
85
- // Check section size limit
86
- if (sizeBytes > MAX_SECTION_SIZE_BYTES) {
87
- return {
88
- success: false,
89
- message: `Content exceeds section limit of ${MAX_SECTION_SIZE_BYTES} bytes (got ${sizeBytes} bytes)`,
90
- };
91
- }
92
- // Check total size limit
93
- const totalSize = await getTotalCoreMemorySize(projectId, section, sizeBytes);
94
- if (totalSize > MAX_TOTAL_SIZE_BYTES) {
95
- return {
96
- success: false,
97
- message: `Total core memory would exceed ${MAX_TOTAL_SIZE_BYTES} bytes (would be ${totalSize} bytes)`,
98
- };
99
- }
100
- const db = createDatabaseClient(await getDb());
101
- const schema = await getSchema();
102
- const { coreMemory } = schema;
103
- await db
104
- .update(coreMemory)
105
- .set({
106
- content,
107
- sizeBytes,
108
- tokensEstimate,
109
- version: sql `${coreMemory.version} + 1`,
110
- updatedAt: new Date(),
111
- })
112
- .where(and(eq(coreMemory.projectId, projectId), eq(coreMemory.section, section)));
113
- return { success: true, sizeBytes, tokensEstimate };
114
- }
115
- /**
116
- * Append content to a core memory section
117
- */
118
- export async function appendCoreMemorySection(projectId, section, text) {
119
- const currentContent = await getCoreMemorySection(projectId, section);
120
- const newContent = currentContent ? `${currentContent}\n${text}` : text;
121
- return editCoreMemorySection(projectId, section, newContent);
122
- }
123
- /**
124
- * Replace text within a core memory section
125
- */
126
- export async function replaceCoreMemoryText(projectId, section, oldText, newText) {
127
- const currentContent = await getCoreMemorySection(projectId, section);
128
- if (!currentContent.includes(oldText)) {
129
- return {
130
- success: false,
131
- message: `Text "${oldText}" not found in section "${section}"`,
132
- };
133
- }
134
- const newContent = currentContent.replace(oldText, newText);
135
- return editCoreMemorySection(projectId, section, newContent);
136
- }
137
- /**
138
- * Get total size of core memory (excluding one section if calculating new size)
139
- */
140
- async function getTotalCoreMemorySize(projectId, excludeSection, newSectionSize) {
141
- const db = createDatabaseClient(await getDb());
142
- const schema = await getSchema();
143
- const { coreMemory } = schema;
144
- const sections = await db
145
- .select()
146
- .from(coreMemory)
147
- .where(eq(coreMemory.projectId, projectId));
148
- let total = 0;
149
- for (const section of sections) {
150
- if (section.section === excludeSection) {
151
- total += newSectionSize || 0;
152
- }
153
- else {
154
- total += section.sizeBytes || 0;
155
- }
156
- }
157
- return total;
158
- }
159
- /**
160
- * Get core memory stats
161
- */
162
- export async function getCoreMemoryStats(projectId) {
163
- const db = createDatabaseClient(await getDb());
164
- const schema = await getSchema();
165
- const { coreMemory } = schema;
166
- const sections = await db
167
- .select()
168
- .from(coreMemory)
169
- .where(eq(coreMemory.projectId, projectId));
170
- const totalBytes = sections.reduce((sum, s) => sum + (s.sizeBytes || 0), 0);
171
- const totalTokens = sections.reduce((sum, s) => sum + (s.tokensEstimate || 0), 0);
172
- // Estimate max tokens from max bytes (rough approximation: 1 token ≈ 4 chars)
173
- const maxTokens = Math.floor(MAX_TOTAL_SIZE_BYTES / 4);
174
- return {
175
- totalBytes,
176
- totalTokens,
177
- maxBytes: MAX_TOTAL_SIZE_BYTES,
178
- maxTokens,
179
- usagePercent: (totalBytes / MAX_TOTAL_SIZE_BYTES) * 100,
180
- tokenUsagePercent: (totalTokens / maxTokens) * 100,
181
- sections: sections.map((s) => ({
182
- section: s.section,
183
- sizeBytes: s.sizeBytes || 0,
184
- tokensEstimate: s.tokensEstimate || 0,
185
- version: s.version || 1,
186
- updatedAt: s.updatedAt,
187
- })),
188
- };
189
- }
190
- /**
191
- * Estimate token count from text (rough approximation: 1 token ≈ 4 chars)
192
- * Import from context-window.ts - single source of truth
193
- */
194
- export { estimateTokens } from '../context/context-window.js';
195
- /**
196
- * Get core memory formatted for context injection
197
- */
198
- export async function formatCoreMemoryForInjection(projectId) {
199
- const content = await getCoreMemory(projectId);
200
- const stats = await getCoreMemoryStats(projectId);
201
- let formatted = `# Core Memory (Always-In-Context)\n\n`;
202
- if (content.persona) {
203
- formatted += `## Agent Persona\n${content.persona}\n\n`;
204
- }
205
- if (content.user_info) {
206
- formatted += `## User Information\n${content.user_info}\n\n`;
207
- }
208
- if (content.project_context) {
209
- formatted += `## Project Context\n${content.project_context}\n\n`;
210
- }
211
- if (content.working_notes) {
212
- formatted += `## Working Notes\n${content.working_notes}\n\n`;
213
- }
214
- formatted += `---\n`;
215
- formatted += `Core Memory Usage:\n`;
216
- formatted += `- Bytes: ${stats.totalBytes}/${stats.maxBytes} (${stats.usagePercent.toFixed(1)}%)\n`;
217
- formatted += `- Tokens: ~${stats.totalTokens}/${stats.maxTokens} (${stats.tokenUsagePercent.toFixed(1)}%)\n\n`;
218
- // Add tool usage hints for agent-driven retrieval
219
- formatted += `### Memory Tools Available\n`;
220
- formatted += `When you need to recall information or store something important, use these tools:\n`;
221
- formatted += `- **Search**: Use \`/squish:search\` to find stored memories matching a query\n`;
222
- formatted += `- **Store**: Use \`/squish:remember\` to save new information for future use\n`;
223
- formatted += `- **Update Core Memory**: Use \`/squish:core-memory\` to edit this always-visible memory\n`;
224
- return formatted;
225
- }
226
- //# sourceMappingURL=core-memory.js.map
@@ -1,57 +0,0 @@
1
- /**
2
- * Learnings Module
3
- * Agent learnings: success, failure, fix, insight
4
- * With auto-linking to similar memories and learnings
5
- */
6
- export type LearningType = 'success' | 'failure' | 'fix' | 'insight';
7
- export interface LearningInput {
8
- type: LearningType;
9
- content: string;
10
- context?: string;
11
- action?: string;
12
- target?: string;
13
- project?: string;
14
- memoryId?: string;
15
- autoLink?: boolean;
16
- }
17
- export interface LearningRecord {
18
- id: string;
19
- projectId?: string | null;
20
- conversationId?: string | null;
21
- type: LearningType;
22
- action: string;
23
- target?: string | null;
24
- summary: string;
25
- details?: Record<string, unknown> | null;
26
- memoryId?: string | null;
27
- isImported?: boolean;
28
- createdAt?: string | null;
29
- }
30
- /**
31
- * Create a learning and optionally auto-link to similar memories/learnings
32
- */
33
- export declare function createLearning(input: LearningInput): Promise<LearningRecord>;
34
- /**
35
- * Get learnings for a project
36
- */
37
- export declare function getLearnings(projectPath: string, limit: number): Promise<LearningRecord[]>;
38
- /**
39
- * Get recent learnings
40
- */
41
- export declare function getRecentLearnings(projectPath: string, limit?: number): Promise<LearningRecord[]>;
42
- /**
43
- * Get learning by ID
44
- */
45
- export declare function getLearningById(learningId: string): Promise<LearningRecord | null>;
46
- /**
47
- * Get learnings linked to a specific memory
48
- */
49
- export declare function getLearningsForMemory(memoryId: string): Promise<LearningRecord[]>;
50
- /**
51
- * Delete a learning
52
- */
53
- export declare function deleteLearning(learningId: string): Promise<boolean>;
54
- export declare const getObservations: typeof getLearnings;
55
- export declare const getRecentObservations: typeof getRecentLearnings;
56
- export declare const getObservationById: typeof getLearningById;
57
- //# sourceMappingURL=learnings.d.ts.map
@@ -1,205 +0,0 @@
1
- /**
2
- * Learnings Module
3
- * Agent learnings: success, failure, fix, insight
4
- * With auto-linking to similar memories and learnings
5
- */
6
- import { randomUUID } from 'crypto';
7
- import { desc, eq } from 'drizzle-orm';
8
- import { getEmbedding } from '../embeddings.js';
9
- import { getOrCreateProject, requireProject } from '../projects.js';
10
- import { serializeMetadata, deserializeMetadata } from '../memory/serialization.js';
11
- import { normalizeTimestamp, prepareEmbedding } from '../lib/utils.js';
12
- import { logger } from '../logger.js';
13
- import { getDbClient } from '../lib/db-client.js';
14
- import { createAssociation } from '../associations.js';
15
- import { search } from '../memory/memories.js';
16
- import { updateAgentPreference } from '../agent-preferences.js';
17
- /**
18
- * Create a learning and optionally auto-link to similar memories/learnings
19
- */
20
- export async function createLearning(input) {
21
- const { db, schema } = await getDbClient();
22
- const project = await getOrCreateProject(input.project);
23
- const embedding = await getEmbedding(input.content);
24
- const id = randomUUID();
25
- const learningType = input.type;
26
- const autoLink = input.autoLink !== false; // default true
27
- // Build details with learning metadata
28
- const details = serializeMetadata({
29
- learningType: learningType,
30
- learningContent: input.content,
31
- learningContext: input.context,
32
- });
33
- const embeddingValues = prepareEmbedding(embedding);
34
- // Insert the learning
35
- await db.insert(schema.learnings).values({
36
- id,
37
- projectId: project?.id ?? null,
38
- type: learningType,
39
- action: input.action ?? input.content,
40
- summary: input.context || input.content,
41
- target: input.target ?? null,
42
- details,
43
- memoryId: input.memoryId ?? null,
44
- ...embeddingValues,
45
- createdAt: new Date(),
46
- });
47
- // If memoryId provided, create bidirectional link
48
- if (input.memoryId) {
49
- await createAssociation(input.memoryId, // from memory
50
- id, // to learning
51
- 'relates_to', 1);
52
- }
53
- // Auto-link to similar memories and learnings (if enabled)
54
- if (autoLink) {
55
- await autoLinkLearning(id, input.content, project?.id ?? null);
56
- }
57
- // Extract and store agent preferences from this learning
58
- await updateAgentPreference(project?.id ?? 'default', input.content, id);
59
- return {
60
- id,
61
- projectId: project?.id ?? null,
62
- conversationId: null,
63
- type: learningType,
64
- action: input.action ?? input.content,
65
- target: input.target ?? null,
66
- summary: input.context || input.content,
67
- details: { learningType: learningType, learningContent: input.content, learningContext: input.context },
68
- memoryId: input.memoryId ?? null,
69
- createdAt: new Date().toISOString(),
70
- };
71
- }
72
- /**
73
- * Auto-link a learning to similar memories above threshold
74
- */
75
- async function autoLinkLearning(learningId, content, projectId) {
76
- const SIMILARITY_THRESHOLD = 0.85;
77
- const MAX_LINKS = 5;
78
- if (!projectId)
79
- return;
80
- try {
81
- // Search for similar memories using the search function
82
- const similarMemories = await search({
83
- query: content,
84
- limit: MAX_LINKS,
85
- });
86
- // Filter by similarity threshold
87
- const relevantMemories = similarMemories.filter((m) => (m.similarity ?? 0) >= SIMILARITY_THRESHOLD);
88
- // Create associations with memories
89
- for (const mem of relevantMemories) {
90
- await createAssociation(learningId, // from learning
91
- mem.id, // to memory
92
- 'relates_to', mem.similarity ?? 0.9);
93
- }
94
- logger.info(`Auto-linked learning ${learningId} to ${relevantMemories.length} memories`);
95
- }
96
- catch (error) {
97
- logger.error('Error in auto-linking:', error);
98
- // Don't fail learning creation if auto-link fails
99
- }
100
- }
101
- /**
102
- * Get learnings for a project
103
- */
104
- export async function getLearnings(projectPath, limit) {
105
- try {
106
- const { db, schema } = await getDbClient();
107
- const project = await requireProject(projectPath);
108
- const rows = await db.select().from(schema.learnings)
109
- .where(eq(schema.learnings.projectId, project.id))
110
- .orderBy(desc(schema.learnings.createdAt))
111
- .limit(limit);
112
- return rows.map((row) => normalizeLearning(row));
113
- }
114
- catch (error) {
115
- throw error;
116
- }
117
- }
118
- /**
119
- * Get recent learnings
120
- */
121
- export async function getRecentLearnings(projectPath, limit = 10) {
122
- try {
123
- const { db, schema } = await getDbClient();
124
- const project = await requireProject(projectPath);
125
- const rows = await db.select().from(schema.learnings)
126
- .where(eq(schema.learnings.projectId, project.id))
127
- .orderBy(desc(schema.learnings.createdAt))
128
- .limit(limit);
129
- return rows.map((row) => normalizeLearning(row));
130
- }
131
- catch (error) {
132
- logger.error('Error getting recent learnings', error);
133
- throw error;
134
- }
135
- }
136
- /**
137
- * Get learning by ID
138
- */
139
- export async function getLearningById(learningId) {
140
- try {
141
- const { db, schema } = await getDbClient();
142
- const rows = await db.select().from(schema.learnings)
143
- .where(eq(schema.learnings.id, learningId))
144
- .limit(1);
145
- if (rows.length === 0)
146
- return null;
147
- return normalizeLearning(rows[0]);
148
- }
149
- catch (error) {
150
- logger.error('Error getting learning', error);
151
- throw error;
152
- }
153
- }
154
- /**
155
- * Get learnings linked to a specific memory
156
- */
157
- export async function getLearningsForMemory(memoryId) {
158
- try {
159
- const { db, schema } = await getDbClient();
160
- const rows = await db.select().from(schema.learnings)
161
- .where(eq(schema.learnings.memoryId, memoryId))
162
- .orderBy(desc(schema.learnings.createdAt));
163
- return rows.map((row) => normalizeLearning(row));
164
- }
165
- catch (error) {
166
- logger.error('Error getting learnings for memory', error);
167
- throw error;
168
- }
169
- }
170
- /**
171
- * Delete a learning
172
- */
173
- export async function deleteLearning(learningId) {
174
- try {
175
- const { db, schema } = await getDbClient();
176
- await db.delete(schema.learnings)
177
- .where(eq(schema.learnings.id, learningId));
178
- return true;
179
- }
180
- catch (error) {
181
- logger.error('Error deleting learning', error);
182
- return false;
183
- }
184
- }
185
- function normalizeLearning(row) {
186
- const details = deserializeMetadata(row.details ?? null);
187
- return {
188
- id: row.id,
189
- projectId: row.projectId ?? row.project_id ?? null,
190
- conversationId: row.conversationId ?? row.conversation_id ?? null,
191
- type: row.type,
192
- action: row.action,
193
- target: row.target ?? null,
194
- summary: row.summary,
195
- details,
196
- memoryId: row.memoryId ?? row.memory_id ?? null,
197
- isImported: row.isImported ?? row.is_imported ?? false,
198
- createdAt: normalizeTimestamp(row.createdAt ?? row.created_at),
199
- };
200
- }
201
- // Backwards compatibility aliases
202
- export const getObservations = getLearnings;
203
- export const getRecentObservations = getRecentLearnings;
204
- export const getObservationById = getLearningById;
205
- //# sourceMappingURL=learnings.js.map
@@ -1,41 +0,0 @@
1
- export type SignalClassification = 'discard' | 'session-only' | 'durable-distilled' | 'durable-raw+distilled';
2
- export interface SignalEventInput {
3
- toolName: string;
4
- toolInput?: Record<string, unknown>;
5
- toolResult?: unknown;
6
- sessionId?: string | null;
7
- }
8
- export interface SignalDecision {
9
- classification: SignalClassification;
10
- reasons: string[];
11
- storeRaw: boolean;
12
- importance: 'low' | 'medium' | 'high';
13
- wakeUpPriority: 'low' | 'medium' | 'high';
14
- placeHint: {
15
- placeType: 'inbox' | 'ref' | 'wip' | 'sandbox' | 'board' | 'sparks' | 'archive' | null;
16
- confidence: number;
17
- };
18
- graphHint: {
19
- shouldEnrich: boolean;
20
- entityTerms: string[];
21
- reason?: string;
22
- };
23
- content: string;
24
- contentHash: string;
25
- estimatedSavings: number;
26
- }
27
- export interface DistillInput {
28
- toolName: string;
29
- command?: string;
30
- content: string;
31
- classification: SignalClassification;
32
- }
33
- export declare function hashSignalContent(content: string): string;
34
- export declare function classifySignalEvent(input: SignalEventInput): SignalDecision;
35
- export declare function distillSignalEvent(input: DistillInput): string;
36
- export declare function shouldReturnRawFallback(input: {
37
- query: string;
38
- hasRawFallback: boolean;
39
- nuanceSuppressed: boolean;
40
- }): boolean;
41
- //# sourceMappingURL=signal-engine.d.ts.map