@vinaes/succ 1.3.31 → 1.5.37

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 (759) hide show
  1. package/README.md +65 -11
  2. package/agents/succ-code-reviewer.md +1 -1
  3. package/agents/succ-diff-reviewer.md +1 -1
  4. package/agents/succ-general.md +1 -1
  5. package/dist/cli.js +84 -2
  6. package/dist/cli.js.map +1 -1
  7. package/dist/commands/agents-md.d.ts.map +1 -1
  8. package/dist/commands/agents-md.js +3 -2
  9. package/dist/commands/agents-md.js.map +1 -1
  10. package/dist/commands/analyze-agents.d.ts.map +1 -1
  11. package/dist/commands/analyze-agents.js +10 -11
  12. package/dist/commands/analyze-agents.js.map +1 -1
  13. package/dist/commands/analyze-profile.d.ts.map +1 -1
  14. package/dist/commands/analyze-profile.js +32 -8
  15. package/dist/commands/analyze-profile.js.map +1 -1
  16. package/dist/commands/analyze-recursive.d.ts.map +1 -1
  17. package/dist/commands/analyze-recursive.js +8 -3
  18. package/dist/commands/analyze-recursive.js.map +1 -1
  19. package/dist/commands/analyze-utils.d.ts.map +1 -1
  20. package/dist/commands/analyze-utils.js +17 -4
  21. package/dist/commands/analyze-utils.js.map +1 -1
  22. package/dist/commands/benchmark-quality.d.ts.map +1 -1
  23. package/dist/commands/benchmark-quality.js +11 -4
  24. package/dist/commands/benchmark-quality.js.map +1 -1
  25. package/dist/commands/benchmark-sqlite-vec.d.ts.map +1 -1
  26. package/dist/commands/benchmark-sqlite-vec.js +4 -0
  27. package/dist/commands/benchmark-sqlite-vec.js.map +1 -1
  28. package/dist/commands/benchmark.d.ts.map +1 -1
  29. package/dist/commands/benchmark.js +5 -1
  30. package/dist/commands/benchmark.js.map +1 -1
  31. package/dist/commands/codex-chat.d.ts +8 -0
  32. package/dist/commands/codex-chat.d.ts.map +1 -0
  33. package/dist/commands/codex-chat.js +161 -0
  34. package/dist/commands/codex-chat.js.map +1 -0
  35. package/dist/commands/config.d.ts.map +1 -1
  36. package/dist/commands/config.js +32 -4
  37. package/dist/commands/config.js.map +1 -1
  38. package/dist/commands/daemon.d.ts.map +1 -1
  39. package/dist/commands/daemon.js +13 -4
  40. package/dist/commands/daemon.js.map +1 -1
  41. package/dist/commands/index-code.d.ts +4 -0
  42. package/dist/commands/index-code.d.ts.map +1 -1
  43. package/dist/commands/index-code.js +1 -1
  44. package/dist/commands/index-code.js.map +1 -1
  45. package/dist/commands/init-templates.js +2 -2
  46. package/dist/commands/init.d.ts.map +1 -1
  47. package/dist/commands/init.js +305 -203
  48. package/dist/commands/init.js.map +1 -1
  49. package/dist/commands/memories.d.ts.map +1 -1
  50. package/dist/commands/memories.js +25 -14
  51. package/dist/commands/memories.js.map +1 -1
  52. package/dist/commands/progress.d.ts.map +1 -1
  53. package/dist/commands/progress.js +3 -2
  54. package/dist/commands/progress.js.map +1 -1
  55. package/dist/commands/reindex.d.ts.map +1 -1
  56. package/dist/commands/reindex.js +54 -36
  57. package/dist/commands/reindex.js.map +1 -1
  58. package/dist/commands/retention.d.ts.map +1 -1
  59. package/dist/commands/retention.js +7 -5
  60. package/dist/commands/retention.js.map +1 -1
  61. package/dist/commands/scan-code.d.ts +76 -0
  62. package/dist/commands/scan-code.d.ts.map +1 -0
  63. package/dist/commands/scan-code.js +385 -0
  64. package/dist/commands/scan-code.js.map +1 -0
  65. package/dist/commands/score.d.ts.map +1 -1
  66. package/dist/commands/score.js +3 -2
  67. package/dist/commands/score.js.map +1 -1
  68. package/dist/commands/session.d.ts +33 -0
  69. package/dist/commands/session.d.ts.map +1 -0
  70. package/dist/commands/session.js +163 -0
  71. package/dist/commands/session.js.map +1 -0
  72. package/dist/commands/setup.d.ts.map +1 -1
  73. package/dist/commands/setup.js +254 -15
  74. package/dist/commands/setup.js.map +1 -1
  75. package/dist/commands/soul.d.ts.map +1 -1
  76. package/dist/commands/soul.js +7 -46
  77. package/dist/commands/soul.js.map +1 -1
  78. package/dist/commands/status.d.ts.map +1 -1
  79. package/dist/commands/status.js +14 -5
  80. package/dist/commands/status.js.map +1 -1
  81. package/dist/commands/watch.d.ts.map +1 -1
  82. package/dist/commands/watch.js +13 -4
  83. package/dist/commands/watch.js.map +1 -1
  84. package/dist/daemon/analyzer.d.ts.map +1 -1
  85. package/dist/daemon/analyzer.js +23 -7
  86. package/dist/daemon/analyzer.js.map +1 -1
  87. package/dist/daemon/client.d.ts.map +1 -1
  88. package/dist/daemon/client.js +32 -8
  89. package/dist/daemon/client.js.map +1 -1
  90. package/dist/daemon/routes/analyzer.d.ts +3 -0
  91. package/dist/daemon/routes/analyzer.d.ts.map +1 -0
  92. package/dist/daemon/routes/analyzer.js +27 -0
  93. package/dist/daemon/routes/analyzer.js.map +1 -0
  94. package/dist/daemon/routes/hooks.d.ts +14 -0
  95. package/dist/daemon/routes/hooks.d.ts.map +1 -0
  96. package/dist/daemon/routes/hooks.js +1212 -0
  97. package/dist/daemon/routes/hooks.js.map +1 -0
  98. package/dist/daemon/routes/memory.d.ts +4 -0
  99. package/dist/daemon/routes/memory.d.ts.map +1 -0
  100. package/dist/daemon/routes/memory.js +71 -0
  101. package/dist/daemon/routes/memory.js.map +1 -0
  102. package/dist/daemon/routes/reflection.d.ts +10 -0
  103. package/dist/daemon/routes/reflection.d.ts.map +1 -0
  104. package/dist/daemon/routes/reflection.js +397 -0
  105. package/dist/daemon/routes/reflection.js.map +1 -0
  106. package/dist/daemon/routes/search.d.ts +5 -0
  107. package/dist/daemon/routes/search.d.ts.map +1 -0
  108. package/dist/daemon/routes/search.js +93 -0
  109. package/dist/daemon/routes/search.js.map +1 -0
  110. package/dist/daemon/routes/sessions.d.ts +3 -0
  111. package/dist/daemon/routes/sessions.d.ts.map +1 -0
  112. package/dist/daemon/routes/sessions.js +160 -0
  113. package/dist/daemon/routes/sessions.js.map +1 -0
  114. package/dist/daemon/routes/skills.d.ts +3 -0
  115. package/dist/daemon/routes/skills.d.ts.map +1 -0
  116. package/dist/daemon/routes/skills.js +36 -0
  117. package/dist/daemon/routes/skills.js.map +1 -0
  118. package/dist/daemon/routes/status.d.ts +3 -0
  119. package/dist/daemon/routes/status.d.ts.map +1 -0
  120. package/dist/daemon/routes/status.js +47 -0
  121. package/dist/daemon/routes/status.js.map +1 -0
  122. package/dist/daemon/routes/types.d.ts +240 -0
  123. package/dist/daemon/routes/types.d.ts.map +1 -0
  124. package/dist/daemon/routes/types.js +97 -0
  125. package/dist/daemon/routes/types.js.map +1 -0
  126. package/dist/daemon/routes/versioning.d.ts +27 -0
  127. package/dist/daemon/routes/versioning.d.ts.map +1 -0
  128. package/dist/daemon/routes/versioning.js +44 -0
  129. package/dist/daemon/routes/versioning.js.map +1 -0
  130. package/dist/daemon/routes/watcher.d.ts +3 -0
  131. package/dist/daemon/routes/watcher.d.ts.map +1 -0
  132. package/dist/daemon/routes/watcher.js +28 -0
  133. package/dist/daemon/routes/watcher.js.map +1 -0
  134. package/dist/daemon/service.d.ts +5 -23
  135. package/dist/daemon/service.d.ts.map +1 -1
  136. package/dist/daemon/service.js +177 -934
  137. package/dist/daemon/service.js.map +1 -1
  138. package/dist/daemon/session-processor.d.ts +4 -8
  139. package/dist/daemon/session-processor.d.ts.map +1 -1
  140. package/dist/daemon/session-processor.js +49 -222
  141. package/dist/daemon/session-processor.js.map +1 -1
  142. package/dist/lib/ai-readiness.d.ts.map +1 -1
  143. package/dist/lib/ai-readiness.js +33 -8
  144. package/dist/lib/ai-readiness.js.map +1 -1
  145. package/dist/lib/analyze-state.d.ts.map +1 -1
  146. package/dist/lib/analyze-state.js +25 -3
  147. package/dist/lib/analyze-state.js.map +1 -1
  148. package/dist/lib/auto-memory/consolidation.d.ts +41 -0
  149. package/dist/lib/auto-memory/consolidation.d.ts.map +1 -0
  150. package/dist/lib/auto-memory/consolidation.js +151 -0
  151. package/dist/lib/auto-memory/consolidation.js.map +1 -0
  152. package/dist/lib/bpe.d.ts.map +1 -1
  153. package/dist/lib/bpe.js +9 -10
  154. package/dist/lib/bpe.js.map +1 -1
  155. package/dist/lib/brain-export.d.ts +65 -0
  156. package/dist/lib/brain-export.d.ts.map +1 -0
  157. package/dist/lib/brain-export.js +413 -0
  158. package/dist/lib/brain-export.js.map +1 -0
  159. package/dist/lib/checkpoint.d.ts.map +1 -1
  160. package/dist/lib/checkpoint.js +22 -6
  161. package/dist/lib/checkpoint.js.map +1 -1
  162. package/dist/lib/chunker.d.ts.map +1 -1
  163. package/dist/lib/chunker.js +6 -1
  164. package/dist/lib/chunker.js.map +1 -1
  165. package/dist/lib/claude-ws-transport.d.ts.map +1 -1
  166. package/dist/lib/claude-ws-transport.js +12 -4
  167. package/dist/lib/claude-ws-transport.js.map +1 -1
  168. package/dist/lib/command-safety.d.ts +64 -0
  169. package/dist/lib/command-safety.d.ts.map +1 -0
  170. package/dist/lib/command-safety.js +625 -0
  171. package/dist/lib/command-safety.js.map +1 -0
  172. package/dist/lib/compact-briefing.d.ts.map +1 -1
  173. package/dist/lib/compact-briefing.js +18 -17
  174. package/dist/lib/compact-briefing.js.map +1 -1
  175. package/dist/lib/config-defaults.d.ts.map +1 -1
  176. package/dist/lib/config-defaults.js +3 -0
  177. package/dist/lib/config-defaults.js.map +1 -1
  178. package/dist/lib/config-display.d.ts +4 -0
  179. package/dist/lib/config-display.d.ts.map +1 -1
  180. package/dist/lib/config-display.js +6 -1
  181. package/dist/lib/config-display.js.map +1 -1
  182. package/dist/lib/config-types.d.ts +157 -0
  183. package/dist/lib/config-types.d.ts.map +1 -1
  184. package/dist/lib/config-validation.d.ts.map +1 -1
  185. package/dist/lib/config-validation.js +6 -0
  186. package/dist/lib/config-validation.js.map +1 -1
  187. package/dist/lib/config.d.ts +8 -0
  188. package/dist/lib/config.d.ts.map +1 -1
  189. package/dist/lib/config.js +108 -9
  190. package/dist/lib/config.js.map +1 -1
  191. package/dist/lib/consolidate.d.ts.map +1 -1
  192. package/dist/lib/consolidate.js +73 -49
  193. package/dist/lib/consolidate.js.map +1 -1
  194. package/dist/lib/content-sanitizer.d.ts +29 -0
  195. package/dist/lib/content-sanitizer.d.ts.map +1 -0
  196. package/dist/lib/content-sanitizer.js +72 -0
  197. package/dist/lib/content-sanitizer.js.map +1 -0
  198. package/dist/lib/cross-repo.d.ts +44 -0
  199. package/dist/lib/cross-repo.d.ts.map +1 -0
  200. package/dist/lib/cross-repo.js +108 -0
  201. package/dist/lib/cross-repo.js.map +1 -0
  202. package/dist/lib/daemon-port.d.ts +12 -0
  203. package/dist/lib/daemon-port.d.ts.map +1 -0
  204. package/dist/lib/daemon-port.js +20 -0
  205. package/dist/lib/daemon-port.js.map +1 -0
  206. package/dist/lib/db/auto-memory.d.ts +40 -0
  207. package/dist/lib/db/auto-memory.d.ts.map +1 -0
  208. package/dist/lib/db/auto-memory.js +74 -0
  209. package/dist/lib/db/auto-memory.js.map +1 -0
  210. package/dist/lib/db/bm25-indexes.d.ts.map +1 -1
  211. package/dist/lib/db/bm25-indexes.js +16 -4
  212. package/dist/lib/db/bm25-indexes.js.map +1 -1
  213. package/dist/lib/db/connection.d.ts.map +1 -1
  214. package/dist/lib/db/connection.js +8 -1
  215. package/dist/lib/db/connection.js.map +1 -1
  216. package/dist/lib/db/documents.d.ts.map +1 -1
  217. package/dist/lib/db/documents.js +4 -1
  218. package/dist/lib/db/documents.js.map +1 -1
  219. package/dist/lib/db/global-memories.d.ts +2 -10
  220. package/dist/lib/db/global-memories.d.ts.map +1 -1
  221. package/dist/lib/db/global-memories.js +13 -6
  222. package/dist/lib/db/global-memories.js.map +1 -1
  223. package/dist/lib/db/graph.d.ts +5 -1
  224. package/dist/lib/db/graph.d.ts.map +1 -1
  225. package/dist/lib/db/graph.js +38 -8
  226. package/dist/lib/db/graph.js.map +1 -1
  227. package/dist/lib/db/hybrid-search.d.ts +4 -2
  228. package/dist/lib/db/hybrid-search.d.ts.map +1 -1
  229. package/dist/lib/db/hybrid-search.js +29 -11
  230. package/dist/lib/db/hybrid-search.js.map +1 -1
  231. package/dist/lib/db/index.d.ts +6 -1
  232. package/dist/lib/db/index.d.ts.map +1 -1
  233. package/dist/lib/db/index.js +5 -1
  234. package/dist/lib/db/index.js.map +1 -1
  235. package/dist/lib/db/memories.d.ts +19 -14
  236. package/dist/lib/db/memories.d.ts.map +1 -1
  237. package/dist/lib/db/memories.js +100 -37
  238. package/dist/lib/db/memories.js.map +1 -1
  239. package/dist/lib/db/parse-helpers.d.ts +14 -0
  240. package/dist/lib/db/parse-helpers.d.ts.map +1 -0
  241. package/dist/lib/db/parse-helpers.js +59 -0
  242. package/dist/lib/db/parse-helpers.js.map +1 -0
  243. package/dist/lib/db/recall-events.d.ts +49 -0
  244. package/dist/lib/db/recall-events.d.ts.map +1 -0
  245. package/dist/lib/db/recall-events.js +196 -0
  246. package/dist/lib/db/recall-events.js.map +1 -0
  247. package/dist/lib/db/retention.d.ts +4 -3
  248. package/dist/lib/db/retention.d.ts.map +1 -1
  249. package/dist/lib/db/retention.js +12 -1
  250. package/dist/lib/db/retention.js.map +1 -1
  251. package/dist/lib/db/schema.d.ts +2 -0
  252. package/dist/lib/db/schema.d.ts.map +1 -1
  253. package/dist/lib/db/schema.js +140 -80
  254. package/dist/lib/db/schema.js.map +1 -1
  255. package/dist/lib/db/skills.d.ts.map +1 -1
  256. package/dist/lib/db/skills.js +10 -6
  257. package/dist/lib/db/skills.js.map +1 -1
  258. package/dist/lib/diff-brain.d.ts +24 -0
  259. package/dist/lib/diff-brain.d.ts.map +1 -0
  260. package/dist/lib/diff-brain.js +114 -0
  261. package/dist/lib/diff-brain.js.map +1 -0
  262. package/dist/lib/diff-parser.d.ts +74 -0
  263. package/dist/lib/diff-parser.d.ts.map +1 -0
  264. package/dist/lib/diff-parser.js +200 -0
  265. package/dist/lib/diff-parser.js.map +1 -0
  266. package/dist/lib/embedding-pool.d.ts.map +1 -1
  267. package/dist/lib/embedding-pool.js +5 -1
  268. package/dist/lib/embedding-pool.js.map +1 -1
  269. package/dist/lib/embeddings.d.ts +12 -0
  270. package/dist/lib/embeddings.d.ts.map +1 -1
  271. package/dist/lib/embeddings.js +77 -19
  272. package/dist/lib/embeddings.js.map +1 -1
  273. package/dist/lib/errors.d.ts +2 -0
  274. package/dist/lib/errors.d.ts.map +1 -1
  275. package/dist/lib/errors.js +4 -0
  276. package/dist/lib/errors.js.map +1 -1
  277. package/dist/lib/fault-logger.d.ts.map +1 -1
  278. package/dist/lib/fault-logger.js +22 -7
  279. package/dist/lib/fault-logger.js.map +1 -1
  280. package/dist/lib/git/co-change.d.ts +39 -0
  281. package/dist/lib/git/co-change.d.ts.map +1 -0
  282. package/dist/lib/git/co-change.js +139 -0
  283. package/dist/lib/git/co-change.js.map +1 -0
  284. package/dist/lib/graph/bridge-edges.d.ts +93 -0
  285. package/dist/lib/graph/bridge-edges.d.ts.map +1 -0
  286. package/dist/lib/graph/bridge-edges.js +276 -0
  287. package/dist/lib/graph/bridge-edges.js.map +1 -0
  288. package/dist/lib/graph/centrality.d.ts +11 -0
  289. package/dist/lib/graph/centrality.d.ts.map +1 -1
  290. package/dist/lib/graph/centrality.js +51 -3
  291. package/dist/lib/graph/centrality.js.map +1 -1
  292. package/dist/lib/graph/cleanup.d.ts.map +1 -1
  293. package/dist/lib/graph/cleanup.js +2 -1
  294. package/dist/lib/graph/cleanup.js.map +1 -1
  295. package/dist/lib/graph/community-detection.d.ts +17 -2
  296. package/dist/lib/graph/community-detection.d.ts.map +1 -1
  297. package/dist/lib/graph/community-detection.js +147 -48
  298. package/dist/lib/graph/community-detection.js.map +1 -1
  299. package/dist/lib/graph/community-summaries.d.ts +26 -0
  300. package/dist/lib/graph/community-summaries.d.ts.map +1 -0
  301. package/dist/lib/graph/community-summaries.js +130 -0
  302. package/dist/lib/graph/community-summaries.js.map +1 -0
  303. package/dist/lib/graph/contextual-proximity.d.ts.map +1 -1
  304. package/dist/lib/graph/contextual-proximity.js +11 -4
  305. package/dist/lib/graph/contextual-proximity.js.map +1 -1
  306. package/dist/lib/graph/graphology-bridge.d.ts +101 -0
  307. package/dist/lib/graph/graphology-bridge.d.ts.map +1 -0
  308. package/dist/lib/graph/graphology-bridge.js +488 -0
  309. package/dist/lib/graph/graphology-bridge.js.map +1 -0
  310. package/dist/lib/graph/llm-relations.d.ts.map +1 -1
  311. package/dist/lib/graph/llm-relations.js +34 -45
  312. package/dist/lib/graph/llm-relations.js.map +1 -1
  313. package/dist/lib/graph-export.d.ts.map +1 -1
  314. package/dist/lib/graph-export.js +2 -2
  315. package/dist/lib/graph-export.js.map +1 -1
  316. package/dist/lib/graph-scheduler.d.ts +0 -5
  317. package/dist/lib/graph-scheduler.d.ts.map +1 -1
  318. package/dist/lib/graph-scheduler.js +5 -1
  319. package/dist/lib/graph-scheduler.js.map +1 -1
  320. package/dist/lib/guardrails.d.ts +50 -0
  321. package/dist/lib/guardrails.d.ts.map +1 -0
  322. package/dist/lib/guardrails.js +502 -0
  323. package/dist/lib/guardrails.js.map +1 -0
  324. package/dist/lib/hook-rules.d.ts +1 -1
  325. package/dist/lib/hook-rules.d.ts.map +1 -1
  326. package/dist/lib/hook-rules.js +8 -2
  327. package/dist/lib/hook-rules.js.map +1 -1
  328. package/dist/lib/ifc/file-labels.d.ts +35 -0
  329. package/dist/lib/ifc/file-labels.d.ts.map +1 -0
  330. package/dist/lib/ifc/file-labels.js +208 -0
  331. package/dist/lib/ifc/file-labels.js.map +1 -0
  332. package/dist/lib/ifc/label.d.ts +38 -0
  333. package/dist/lib/ifc/label.d.ts.map +1 -0
  334. package/dist/lib/ifc/label.js +80 -0
  335. package/dist/lib/ifc/label.js.map +1 -0
  336. package/dist/lib/ifc/session-ifc.d.ts +92 -0
  337. package/dist/lib/ifc/session-ifc.d.ts.map +1 -0
  338. package/dist/lib/ifc/session-ifc.js +222 -0
  339. package/dist/lib/ifc/session-ifc.js.map +1 -0
  340. package/dist/lib/indexer.js +2 -2
  341. package/dist/lib/indexer.js.map +1 -1
  342. package/dist/lib/injection-detector.d.ts +83 -0
  343. package/dist/lib/injection-detector.d.ts.map +1 -0
  344. package/dist/lib/injection-detector.js +586 -0
  345. package/dist/lib/injection-detector.js.map +1 -0
  346. package/dist/lib/injection-semantic.d.ts +31 -0
  347. package/dist/lib/injection-semantic.d.ts.map +1 -0
  348. package/dist/lib/injection-semantic.js +230 -0
  349. package/dist/lib/injection-semantic.js.map +1 -0
  350. package/dist/lib/llm.d.ts +14 -0
  351. package/dist/lib/llm.d.ts.map +1 -1
  352. package/dist/lib/llm.js +44 -8
  353. package/dist/lib/llm.js.map +1 -1
  354. package/dist/lib/lock.d.ts.map +1 -1
  355. package/dist/lib/lock.js +24 -3
  356. package/dist/lib/lock.js.map +1 -1
  357. package/dist/lib/md-fetch.d.ts.map +1 -1
  358. package/dist/lib/md-fetch.js +9 -2
  359. package/dist/lib/md-fetch.js.map +1 -1
  360. package/dist/lib/observability.d.ts +75 -0
  361. package/dist/lib/observability.d.ts.map +1 -0
  362. package/dist/lib/observability.js +201 -0
  363. package/dist/lib/observability.js.map +1 -0
  364. package/dist/lib/ort-session.d.ts +26 -0
  365. package/dist/lib/ort-session.d.ts.map +1 -1
  366. package/dist/lib/ort-session.js +107 -3
  367. package/dist/lib/ort-session.js.map +1 -1
  368. package/dist/lib/prd/codebase-context.d.ts.map +1 -1
  369. package/dist/lib/prd/codebase-context.js +9 -2
  370. package/dist/lib/prd/codebase-context.js.map +1 -1
  371. package/dist/lib/prd/context.d.ts.map +1 -1
  372. package/dist/lib/prd/context.js +11 -3
  373. package/dist/lib/prd/context.js.map +1 -1
  374. package/dist/lib/prd/export.js +1 -1
  375. package/dist/lib/prd/export.js.map +1 -1
  376. package/dist/lib/prd/generate.d.ts.map +1 -1
  377. package/dist/lib/prd/generate.js +19 -5
  378. package/dist/lib/prd/generate.js.map +1 -1
  379. package/dist/lib/prd/parse.d.ts.map +1 -1
  380. package/dist/lib/prd/parse.js +8 -2
  381. package/dist/lib/prd/parse.js.map +1 -1
  382. package/dist/lib/prd/prompt-builder.d.ts +9 -2
  383. package/dist/lib/prd/prompt-builder.d.ts.map +1 -1
  384. package/dist/lib/prd/prompt-builder.js +7 -8
  385. package/dist/lib/prd/prompt-builder.js.map +1 -1
  386. package/dist/lib/prd/runner.d.ts +1 -2
  387. package/dist/lib/prd/runner.d.ts.map +1 -1
  388. package/dist/lib/prd/runner.js +45 -33
  389. package/dist/lib/prd/runner.js.map +1 -1
  390. package/dist/lib/prd/team-runner.js +2 -1
  391. package/dist/lib/prd/team-runner.js.map +1 -1
  392. package/dist/lib/prd/worktree.d.ts +1 -2
  393. package/dist/lib/prd/worktree.d.ts.map +1 -1
  394. package/dist/lib/prd/worktree.js +62 -70
  395. package/dist/lib/prd/worktree.js.map +1 -1
  396. package/dist/lib/precompute-context.d.ts.map +1 -1
  397. package/dist/lib/precompute-context.js +22 -36
  398. package/dist/lib/precompute-context.js.map +1 -1
  399. package/dist/lib/pricing.d.ts.map +1 -1
  400. package/dist/lib/pricing.js +5 -1
  401. package/dist/lib/pricing.js.map +1 -1
  402. package/dist/lib/process-registry.js +3 -3
  403. package/dist/lib/process-registry.js.map +1 -1
  404. package/dist/lib/public-api.d.ts +54 -4
  405. package/dist/lib/public-api.d.ts.map +1 -1
  406. package/dist/lib/public-api.js +52 -2
  407. package/dist/lib/public-api.js.map +1 -1
  408. package/dist/lib/quality.d.ts.map +1 -1
  409. package/dist/lib/quality.js +15 -6
  410. package/dist/lib/quality.js.map +1 -1
  411. package/dist/lib/query-expansion.d.ts +32 -0
  412. package/dist/lib/query-expansion.d.ts.map +1 -1
  413. package/dist/lib/query-expansion.js +64 -13
  414. package/dist/lib/query-expansion.js.map +1 -1
  415. package/dist/lib/reference-embeddings.d.ts.map +1 -1
  416. package/dist/lib/reference-embeddings.js +17 -4
  417. package/dist/lib/reference-embeddings.js.map +1 -1
  418. package/dist/lib/reflection-synthesizer.d.ts.map +1 -1
  419. package/dist/lib/reflection-synthesizer.js +9 -17
  420. package/dist/lib/reflection-synthesizer.js.map +1 -1
  421. package/dist/lib/reranker.d.ts +41 -0
  422. package/dist/lib/reranker.d.ts.map +1 -0
  423. package/dist/lib/reranker.js +294 -0
  424. package/dist/lib/reranker.js.map +1 -0
  425. package/dist/lib/retrieval-feedback.d.ts +100 -0
  426. package/dist/lib/retrieval-feedback.d.ts.map +1 -0
  427. package/dist/lib/retrieval-feedback.js +174 -0
  428. package/dist/lib/retrieval-feedback.js.map +1 -0
  429. package/dist/lib/review/context-pack.d.ts +58 -0
  430. package/dist/lib/review/context-pack.d.ts.map +1 -0
  431. package/dist/lib/review/context-pack.js +300 -0
  432. package/dist/lib/review/context-pack.js.map +1 -0
  433. package/dist/lib/search/hierarchical-summaries.d.ts +65 -0
  434. package/dist/lib/search/hierarchical-summaries.d.ts.map +1 -0
  435. package/dist/lib/search/hierarchical-summaries.js +423 -0
  436. package/dist/lib/search/hierarchical-summaries.js.map +1 -0
  437. package/dist/lib/search/hyde.d.ts +27 -0
  438. package/dist/lib/search/hyde.d.ts.map +1 -0
  439. package/dist/lib/search/hyde.js +141 -0
  440. package/dist/lib/search/hyde.js.map +1 -0
  441. package/dist/lib/search/late-chunking.d.ts +53 -0
  442. package/dist/lib/search/late-chunking.d.ts.map +1 -0
  443. package/dist/lib/search/late-chunking.js +230 -0
  444. package/dist/lib/search/late-chunking.js.map +1 -0
  445. package/dist/lib/search/ppr-retrieval.d.ts +49 -0
  446. package/dist/lib/search/ppr-retrieval.d.ts.map +1 -0
  447. package/dist/lib/search/ppr-retrieval.js +135 -0
  448. package/dist/lib/search/ppr-retrieval.js.map +1 -0
  449. package/dist/lib/search/repo-map.d.ts +43 -0
  450. package/dist/lib/search/repo-map.d.ts.map +1 -0
  451. package/dist/lib/search/repo-map.js +165 -0
  452. package/dist/lib/search/repo-map.js.map +1 -0
  453. package/dist/lib/session-analyzer.d.ts +90 -0
  454. package/dist/lib/session-analyzer.d.ts.map +1 -0
  455. package/dist/lib/session-analyzer.js +467 -0
  456. package/dist/lib/session-analyzer.js.map +1 -0
  457. package/dist/lib/session-observations.d.ts.map +1 -1
  458. package/dist/lib/session-observations.js +13 -3
  459. package/dist/lib/session-observations.js.map +1 -1
  460. package/dist/lib/session-summary.d.ts.map +1 -1
  461. package/dist/lib/session-summary.js +64 -52
  462. package/dist/lib/session-summary.js.map +1 -1
  463. package/dist/lib/session-surgeon.d.ts +53 -0
  464. package/dist/lib/session-surgeon.d.ts.map +1 -0
  465. package/dist/lib/session-surgeon.js +501 -0
  466. package/dist/lib/session-surgeon.js.map +1 -0
  467. package/dist/lib/similarity-utils.d.ts +26 -0
  468. package/dist/lib/similarity-utils.d.ts.map +1 -0
  469. package/dist/lib/similarity-utils.js +66 -0
  470. package/dist/lib/similarity-utils.js.map +1 -0
  471. package/dist/lib/skills.d.ts.map +1 -1
  472. package/dist/lib/skills.js +16 -16
  473. package/dist/lib/skills.js.map +1 -1
  474. package/dist/lib/storage/backends/interface.d.ts +13 -3
  475. package/dist/lib/storage/backends/interface.d.ts.map +1 -1
  476. package/dist/lib/storage/backends/postgresql.d.ts +52 -3
  477. package/dist/lib/storage/backends/postgresql.d.ts.map +1 -1
  478. package/dist/lib/storage/backends/postgresql.js +694 -49
  479. package/dist/lib/storage/backends/postgresql.js.map +1 -1
  480. package/dist/lib/storage/benchmark.js +2 -2
  481. package/dist/lib/storage/benchmark.js.map +1 -1
  482. package/dist/lib/storage/dispatcher/base.d.ts +114 -0
  483. package/dist/lib/storage/dispatcher/base.d.ts.map +1 -0
  484. package/dist/lib/storage/dispatcher/base.js +160 -0
  485. package/dist/lib/storage/dispatcher/base.js.map +1 -0
  486. package/dist/lib/storage/dispatcher/documents.d.ts +25 -0
  487. package/dist/lib/storage/dispatcher/documents.d.ts.map +1 -0
  488. package/dist/lib/storage/dispatcher/documents.js +194 -0
  489. package/dist/lib/storage/dispatcher/documents.js.map +1 -0
  490. package/dist/lib/storage/dispatcher/embeddings.d.ts +34 -0
  491. package/dist/lib/storage/dispatcher/embeddings.d.ts.map +1 -0
  492. package/dist/lib/storage/dispatcher/embeddings.js +144 -0
  493. package/dist/lib/storage/dispatcher/embeddings.js.map +1 -0
  494. package/dist/lib/storage/dispatcher/export-import.d.ts +139 -0
  495. package/dist/lib/storage/dispatcher/export-import.d.ts.map +1 -0
  496. package/dist/lib/storage/dispatcher/export-import.js +191 -0
  497. package/dist/lib/storage/dispatcher/export-import.js.map +1 -0
  498. package/dist/lib/storage/dispatcher/file-hashes.d.ts +13 -0
  499. package/dist/lib/storage/dispatcher/file-hashes.d.ts.map +1 -0
  500. package/dist/lib/storage/dispatcher/file-hashes.js +36 -0
  501. package/dist/lib/storage/dispatcher/file-hashes.js.map +1 -0
  502. package/dist/lib/storage/dispatcher/global-memories.d.ts +28 -0
  503. package/dist/lib/storage/dispatcher/global-memories.d.ts.map +1 -0
  504. package/dist/lib/storage/dispatcher/global-memories.js +151 -0
  505. package/dist/lib/storage/dispatcher/global-memories.js.map +1 -0
  506. package/dist/lib/storage/dispatcher/graph.d.ts +32 -0
  507. package/dist/lib/storage/dispatcher/graph.d.ts.map +1 -0
  508. package/dist/lib/storage/dispatcher/graph.js +146 -0
  509. package/dist/lib/storage/dispatcher/graph.js.map +1 -0
  510. package/dist/lib/storage/dispatcher/index.d.ts +34 -0
  511. package/dist/lib/storage/dispatcher/index.d.ts.map +1 -0
  512. package/dist/lib/storage/dispatcher/index.js +139 -0
  513. package/dist/lib/storage/dispatcher/index.js.map +1 -0
  514. package/dist/lib/storage/dispatcher/memories.d.ts +65 -0
  515. package/dist/lib/storage/dispatcher/memories.d.ts.map +1 -0
  516. package/dist/lib/storage/dispatcher/memories.js +466 -0
  517. package/dist/lib/storage/dispatcher/memories.js.map +1 -0
  518. package/dist/lib/storage/dispatcher/mixin-helper.d.ts +6 -0
  519. package/dist/lib/storage/dispatcher/mixin-helper.d.ts.map +1 -0
  520. package/dist/lib/storage/dispatcher/mixin-helper.js +10 -0
  521. package/dist/lib/storage/dispatcher/mixin-helper.js.map +1 -0
  522. package/dist/lib/storage/dispatcher/retention.d.ts +20 -0
  523. package/dist/lib/storage/dispatcher/retention.d.ts.map +1 -0
  524. package/dist/lib/storage/dispatcher/retention.js +123 -0
  525. package/dist/lib/storage/dispatcher/retention.js.map +1 -0
  526. package/dist/lib/storage/dispatcher/search.d.ts +34 -0
  527. package/dist/lib/storage/dispatcher/search.d.ts.map +1 -0
  528. package/dist/lib/storage/dispatcher/search.js +222 -0
  529. package/dist/lib/storage/dispatcher/search.js.map +1 -0
  530. package/dist/lib/storage/dispatcher/skills.d.ts +53 -0
  531. package/dist/lib/storage/dispatcher/skills.d.ts.map +1 -0
  532. package/dist/lib/storage/dispatcher/skills.js +98 -0
  533. package/dist/lib/storage/dispatcher/skills.js.map +1 -0
  534. package/dist/lib/storage/dispatcher/token-stats.d.ts +23 -0
  535. package/dist/lib/storage/dispatcher/token-stats.d.ts.map +1 -0
  536. package/dist/lib/storage/dispatcher/token-stats.js +92 -0
  537. package/dist/lib/storage/dispatcher/token-stats.js.map +1 -0
  538. package/dist/lib/storage/dispatcher/web-search.d.ts +10 -0
  539. package/dist/lib/storage/dispatcher/web-search.d.ts.map +1 -0
  540. package/dist/lib/storage/dispatcher/web-search.js +39 -0
  541. package/dist/lib/storage/dispatcher/web-search.js.map +1 -0
  542. package/dist/lib/storage/dispatcher-export.d.ts.map +1 -1
  543. package/dist/lib/storage/dispatcher-export.js +48 -39
  544. package/dist/lib/storage/dispatcher-export.js.map +1 -1
  545. package/dist/lib/storage/dispatcher.d.ts +1 -468
  546. package/dist/lib/storage/dispatcher.d.ts.map +1 -1
  547. package/dist/lib/storage/dispatcher.js +1 -1931
  548. package/dist/lib/storage/dispatcher.js.map +1 -1
  549. package/dist/lib/storage/index.d.ts +20 -5
  550. package/dist/lib/storage/index.d.ts.map +1 -1
  551. package/dist/lib/storage/index.js +36 -7
  552. package/dist/lib/storage/index.js.map +1 -1
  553. package/dist/lib/storage/migration/export-import.d.ts.map +1 -1
  554. package/dist/lib/storage/migration/export-import.js +9 -2
  555. package/dist/lib/storage/migration/export-import.js.map +1 -1
  556. package/dist/lib/storage/types.d.ts +152 -10
  557. package/dist/lib/storage/types.d.ts.map +1 -1
  558. package/dist/lib/storage/types.js +13 -0
  559. package/dist/lib/storage/types.js.map +1 -1
  560. package/dist/lib/storage/vector/interface.d.ts +4 -0
  561. package/dist/lib/storage/vector/interface.d.ts.map +1 -1
  562. package/dist/lib/storage/vector/qdrant.d.ts +13 -2
  563. package/dist/lib/storage/vector/qdrant.d.ts.map +1 -1
  564. package/dist/lib/storage/vector/qdrant.js +147 -61
  565. package/dist/lib/storage/vector/qdrant.js.map +1 -1
  566. package/dist/lib/supersession.d.ts.map +1 -1
  567. package/dist/lib/supersession.js +2 -15
  568. package/dist/lib/supersession.js.map +1 -1
  569. package/dist/lib/token-budget.d.ts.map +1 -1
  570. package/dist/lib/token-budget.js +9 -2
  571. package/dist/lib/token-budget.js.map +1 -1
  572. package/dist/lib/transcript-utils.d.ts +60 -0
  573. package/dist/lib/transcript-utils.d.ts.map +1 -0
  574. package/dist/lib/transcript-utils.js +69 -0
  575. package/dist/lib/transcript-utils.js.map +1 -0
  576. package/dist/lib/tree-sitter/extractor.d.ts +1 -1
  577. package/dist/lib/tree-sitter/extractor.d.ts.map +1 -1
  578. package/dist/lib/tree-sitter/extractor.js +34 -9
  579. package/dist/lib/tree-sitter/extractor.js.map +1 -1
  580. package/dist/lib/tree-sitter/parser.d.ts.map +1 -1
  581. package/dist/lib/tree-sitter/parser.js +45 -11
  582. package/dist/lib/tree-sitter/parser.js.map +1 -1
  583. package/dist/lib/tree-sitter/public.d.ts +12 -0
  584. package/dist/lib/tree-sitter/public.d.ts.map +1 -1
  585. package/dist/lib/tree-sitter/public.js +33 -1
  586. package/dist/lib/tree-sitter/public.js.map +1 -1
  587. package/dist/lib/tree-sitter/queries.d.ts.map +1 -1
  588. package/dist/lib/tree-sitter/queries.js +8 -0
  589. package/dist/lib/tree-sitter/queries.js.map +1 -1
  590. package/dist/lib/working-memory-pipeline.d.ts.map +1 -1
  591. package/dist/lib/working-memory-pipeline.js +12 -3
  592. package/dist/lib/working-memory-pipeline.js.map +1 -1
  593. package/dist/lib/worktree-detect.d.ts +43 -0
  594. package/dist/lib/worktree-detect.d.ts.map +1 -0
  595. package/dist/lib/worktree-detect.js +154 -0
  596. package/dist/lib/worktree-detect.js.map +1 -0
  597. package/dist/lsp/client.d.ts +96 -0
  598. package/dist/lsp/client.d.ts.map +1 -0
  599. package/dist/lsp/client.js +435 -0
  600. package/dist/lsp/client.js.map +1 -0
  601. package/dist/lsp/installer.d.ts +39 -0
  602. package/dist/lsp/installer.d.ts.map +1 -0
  603. package/dist/lsp/installer.js +275 -0
  604. package/dist/lsp/installer.js.map +1 -0
  605. package/dist/lsp/manager.d.ts +62 -0
  606. package/dist/lsp/manager.d.ts.map +1 -0
  607. package/dist/lsp/manager.js +234 -0
  608. package/dist/lsp/manager.js.map +1 -0
  609. package/dist/lsp/servers.d.ts +52 -0
  610. package/dist/lsp/servers.d.ts.map +1 -0
  611. package/dist/lsp/servers.js +162 -0
  612. package/dist/lsp/servers.js.map +1 -0
  613. package/dist/mcp/helpers.d.ts +11 -0
  614. package/dist/mcp/helpers.d.ts.map +1 -1
  615. package/dist/mcp/helpers.js +43 -2
  616. package/dist/mcp/helpers.js.map +1 -1
  617. package/dist/mcp/profile.d.ts +16 -0
  618. package/dist/mcp/profile.d.ts.map +1 -0
  619. package/dist/mcp/profile.js +64 -0
  620. package/dist/mcp/profile.js.map +1 -0
  621. package/dist/mcp/server.d.ts +17 -15
  622. package/dist/mcp/server.d.ts.map +1 -1
  623. package/dist/mcp/server.js +135 -22
  624. package/dist/mcp/server.js.map +1 -1
  625. package/dist/mcp/tools/config.d.ts +1 -5
  626. package/dist/mcp/tools/config.d.ts.map +1 -1
  627. package/dist/mcp/tools/config.js +169 -215
  628. package/dist/mcp/tools/config.js.map +1 -1
  629. package/dist/mcp/tools/dead-end.d.ts.map +1 -1
  630. package/dist/mcp/tools/dead-end.js +24 -14
  631. package/dist/mcp/tools/dead-end.js.map +1 -1
  632. package/dist/mcp/tools/debug.d.ts.map +1 -1
  633. package/dist/mcp/tools/debug.js +103 -179
  634. package/dist/mcp/tools/debug.js.map +1 -1
  635. package/dist/mcp/tools/graph.d.ts +0 -1
  636. package/dist/mcp/tools/graph.d.ts.map +1 -1
  637. package/dist/mcp/tools/graph.js +225 -233
  638. package/dist/mcp/tools/graph.js.map +1 -1
  639. package/dist/mcp/tools/indexing.d.ts +1 -7
  640. package/dist/mcp/tools/indexing.d.ts.map +1 -1
  641. package/dist/mcp/tools/indexing.js +180 -268
  642. package/dist/mcp/tools/indexing.js.map +1 -1
  643. package/dist/mcp/tools/memory/forget.d.ts +3 -0
  644. package/dist/mcp/tools/memory/forget.d.ts.map +1 -0
  645. package/dist/mcp/tools/memory/forget.js +175 -0
  646. package/dist/mcp/tools/memory/forget.js.map +1 -0
  647. package/dist/mcp/tools/memory/memory-helpers.d.ts +45 -0
  648. package/dist/mcp/tools/memory/memory-helpers.d.ts.map +1 -0
  649. package/dist/mcp/tools/memory/memory-helpers.js +291 -0
  650. package/dist/mcp/tools/memory/memory-helpers.js.map +1 -0
  651. package/dist/mcp/tools/memory/recall.d.ts +3 -0
  652. package/dist/mcp/tools/memory/recall.d.ts.map +1 -0
  653. package/dist/mcp/tools/memory/recall.js +495 -0
  654. package/dist/mcp/tools/memory/recall.js.map +1 -0
  655. package/dist/mcp/tools/memory/remember.d.ts +3 -0
  656. package/dist/mcp/tools/memory/remember.d.ts.map +1 -0
  657. package/dist/mcp/tools/memory/remember.js +256 -0
  658. package/dist/mcp/tools/memory/remember.js.map +1 -0
  659. package/dist/mcp/tools/memory/temporal-query.d.ts +8 -0
  660. package/dist/mcp/tools/memory/temporal-query.d.ts.map +1 -0
  661. package/dist/mcp/tools/memory/temporal-query.js +68 -0
  662. package/dist/mcp/tools/memory/temporal-query.js.map +1 -0
  663. package/dist/mcp/tools/memory.d.ts +0 -11
  664. package/dist/mcp/tools/memory.d.ts.map +1 -1
  665. package/dist/mcp/tools/memory.js +6 -1184
  666. package/dist/mcp/tools/memory.js.map +1 -1
  667. package/dist/mcp/tools/prd.d.ts +1 -7
  668. package/dist/mcp/tools/prd.d.ts.map +1 -1
  669. package/dist/mcp/tools/prd.js +198 -255
  670. package/dist/mcp/tools/prd.js.map +1 -1
  671. package/dist/mcp/tools/review.d.ts +8 -0
  672. package/dist/mcp/tools/review.d.ts.map +1 -0
  673. package/dist/mcp/tools/review.js +133 -0
  674. package/dist/mcp/tools/review.js.map +1 -0
  675. package/dist/mcp/tools/search.d.ts.map +1 -1
  676. package/dist/mcp/tools/search.js +168 -47
  677. package/dist/mcp/tools/search.js.map +1 -1
  678. package/dist/mcp/tools/status.d.ts +1 -5
  679. package/dist/mcp/tools/status.d.ts.map +1 -1
  680. package/dist/mcp/tools/status.js +270 -273
  681. package/dist/mcp/tools/status.js.map +1 -1
  682. package/dist/mcp/tools/web-fetch.d.ts +2 -1
  683. package/dist/mcp/tools/web-fetch.d.ts.map +1 -1
  684. package/dist/mcp/tools/web-fetch.js +72 -43
  685. package/dist/mcp/tools/web-fetch.js.map +1 -1
  686. package/dist/mcp/tools/web-search.d.ts +1 -6
  687. package/dist/mcp/tools/web-search.d.ts.map +1 -1
  688. package/dist/mcp/tools/web-search.js +199 -276
  689. package/dist/mcp/tools/web-search.js.map +1 -1
  690. package/dist/prompts/briefing.d.ts +10 -4
  691. package/dist/prompts/briefing.d.ts.map +1 -1
  692. package/dist/prompts/briefing.js +33 -35
  693. package/dist/prompts/briefing.js.map +1 -1
  694. package/dist/prompts/daemon.d.ts +5 -10
  695. package/dist/prompts/daemon.d.ts.map +1 -1
  696. package/dist/prompts/daemon.js +9 -18
  697. package/dist/prompts/daemon.js.map +1 -1
  698. package/dist/prompts/extraction.d.ts +19 -3
  699. package/dist/prompts/extraction.d.ts.map +1 -1
  700. package/dist/prompts/extraction.js +33 -46
  701. package/dist/prompts/extraction.js.map +1 -1
  702. package/dist/prompts/graph.d.ts +9 -0
  703. package/dist/prompts/graph.d.ts.map +1 -0
  704. package/dist/prompts/graph.js +27 -0
  705. package/dist/prompts/graph.js.map +1 -0
  706. package/dist/prompts/guardrails.d.ts +14 -0
  707. package/dist/prompts/guardrails.d.ts.map +1 -0
  708. package/dist/prompts/guardrails.js +115 -0
  709. package/dist/prompts/guardrails.js.map +1 -0
  710. package/dist/prompts/index.d.ts +17 -7
  711. package/dist/prompts/index.d.ts.map +1 -1
  712. package/dist/prompts/index.js +23 -7
  713. package/dist/prompts/index.js.map +1 -1
  714. package/dist/prompts/memory.d.ts +6 -3
  715. package/dist/prompts/memory.d.ts.map +1 -1
  716. package/dist/prompts/memory.js +9 -8
  717. package/dist/prompts/memory.js.map +1 -1
  718. package/dist/prompts/onboarding.d.ts +1 -1
  719. package/dist/prompts/onboarding.d.ts.map +1 -1
  720. package/dist/prompts/onboarding.js +2 -3
  721. package/dist/prompts/onboarding.js.map +1 -1
  722. package/dist/prompts/prd.d.ts +13 -6
  723. package/dist/prompts/prd.d.ts.map +1 -1
  724. package/dist/prompts/prd.js +42 -38
  725. package/dist/prompts/prd.js.map +1 -1
  726. package/dist/prompts/query-expansion.d.ts +8 -0
  727. package/dist/prompts/query-expansion.d.ts.map +1 -0
  728. package/dist/prompts/query-expansion.js +17 -0
  729. package/dist/prompts/query-expansion.js.map +1 -0
  730. package/dist/prompts/skills.d.ts +5 -10
  731. package/dist/prompts/skills.d.ts.map +1 -1
  732. package/dist/prompts/skills.js +9 -17
  733. package/dist/prompts/skills.js.map +1 -1
  734. package/dist/prompts/soul.d.ts +9 -0
  735. package/dist/prompts/soul.d.ts.map +1 -0
  736. package/dist/prompts/soul.js +47 -0
  737. package/dist/prompts/soul.js.map +1 -0
  738. package/dist/prompts/supersession.d.ts +9 -0
  739. package/dist/prompts/supersession.d.ts.map +1 -0
  740. package/dist/prompts/supersession.js +21 -0
  741. package/dist/prompts/supersession.js.map +1 -0
  742. package/dist/prompts/synthesis.d.ts +9 -0
  743. package/dist/prompts/synthesis.d.ts.map +1 -0
  744. package/dist/prompts/synthesis.js +22 -0
  745. package/dist/prompts/synthesis.js.map +1 -0
  746. package/hooks/core/__tests__/adapter.test.cjs +340 -0
  747. package/hooks/core/adapter.cjs +463 -0
  748. package/hooks/core/config.cjs +83 -0
  749. package/hooks/core/daemon-boot.cjs +140 -0
  750. package/hooks/core/log.cjs +41 -0
  751. package/hooks/core/worktree.cjs +119 -0
  752. package/hooks/succ-post-tool.cjs +198 -134
  753. package/hooks/succ-pre-compact.cjs +262 -0
  754. package/hooks/succ-pre-tool.cjs +526 -182
  755. package/hooks/succ-session-end.cjs +40 -64
  756. package/hooks/succ-session-start.cjs +504 -450
  757. package/hooks/succ-stop-reflection.cjs +36 -62
  758. package/hooks/succ-user-prompt.cjs +137 -180
  759. package/package.json +18 -7
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,13 @@
9
9
  import fs from 'fs';
10
10
  import path from 'path';
11
11
  import os from 'os';
12
+ import { execFileSync } from 'child_process';
12
13
  import { deepMerge, validateConfig } from './config-validation.js';
13
14
  // Re-export all defaults
14
15
  export { LOCAL_MODEL, DEFAULT_READINESS_GATE_CONFIG, DEFAULT_IDLE_WATCHER_CONFIG, DEFAULT_RETENTION_POLICY_CONFIG, DEFAULT_SLEEP_AGENT_CONFIG, DEFAULT_COMPACT_BRIEFING_CONFIG, DEFAULT_ERROR_REPORTING_CONFIG, DEFAULT_IDLE_REFLECTION_CONFIG, DEFAULT_CONFIG, DEFAULT_API_URL, } from './config-defaults.js';
15
16
  // Re-export display functions
16
17
  export { getConfigDisplay, formatConfigDisplay } from './config-display.js';
18
+ import { logWarn } from './fault-logger.js';
17
19
  import { DEFAULT_CONFIG, DEFAULT_API_URL, LOCAL_MODEL, DEFAULT_IDLE_WATCHER_CONFIG, DEFAULT_RETENTION_POLICY_CONFIG, DEFAULT_COMPACT_BRIEFING_CONFIG, DEFAULT_READINESS_GATE_CONFIG, DEFAULT_IDLE_REFLECTION_CONFIG, DEFAULT_SLEEP_AGENT_CONFIG, DEFAULT_ERROR_REPORTING_CONFIG, } from './config-defaults.js';
18
20
  // ============================================================================
19
21
  // Core Configuration Functions
@@ -28,7 +30,13 @@ function getFileMtime(filePath) {
28
30
  try {
29
31
  return fs.statSync(filePath).mtimeMs;
30
32
  }
31
- catch {
33
+ catch (error) {
34
+ const err = error;
35
+ if (err?.code !== 'ENOENT') {
36
+ logWarn('config', 'Failed to get config file mtime', {
37
+ error: err?.message ?? String(error),
38
+ });
39
+ }
32
40
  return 0;
33
41
  }
34
42
  }
@@ -62,7 +70,10 @@ export function getConfig() {
62
70
  try {
63
71
  fileConfig = JSON.parse(fs.readFileSync(globalConfigPath, 'utf-8'));
64
72
  }
65
- catch {
73
+ catch (error) {
74
+ logWarn('config', 'Failed to parse global config file', {
75
+ error: error instanceof Error ? error.message : String(error),
76
+ });
66
77
  // Ignore parse errors
67
78
  }
68
79
  }
@@ -72,7 +83,10 @@ export function getConfig() {
72
83
  const projectConfig = JSON.parse(fs.readFileSync(activeProjectPath, 'utf-8'));
73
84
  fileConfig = deepMerge(fileConfig, projectConfig);
74
85
  }
75
- catch {
86
+ catch (error) {
87
+ logWarn('config', 'Failed to parse project config file', {
88
+ error: error instanceof Error ? error.message : String(error),
89
+ });
76
90
  // Ignore parse errors
77
91
  }
78
92
  }
@@ -115,7 +129,44 @@ export function getProjectRoot() {
115
129
  return process.cwd();
116
130
  }
117
131
  export function getSuccDir() {
118
- return path.join(getProjectRoot(), '.succ');
132
+ const projectRoot = getProjectRoot();
133
+ const localSucc = path.join(projectRoot, '.succ');
134
+ if (fs.existsSync(localSucc))
135
+ return localSucc;
136
+ // Worktree fallback: resolve main repo's .succ/ with lazy junction
137
+ try {
138
+ // Inline worktree detection (sync) to avoid circular/async imports.
139
+ // Full logic lives in worktree-detect.ts for reuse.
140
+ const gitPath = path.join(projectRoot, '.git');
141
+ const isWorktree = fs.existsSync(gitPath) && fs.statSync(gitPath).isFile();
142
+ if (isWorktree) {
143
+ const gitCommonDir = execFileSync('git', ['rev-parse', '--git-common-dir'], {
144
+ cwd: projectRoot,
145
+ encoding: 'utf-8',
146
+ stdio: ['pipe', 'pipe', 'pipe'],
147
+ windowsHide: true,
148
+ }).trim();
149
+ const mainRoot = path.dirname(path.resolve(projectRoot, gitCommonDir));
150
+ const mainSucc = path.join(mainRoot, '.succ');
151
+ if (fs.existsSync(mainSucc)) {
152
+ // Lazy junction: create <worktree>/.succ → <main>/.succ
153
+ try {
154
+ fs.symlinkSync(mainSucc, localSucc, 'junction');
155
+ return localSucc;
156
+ }
157
+ catch (err) {
158
+ logWarn('config', 'Worktree .succ junction failed, using main repo path directly', {
159
+ error: err instanceof Error ? err.message : String(err),
160
+ });
161
+ return mainSucc;
162
+ }
163
+ }
164
+ }
165
+ }
166
+ catch {
167
+ // Not a worktree or git unavailable — fall through
168
+ }
169
+ return localSucc;
119
170
  }
120
171
  /**
121
172
  * Check if succ is initialized in current project
@@ -345,6 +396,22 @@ export function getWebSearchConfig() {
345
396
  daily_budget_usd: userConfig.daily_budget_usd ?? 0,
346
397
  };
347
398
  }
399
+ export function getToolProfile() {
400
+ const config = getConfig();
401
+ return config.tool_profile ?? 'auto';
402
+ }
403
+ export function getExtractConfig() {
404
+ const config = getConfig();
405
+ const llm = config.llm ?? {};
406
+ const extract = llm.extract ?? {};
407
+ return {
408
+ mode: extract.mode ?? llm.type ?? 'claude',
409
+ model: extract.model,
410
+ apiUrl: extract.api_url ?? llm.api_url,
411
+ apiKey: extract.api_key ?? llm.api_key,
412
+ maxTokens: extract.max_tokens ?? 500,
413
+ };
414
+ }
348
415
  export function getIdleReflectionConfig() {
349
416
  const config = getConfig();
350
417
  const userConfig = config.idle_reflection || {};
@@ -361,7 +428,10 @@ export function getIdleReflectionConfig() {
361
428
  const ops = idleRef?.operations;
362
429
  globalConsolidation = ops?.memory_consolidation;
363
430
  }
364
- catch {
431
+ catch (error) {
432
+ logWarn('config', 'Failed to read global config for memory consolidation safety check', {
433
+ error: error instanceof Error ? error.message : String(error),
434
+ });
365
435
  /* ignore parse errors */
366
436
  }
367
437
  // Rule: global must explicitly be true, AND merged value must not be false
@@ -386,6 +456,12 @@ export function getIdleReflectionConfig() {
386
456
  thresholds: {
387
457
  similarity_for_merge: userConfig.thresholds?.similarity_for_merge ??
388
458
  DEFAULT_IDLE_REFLECTION_CONFIG.thresholds.similarity_for_merge,
459
+ exact_duplicate: userConfig.thresholds?.exact_duplicate ??
460
+ DEFAULT_IDLE_REFLECTION_CONFIG.thresholds.exact_duplicate,
461
+ merge_candidate: userConfig.thresholds?.merge_candidate ??
462
+ DEFAULT_IDLE_REFLECTION_CONFIG.thresholds.merge_candidate,
463
+ dead_end_dedup: userConfig.thresholds?.dead_end_dedup ??
464
+ DEFAULT_IDLE_REFLECTION_CONFIG.thresholds.dead_end_dedup,
389
465
  auto_link_threshold: userConfig.thresholds?.auto_link_threshold ??
390
466
  DEFAULT_IDLE_REFLECTION_CONFIG.thresholds.auto_link_threshold,
391
467
  min_quality_for_summary: userConfig.thresholds?.min_quality_for_summary ??
@@ -515,7 +591,21 @@ function isProcessRunning(pid) {
515
591
  process.kill(pid, 0);
516
592
  return true;
517
593
  }
518
- catch {
594
+ catch (error) {
595
+ const err = error;
596
+ if (err?.code === 'ESRCH') {
597
+ // Expected: process does not exist anymore.
598
+ return false;
599
+ }
600
+ if (err?.code === 'EPERM') {
601
+ // Process exists but we don't have permission to signal it.
602
+ return true;
603
+ }
604
+ logWarn('config', 'Unexpected failure while checking process liveness', {
605
+ pid,
606
+ error: err?.message ?? String(error),
607
+ code: err?.code,
608
+ });
519
609
  return false;
520
610
  }
521
611
  }
@@ -539,7 +629,10 @@ export function loadGlobalConfig() {
539
629
  try {
540
630
  return JSON.parse(fs.readFileSync(configPath, 'utf-8'));
541
631
  }
542
- catch {
632
+ catch (error) {
633
+ logWarn('config', 'Failed to parse global config JSON file', {
634
+ error: error instanceof Error ? error.message : String(error),
635
+ });
543
636
  return {};
544
637
  }
545
638
  }
@@ -618,7 +711,10 @@ export async function getDaemonStatuses() {
618
711
  try {
619
712
  resolve(JSON.parse(data));
620
713
  }
621
- catch {
714
+ catch (error) {
715
+ logWarn('config', 'Failed to parse daemon services API response', {
716
+ error: error instanceof Error ? error.message : String(error),
717
+ });
622
718
  resolve(null);
623
719
  }
624
720
  });
@@ -630,7 +726,10 @@ export async function getDaemonStatuses() {
630
726
  });
631
727
  });
632
728
  }
633
- catch {
729
+ catch (error) {
730
+ logWarn('config', 'Failed to query daemon services API for status', {
731
+ error: error instanceof Error ? error.message : String(error),
732
+ });
634
733
  /* daemon unreachable */
635
734
  }
636
735
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAuCnE,yBAAyB;AACzB,OAAO,EACL,WAAW,EACX,6BAA6B,EAC7B,2BAA2B,EAC3B,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAC9B,cAAc,EACd,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,8BAA8B;AAC9B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAkB5E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,cAAc,EACd,eAAe,EACf,WAAW,EACX,2BAA2B,EAC3B,+BAA+B,EAC/B,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAE9B,+EAA+E;AAC/E,+BAA+B;AAC/B,+EAA+E;AAE/E,kEAAkE;AAClE,IAAI,WAAW,GAKJ,IAAI,CAAC;AAEhB,kEAAkE;AAClE,MAAM,UAAU,qBAAqB;IACnC,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED,SAAS,YAAY,CAAC,QAAgB;IACpC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,KAA8B,CAAC;QAC3C,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,EAAE,iCAAiC,EAAE;gBACnD,KAAK,EAAE,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC;aACrC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAEzE,kCAAkC;IAClC,MAAM,kBAAkB,GAAG;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,aAAa,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS;KAC5D,CAAC;IACF,IAAI,iBAAiB,GAAG,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE,CAAC;QACnC,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,iBAAiB,GAAG,CAAC,CAAC;YACtB,MAAM;QACR,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,WAAW,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,IACE,WAAW,KAAK,WAAW,CAAC,WAAW;YACvC,YAAY,KAAK,WAAW,CAAC,YAAY;YACzC,iBAAiB,KAAK,WAAW,CAAC,WAAW,EAC7C,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,UAAU,GAAwB,EAAE,CAAC;IAEzC,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,QAAQ,EAAE,oCAAoC,EAAE;gBACtD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,sBAAsB;QACxB,CAAC;IACH,CAAC;IAED,0GAA0G;IAC1G,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9E,UAAU,GAAG,SAAS,CACpB,UAAqC,EACrC,aAAa,CACS,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,QAAQ,EAAE,qCAAqC,EAAE;gBACvD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,sBAAsB;QACxB,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,MAAM,SAAS,GAAG,cAAc,CAAC,UAAqC,CAAwB,CAAC;IAE/F,MAAM,MAAM,GAAe;QACzB,GAAG,cAAc;QACjB,GAAG,SAAS;KACb,CAAC;IAEF,eAAe;IACf,WAAW,GAAG;QACZ,MAAM,EAAE,MAAM;QACd,WAAW,EAAE,YAAY,CAAC,gBAAgB,CAAC;QAC3C,YAAY,EAAE,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,WAAW,EAAE,iBAAiB;KAC/B,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,mGAAmG;IACnG,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChF,IACE,OAAO;QACP,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EACzF,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yCAAyC;IACzC,8EAA8E;IAC9E,yDAAyD;IACzD,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC7B,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACxB,OAAO,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,IAAI,MAAM,IAAI,SAAS,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACpF,OAAO,GAAG,CAAC;QACb,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAElD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAE/C,mEAAmE;IACnE,IAAI,CAAC;QACH,oEAAoE;QACpE,oDAAoD;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3E,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,kBAAkB,CAAC,EAAE;gBAC1E,GAAG,EAAE,WAAW;gBAChB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,wDAAwD;gBACxD,IAAI,CAAC;oBACH,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBAChD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,QAAQ,EAAE,+DAA+D,EAAE;wBACjF,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;qBACxD,CAAC,CAAC;oBACH,OAAO,QAAQ,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mDAAmD;IACrD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,+DAA+D;IAC/D,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CAAC,oBAAoB,EAAE,CAAC;AACjC,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,YAAY;IAC1B,OAAO,UAAU,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AAC3C,CAAC;AAED,6CAA6C;AAC7C,IAAI,cAAc,GAA+B,IAAI,CAAC;AAEtD,MAAM,UAAU,iBAAiB,CAAC,QAAoC;IACpE,cAAc,GAAG,QAAQ,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAC/B,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,cAAc,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,GAAG,EAAE,OAAO;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;IACnD,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1E,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG;QACjB,MAAM,CAAC,UAAU,EAAE,OAAO;QAC1B,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO;QAC/B,MAAM,CAAC,GAAG,EAAE,OAAO;KACpB,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,GAAG,CAAC;IACtE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,2BAA2B,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC;AACvB,CAAC;AAED,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAwE;IAExE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAEnC,yBAAyB;IACzB,MAAM,YAAY,GAA+C;QAC/D,UAAU,EAAE,OAAO;QACnB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;KACjD,CAAC;IAEF,0BAA0B;IAC1B,MAAM,aAAa,GAA2B;QAC5C,MAAM,EAAE,OAAO;QACf,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;KAChD,CAAC;IAEF,kEAAkE;IAClE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;IAC5B,0EAA0E;IAC1E,MAAM,kBAAkB,GACtB,UAAU,IAAI,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAEhG,MAAM,IAAI,GACN,UAAsC,CAAC,IAAe;QACxD,kBAAkB;QAClB,YAAY,CAAC,IAAI,CAAC,CAAC;IAErB,uFAAuF;IACvF,MAAM,mBAAmB,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;IACrE,MAAM,KAAK,GACP,UAAsC,CAAC,KAAgB;QACzD,mBAAmB;QACnB,aAAa,CAAC,IAAI,CAAC;QACnB,aAAa,CAAC,KAAK,CAAC,CAAC;IAEvB,MAAM,MAAM,GACR,UAAsC,CAAC,OAA8B;QACvE,GAAG,CAAC,OAAO;QACX,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAC9B,SAAS,CAAC;IAEZ,MAAM,MAAM,GACR,UAAsC,CAAC,OAA8B;QACvE,GAAG,CAAC,OAAO;QACX,eAAe,CAAC;IAElB,MAAM,SAAS,GACX,UAAsC,CAAC,UAAiC;QAC1E,GAAG,CAAC,UAAU;QACd,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE9D,MAAM,WAAW,GACb,UAAsC,CAAC,WAAkC;QAC3E,GAAG,CAAC,WAAW;QACf,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEhC,6BAA6B;IAC7B,MAAM,SAAS,GACb,IAAI,KAAK,YAAY;QACnB,CAAC,CAAC,CAAG,UAAsC,CAAC,UAAiC,IAAI,EAAE,CAAC;QACpF,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,UAAU,GACd,IAAI,KAAK,YAAY;QACnB,CAAC,CAAG,UAAsC,CAAC,UAAiC;QAC5E,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,WAAW,GACf,IAAI,KAAK,SAAS;QAChB,CAAC,CAAC,CAAG,UAAsC,CAAC,WAAkC,IAAI,CAAC,CAAC;QACpF,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,IAAI,EAAE,IAAkC;QACxC,KAAK;QACL,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,SAAS;QACrB,WAAW;QACX,UAAU,EAAE,SAAS;QACrB,UAAU;QACV,WAAW;KACZ,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IAE7C,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,2BAA2B,CAAC,OAAO;QAClE,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,2BAA2B,CAAC,YAAY;QACjF,cAAc,EAAE,UAAU,CAAC,cAAc,IAAI,2BAA2B,CAAC,cAAc;QACvF,uBAAuB,EACrB,UAAU,CAAC,uBAAuB,IAAI,2BAA2B,CAAC,uBAAuB;QAC3F,2BAA2B,EACzB,UAAU,CAAC,2BAA2B;YACtC,2BAA2B,CAAC,2BAA2B;KAC1D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IAE1C,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,+BAA+B,CAAC,OAAO;QACtE,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,+BAA+B,CAAC,UAAU;QAC/E,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,+BAA+B,CAAC,aAAa;QACxF,gBAAgB,EACd,UAAU,CAAC,gBAAgB,IAAI,+BAA+B,CAAC,gBAAgB;QACjF,cAAc,EAAE,UAAU,CAAC,cAAc,IAAI,+BAA+B,CAAC,cAAc;QAC3F,gBAAgB,EACd,UAAU,CAAC,gBAAgB,IAAI,+BAA+B,CAAC,gBAAgB;QACjF,qBAAqB,EACnB,UAAU,CAAC,qBAAqB,IAAI,+BAA+B,CAAC,qBAAqB;QAC3F,0BAA0B,EACxB,UAAU,CAAC,0BAA0B;YACrC,+BAA+B,CAAC,0BAA0B;QAC5D,kBAAkB,EAChB,UAAU,CAAC,kBAAkB,IAAI,+BAA+B,CAAC,kBAAkB;KACtF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,EAAE;QACjC,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,IAAI;QACnC,kBAAkB,EAAE,UAAU,CAAC,kBAAkB,IAAI,kBAAkB;QACvE,uBAAuB,EAAE,UAAU,CAAC,uBAAuB,IAAI,IAAI;QACnE,uBAAuB,EAAE,UAAU,CAAC,uBAAuB,IAAI,KAAK;QACpE,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,sBAAsB;QACjD,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,IAAI,gCAAgC;QACvF,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,IAAI;QACzC,wBAAwB,EAAE,UAAU,CAAC,wBAAwB,IAAI,IAAI;QACrE,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,KAAK;QAC1C,wBAAwB,EAAE,UAAU,CAAC,wBAAwB,IAAI,MAAM;QACvE,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,GAAG;QAC1C,cAAc,EAAE,UAAU,CAAC,cAAc,IAAI,IAAI;QACjD,gBAAgB,EAAE,UAAU,CAAC,gBAAgB,IAAI,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,gBAAgB;IAO9B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;IAClC,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,QAAQ;QAC1C,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO;QACtC,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO;QACtC,SAAS,EAAE,OAAO,CAAC,UAAU,IAAI,GAAG;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;IAEpD,6FAA6F;IAC7F,MAAM,YAAY,GAChB,cAAc,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,0BAA0B,CAAC,OAAO,CAAC;IAE7F,uDAAuD;IACvD,0EAA0E;IAC1E,oFAAoF;IACpF,IAAI,mBAAwC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,gBAAgB,EAA6B,CAAC;QAChE,MAAM,OAAO,GAAG,SAAS,CAAC,eAAsD,CAAC;QACjF,MAAM,GAAG,GAAG,OAAO,EAAE,UAAiD,CAAC;QACvE,mBAAmB,GAAG,GAAG,EAAE,oBAA2C,CAAC;IACzE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,QAAQ,EAAE,oEAAoE,EAAE;YACtF,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;QACH,yBAAyB;IAC3B,CAAC;IAED,2EAA2E;IAC3E,MAAM,oBAAoB,GACxB,mBAAmB,KAAK,IAAI,IAAI,UAAU,CAAC,UAAU,EAAE,oBAAoB,KAAK,KAAK,CAAC;IAExF,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,8BAA8B,CAAC,OAAO;QACrE,UAAU,EAAE;YACV,oBAAoB,EAAE,oBAAoB;YAC1C,gBAAgB,EACd,UAAU,CAAC,UAAU,EAAE,gBAAgB;gBACvC,8BAA8B,CAAC,UAAU,CAAC,gBAAgB;YAC5D,gBAAgB,EACd,UAAU,CAAC,UAAU,EAAE,gBAAgB;gBACvC,8BAA8B,CAAC,UAAU,CAAC,gBAAgB;YAC5D,eAAe,EACb,UAAU,CAAC,UAAU,EAAE,eAAe;gBACtC,8BAA8B,CAAC,UAAU,CAAC,eAAe;YAC3D,kBAAkB,EAChB,UAAU,CAAC,UAAU,EAAE,kBAAkB;gBACzC,8BAA8B,CAAC,UAAU,CAAC,kBAAkB;YAC9D,gBAAgB,EACd,UAAU,CAAC,UAAU,EAAE,gBAAgB;gBACvC,8BAA8B,CAAC,UAAU,CAAC,gBAAgB;YAC5D,iBAAiB,EACf,UAAU,CAAC,UAAU,EAAE,iBAAiB;gBACxC,8BAA8B,CAAC,UAAU,CAAC,iBAAiB;SAC9D;QACD,UAAU,EAAE;YACV,oBAAoB,EAClB,UAAU,CAAC,UAAU,EAAE,oBAAoB;gBAC3C,8BAA8B,CAAC,UAAU,CAAC,oBAAoB;YAChE,eAAe,EACb,UAAU,CAAC,UAAU,EAAE,eAAe;gBACtC,8BAA8B,CAAC,UAAU,CAAC,eAAe;YAC3D,eAAe,EACb,UAAU,CAAC,UAAU,EAAE,eAAe;gBACtC,8BAA8B,CAAC,UAAU,CAAC,eAAe;YAC3D,cAAc,EACZ,UAAU,CAAC,UAAU,EAAE,cAAc;gBACrC,8BAA8B,CAAC,UAAU,CAAC,cAAc;YAC1D,mBAAmB,EACjB,UAAU,CAAC,UAAU,EAAE,mBAAmB;gBAC1C,8BAA8B,CAAC,UAAU,CAAC,mBAAmB;YAC/D,uBAAuB,EACrB,UAAU,CAAC,UAAU,EAAE,uBAAuB;gBAC9C,8BAA8B,CAAC,UAAU,CAAC,uBAAuB;SACpE;QACD,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,8BAA8B,CAAC,WAAW;QACjF,WAAW,EAAE;YACX,OAAO,EAAE,YAAY;YACrB,iBAAiB,EAAE;gBACjB,oBAAoB,EAClB,cAAc,CAAC,iBAAiB,EAAE,oBAAoB;oBACtD,0BAA0B,CAAC,iBAAiB,CAAC,oBAAoB;gBACnE,eAAe,EACb,cAAc,CAAC,iBAAiB,EAAE,eAAe;oBACjD,0BAA0B,CAAC,iBAAiB,CAAC,eAAe;gBAC9D,kBAAkB,EAChB,cAAc,CAAC,iBAAiB,EAAE,kBAAkB;oBACpD,0BAA0B,CAAC,iBAAiB,CAAC,kBAAkB;aAClE;SACF;QACD,oBAAoB,EAAE;YACpB,mBAAmB,EACjB,UAAU,CAAC,oBAAoB,EAAE,mBAAmB;gBACpD,8BAA8B,CAAC,oBAAoB,CAAC,mBAAmB;YACzE,eAAe,EACb,UAAU,CAAC,oBAAoB,EAAE,eAAe;gBAChD,8BAA8B,CAAC,oBAAoB,CAAC,eAAe;YACrE,iBAAiB,EACf,UAAU,CAAC,oBAAoB,EAAE,iBAAiB;gBAClD,8BAA8B,CAAC,oBAAoB,CAAC,iBAAiB;SACxE;QACD,uBAAuB,EACrB,UAAU,CAAC,uBAAuB,IAAI,8BAA8B,CAAC,uBAAuB;QAC9F,eAAe,EAAE,UAAU,CAAC,eAAe,IAAI,8BAA8B,CAAC,eAAe;KAC9F,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC;IAEjD,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,+BAA+B,CAAC,OAAO;QACtE,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,+BAA+B,CAAC,MAAM;QACnE,iBAAiB,EACf,UAAU,CAAC,iBAAiB,IAAI,+BAA+B,CAAC,iBAAiB;QACnF,gBAAgB,EACd,UAAU,CAAC,gBAAgB,IAAI,+BAA+B,CAAC,gBAAgB;QACjF,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,+BAA+B,CAAC,YAAY;QACrF,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,+BAA+B,CAAC,UAAU;KAChF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;IAC/C,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,IAAI,EAAE,CAAC;IACnD,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,UAAU,CAAC;IAEnE,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,6BAA6B,CAAC,OAAO;QACpE,UAAU,EAAE;YACV,OAAO,EAAE,cAAc,CAAC,OAAO,IAAI,iBAAiB,CAAC,OAAO;YAC5D,IAAI,EAAE,cAAc,CAAC,IAAI,IAAI,iBAAiB,CAAC,IAAI;SACpD;QACD,gBAAgB,EAAE,UAAU,CAAC,gBAAgB,IAAI,6BAA6B,CAAC,gBAAgB;KAChG,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,UAAU,GAAG,uBAAuB,EAAE,CAAC;IAC7C,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC;IAClC,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC;IAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAC9C,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;IAEhE,MAAM,WAAW,GAA8B;QAC7C;YACE,SAAS,EAAE,sBAAsB;YACjC,gEAAgE;YAChE,KAAK,EAAE,YAAY,IAAI,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;YAC1E,OAAO,EAAE,GAAG,EAAE,oBAAoB,IAAI,IAAI;SAC3C;QACD;YACE,SAAS,EAAE,kBAAkB;YAC7B,oEAAoE;YACpE,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,GAAG,EAAE,gBAAgB,IAAI,IAAI;SACvC;QACD;YACE,SAAS,EAAE,kBAAkB;YAC7B,6GAA6G;YAC7G,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,GAAG,EAAE,gBAAgB,IAAI,IAAI;SACvC;QACD;YACE,SAAS,EAAE,iBAAiB;YAC5B,KAAK,EAAE,YAAY,IAAI,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;YACrE,OAAO,EAAE,GAAG,EAAE,eAAe,IAAI,IAAI;SACtC;QACD;YACE,SAAS,EAAE,oBAAoB;YAC/B,KAAK,EAAE,YAAY,IAAI,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;YACxE,OAAO,EAAE,GAAG,EAAE,kBAAkB,IAAI,KAAK;SAC1C;QACD;YACE,SAAS,EAAE,kBAAkB;YAC7B,sEAAsE;YACtE,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,GAAG,EAAE,gBAAgB,IAAI,IAAI;SACvC;KACF,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,OAAO,uBAAuB,EAAE;SAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC7B,CAAC;AAED,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,KAA8B,CAAC;QAC3C,IAAI,GAAG,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,4CAA4C;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,GAAG,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,4DAA4D;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CAAC,QAAQ,EAAE,oDAAoD,EAAE;YACtE,GAAG;YACH,KAAK,EAAE,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC;YACpC,IAAI,EAAE,GAAG,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,+CAA+C;AAC/C,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,UAAU,GAAG,mBAAmB,EAAE,CAAC;IACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,QAAQ,EAAE,yCAAyC,EAAE;YAC3D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAA8B;IAC7D,MAAM,UAAU,GAAG,mBAAmB,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;IAC3C,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AACzE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,OAAO,MAAM,CAAC,oBAAoB,KAAK,IAAI,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAsC;IAC5E,gBAAgB,CAAC;QACf,oBAAoB,EAAE,IAAI;QAC1B,uBAAuB,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACjD,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAE1C,mCAAmC;IACnC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACvD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,UAAU,GAAkB,IAAI,CAAC;IAErC,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACzE,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAClC,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,aAAa;YACtB,GAAG;YACH,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,kEAAkE;IAClE,IAAI,QAAQ,GAGD,IAAI,CAAC;IAChB,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YAClC,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAClB,oBAAoB,UAAU,eAAe,EAC7C,EAAE,OAAO,EAAE,IAAI,EAAE,EACjB,CAAC,GAAG,EAAE,EAAE;oBACN,IAAI,IAAI,GAAG,EAAE,CAAC;oBACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;wBAC/B,IAAI,IAAI,KAAK,CAAC;oBAChB,CAAC,CAAC,CAAC;oBACH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;wBACjB,IAAI,CAAC;4BACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC5B,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,OAAO,CAAC,QAAQ,EAAE,8CAA8C,EAAE;gCAChE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;6BAC9D,CAAC,CAAC;4BACH,OAAO,CAAC,IAAI,CAAC,CAAC;wBAChB,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,CACF,CAAC;gBACF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBACrC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;oBACrB,GAAG,CAAC,OAAO,EAAE,CAAC;oBACd,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,QAAQ,EAAE,gDAAgD,EAAE;gBAClE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC;QACZ,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,IAAI,KAAK;KAC1C,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,CAAC;QACZ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,OAAO,EAAE,OAAO,IAAI,KAAK;KAC1E,CAAC,CAAC;IAEH,4BAA4B;IAC5B,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAClE,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACrC,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,iBAAiB;SAC3B,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IAC1C,OAAO;QACL,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,GAAG;QACxC,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,EAAE;QAC7C,kBAAkB,EAAE,UAAU,CAAC,kBAAkB,IAAI,IAAI;QACzD,wBAAwB,EAAE,UAAU,CAAC,wBAAwB,IAAI,IAAI;QACrE,qBAAqB,EAAE,UAAU,CAAC,qBAAqB,IAAI,KAAK;QAChE,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,IAAI,IAAI;QAC7D,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,KAAK;QAC5C,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,GAAG;QACxC,uBAAuB,EAAE,UAAU,CAAC,uBAAuB,IAAI,KAAK;QACpE,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,IAAI,IAAI,KAAK,CAAC;KAC1F,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;IACzC,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,IAAI;QACnC,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,KAAK;QAC1C,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,EAAE;KAC1C,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;IAC1C,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,8BAA8B,CAAC,OAAO;QAC/D,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,8BAA8B,CAAC,KAAK;QACzD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,8BAA8B,CAAC,gBAAgB;QAC1F,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,8BAA8B,CAAC,WAAW;QAC3E,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,8BAA8B,CAAC,eAAe;QACvF,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,8BAA8B,CAAC,UAAU;QACxE,kBAAkB,EAChB,IAAI,CAAC,kBAAkB,IAAI,8BAA8B,CAAC,kBAAkB;QAC9E,kBAAkB,EAChB,IAAI,CAAC,kBAAkB,IAAI,8BAA8B,CAAC,kBAAkB;KAC/E,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"consolidate.d.ts","sourceRoot":"","sources":["../../src/lib/consolidate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consolidate.d.ts","sourceRoot":"","sources":["../../src/lib/consolidate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,EACL,MAAM,EAaP,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAUpD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC1C,OAAO,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,GAAG,kBAAkB,GAAG,WAAW,CAAC;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,4BAA4B,IAAI,OAAO,CAC3D,KAAK,CAAC,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CACxC,CA+CA;AA8CD;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GACjC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAwFnC;AAED;;;GAGG;AACH,wBAAsB,+BAA+B,CACnD,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GACjC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAsDnC;AAmED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,sBAAsB,EAAE,EACpC,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE,GACL,OAAO,CAAC,mBAAmB,CAAC,CA6E9B;AAmCD;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;IACvE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC,CA+CD;AAMD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAwBxB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,eAAe,CA+B9D;AAkHD;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAkE/B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACvE,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC,CAaD"}
@@ -7,19 +7,21 @@
7
7
  * - Update quality scores
8
8
  */
9
9
  import { Worker } from 'worker_threads';
10
- import { logWarn } from './fault-logger.js';
10
+ import os from 'os';
11
+ import { logInfo, logWarn } from './fault-logger.js';
11
12
  import path from 'path';
12
13
  import { fileURLToPath } from 'url';
13
14
  import { deleteMemory, invalidateMemory, restoreInvalidatedMemory, getMemoryById, saveMemory, getMemoryLinks, deleteMemoryLink, createMemoryLink, getAllMemoriesWithEmbeddings as getAllMemoriesWithEmbeddingsDb, } from './storage/index.js';
14
- import { cosineSimilarity, getEmbedding } from './embeddings.js';
15
+ import { getEmbedding } from './embeddings.js';
16
+ import { findSimilarPairs } from './similarity-utils.js';
15
17
  import { getIdleReflectionConfig, getConfig, getLLMTaskConfig } from './config.js';
16
18
  import { scanSensitive } from './sensitive-filter.js';
17
19
  import { callLLM } from './llm.js';
18
- import { MEMORY_MERGE_PROMPT } from '../prompts/index.js';
20
+ import { MEMORY_MERGE_SYSTEM, MEMORY_MERGE_PROMPT } from '../prompts/index.js';
19
21
  const __filename = fileURLToPath(import.meta.url);
20
22
  const __dirname = path.dirname(__filename);
21
23
  // Worker pool configuration
22
- const WORKER_COUNT = Math.max(1, Math.min(4, (await import('os')).cpus().length - 1));
24
+ const WORKER_COUNT = Math.max(1, Math.min(4, os.cpus().length - 1));
23
25
  const MIN_PAIRS_FOR_WORKERS = 1000; // Only use workers if we have enough pairs
24
26
  /**
25
27
  * Get all memories with embeddings (via dispatcher)
@@ -43,6 +45,8 @@ export async function getAllMemoriesWithEmbeddings() {
43
45
  priority_score: row.priority_score ?? null,
44
46
  valid_from: row.valid_from ?? null,
45
47
  valid_until: row.valid_until ?? null,
48
+ confidence: row.confidence ?? null,
49
+ source_type: (row.source_type ?? null),
46
50
  created_at: row.created_at,
47
51
  embedding: row.embedding,
48
52
  }));
@@ -105,27 +109,40 @@ export async function findConsolidationCandidates(threshold, maxCandidates, opti
105
109
  if (memories.length < 2) {
106
110
  return []; // Need at least 2 eligible memories
107
111
  }
108
- // Generate all pairs
112
+ // Generate all pairs — skip cross-dimension pairs (would yield silently truncated
113
+ // cosine similarity, e.g. comparing 384-dim vs 768-dim after a model change)
109
114
  const pairs = [];
110
115
  for (let i = 0; i < memories.length; i++) {
111
116
  for (let j = i + 1; j < memories.length; j++) {
112
- pairs.push([i, j]);
117
+ if (memories[i].embedding.length === memories[j].embedding.length) {
118
+ pairs.push([i, j]);
119
+ }
113
120
  }
114
121
  }
115
122
  // Decide whether to use workers or process sequentially
116
- let similarPairs;
123
+ let similarPairs = [];
117
124
  if (pairs.length >= MIN_PAIRS_FOR_WORKERS && WORKER_COUNT > 1) {
118
125
  // Use worker threads for large datasets
119
126
  const embeddings = memories.map((m) => m.embedding);
120
127
  similarPairs = await runSimilarityWorkers(embeddings, pairs, similarityThreshold);
121
128
  }
122
129
  else {
123
- // Process sequentially for small datasets (faster due to no worker overhead)
124
- similarPairs = [];
125
- for (const [i, j] of pairs) {
126
- const similarity = cosineSimilarity(memories[i].embedding, memories[j].embedding);
127
- if (similarity >= similarityThreshold) {
128
- similarPairs.push({ i, j, similarity });
130
+ // Process sequentially for small datasets bucket by dimension so
131
+ // findSimilarPairs never compares vectors of different lengths
132
+ const dimBuckets = new Map();
133
+ for (let i = 0; i < memories.length; i++) {
134
+ const dim = memories[i].embedding.length;
135
+ const bucket = dimBuckets.get(dim) ?? [];
136
+ bucket.push({ idx: i, embedding: memories[i].embedding });
137
+ dimBuckets.set(dim, bucket);
138
+ }
139
+ for (const bucket of dimBuckets.values()) {
140
+ if (bucket.length < 2)
141
+ continue;
142
+ const items = bucket.map((b) => ({ id: b.idx, embedding: b.embedding }));
143
+ const bucketPairs = findSimilarPairs(items, similarityThreshold);
144
+ for (const { a, b, similarity } of bucketPairs) {
145
+ similarPairs.push({ i: a, j: b, similarity });
129
146
  }
130
147
  }
131
148
  }
@@ -171,32 +188,40 @@ export async function findConsolidationCandidatesSync(threshold, maxCandidates,
171
188
  : allMemories.filter((m) => new Date(m.created_at).getTime() < cutoffMs);
172
189
  if (memories.length < 2)
173
190
  return [];
191
+ // Bucket by dimension to avoid incorrect cross-dimension comparisons
192
+ const dimBuckets = new Map();
193
+ for (let i = 0; i < memories.length; i++) {
194
+ const dim = memories[i].embedding.length;
195
+ const bucket = dimBuckets.get(dim) ?? [];
196
+ bucket.push({ idx: i, embedding: memories[i].embedding });
197
+ dimBuckets.set(dim, bucket);
198
+ }
199
+ const rawPairs = [];
200
+ for (const bucket of dimBuckets.values()) {
201
+ if (bucket.length < 2)
202
+ continue;
203
+ const items = bucket.map((b) => ({ id: b.idx, embedding: b.embedding }));
204
+ rawPairs.push(...findSimilarPairs(items, similarityThreshold));
205
+ }
206
+ rawPairs.sort((a, b) => b.similarity - a.similarity);
174
207
  const candidates = [];
175
- for (let i = 0; i < memories.length && candidates.length < limit; i++) {
176
- for (let j = i + 1; j < memories.length && candidates.length < limit; j++) {
177
- const m1 = memories[i];
178
- const m2 = memories[j];
179
- const similarity = cosineSimilarity(m1.embedding, m2.embedding);
180
- if (similarity >= similarityThreshold) {
181
- const action = determineAction(m1, m2, similarity);
182
- candidates.push({
183
- memory1: m1,
184
- memory2: m2,
185
- similarity,
186
- ...action,
187
- });
188
- }
189
- }
208
+ for (const { a: i, b: j, similarity } of rawPairs) {
209
+ if (candidates.length >= limit)
210
+ break;
211
+ const m1 = memories[i];
212
+ const m2 = memories[j];
213
+ const action = determineAction(m1, m2, similarity);
214
+ candidates.push({ memory1: m1, memory2: m2, similarity, ...action });
190
215
  }
191
- candidates.sort((a, b) => b.similarity - a.similarity);
192
216
  return candidates;
193
217
  }
194
218
  /**
195
219
  * Determine consolidation action for a pair of memories
196
220
  */
197
221
  function determineAction(m1, m2, similarity) {
198
- // Very high similarity (>0.95) = likely exact duplicate
199
- if (similarity > 0.95) {
222
+ const thresholds = getIdleReflectionConfig().thresholds;
223
+ // Very high similarity = likely exact duplicate
224
+ if (similarity > (thresholds.exact_duplicate ?? 0.95)) {
200
225
  // Keep the one with higher quality score, or newer if scores equal
201
226
  const q1 = m1.quality_score ?? 0.5;
202
227
  const q2 = m2.quality_score ?? 0.5;
@@ -216,8 +241,8 @@ function determineAction(m1, m2, similarity) {
216
241
  reason: d1 > d2 ? `Keep #${m1.id} (newer)` : `Keep #${m2.id} (newer)`,
217
242
  };
218
243
  }
219
- // High similarity (0.85-0.95) = candidates for merge
220
- if (similarity > 0.85) {
244
+ // High similarity = candidates for merge
245
+ if (similarity > (thresholds.merge_candidate ?? 0.85)) {
221
246
  // Check if one is a subset of the other
222
247
  const content1Lower = m1.content.toLowerCase();
223
248
  const content2Lower = m2.content.toLowerCase();
@@ -388,7 +413,12 @@ export async function undoConsolidation(mergedMemoryId) {
388
413
  export async function llmMergeContent(content1, content2, options) {
389
414
  const prompt = MEMORY_MERGE_PROMPT.replace('{memory1}', content1).replace('{memory2}', content2);
390
415
  try {
391
- const result = await callLLM(prompt, { timeout: options.timeoutMs || 30000, maxTokens: 500, useSleepAgent: true }, {
416
+ const result = await callLLM(prompt, {
417
+ timeout: options.timeoutMs || 30000,
418
+ maxTokens: 500,
419
+ useSleepAgent: true,
420
+ systemPrompt: MEMORY_MERGE_SYSTEM,
421
+ }, {
392
422
  backend: options.mode,
393
423
  model: options.model,
394
424
  endpoint: options.apiUrl,
@@ -506,6 +536,8 @@ async function mergeMemories(m1, m2, useLLM = false, llmOptions) {
506
536
  score: (q1 + q2) / 2, // Average, not max — prevent score inflation
507
537
  factors: { merged_from: 2, original_score_1: q1, original_score_2: q2 },
508
538
  },
539
+ sourceType: 'agent',
540
+ confidence: Math.max(m1.confidence ?? 0.5, m2.confidence ?? 0.5),
509
541
  });
510
542
  // Transfer links from both memories to the new one
511
543
  await transferLinks(m1.id, saved.id);
@@ -538,26 +570,25 @@ async function mergeMemories(m1, m2, useLLM = false, llmOptions) {
538
570
  export async function consolidateMemories(options) {
539
571
  const { dryRun = false, threshold, maxCandidates, verbose = false, useLLM = false, llmOptions, skipGuards = false, } = options;
540
572
  if (verbose) {
541
- console.log('Finding consolidation candidates...');
573
+ logInfo('consolidate', 'Finding consolidation candidates...');
542
574
  if (!skipGuards) {
543
575
  const config = getIdleReflectionConfig();
544
576
  const guards = config.consolidation_guards;
545
- console.log(`Safety guards: min age ${guards?.min_memory_age_days ?? 7}d, min corpus ${guards?.min_corpus_size ?? 20}, require LLM: ${guards?.require_llm_merge ?? true}`);
577
+ logInfo('consolidate', `Safety guards: min age ${guards?.min_memory_age_days ?? 7}d, min corpus ${guards?.min_corpus_size ?? 20}, require LLM: ${guards?.require_llm_merge ?? true}`);
546
578
  }
547
579
  }
548
580
  const candidates = await findConsolidationCandidates(threshold, maxCandidates, { skipGuards });
549
581
  if (verbose) {
550
- console.log(`Found ${candidates.length} candidate pairs`);
582
+ logInfo('consolidate', `Found ${candidates.length} candidate pairs`);
551
583
  if (candidates.length > 0) {
552
- console.log('\nTop candidates:');
584
+ logInfo('consolidate', 'Top candidates:');
553
585
  for (const c of candidates.slice(0, 5)) {
554
- console.log(` [${c.action}] #${c.memory1.id} ↔ #${c.memory2.id} (similarity: ${c.similarity.toFixed(3)})`);
555
- console.log(` ${c.reason}`);
586
+ logInfo('consolidate', ` [${c.action}] #${c.memory1.id} ↔ #${c.memory2.id} (similarity: ${c.similarity.toFixed(3)}) — ${c.reason}`);
556
587
  }
557
588
  }
558
589
  if (useLLM) {
559
590
  const mergeOpts = llmOptions || getLLMMergeOptionsFromConfig();
560
- console.log(`\nLLM merge enabled: ${mergeOpts.mode} (${mergeOpts.model || 'default'})`);
591
+ logInfo('consolidate', `LLM merge enabled: ${mergeOpts.mode} (${mergeOpts.model || 'default'})`);
561
592
  }
562
593
  }
563
594
  const result = await executeConsolidation(candidates, {
@@ -571,14 +602,7 @@ export async function consolidateMemories(options) {
571
602
  : undefined,
572
603
  });
573
604
  if (verbose) {
574
- console.log('\n\nConsolidation complete:');
575
- console.log(` Candidates found: ${result.candidatesFound}`);
576
- console.log(` Merged: ${result.merged}${useLLM ? ' (LLM)' : ''}`);
577
- console.log(` Deleted: ${result.deleted}`);
578
- console.log(` Kept (linked): ${result.kept}`);
579
- if (result.errors.length > 0) {
580
- console.log(` Errors: ${result.errors.length}`);
581
- }
605
+ logInfo('consolidate', `Complete: ${result.candidatesFound} candidates, ${result.merged} merged${useLLM ? ' (LLM)' : ''}, ${result.deleted} deleted, ${result.kept} kept${result.errors.length > 0 ? `, ${result.errors.length} errors` : ''}`);
582
606
  }
583
607
  return result;
584
608
  }