squish-memory 1.1.5 → 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 (646) hide show
  1. package/.env.example +32 -16
  2. package/CHANGELOG.md +147 -0
  3. package/README.md +120 -78
  4. package/{scripts → bin}/dependency-manager.mjs +217 -217
  5. package/{scripts → bin}/detect-clients.mjs +78 -78
  6. package/bin/install-interactive.mjs +321 -0
  7. package/bin/squish-mcp.mjs +44 -0
  8. package/bin/squish.mjs +33 -0
  9. package/config/mcp-migration-map.json +1 -6
  10. package/config/mcp-mode-semantics.json +19 -23
  11. package/config/mcp-remote-auth.json +3 -26
  12. package/config/mcp-universal.schema.json +5 -35
  13. package/config/settings.json +107 -52
  14. package/config.js +5 -0
  15. package/config.ts +218 -0
  16. package/core/adapters/config/claude-code.ts +133 -0
  17. package/core/adapters/config/cursor.ts +90 -0
  18. package/core/adapters/config/opencode.ts +89 -0
  19. package/core/adapters/config/windsurf.ts +90 -0
  20. package/core/adapters/index.ts +102 -0
  21. package/core/adapters/timeline.ts +116 -0
  22. package/core/adapters/types.ts +166 -0
  23. package/core/agent-preferences.ts +140 -0
  24. package/core/algorithms/analytics/token-estimator.ts +216 -0
  25. package/core/algorithms/detection/hash-filters.ts +260 -0
  26. package/core/algorithms/detection/semantic-ranker.ts +194 -0
  27. package/core/algorithms/detection/two-stage-detector.ts +421 -0
  28. package/core/algorithms/handlers/approve-merge.ts +215 -0
  29. package/core/algorithms/handlers/detect-duplicates.ts +192 -0
  30. package/core/algorithms/handlers/get-stats.ts +132 -0
  31. package/core/algorithms/handlers/list-proposals.ts +130 -0
  32. package/core/algorithms/handlers/preview-merge.ts +139 -0
  33. package/core/algorithms/handlers/reject-merge.ts +93 -0
  34. package/core/algorithms/handlers/reverse-merge.ts +155 -0
  35. package/{dist/core/algorithms/index.js → core/algorithms/index.ts} +39 -26
  36. package/core/algorithms/operations/cache-maintenance.ts +182 -0
  37. package/core/algorithms/safety/safety-checks.ts +256 -0
  38. package/core/algorithms/strategies/merge-strategies.ts +381 -0
  39. package/core/algorithms/types.ts +140 -0
  40. package/core/algorithms/utils/response-builder.ts +61 -0
  41. package/core/associations.ts +363 -0
  42. package/core/beliefs/decay.ts +289 -0
  43. package/core/beliefs/extractor.ts +131 -0
  44. package/core/beliefs/store.ts +557 -0
  45. package/core/beliefs/types.ts +38 -0
  46. package/core/commands/mcp-server.ts +5 -0
  47. package/core/compression.ts +177 -0
  48. package/core/config.js +2 -0
  49. package/core/consolidation.ts +330 -0
  50. package/core/context/agent-context.ts +388 -0
  51. package/core/context/context-paging.ts +449 -0
  52. package/core/context/context-window.ts +234 -0
  53. package/core/context/context.ts +35 -0
  54. package/core/embeddings/embeddings.ts +616 -0
  55. package/core/embeddings/google-multimodal.ts +200 -0
  56. package/{dist/core/local-embeddings.js → core/embeddings/local-embeddings.ts} +12 -11
  57. package/core/embeddings/qmd-client.ts +495 -0
  58. package/core/embeddings/transformers-local.ts +261 -0
  59. package/core/embeddings.js +4 -0
  60. package/core/error-handling.ts +206 -0
  61. package/core/external +219 -0
  62. package/core/graph/entity-deduplicator.ts +232 -0
  63. package/core/graph/graph-builder.ts +257 -0
  64. package/core/graph/graph-traversal.ts +490 -0
  65. package/core/graph/index.ts +24 -0
  66. package/core/graph/llm-entity-extractor.ts +402 -0
  67. package/core/graph/multi-hop-retrieval.ts +317 -0
  68. package/core/graph/relationship-extractor.ts +465 -0
  69. package/core/hooks/agent-hooks.ts +653 -0
  70. package/core/hooks/auto-tagger.ts +149 -0
  71. package/core/hooks/capture-filter.ts +169 -0
  72. package/core/hot-cache.ts +388 -0
  73. package/core/index.ts +10 -0
  74. package/core/ingestion/agent-memory.ts +167 -0
  75. package/core/ingestion/core-memory.ts +326 -0
  76. package/core/ingestion/learnings.ts +260 -0
  77. package/core/ingestion/signal-engine.ts +266 -0
  78. package/core/integrations/obsidian-vault.ts +197 -0
  79. package/core/layers/generator.ts +115 -0
  80. package/{dist/core/lib/db-client.d.ts → core/lib/db-client.ts} +168 -114
  81. package/core/lib/parse-embedding.ts +59 -0
  82. package/{dist/core/lib/schemas.js → core/lib/schemas.ts} +102 -87
  83. package/core/lib/types.ts +49 -0
  84. package/core/lib/utils.ts +151 -0
  85. package/core/lib/validation.ts +180 -0
  86. package/core/lifecycle.ts +353 -0
  87. package/core/logger.ts +59 -0
  88. package/core/memory/bridge-discovery.ts +395 -0
  89. package/core/memory/categorizer.ts +390 -0
  90. package/core/memory/conflict-detector.ts +62 -0
  91. package/core/memory/consolidation.ts +372 -0
  92. package/core/memory/context-collector.ts +75 -0
  93. package/core/memory/contradiction-resolver.ts +494 -0
  94. package/core/memory/edit-workflow.ts +174 -0
  95. package/core/memory/entity-extractor.ts +426 -0
  96. package/core/memory/entity-resolver.ts +89 -0
  97. package/core/memory/explain.ts +112 -0
  98. package/core/memory/fact-deriver.ts +300 -0
  99. package/core/memory/fact-extractor.ts +120 -0
  100. package/core/memory/feedback-tracker.ts +200 -0
  101. package/core/memory/hooks.ts +230 -0
  102. package/core/memory/hybrid-retrieval.ts +65 -0
  103. package/core/memory/hybrid-scorer.ts +325 -0
  104. package/core/memory/hybrid-search.ts +748 -0
  105. package/core/memory/importance.ts +319 -0
  106. package/{dist/core/memory/index.js → core/memory/index.ts} +11 -10
  107. package/core/memory/loader.ts +178 -0
  108. package/core/memory/markdown/markdown-storage.ts +318 -0
  109. package/core/memory/memories.ts +565 -0
  110. package/core/memory/memory-lifecycle.ts +51 -0
  111. package/core/memory/memory-manager.ts +53 -0
  112. package/core/memory/migrate.ts +173 -0
  113. package/core/memory/normalization.ts +30 -0
  114. package/core/memory/path-strengthener.ts +211 -0
  115. package/core/memory/progressive-disclosure.ts +392 -0
  116. package/core/memory/query-processor.ts +130 -0
  117. package/core/memory/query-rewriter.ts +153 -0
  118. package/core/memory/response-analyzer.ts +81 -0
  119. package/core/memory/retrieval-feedback.ts +276 -0
  120. package/core/memory/serialization.ts +83 -0
  121. package/core/memory/stale-cleaner.ts +147 -0
  122. package/core/memory/stats.ts +181 -0
  123. package/core/memory/telemetry.ts +392 -0
  124. package/core/memory/temporal-facts.ts +356 -0
  125. package/core/memory/temporal-parser.ts +477 -0
  126. package/core/memory/trigger-detector.ts +104 -0
  127. package/core/memory/write-gate.ts +288 -0
  128. package/{dist/core/places/index.js → core/places/index.ts} +12 -12
  129. package/core/places/memory-places.ts +339 -0
  130. package/core/places/places.ts +406 -0
  131. package/core/places/rules.ts +308 -0
  132. package/core/places/walking.ts +192 -0
  133. package/core/projects +89 -0
  134. package/core/projects.ts +131 -0
  135. package/core/redis.ts +82 -0
  136. package/core/responses.ts +187 -0
  137. package/core/runtime/trust-report.ts +195 -0
  138. package/core/runtime/trust-state.ts +360 -0
  139. package/core/scheduler/cron-scheduler.ts +590 -0
  140. package/core/scheduler/heartbeat.ts +91 -0
  141. package/{dist/core/scheduler/index.js → core/scheduler/index.ts} +8 -8
  142. package/core/scheduler/job-runner.ts +197 -0
  143. package/core/search/conversations.ts +166 -0
  144. package/core/search/entities.ts +46 -0
  145. package/core/search/folder-context.ts +154 -0
  146. package/core/search/graph-boost.ts +22 -0
  147. package/{dist/core/search/index.js → core/search/index.ts} +4 -5
  148. package/core/search/qmd-wrapper.ts +84 -0
  149. package/core/security/encrypt.ts +51 -0
  150. package/core/security/governance.ts +102 -0
  151. package/core/security/privacy.ts +108 -0
  152. package/core/security/secret-detector.ts +122 -0
  153. package/core/session/auto-load.ts +160 -0
  154. package/core/session/entity-tracker.ts +363 -0
  155. package/{dist/core/session/index.js → core/session/index.ts} +7 -7
  156. package/core/session/reference-resolver.ts +158 -0
  157. package/core/session/self-iteration-job.ts +478 -0
  158. package/core/session/session-hooks.ts +69 -0
  159. package/core/session/types.ts +36 -0
  160. package/core/session/working-set.ts +275 -0
  161. package/{dist/core/snapshots/cleanup.js → core/snapshots/cleanup.ts} +13 -12
  162. package/core/snapshots/comparison.ts +59 -0
  163. package/core/snapshots/creation.ts +139 -0
  164. package/core/snapshots/retrieval.ts +44 -0
  165. package/core/snapshots/stats.ts +63 -0
  166. package/core/storage/cache.ts +241 -0
  167. package/core/storage/database.ts +23 -0
  168. package/{dist/core/summarization/cleanup.js → core/summarization/cleanup.ts} +13 -12
  169. package/core/summarization/queries.ts +32 -0
  170. package/core/summarization/stats.ts +64 -0
  171. package/core/summarization/strategies.ts +52 -0
  172. package/core/summarization.ts +248 -0
  173. package/core/temporal-facts.ts +244 -0
  174. package/core/tracing/collector.ts +470 -0
  175. package/core/tracing/visualizer.ts +195 -0
  176. package/core/utils/cleanup-operations.ts +50 -0
  177. package/core/utils/content-extraction.ts +95 -0
  178. package/core/utils/filter-builder.ts +56 -0
  179. package/core/utils/history-traversal.ts +63 -0
  180. package/core/utils/memory-operations.ts +56 -0
  181. package/core/utils/query-operations.ts +83 -0
  182. package/core/utils/summarization-helpers.ts +45 -0
  183. package/core/utils/temporal-queries.ts +39 -0
  184. package/{dist/core/utils/vector-operations.js → core/utils/vector-operations.ts} +135 -129
  185. package/core/utils/version-management.ts +74 -0
  186. package/core/worker.ts +333 -0
  187. package/db/adapter.ts +215 -0
  188. package/{dist/db/bootstrap.js → db/bootstrap.ts} +388 -418
  189. package/db/drizzle/migrations/0000_needy_cerebro.sql +402 -0
  190. package/db/drizzle/migrations/meta/0000_snapshot.json +3451 -0
  191. package/db/drizzle/migrations/meta/_journal.json +13 -0
  192. package/db/drizzle/schema-sqlite.ts +1032 -0
  193. package/db/drizzle/schema.ts +1128 -0
  194. package/db/drizzle.config.ts +12 -0
  195. package/db/index.ts +83 -0
  196. package/db/init.sql +5 -0
  197. package/db/migrations/associations.ts +35 -0
  198. package/db/migrations/beliefs.ts +89 -0
  199. package/db/migrations/core-memory.ts +35 -0
  200. package/db/migrations/fts.ts +59 -0
  201. package/db/migrations/index.ts +54 -0
  202. package/db/migrations/indexes.ts +36 -0
  203. package/db/migrations/learnings.ts +34 -0
  204. package/db/migrations/maintenance.ts +68 -0
  205. package/db/migrations/memories.ts +22 -0
  206. package/db/migrations/memory-places.ts +35 -0
  207. package/db/migrations/places.ts +49 -0
  208. package/db/migrations/projects.ts +21 -0
  209. package/db/migrations/tier-conversion.ts +24 -0
  210. package/db/neon.ts +22 -0
  211. package/db/schema/beliefs.ts +50 -0
  212. package/db/schema/generator.ts +159 -0
  213. package/db/schema/index.ts +58 -0
  214. package/db/schema/learnings.ts +32 -0
  215. package/db/schema/memories.ts +83 -0
  216. package/db/schema/projects.ts +33 -0
  217. package/db/schema.ts +13 -0
  218. package/db/supabase.ts +27 -0
  219. package/mcp.json.example +8 -11
  220. package/package.json +140 -159
  221. package/packages/cli/package.json +22 -0
  222. package/packages/cli/src/commands/clean.ts +68 -0
  223. package/packages/cli/src/commands/context.ts +79 -0
  224. package/packages/cli/src/commands/doctor.ts +357 -0
  225. package/packages/cli/src/commands/forget.ts +72 -0
  226. package/packages/cli/src/commands/health.ts +36 -0
  227. package/packages/cli/src/commands/inspect.ts +41 -0
  228. package/packages/cli/src/commands/link.ts +50 -0
  229. package/packages/cli/src/commands/migrate.ts +93 -0
  230. package/packages/cli/src/commands/recall.ts +99 -0
  231. package/packages/cli/src/commands/recent.ts +57 -0
  232. package/packages/cli/src/commands/remember.ts +139 -0
  233. package/packages/cli/src/commands/run.ts +58 -0
  234. package/packages/cli/src/commands/stale.ts +43 -0
  235. package/packages/cli/src/commands/stats.ts +42 -0
  236. package/packages/cli/src/index.ts +57 -0
  237. package/packages/cli/tsconfig.json +24 -0
  238. package/packages/mcp/package.json +26 -0
  239. package/packages/mcp/src/index.ts +940 -0
  240. package/packages/mcp/tsconfig.json +20 -0
  241. package/skills/squish-memory/SKILL.md +38 -35
  242. package/skills/squish-memory/{scripts/install.sh → install.sh} +1 -1
  243. package/skills/squish-memory/references/claude-desktop.json +12 -0
  244. package/skills/squish-memory/references/openclaw.json +13 -0
  245. package/skills/squish-memory/references/opencode.json +14 -0
  246. package/config/hooks/claude-code-hooks.json +0 -39
  247. package/config/hooks/cursor-hooks.json +0 -30
  248. package/config/hooks/opencode-hooks.json +0 -30
  249. package/config/hooks/windsurf-hooks.json +0 -30
  250. package/config/mcp-cli-fallback-policy.json +0 -22
  251. package/config/mcp.json +0 -38
  252. package/config/plugin-manifest.json +0 -101
  253. package/config/plugin-manifest.schema.json +0 -244
  254. package/config/plugin.json +0 -32
  255. package/config/remote-memory-policy.json +0 -32
  256. package/core/commands/context-paging.md +0 -51
  257. package/core/commands/context-status.md +0 -22
  258. package/core/commands/context.md +0 -5
  259. package/core/commands/core-memory.md +0 -56
  260. package/core/commands/health.md +0 -5
  261. package/core/commands/init.md +0 -39
  262. package/core/commands/merge.md +0 -113
  263. package/core/commands/recall.md +0 -5
  264. package/core/commands/remember.md +0 -11
  265. package/core/commands/search.md +0 -10
  266. package/dist/config.d.ts +0 -83
  267. package/dist/config.js +0 -242
  268. package/dist/core/adapters/config/claude-code.d.ts +0 -45
  269. package/dist/core/adapters/config/claude-code.js +0 -113
  270. package/dist/core/adapters/config/cursor.d.ts +0 -26
  271. package/dist/core/adapters/config/cursor.js +0 -74
  272. package/dist/core/adapters/config/opencode.d.ts +0 -23
  273. package/dist/core/adapters/config/opencode.js +0 -73
  274. package/dist/core/adapters/config/windsurf.d.ts +0 -26
  275. package/dist/core/adapters/config/windsurf.js +0 -74
  276. package/dist/core/adapters/index.d.ts +0 -45
  277. package/dist/core/adapters/index.js +0 -84
  278. package/dist/core/adapters/scripts/install-adapter.d.ts +0 -19
  279. package/dist/core/adapters/scripts/install-adapter.js +0 -149
  280. package/dist/core/adapters/timeline.d.ts +0 -23
  281. package/dist/core/adapters/timeline.js +0 -88
  282. package/dist/core/adapters/types.d.ts +0 -157
  283. package/dist/core/adapters/types.js +0 -50
  284. package/dist/core/algorithms/analytics/token-estimator.d.ts +0 -50
  285. package/dist/core/algorithms/analytics/token-estimator.js +0 -154
  286. package/dist/core/algorithms/detection/hash-filters.d.ts +0 -47
  287. package/dist/core/algorithms/detection/hash-filters.js +0 -190
  288. package/dist/core/algorithms/detection/semantic-ranker.d.ts +0 -32
  289. package/dist/core/algorithms/detection/semantic-ranker.js +0 -118
  290. package/dist/core/algorithms/detection/two-stage-detector.d.ts +0 -52
  291. package/dist/core/algorithms/detection/two-stage-detector.js +0 -299
  292. package/dist/core/algorithms/handlers/approve-merge.d.ts +0 -22
  293. package/dist/core/algorithms/handlers/approve-merge.js +0 -179
  294. package/dist/core/algorithms/handlers/detect-duplicates.d.ts +0 -47
  295. package/dist/core/algorithms/handlers/detect-duplicates.js +0 -145
  296. package/dist/core/algorithms/handlers/get-stats.d.ts +0 -39
  297. package/dist/core/algorithms/handlers/get-stats.js +0 -88
  298. package/dist/core/algorithms/handlers/list-proposals.d.ts +0 -45
  299. package/dist/core/algorithms/handlers/list-proposals.js +0 -83
  300. package/dist/core/algorithms/handlers/preview-merge.d.ts +0 -39
  301. package/dist/core/algorithms/handlers/preview-merge.js +0 -93
  302. package/dist/core/algorithms/handlers/reject-merge.d.ts +0 -28
  303. package/dist/core/algorithms/handlers/reject-merge.js +0 -69
  304. package/dist/core/algorithms/handlers/reverse-merge.d.ts +0 -21
  305. package/dist/core/algorithms/handlers/reverse-merge.js +0 -121
  306. package/dist/core/algorithms/index.d.ts +0 -21
  307. package/dist/core/algorithms/operations/cache-maintenance.d.ts +0 -12
  308. package/dist/core/algorithms/operations/cache-maintenance.js +0 -157
  309. package/dist/core/algorithms/safety/safety-checks.d.ts +0 -22
  310. package/dist/core/algorithms/safety/safety-checks.js +0 -179
  311. package/dist/core/algorithms/strategies/merge-strategies.d.ts +0 -50
  312. package/dist/core/algorithms/strategies/merge-strategies.js +0 -288
  313. package/dist/core/algorithms/types.d.ts +0 -133
  314. package/dist/core/algorithms/types.js +0 -5
  315. package/dist/core/algorithms/utils/response-builder.d.ts +0 -28
  316. package/dist/core/algorithms/utils/response-builder.js +0 -37
  317. package/dist/core/associations.d.ts +0 -31
  318. package/dist/core/associations.js +0 -248
  319. package/dist/core/autosave.d.ts +0 -19
  320. package/dist/core/autosave.js +0 -16
  321. package/dist/core/commands/managed-sync.d.ts +0 -10
  322. package/dist/core/commands/managed-sync.js +0 -64
  323. package/dist/core/commands/mcp-server.d.ts +0 -3
  324. package/dist/core/commands/mcp-server.js +0 -739
  325. package/dist/core/consolidation.d.ts +0 -37
  326. package/dist/core/consolidation.js +0 -248
  327. package/dist/core/context/agent-context.d.ts +0 -106
  328. package/dist/core/context/agent-context.js +0 -274
  329. package/dist/core/context/context-paging.d.ts +0 -80
  330. package/dist/core/context/context-paging.js +0 -328
  331. package/dist/core/context/context-window.d.ts +0 -40
  332. package/dist/core/context/context-window.js +0 -177
  333. package/dist/core/context/context.d.ts +0 -7
  334. package/dist/core/context/context.js +0 -22
  335. package/dist/core/embeddings/google-multimodal.d.ts +0 -14
  336. package/dist/core/embeddings/google-multimodal.js +0 -142
  337. package/dist/core/embeddings/qmd-client.d.ts +0 -136
  338. package/dist/core/embeddings/qmd-client.js +0 -403
  339. package/dist/core/embeddings.d.ts +0 -29
  340. package/dist/core/embeddings.js +0 -454
  341. package/dist/core/error-handling.d.ts +0 -63
  342. package/dist/core/error-handling.js +0 -173
  343. package/dist/core/external-folder/index.d.ts +0 -102
  344. package/dist/core/external-folder/index.js +0 -294
  345. package/dist/core/hooks/agent-hooks.d.ts +0 -74
  346. package/dist/core/hooks/agent-hooks.js +0 -244
  347. package/dist/core/hooks/auto-tagger.d.ts +0 -19
  348. package/dist/core/hooks/auto-tagger.js +0 -155
  349. package/dist/core/hooks/capture-filter.d.ts +0 -41
  350. package/dist/core/hooks/capture-filter.js +0 -128
  351. package/dist/core/index.d.ts +0 -10
  352. package/dist/core/index.js +0 -14
  353. package/dist/core/ingestion/agent-memory.d.ts +0 -22
  354. package/dist/core/ingestion/agent-memory.js +0 -109
  355. package/dist/core/ingestion/core-memory.d.ts +0 -78
  356. package/dist/core/ingestion/core-memory.js +0 -226
  357. package/dist/core/ingestion/learnings.d.ts +0 -57
  358. package/dist/core/ingestion/learnings.js +0 -202
  359. package/dist/core/layers/generator.d.ts +0 -25
  360. package/dist/core/layers/generator.js +0 -76
  361. package/dist/core/lib/db-client.js +0 -130
  362. package/dist/core/lib/schemas.d.ts +0 -129
  363. package/dist/core/lib/utils.d.ts +0 -14
  364. package/dist/core/lib/utils.js +0 -90
  365. package/dist/core/lib/validation.d.ts +0 -38
  366. package/dist/core/lib/validation.js +0 -151
  367. package/dist/core/lifecycle.d.ts +0 -26
  368. package/dist/core/lifecycle.js +0 -302
  369. package/dist/core/local-embeddings.d.ts +0 -11
  370. package/dist/core/logger.d.ts +0 -16
  371. package/dist/core/logger.js +0 -40
  372. package/dist/core/mcp/client.d.ts +0 -17
  373. package/dist/core/mcp/client.js +0 -101
  374. package/dist/core/mcp/index.d.ts +0 -6
  375. package/dist/core/mcp/index.js +0 -6
  376. package/dist/core/mcp/server.d.ts +0 -18
  377. package/dist/core/mcp/server.js +0 -157
  378. package/dist/core/mcp/standalone-server.d.ts +0 -13
  379. package/dist/core/mcp/standalone-server.js +0 -46
  380. package/dist/core/mcp/tools.d.ts +0 -9
  381. package/dist/core/mcp/tools.js +0 -365
  382. package/dist/core/mcp/types.d.ts +0 -315
  383. package/dist/core/mcp/types.js +0 -48
  384. package/dist/core/memory/bridge-discovery.d.ts +0 -50
  385. package/dist/core/memory/bridge-discovery.js +0 -291
  386. package/dist/core/memory/categorizer.d.ts +0 -27
  387. package/dist/core/memory/categorizer.js +0 -305
  388. package/dist/core/memory/conflict-detector.d.ts +0 -7
  389. package/dist/core/memory/conflict-detector.js +0 -43
  390. package/dist/core/memory/consolidation.d.ts +0 -42
  391. package/dist/core/memory/consolidation.js +0 -303
  392. package/dist/core/memory/context-collector.d.ts +0 -10
  393. package/dist/core/memory/context-collector.js +0 -56
  394. package/dist/core/memory/contradiction-resolver.d.ts +0 -40
  395. package/dist/core/memory/contradiction-resolver.js +0 -368
  396. package/dist/core/memory/edit-workflow.d.ts +0 -19
  397. package/dist/core/memory/edit-workflow.js +0 -120
  398. package/dist/core/memory/entity-extractor.d.ts +0 -33
  399. package/dist/core/memory/entity-extractor.js +0 -336
  400. package/dist/core/memory/entity-resolver.d.ts +0 -23
  401. package/dist/core/memory/entity-resolver.js +0 -64
  402. package/dist/core/memory/fact-extractor.d.ts +0 -24
  403. package/dist/core/memory/fact-extractor.js +0 -89
  404. package/dist/core/memory/feedback-tracker.d.ts +0 -12
  405. package/dist/core/memory/feedback-tracker.js +0 -155
  406. package/dist/core/memory/hooks.d.ts +0 -88
  407. package/dist/core/memory/hooks.js +0 -174
  408. package/dist/core/memory/hybrid-retrieval.d.ts +0 -29
  409. package/dist/core/memory/hybrid-retrieval.js +0 -139
  410. package/dist/core/memory/hybrid-scorer.d.ts +0 -40
  411. package/dist/core/memory/hybrid-scorer.js +0 -284
  412. package/dist/core/memory/hybrid-search.d.ts +0 -20
  413. package/dist/core/memory/hybrid-search.js +0 -359
  414. package/dist/core/memory/importance.d.ts +0 -63
  415. package/dist/core/memory/importance.js +0 -298
  416. package/dist/core/memory/index.d.ts +0 -8
  417. package/dist/core/memory/loader.d.ts +0 -31
  418. package/dist/core/memory/loader.js +0 -141
  419. package/dist/core/memory/markdown/markdown-storage.d.ts +0 -72
  420. package/dist/core/memory/markdown/markdown-storage.js +0 -243
  421. package/dist/core/memory/memories.d.ts +0 -47
  422. package/dist/core/memory/memories.js +0 -449
  423. package/dist/core/memory/memory-lifecycle.d.ts +0 -8
  424. package/dist/core/memory/memory-lifecycle.js +0 -55
  425. package/dist/core/memory/memory-manager.d.ts +0 -15
  426. package/dist/core/memory/memory-manager.js +0 -46
  427. package/dist/core/memory/migrate.d.ts +0 -21
  428. package/dist/core/memory/migrate.js +0 -134
  429. package/dist/core/memory/normalization.d.ts +0 -22
  430. package/dist/core/memory/normalization.js +0 -26
  431. package/dist/core/memory/progressive-disclosure.d.ts +0 -43
  432. package/dist/core/memory/progressive-disclosure.js +0 -280
  433. package/dist/core/memory/query-processor.d.ts +0 -21
  434. package/dist/core/memory/query-processor.js +0 -72
  435. package/dist/core/memory/query-rewriter.d.ts +0 -13
  436. package/dist/core/memory/query-rewriter.js +0 -118
  437. package/dist/core/memory/response-analyzer.d.ts +0 -9
  438. package/dist/core/memory/response-analyzer.js +0 -61
  439. package/dist/core/memory/serialization.d.ts +0 -10
  440. package/dist/core/memory/serialization.js +0 -84
  441. package/dist/core/memory/stats.d.ts +0 -22
  442. package/dist/core/memory/stats.js +0 -138
  443. package/dist/core/memory/telemetry.d.ts +0 -69
  444. package/dist/core/memory/telemetry.js +0 -313
  445. package/dist/core/memory/temporal-facts.d.ts +0 -41
  446. package/dist/core/memory/temporal-facts.js +0 -283
  447. package/dist/core/memory/temporal-parser.d.ts +0 -32
  448. package/dist/core/memory/temporal-parser.js +0 -385
  449. package/dist/core/memory/trigger-detector.d.ts +0 -14
  450. package/dist/core/memory/trigger-detector.js +0 -42
  451. package/dist/core/memory/write-gate.d.ts +0 -54
  452. package/dist/core/memory/write-gate.js +0 -210
  453. package/dist/core/namespaces/index.d.ts +0 -71
  454. package/dist/core/namespaces/index.js +0 -305
  455. package/dist/core/namespaces/uri-parser.d.ts +0 -31
  456. package/dist/core/namespaces/uri-parser.js +0 -74
  457. package/dist/core/obsidian-vault.d.ts +0 -30
  458. package/dist/core/obsidian-vault.js +0 -94
  459. package/dist/core/places/index.d.ts +0 -14
  460. package/dist/core/places/memory-places.d.ts +0 -68
  461. package/dist/core/places/memory-places.js +0 -261
  462. package/dist/core/places/places.d.ts +0 -88
  463. package/dist/core/places/places.js +0 -314
  464. package/dist/core/places/rules.d.ts +0 -74
  465. package/dist/core/places/rules.js +0 -240
  466. package/dist/core/places/walking.d.ts +0 -56
  467. package/dist/core/places/walking.js +0 -121
  468. package/dist/core/projects.d.ts +0 -17
  469. package/dist/core/projects.js +0 -108
  470. package/dist/core/redis.d.ts +0 -11
  471. package/dist/core/redis.js +0 -69
  472. package/dist/core/responses.d.ts +0 -96
  473. package/dist/core/responses.js +0 -122
  474. package/dist/core/scheduler/cron-scheduler.d.ts +0 -32
  475. package/dist/core/scheduler/cron-scheduler.js +0 -332
  476. package/dist/core/scheduler/heartbeat.d.ts +0 -11
  477. package/dist/core/scheduler/heartbeat.js +0 -73
  478. package/dist/core/scheduler/index.d.ts +0 -8
  479. package/dist/core/scheduler/job-runner.d.ts +0 -11
  480. package/dist/core/scheduler/job-runner.js +0 -164
  481. package/dist/core/search/conversations.d.ts +0 -25
  482. package/dist/core/search/conversations.js +0 -110
  483. package/dist/core/search/entities.d.ts +0 -12
  484. package/dist/core/search/entities.js +0 -31
  485. package/dist/core/search/folder-context.d.ts +0 -25
  486. package/dist/core/search/folder-context.js +0 -119
  487. package/dist/core/search/graph-boost.d.ts +0 -7
  488. package/dist/core/search/graph-boost.js +0 -23
  489. package/dist/core/search/index.d.ts +0 -4
  490. package/dist/core/search/qmd-search.d.ts +0 -61
  491. package/dist/core/search/qmd-search.js +0 -178
  492. package/dist/core/security/encrypt.d.ts +0 -6
  493. package/dist/core/security/encrypt.js +0 -47
  494. package/dist/core/security/governance.d.ts +0 -26
  495. package/dist/core/security/governance.js +0 -79
  496. package/dist/core/security/privacy.d.ts +0 -23
  497. package/dist/core/security/privacy.js +0 -82
  498. package/dist/core/security/secret-detector.d.ts +0 -32
  499. package/dist/core/security/secret-detector.js +0 -88
  500. package/dist/core/session/auto-load.d.ts +0 -6
  501. package/dist/core/session/auto-load.js +0 -119
  502. package/dist/core/session/index.d.ts +0 -7
  503. package/dist/core/session/self-iteration-job.d.ts +0 -20
  504. package/dist/core/session/self-iteration-job.js +0 -282
  505. package/dist/core/session/session-hooks.d.ts +0 -18
  506. package/dist/core/session/session-hooks.js +0 -58
  507. package/dist/core/session/types.d.ts +0 -26
  508. package/dist/core/session/types.js +0 -10
  509. package/dist/core/session-hooks/self-iteration-job.d.ts +0 -20
  510. package/dist/core/session-hooks/self-iteration-job.js +0 -282
  511. package/dist/core/session-hooks/session-hooks.d.ts +0 -18
  512. package/dist/core/session-hooks/session-hooks.js +0 -58
  513. package/dist/core/snapshots/cleanup.d.ts +0 -9
  514. package/dist/core/snapshots/comparison.d.ts +0 -19
  515. package/dist/core/snapshots/comparison.js +0 -43
  516. package/dist/core/snapshots/creation.d.ts +0 -19
  517. package/dist/core/snapshots/creation.js +0 -126
  518. package/dist/core/snapshots/retrieval.d.ts +0 -7
  519. package/dist/core/snapshots/retrieval.js +0 -41
  520. package/dist/core/snapshots/stats.d.ts +0 -11
  521. package/dist/core/snapshots/stats.js +0 -52
  522. package/dist/core/snapshots.d.ts +0 -29
  523. package/dist/core/snapshots.js +0 -220
  524. package/dist/core/storage/cache.d.ts +0 -13
  525. package/dist/core/storage/cache.js +0 -202
  526. package/dist/core/storage/database.d.ts +0 -12
  527. package/dist/core/storage/database.js +0 -12
  528. package/dist/core/summarization/cleanup.d.ts +0 -9
  529. package/dist/core/summarization/queries.d.ts +0 -9
  530. package/dist/core/summarization/queries.js +0 -28
  531. package/dist/core/summarization/stats.d.ts +0 -14
  532. package/dist/core/summarization/stats.js +0 -52
  533. package/dist/core/summarization/strategies.d.ts +0 -24
  534. package/dist/core/summarization/strategies.js +0 -28
  535. package/dist/core/summarization.d.ts +0 -37
  536. package/dist/core/summarization.js +0 -188
  537. package/dist/core/sync/qmd-sync.d.ts +0 -94
  538. package/dist/core/sync/qmd-sync.js +0 -201
  539. package/dist/core/temporal-facts.d.ts +0 -54
  540. package/dist/core/temporal-facts.js +0 -193
  541. package/dist/core/toon.d.ts +0 -43
  542. package/dist/core/toon.js +0 -160
  543. package/dist/core/tracing/collector.d.ts +0 -111
  544. package/dist/core/tracing/collector.js +0 -350
  545. package/dist/core/tracing/visualizer.d.ts +0 -32
  546. package/dist/core/tracing/visualizer.js +0 -165
  547. package/dist/core/utils/cleanup-operations.d.ts +0 -13
  548. package/dist/core/utils/cleanup-operations.js +0 -44
  549. package/dist/core/utils/content-extraction.d.ts +0 -19
  550. package/dist/core/utils/content-extraction.js +0 -75
  551. package/dist/core/utils/filter-builder.d.ts +0 -13
  552. package/dist/core/utils/filter-builder.js +0 -44
  553. package/dist/core/utils/history-traversal.d.ts +0 -13
  554. package/dist/core/utils/history-traversal.js +0 -50
  555. package/dist/core/utils/memory-operations.d.ts +0 -17
  556. package/dist/core/utils/memory-operations.js +0 -43
  557. package/dist/core/utils/query-operations.d.ts +0 -18
  558. package/dist/core/utils/query-operations.js +0 -65
  559. package/dist/core/utils/summarization-helpers.d.ts +0 -21
  560. package/dist/core/utils/summarization-helpers.js +0 -38
  561. package/dist/core/utils/temporal-queries.d.ts +0 -13
  562. package/dist/core/utils/temporal-queries.js +0 -27
  563. package/dist/core/utils/vector-operations.d.ts +0 -71
  564. package/dist/core/utils/version-management.d.ts +0 -9
  565. package/dist/core/utils/version-management.js +0 -61
  566. package/dist/core/worker.d.ts +0 -82
  567. package/dist/core/worker.js +0 -272
  568. package/dist/db/adapter.d.ts +0 -7
  569. package/dist/db/adapter.js +0 -175
  570. package/dist/db/bootstrap.d.ts +0 -9
  571. package/dist/db/drizzle/schema-sqlite.d.ts +0 -4837
  572. package/dist/db/drizzle/schema-sqlite.js +0 -684
  573. package/dist/db/drizzle/schema.d.ts +0 -4082
  574. package/dist/db/drizzle/schema.js +0 -770
  575. package/dist/db/drizzle.config.d.ts +0 -3
  576. package/dist/db/drizzle.config.js +0 -12
  577. package/dist/db/index.d.ts +0 -7
  578. package/dist/db/index.js +0 -89
  579. package/dist/db/neon.d.ts +0 -8
  580. package/dist/db/neon.js +0 -20
  581. package/dist/db/schema/index.d.ts +0 -40
  582. package/dist/db/schema/index.js +0 -105
  583. package/dist/db/schema/tables/context-sessions.d.ts +0 -9
  584. package/dist/db/schema/tables/context-sessions.js +0 -37
  585. package/dist/db/schema/tables/conversations.d.ts +0 -9
  586. package/dist/db/schema/tables/conversations.js +0 -47
  587. package/dist/db/schema/tables/core-memory.d.ts +0 -9
  588. package/dist/db/schema/tables/core-memory.js +0 -41
  589. package/dist/db/schema/tables/entities.d.ts +0 -9
  590. package/dist/db/schema/tables/entities.js +0 -39
  591. package/dist/db/schema/tables/entity-relations.d.ts +0 -9
  592. package/dist/db/schema/tables/entity-relations.js +0 -31
  593. package/dist/db/schema/tables/learnings.d.ts +0 -9
  594. package/dist/db/schema/tables/learnings.js +0 -66
  595. package/dist/db/schema/tables/memories.d.ts +0 -9
  596. package/dist/db/schema/tables/memories.js +0 -161
  597. package/dist/db/schema/tables/memory-associations.d.ts +0 -9
  598. package/dist/db/schema/tables/memory-associations.js +0 -39
  599. package/dist/db/schema/tables/memory-hash-cache.d.ts +0 -9
  600. package/dist/db/schema/tables/memory-hash-cache.js +0 -29
  601. package/dist/db/schema/tables/memory-merge-history.d.ts +0 -9
  602. package/dist/db/schema/tables/memory-merge-history.js +0 -33
  603. package/dist/db/schema/tables/memory-merge-proposals.d.ts +0 -9
  604. package/dist/db/schema/tables/memory-merge-proposals.js +0 -39
  605. package/dist/db/schema/tables/messages.d.ts +0 -9
  606. package/dist/db/schema/tables/messages.js +0 -41
  607. package/dist/db/schema/tables/namespaces.d.ts +0 -9
  608. package/dist/db/schema/tables/namespaces.js +0 -37
  609. package/dist/db/schema/tables/projects.d.ts +0 -9
  610. package/dist/db/schema/tables/projects.js +0 -31
  611. package/dist/db/schema/tables/users.d.ts +0 -9
  612. package/dist/db/schema/tables/users.js +0 -27
  613. package/dist/db/schema.d.ts +0 -3
  614. package/dist/db/schema.js +0 -11
  615. package/dist/db/supabase.d.ts +0 -9
  616. package/dist/db/supabase.js +0 -24
  617. package/dist/index.d.ts +0 -7
  618. package/dist/index.js +0 -1677
  619. package/dist/vendor/sql.js/sql-wasm.wasm +0 -0
  620. package/dist/webui/server.d.ts +0 -5
  621. package/dist/webui/server.js +0 -642
  622. package/generated/mcp/manifest.json +0 -23
  623. package/generated/mcp/mcp-servers.json +0 -25
  624. package/generated/mcp/mcporter.json +0 -34
  625. package/generated/mcp/openclaw-memory-qmd.json +0 -17
  626. package/generated/mcp/runtime.json +0 -12
  627. package/scripts/README.md +0 -60
  628. package/scripts/build-release.sh +0 -36
  629. package/scripts/check-secrets.js +0 -132
  630. package/scripts/copy-runtime-assets.mjs +0 -26
  631. package/scripts/generate-mcp.mjs +0 -264
  632. package/scripts/github-release.sh +0 -77
  633. package/scripts/init-dirs.mjs +0 -13
  634. package/scripts/install-claude-code.sh +0 -85
  635. package/scripts/install-cursor.sh +0 -56
  636. package/scripts/install-hooks.sh +0 -73
  637. package/scripts/install-interactive.mjs +0 -357
  638. package/scripts/install-opencode.sh +0 -75
  639. package/scripts/install-plugin.mjs +0 -415
  640. package/scripts/install-windsurf.sh +0 -67
  641. package/scripts/remote-preflight.mjs +0 -62
  642. package/scripts/squish-fallback.mjs +0 -132
  643. package/scripts/test-interactive.mjs +0 -131
  644. package/scripts/verify-mcp.mjs +0 -214
  645. package/skills/squish-memory/scripts/install.mjs +0 -335
  646. package/skills/squish-memory/write_skill.js +0 -2
@@ -1,27 +0,0 @@
1
- /**
2
- * Shared Temporal Query Utilities
3
- * Common patterns for temporal database queries
4
- */
5
- import { and, eq, lte, gte, or, isNull } from 'drizzle-orm';
6
- /**
7
- * Build temporal validity filters for queries
8
- */
9
- export function buildTemporalFilters(schema, timestamp = new Date(), additionalFilters = []) {
10
- const filters = [
11
- lte(schema.validFrom, timestamp),
12
- or(isNull(schema.validTo), gte(schema.validTo, timestamp)),
13
- ...additionalFilters
14
- ];
15
- return filters;
16
- }
17
- /**
18
- * Build temporal query for facts at a specific time
19
- */
20
- export function buildFactAtTimeQuery(schema, timestamp = new Date(), additionalFilters = []) {
21
- const filters = buildTemporalFilters(schema, timestamp, [
22
- eq(schema.type, 'fact'),
23
- ...additionalFilters
24
- ]);
25
- return and(...filters);
26
- }
27
- //# sourceMappingURL=temporal-queries.js.map
@@ -1,71 +0,0 @@
1
- /**
2
- * Vector Operations Utilities
3
- *
4
- * Provides mathematical operations for vector computations, primarily focused on
5
- * cosine similarity calculations for embedding comparisons.
6
- *
7
- * All functions handle edge cases gracefully and are optimized for performance.
8
- */
9
- /**
10
- * Calculates the cosine similarity between two vectors.
11
- *
12
- * Cosine similarity measures the cosine of the angle between two vectors,
13
- * providing a normalized measure of similarity that ranges from -1 (opposite)
14
- * to 1 (identical), with 0 indicating orthogonality (no similarity).
15
- *
16
- * The implementation uses the standard formula:
17
- * cos(θ) = (A · B) / (||A|| * ||B||)
18
- *
19
- * Edge case handling:
20
- * - Returns 0 if either vector is null/undefined
21
- * - Returns 0 if vectors have different lengths
22
- * - Returns 0 if either vector has zero magnitude (norm = 0)
23
- *
24
- * @param a - First vector as array of numbers
25
- * @param b - Second vector as array of numbers
26
- * @returns Cosine similarity value in range [-1, 1], or 0 for invalid inputs
27
- *
28
- * @example
29
- * ```typescript
30
- * const vec1 = [1, 2, 3];
31
- * const vec2 = [4, 5, 6];
32
- * const similarity = cosineSimilarity(vec1, vec2); // ~0.974
33
- * ```
34
- *
35
- * @performance
36
- * - Time complexity: O(n) where n is vector length
37
- * - Space complexity: O(1) - uses only accumulator variables
38
- * - Optimized with single-pass computation of dot product and norms
39
- */
40
- export declare function cosineSimilarity(a: number[] | null | undefined, b: number[] | null | undefined): number;
41
- /**
42
- * Calculates the Euclidean distance between two vectors.
43
- *
44
- * @param a - First vector
45
- * @param b - Second vector
46
- * @returns Euclidean distance, or Infinity if vectors have different lengths
47
- */
48
- export declare function euclideanDistance(a: number[] | null | undefined, b: number[] | null | undefined): number;
49
- /**
50
- * Normalizes a vector to unit length (magnitude = 1).
51
- *
52
- * @param vec - Input vector
53
- * @returns Normalized vector, or null if input is null or zero vector
54
- */
55
- export declare function normalizeVector(vec: number[] | null | undefined): number[] | null;
56
- /**
57
- * Computes the dot product of two vectors.
58
- *
59
- * @param a - First vector
60
- * @param b - Second vector
61
- * @returns Dot product, or 0 if vectors are invalid or different lengths
62
- */
63
- export declare function dotProduct(a: number[] | null | undefined, b: number[] | null | undefined): number;
64
- /**
65
- * Calculates the magnitude (L2 norm) of a vector.
66
- *
67
- * @param vec - Input vector
68
- * @returns Magnitude of the vector, or 0 if input is null
69
- */
70
- export declare function magnitude(vec: number[] | null | undefined): number;
71
- //# sourceMappingURL=vector-operations.d.ts.map
@@ -1,9 +0,0 @@
1
- /**
2
- * Shared Version Management Utilities
3
- * Common patterns for versioning and updating records
4
- */
5
- /**
6
- * Create a new version of a fact by expiring the old one
7
- */
8
- export declare function createNewFactVersion(oldFactId: string, newContent: string, additionalFields?: Record<string, any>, reason?: string): Promise<string>;
9
- //# sourceMappingURL=version-management.d.ts.map
@@ -1,61 +0,0 @@
1
- /**
2
- * Shared Version Management Utilities
3
- * Common patterns for versioning and updating records
4
- */
5
- import { eq } from 'drizzle-orm';
6
- import { randomUUID } from 'crypto';
7
- import { getDb } from '../../db/index.js';
8
- import { getSchema } from '../../db/schema.js';
9
- import { logger } from '../logger.js';
10
- /**
11
- * Create a new version of a fact by expiring the old one
12
- */
13
- export async function createNewFactVersion(oldFactId, newContent, additionalFields = {}, reason) {
14
- try {
15
- const db = await getDb();
16
- const schema = await getSchema();
17
- // Get the old fact
18
- const oldFacts = await db
19
- .select()
20
- .from(schema.memories)
21
- .where(eq(schema.memories.id, oldFactId))
22
- .limit(1);
23
- if (oldFacts.length === 0) {
24
- throw new Error('Previous fact not found');
25
- }
26
- const oldFact = oldFacts[0];
27
- const now = new Date();
28
- const newFactId = randomUUID();
29
- // Expire the old fact
30
- await db
31
- .update(schema.memories)
32
- .set({ validTo: now, supersededBy: newFactId })
33
- .where(eq(schema.memories.id, oldFactId));
34
- // Create new version
35
- const newFact = {
36
- id: newFactId,
37
- type: 'fact',
38
- sector: 'semantic',
39
- content: newContent,
40
- confidence: oldFact.confidence,
41
- validFrom: now,
42
- validTo: null,
43
- version: (oldFact.version || 1) + 1,
44
- tags: oldFact.tags,
45
- projectId: oldFact.projectId,
46
- createdAt: now,
47
- updatedAt: now,
48
- ...additionalFields,
49
- };
50
- if (reason) {
51
- newFact.metadata = { supersedes: oldFactId, reason };
52
- }
53
- await db.insert(schema.memories).values(newFact);
54
- return newFactId;
55
- }
56
- catch (error) {
57
- logger.error('Error creating new fact version', error);
58
- throw error;
59
- }
60
- }
61
- //# sourceMappingURL=version-management.js.map
@@ -1,82 +0,0 @@
1
- /**
2
- * Background Worker
3
- * Handles lifecycle maintenance, summarization, and other async tasks
4
- */
5
- interface WorkerConfig {
6
- lifecycleInterval: number;
7
- pruningInterval: number;
8
- summarizationCheckInterval: number;
9
- consolidationInterval: number;
10
- dedupInterval: number;
11
- associationPruningThreshold: number;
12
- summaryPruningAge: number;
13
- }
14
- declare class SquishWorker {
15
- private lifecycleTimer?;
16
- private pruningTimer?;
17
- private summarizationTimer?;
18
- private consolidationTimer?;
19
- private dedupTimer?;
20
- private config;
21
- private isRunning;
22
- private stats;
23
- constructor(customConfig?: Partial<WorkerConfig>);
24
- start(): Promise<void>;
25
- stop(): Promise<void>;
26
- private scheduleLifecycleMaintenance;
27
- private runLifecycleMaintenance;
28
- private schedulePruning;
29
- private runPruning;
30
- private scheduleSummarizationCheck;
31
- private runSummarizationCheck;
32
- private scheduleConsolidation;
33
- private runConsolidation;
34
- private scheduleDedup;
35
- private runDedup;
36
- getStats(): {
37
- isRunning: boolean;
38
- stats: {
39
- lifecycleRuns: number;
40
- pruningRuns: number;
41
- summarizationRuns: number;
42
- consolidationRuns: number;
43
- dedupRuns: number;
44
- lastLifecycle: any;
45
- lastAssociation: any;
46
- lastSummarization: any;
47
- lastConsolidation: any;
48
- lastDedup: any;
49
- };
50
- config: WorkerConfig;
51
- };
52
- forceLifecycleMaintenance(projectId?: string): Promise<any>;
53
- forcePruning(): Promise<any>;
54
- forceConsolidation(projectId?: string): Promise<any>;
55
- forceDedup(projectId?: string): Promise<any>;
56
- }
57
- export declare function getWorker(customConfig?: Partial<WorkerConfig>): SquishWorker;
58
- export declare function startWorker(): Promise<void>;
59
- export declare function stopWorker(): Promise<void>;
60
- export declare function getWorkerStats(): {
61
- isRunning: boolean;
62
- stats: {
63
- lifecycleRuns: number;
64
- pruningRuns: number;
65
- summarizationRuns: number;
66
- consolidationRuns: number;
67
- dedupRuns: number;
68
- lastLifecycle: any;
69
- lastAssociation: any;
70
- lastSummarization: any;
71
- lastConsolidation: any;
72
- lastDedup: any;
73
- };
74
- config: WorkerConfig;
75
- } | null;
76
- export declare function forceLifecycleMaintenance(projectId?: string): Promise<any>;
77
- export declare function forcePruning(): Promise<any>;
78
- export declare function forceConsolidation(projectId?: string): Promise<any>;
79
- export declare function forceDedup(projectId?: string): Promise<any>;
80
- export type { WorkerConfig };
81
- export { SquishWorker };
82
- //# sourceMappingURL=worker.d.ts.map
@@ -1,272 +0,0 @@
1
- /**
2
- * Background Worker
3
- * Handles lifecycle maintenance, summarization, and other async tasks
4
- */
5
- import { config } from '../config.js';
6
- import { runLifecycleMaintenance } from './lifecycle.js';
7
- import { pruneWeakAssociations, getAssociationStats } from './associations.js';
8
- import { pruneOldSummaries, getSummarizationStats } from './summarization.js';
9
- import { runFullConsolidationJob, getDeduplicationStats } from './consolidation.js';
10
- import { logger } from './logger.js';
11
- const DEFAULT_WORKER_CONFIG = {
12
- lifecycleInterval: config.lifecycleInterval || 3600000,
13
- pruningInterval: 7 * 24 * 60 * 60 * 1000,
14
- summarizationCheckInterval: 5 * 60 * 1000,
15
- consolidationInterval: 24 * 60 * 60 * 1000, // Daily
16
- dedupInterval: 12 * 60 * 60 * 1000, // Twice daily
17
- associationPruningThreshold: 5,
18
- summaryPruningAge: 30,
19
- };
20
- class SquishWorker {
21
- lifecycleTimer;
22
- pruningTimer;
23
- summarizationTimer;
24
- consolidationTimer;
25
- dedupTimer;
26
- config;
27
- isRunning = false;
28
- stats = {
29
- lifecycleRuns: 0,
30
- pruningRuns: 0,
31
- summarizationRuns: 0,
32
- consolidationRuns: 0,
33
- dedupRuns: 0,
34
- lastLifecycle: null,
35
- lastAssociation: null,
36
- lastSummarization: null,
37
- lastConsolidation: null,
38
- lastDedup: null,
39
- };
40
- constructor(customConfig = {}) {
41
- this.config = { ...DEFAULT_WORKER_CONFIG, ...customConfig };
42
- }
43
- async start() {
44
- if (this.isRunning) {
45
- logger.warn('Worker already running');
46
- return;
47
- }
48
- this.isRunning = true;
49
- logger.info('Starting background worker');
50
- if (config.lifecycleEnabled) {
51
- this.scheduleLifecycleMaintenance();
52
- }
53
- this.schedulePruning();
54
- if (config.summarizationEnabled) {
55
- this.scheduleSummarizationCheck();
56
- }
57
- // Schedule consolidation and dedup jobs
58
- this.scheduleConsolidation();
59
- this.scheduleDedup();
60
- logger.info('Background worker started');
61
- }
62
- async stop() {
63
- if (!this.isRunning) {
64
- return;
65
- }
66
- this.isRunning = false;
67
- if (this.lifecycleTimer)
68
- clearInterval(this.lifecycleTimer);
69
- if (this.pruningTimer)
70
- clearInterval(this.pruningTimer);
71
- if (this.summarizationTimer)
72
- clearInterval(this.summarizationTimer);
73
- if (this.consolidationTimer)
74
- clearInterval(this.consolidationTimer);
75
- if (this.dedupTimer)
76
- clearInterval(this.dedupTimer);
77
- logger.info('Background worker stopped');
78
- }
79
- scheduleLifecycleMaintenance() {
80
- this.runLifecycleMaintenance().catch((err) => {
81
- logger.error('Initial lifecycle maintenance failed:', err);
82
- });
83
- this.lifecycleTimer = setInterval(() => {
84
- this.runLifecycleMaintenance().catch((err) => {
85
- logger.error('Scheduled lifecycle maintenance failed:', err);
86
- });
87
- }, this.config.lifecycleInterval);
88
- }
89
- async runLifecycleMaintenance() {
90
- try {
91
- const stats = await runLifecycleMaintenance();
92
- this.stats.lifecycleRuns++;
93
- this.stats.lastLifecycle = {
94
- timestamp: new Date().toISOString(),
95
- ...stats,
96
- };
97
- logger.info('Lifecycle maintenance completed', {
98
- decayed: stats.decayed,
99
- evicted: stats.evicted,
100
- promoted: stats.promoted,
101
- });
102
- }
103
- catch (error) {
104
- logger.error('Lifecycle maintenance error:', error);
105
- }
106
- }
107
- schedulePruning() {
108
- this.runPruning().catch((err) => {
109
- logger.error('Initial pruning failed:', err);
110
- });
111
- this.pruningTimer = setInterval(() => {
112
- this.runPruning().catch((err) => {
113
- logger.error('Scheduled pruning failed:', err);
114
- });
115
- }, this.config.pruningInterval);
116
- }
117
- async runPruning() {
118
- try {
119
- this.stats.pruningRuns++;
120
- const prunedAssociations = await pruneWeakAssociations(this.config.associationPruningThreshold);
121
- const assocStats = await getAssociationStats();
122
- this.stats.lastAssociation = {
123
- timestamp: new Date().toISOString(),
124
- pruned: prunedAssociations,
125
- ...assocStats,
126
- };
127
- const prunedSummaries = await pruneOldSummaries(this.config.summaryPruningAge);
128
- logger.info('Pruning completed', {
129
- associationsPruned: prunedAssociations,
130
- summariesPruned: prunedSummaries,
131
- });
132
- }
133
- catch (error) {
134
- logger.error('Pruning error:', error);
135
- }
136
- }
137
- scheduleSummarizationCheck() {
138
- this.summarizationTimer = setInterval(() => {
139
- this.runSummarizationCheck().catch((err) => {
140
- logger.error('Summarization check failed:', err);
141
- });
142
- }, this.config.summarizationCheckInterval);
143
- }
144
- async runSummarizationCheck() {
145
- try {
146
- this.stats.summarizationRuns++;
147
- const stats = await getSummarizationStats();
148
- this.stats.lastSummarization = {
149
- timestamp: new Date().toISOString(),
150
- ...stats,
151
- };
152
- }
153
- catch (error) {
154
- logger.error('Summarization check error:', error);
155
- }
156
- }
157
- scheduleConsolidation() {
158
- // Run immediately on start
159
- this.runConsolidation().catch((err) => {
160
- logger.error('Initial consolidation failed:', err);
161
- });
162
- this.consolidationTimer = setInterval(() => {
163
- this.runConsolidation().catch((err) => {
164
- logger.error('Scheduled consolidation failed:', err);
165
- });
166
- }, this.config.consolidationInterval);
167
- }
168
- async runConsolidation() {
169
- try {
170
- this.stats.consolidationRuns++;
171
- const stats = await runFullConsolidationJob();
172
- this.stats.lastConsolidation = {
173
- timestamp: new Date().toISOString(),
174
- ...stats,
175
- };
176
- logger.info('Consolidation completed', {
177
- clustered: stats.clustered,
178
- merged: stats.merged,
179
- deduped: stats.deduped,
180
- consolidated: stats.consolidated,
181
- tokensRecovered: stats.tokensRecovered,
182
- });
183
- }
184
- catch (error) {
185
- logger.error('Consolidation error:', error);
186
- }
187
- }
188
- scheduleDedup() {
189
- // Run immediately on start
190
- this.runDedup().catch((err) => {
191
- logger.error('Initial dedup failed:', err);
192
- });
193
- this.dedupTimer = setInterval(() => {
194
- this.runDedup().catch((err) => {
195
- logger.error('Scheduled dedup failed:', err);
196
- });
197
- }, this.config.dedupInterval);
198
- }
199
- async runDedup() {
200
- try {
201
- this.stats.dedupRuns++;
202
- const dedupStats = await getDeduplicationStats();
203
- this.stats.lastDedup = {
204
- timestamp: new Date().toISOString(),
205
- ...dedupStats,
206
- };
207
- }
208
- catch (error) {
209
- logger.error('Dedup check error:', error);
210
- }
211
- }
212
- getStats() {
213
- return {
214
- isRunning: this.isRunning,
215
- stats: this.stats,
216
- config: this.config,
217
- };
218
- }
219
- async forceLifecycleMaintenance(projectId) {
220
- return await runLifecycleMaintenance(projectId);
221
- }
222
- async forcePruning() {
223
- return await this.runPruning();
224
- }
225
- async forceConsolidation(projectId) {
226
- return await runFullConsolidationJob(projectId);
227
- }
228
- async forceDedup(projectId) {
229
- const { runDeduplicationJob } = await import('./consolidation.js');
230
- return await runDeduplicationJob(projectId);
231
- }
232
- }
233
- let globalWorker = null;
234
- export function getWorker(customConfig) {
235
- if (!globalWorker) {
236
- globalWorker = new SquishWorker(customConfig);
237
- }
238
- return globalWorker;
239
- }
240
- export async function startWorker() {
241
- const worker = getWorker();
242
- await worker.start();
243
- }
244
- export async function stopWorker() {
245
- if (globalWorker) {
246
- await globalWorker.stop();
247
- }
248
- }
249
- export function getWorkerStats() {
250
- if (!globalWorker) {
251
- return null;
252
- }
253
- return globalWorker.getStats();
254
- }
255
- export async function forceLifecycleMaintenance(projectId) {
256
- const worker = getWorker();
257
- return await worker.forceLifecycleMaintenance(projectId);
258
- }
259
- export async function forcePruning() {
260
- const worker = getWorker();
261
- return await worker.forcePruning();
262
- }
263
- export async function forceConsolidation(projectId) {
264
- const worker = getWorker();
265
- return await worker.forceConsolidation(projectId);
266
- }
267
- export async function forceDedup(projectId) {
268
- const worker = getWorker();
269
- return await worker.forceDedup(projectId);
270
- }
271
- export { SquishWorker };
272
- //# sourceMappingURL=worker.js.map
@@ -1,7 +0,0 @@
1
- export declare function createDb(): Promise<(import("drizzle-orm/node-postgres").NodePgDatabase<typeof import("./drizzle/schema.js")> & {
2
- $client: import("pg").Pool;
3
- }) | (import("drizzle-orm/better-sqlite3").BetterSQLite3Database<typeof import("./drizzle/schema-sqlite.js")> & {
4
- $client: import("better-sqlite3").Database;
5
- }) | import("drizzle-orm/sql-js").SQLJsDatabase<typeof import("./drizzle/schema-sqlite.js")>>;
6
- export default createDb;
7
- //# sourceMappingURL=adapter.d.ts.map