@stackmemoryai/stackmemory 0.3.1 → 0.3.3

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 (734) hide show
  1. package/README.md +52 -272
  2. package/dist/cli/commands/clear.js +191 -0
  3. package/dist/cli/commands/clear.js.map +7 -0
  4. package/dist/cli/commands/config.js +152 -1
  5. package/dist/cli/commands/config.js.map +2 -2
  6. package/dist/cli/commands/dashboard.js +178 -0
  7. package/dist/cli/commands/dashboard.js.map +7 -0
  8. package/dist/cli/commands/handoff.js +125 -8
  9. package/dist/cli/commands/handoff.js.map +2 -2
  10. package/dist/cli/commands/linear-create.js +132 -0
  11. package/dist/cli/commands/linear-create.js.map +7 -0
  12. package/dist/cli/commands/linear-list.js +69 -0
  13. package/dist/cli/commands/linear-list.js.map +7 -0
  14. package/dist/cli/commands/linear-migrate.js +40 -0
  15. package/dist/cli/commands/linear-migrate.js.map +7 -0
  16. package/dist/cli/commands/linear.js +185 -36
  17. package/dist/cli/commands/linear.js.map +2 -2
  18. package/dist/cli/commands/monitor.js +309 -0
  19. package/dist/cli/commands/monitor.js.map +7 -0
  20. package/dist/cli/commands/quality.js +414 -0
  21. package/dist/cli/commands/quality.js.map +7 -0
  22. package/dist/cli/commands/storage.js +275 -0
  23. package/dist/cli/commands/storage.js.map +7 -0
  24. package/dist/cli/commands/tui.js +66 -0
  25. package/dist/cli/commands/tui.js.map +7 -0
  26. package/dist/cli/commands/workflow.js +134 -0
  27. package/dist/cli/commands/workflow.js.map +7 -0
  28. package/dist/cli/index.js +104 -8
  29. package/dist/cli/index.js.map +3 -3
  30. package/dist/core/analytics/team-analytics.js +374 -0
  31. package/dist/core/analytics/team-analytics.js.map +7 -0
  32. package/dist/core/context/context-bridge.js +234 -0
  33. package/dist/core/context/context-bridge.js.map +7 -0
  34. package/dist/core/context/dual-stack-manager.js +850 -0
  35. package/dist/core/context/dual-stack-manager.js.map +7 -0
  36. package/dist/core/context/frame-handoff-manager.js +384 -0
  37. package/dist/core/context/frame-handoff-manager.js.map +7 -0
  38. package/dist/core/context/frame-manager.js +132 -12
  39. package/dist/core/context/frame-manager.js.map +2 -2
  40. package/dist/core/context/permission-manager.js +181 -0
  41. package/dist/core/context/permission-manager.js.map +7 -0
  42. package/dist/core/context/shared-context-layer.js +386 -0
  43. package/dist/core/context/shared-context-layer.js.map +7 -0
  44. package/dist/core/context/stack-merge-resolver.js +600 -0
  45. package/dist/core/context/stack-merge-resolver.js.map +7 -0
  46. package/dist/core/context/validation.js +121 -0
  47. package/dist/core/context/validation.js.map +7 -0
  48. package/dist/core/database/connection-pool.js +266 -175
  49. package/dist/core/database/connection-pool.js.map +2 -2
  50. package/dist/core/database/database-adapter.js +51 -0
  51. package/dist/core/database/database-adapter.js.map +7 -0
  52. package/dist/core/database/migration-manager.js +514 -0
  53. package/dist/core/database/migration-manager.js.map +7 -0
  54. package/dist/core/database/paradedb-adapter.js +970 -0
  55. package/dist/core/database/paradedb-adapter.js.map +7 -0
  56. package/dist/core/database/query-router.js +421 -0
  57. package/dist/core/database/query-router.js.map +7 -0
  58. package/dist/core/database/sqlite-adapter.js +547 -0
  59. package/dist/core/database/sqlite-adapter.js.map +7 -0
  60. package/dist/core/errors/index.js +21 -1
  61. package/dist/core/errors/index.js.map +2 -2
  62. package/dist/core/frame/workflow-templates-stub.js +42 -0
  63. package/dist/core/frame/workflow-templates-stub.js.map +7 -0
  64. package/dist/core/frame/workflow-templates.js +276 -0
  65. package/dist/core/frame/workflow-templates.js.map +7 -0
  66. package/dist/core/merge/conflict-detector.js +5 -2
  67. package/dist/core/merge/conflict-detector.js.map +2 -2
  68. package/dist/core/merge/resolution-engine.js +3 -14
  69. package/dist/core/merge/resolution-engine.js.map +2 -2
  70. package/dist/core/merge/stack-diff.js.map +2 -2
  71. package/dist/core/monitoring/logger.js +18 -3
  72. package/dist/core/monitoring/logger.js.map +2 -2
  73. package/dist/core/monitoring/session-monitor.js +296 -0
  74. package/dist/core/monitoring/session-monitor.js.map +7 -0
  75. package/dist/core/retrieval/context-retriever.js +475 -0
  76. package/dist/core/retrieval/context-retriever.js.map +7 -0
  77. package/dist/core/retrieval/graph-retrieval.js +658 -0
  78. package/dist/core/retrieval/graph-retrieval.js.map +7 -0
  79. package/dist/core/retrieval/hierarchical-retrieval.js +652 -0
  80. package/dist/core/retrieval/hierarchical-retrieval.js.map +7 -0
  81. package/dist/core/retrieval/retrieval-benchmarks.js +517 -0
  82. package/dist/core/retrieval/retrieval-benchmarks.js.map +7 -0
  83. package/dist/core/session/clear-survival-stub.js +49 -0
  84. package/dist/core/session/clear-survival-stub.js.map +7 -0
  85. package/dist/core/session/clear-survival.js +426 -0
  86. package/dist/core/session/clear-survival.js.map +7 -0
  87. package/dist/core/session/handoff-generator.js +339 -0
  88. package/dist/core/session/handoff-generator.js.map +7 -0
  89. package/dist/core/session/session-manager.js +61 -26
  90. package/dist/core/session/session-manager.js.map +3 -3
  91. package/dist/core/skills/index.js +3 -0
  92. package/dist/core/skills/index.js.map +7 -0
  93. package/dist/core/skills/skill-storage.js +749 -0
  94. package/dist/core/skills/skill-storage.js.map +7 -0
  95. package/dist/core/skills/types.js +189 -0
  96. package/dist/core/skills/types.js.map +7 -0
  97. package/dist/core/storage/railway-optimized-storage.js +550 -0
  98. package/dist/core/storage/railway-optimized-storage.js.map +7 -0
  99. package/dist/core/storage/remote-storage.js +456 -0
  100. package/dist/core/storage/remote-storage.js.map +7 -0
  101. package/dist/core/trace/trace-detector.js +136 -5
  102. package/dist/core/trace/trace-detector.js.map +2 -2
  103. package/dist/core/trace/trace-store.js.map +2 -2
  104. package/dist/features/tui/components/analytics-panel.js +136 -0
  105. package/dist/features/tui/components/analytics-panel.js.map +7 -0
  106. package/dist/features/tui/components/frame-visualizer.js +377 -0
  107. package/dist/features/tui/components/frame-visualizer.js.map +7 -0
  108. package/dist/features/tui/components/pr-tracker.js +123 -0
  109. package/dist/features/tui/components/pr-tracker.js.map +7 -0
  110. package/dist/features/tui/components/session-monitor.js +286 -0
  111. package/dist/features/tui/components/session-monitor.js.map +7 -0
  112. package/dist/features/tui/components/subagent-fleet.js +388 -0
  113. package/dist/features/tui/components/subagent-fleet.js.map +7 -0
  114. package/dist/features/tui/components/task-board.js +475 -0
  115. package/dist/features/tui/components/task-board.js.map +7 -0
  116. package/dist/features/tui/index.js +397 -0
  117. package/dist/features/tui/index.js.map +7 -0
  118. package/dist/features/tui/services/data-service.js +654 -0
  119. package/dist/features/tui/services/data-service.js.map +7 -0
  120. package/dist/features/tui/services/websocket-client.js +149 -0
  121. package/dist/features/tui/services/websocket-client.js.map +7 -0
  122. package/dist/features/tui/terminal-compat.js +205 -0
  123. package/dist/features/tui/terminal-compat.js.map +7 -0
  124. package/dist/features/tui/types.js +1 -0
  125. package/dist/features/tui/types.js.map +7 -0
  126. package/dist/integrations/claude-code/enhanced-pre-clear-hooks.js +455 -0
  127. package/dist/integrations/claude-code/enhanced-pre-clear-hooks.js.map +7 -0
  128. package/dist/integrations/claude-code/lifecycle-hooks.js +250 -0
  129. package/dist/integrations/claude-code/lifecycle-hooks.js.map +7 -0
  130. package/dist/integrations/claude-code/post-task-hooks.js +541 -0
  131. package/dist/integrations/claude-code/post-task-hooks.js.map +7 -0
  132. package/dist/integrations/linear/client.js +22 -4
  133. package/dist/integrations/linear/client.js.map +2 -2
  134. package/dist/integrations/linear/migration.js +299 -0
  135. package/dist/integrations/linear/migration.js.map +7 -0
  136. package/dist/integrations/linear/oauth-server.js +396 -0
  137. package/dist/integrations/linear/oauth-server.js.map +7 -0
  138. package/dist/integrations/linear/rest-client.js +199 -0
  139. package/dist/integrations/linear/rest-client.js.map +7 -0
  140. package/dist/integrations/linear/sync.js +14 -2
  141. package/dist/integrations/linear/sync.js.map +2 -2
  142. package/dist/integrations/linear/webhook-handler.js +200 -0
  143. package/dist/integrations/linear/webhook-handler.js.map +7 -0
  144. package/dist/integrations/mcp/handlers/skill-handlers.js +514 -0
  145. package/dist/integrations/mcp/handlers/skill-handlers.js.map +7 -0
  146. package/dist/integrations/mcp/middleware/tool-scoring.js +352 -0
  147. package/dist/integrations/mcp/middleware/tool-scoring.js.map +7 -0
  148. package/dist/integrations/mcp/refactored-server.js +31 -3
  149. package/dist/integrations/mcp/refactored-server.js.map +2 -2
  150. package/dist/integrations/mcp/server.js +25 -7
  151. package/dist/integrations/mcp/server.js.map +2 -2
  152. package/dist/mcp/stackmemory-mcp-server.js.map +1 -1
  153. package/dist/models/user.model.js +3 -0
  154. package/dist/models/user.model.js.map +2 -2
  155. package/dist/services/context-service.js.map +2 -2
  156. package/dist/utils/formatting.js +58 -0
  157. package/dist/utils/formatting.js.map +7 -0
  158. package/package.json +21 -5
  159. package/dist/cli/__tests__/index.test.js +0 -290
  160. package/dist/cli/__tests__/index.test.js.map +0 -7
  161. package/dist/core/config/__tests__/config-manager.test.js +0 -248
  162. package/dist/core/config/__tests__/config-manager.test.js.map +0 -7
  163. package/dist/core/context/__tests__/frame-manager.test.js +0 -879
  164. package/dist/core/context/__tests__/frame-manager.test.js.map +0 -7
  165. package/dist/core/digest/__tests__/enhanced-hybrid-digest.test.js +0 -379
  166. package/dist/core/digest/__tests__/enhanced-hybrid-digest.test.js.map +0 -7
  167. package/dist/core/digest/__tests__/frame-digest-integration.test.js +0 -230
  168. package/dist/core/digest/__tests__/frame-digest-integration.test.js.map +0 -7
  169. package/dist/core/errors/__tests__/error-handling.test.js +0 -270
  170. package/dist/core/errors/__tests__/error-handling.test.js.map +0 -7
  171. package/dist/core/merge/__tests__/conflict-scenarios.test.js +0 -414
  172. package/dist/core/merge/__tests__/conflict-scenarios.test.js.map +0 -7
  173. package/dist/core/query/__tests__/query-parser.test.js +0 -301
  174. package/dist/core/query/__tests__/query-parser.test.js.map +0 -7
  175. package/dist/core/query/__tests__/query-templates.test.js +0 -210
  176. package/dist/core/query/__tests__/query-templates.test.js.map +0 -7
  177. package/dist/core/trace/trace-detector.test.js +0 -401
  178. package/dist/core/trace/trace-detector.test.js.map +0 -7
  179. package/dist/features/tasks/__tests__/pebbles-task-store.test.js +0 -747
  180. package/dist/features/tasks/__tests__/pebbles-task-store.test.js.map +0 -7
  181. package/dist/integrations/linear/__tests__/auth.test.js +0 -558
  182. package/dist/integrations/linear/__tests__/auth.test.js.map +0 -7
  183. package/dist/integrations/linear/__tests__/sync-service.test.js +0 -760
  184. package/dist/integrations/linear/__tests__/sync-service.test.js.map +0 -7
  185. package/dist/integrations/mcp/__tests__/server.test.js +0 -798
  186. package/dist/integrations/mcp/__tests__/server.test.js.map +0 -7
  187. package/dist/scripts/benchmark-performance.d.ts +0 -7
  188. package/dist/scripts/benchmark-performance.d.ts.map +0 -1
  189. package/dist/scripts/benchmark-performance.js +0 -44
  190. package/dist/scripts/benchmark-performance.js.map +0 -1
  191. package/dist/scripts/cancel-duplicate-tasks.d.ts +0 -7
  192. package/dist/scripts/cancel-duplicate-tasks.d.ts.map +0 -1
  193. package/dist/scripts/cancel-duplicate-tasks.js +0 -172
  194. package/dist/scripts/cancel-duplicate-tasks.js.map +0 -1
  195. package/dist/scripts/cleanup-duplicate-tasks.d.ts +0 -12
  196. package/dist/scripts/cleanup-duplicate-tasks.d.ts.map +0 -1
  197. package/dist/scripts/cleanup-duplicate-tasks.js +0 -215
  198. package/dist/scripts/cleanup-duplicate-tasks.js.map +0 -1
  199. package/dist/scripts/initialize.d.ts +0 -6
  200. package/dist/scripts/initialize.d.ts.map +0 -1
  201. package/dist/scripts/initialize.js +0 -93
  202. package/dist/scripts/initialize.js.map +0 -1
  203. package/dist/scripts/list-linear-tasks.d.ts +0 -6
  204. package/dist/scripts/list-linear-tasks.d.ts.map +0 -1
  205. package/dist/scripts/list-linear-tasks.js +0 -121
  206. package/dist/scripts/list-linear-tasks.js.map +0 -1
  207. package/dist/scripts/merge-linear-duplicates-safe.d.ts +0 -7
  208. package/dist/scripts/merge-linear-duplicates-safe.d.ts.map +0 -1
  209. package/dist/scripts/merge-linear-duplicates-safe.js +0 -267
  210. package/dist/scripts/merge-linear-duplicates-safe.js.map +0 -1
  211. package/dist/scripts/show-linear-summary.d.ts +0 -6
  212. package/dist/scripts/show-linear-summary.d.ts.map +0 -1
  213. package/dist/scripts/show-linear-summary.js +0 -120
  214. package/dist/scripts/show-linear-summary.js.map +0 -1
  215. package/dist/scripts/status.d.ts +0 -6
  216. package/dist/scripts/status.d.ts.map +0 -1
  217. package/dist/scripts/status.js +0 -101
  218. package/dist/scripts/status.js.map +0 -1
  219. package/dist/src/agents/core/agent-task-manager.d.ts +0 -154
  220. package/dist/src/agents/core/agent-task-manager.d.ts.map +0 -1
  221. package/dist/src/agents/core/agent-task-manager.js +0 -504
  222. package/dist/src/agents/core/agent-task-manager.js.map +0 -1
  223. package/dist/src/agents/verifiers/base-verifier.d.ts +0 -112
  224. package/dist/src/agents/verifiers/base-verifier.d.ts.map +0 -1
  225. package/dist/src/agents/verifiers/base-verifier.js +0 -130
  226. package/dist/src/agents/verifiers/base-verifier.js.map +0 -1
  227. package/dist/src/agents/verifiers/formatter-verifier.d.ts +0 -14
  228. package/dist/src/agents/verifiers/formatter-verifier.d.ts.map +0 -1
  229. package/dist/src/agents/verifiers/formatter-verifier.js +0 -107
  230. package/dist/src/agents/verifiers/formatter-verifier.js.map +0 -1
  231. package/dist/src/agents/verifiers/llm-judge.d.ts +0 -46
  232. package/dist/src/agents/verifiers/llm-judge.d.ts.map +0 -1
  233. package/dist/src/agents/verifiers/llm-judge.js +0 -248
  234. package/dist/src/agents/verifiers/llm-judge.js.map +0 -1
  235. package/dist/src/cli/auto-detect.d.ts +0 -61
  236. package/dist/src/cli/auto-detect.d.ts.map +0 -1
  237. package/dist/src/cli/auto-detect.js +0 -350
  238. package/dist/src/cli/auto-detect.js.map +0 -1
  239. package/dist/src/cli/browser-test.d.ts +0 -6
  240. package/dist/src/cli/browser-test.d.ts.map +0 -1
  241. package/dist/src/cli/browser-test.js +0 -32
  242. package/dist/src/cli/browser-test.js.map +0 -1
  243. package/dist/src/cli/claude-sm.d.ts +0 -7
  244. package/dist/src/cli/claude-sm.d.ts.map +0 -1
  245. package/dist/src/cli/claude-sm.js +0 -412
  246. package/dist/src/cli/claude-sm.js.map +0 -1
  247. package/dist/src/cli/commands/agent.d.ts +0 -9
  248. package/dist/src/cli/commands/agent.d.ts.map +0 -1
  249. package/dist/src/cli/commands/agent.js +0 -303
  250. package/dist/src/cli/commands/agent.js.map +0 -1
  251. package/dist/src/cli/commands/config.d.ts +0 -6
  252. package/dist/src/cli/commands/config.d.ts.map +0 -1
  253. package/dist/src/cli/commands/config.js +0 -224
  254. package/dist/src/cli/commands/config.js.map +0 -1
  255. package/dist/src/cli/commands/context.d.ts +0 -7
  256. package/dist/src/cli/commands/context.d.ts.map +0 -1
  257. package/dist/src/cli/commands/context.js +0 -365
  258. package/dist/src/cli/commands/context.js.map +0 -1
  259. package/dist/src/cli/commands/handoff.d.ts +0 -6
  260. package/dist/src/cli/commands/handoff.d.ts.map +0 -1
  261. package/dist/src/cli/commands/handoff.js +0 -212
  262. package/dist/src/cli/commands/handoff.js.map +0 -1
  263. package/dist/src/cli/commands/linear-test.d.ts +0 -6
  264. package/dist/src/cli/commands/linear-test.d.ts.map +0 -1
  265. package/dist/src/cli/commands/linear-test.js +0 -123
  266. package/dist/src/cli/commands/linear-test.js.map +0 -1
  267. package/dist/src/cli/commands/linear.d.ts +0 -6
  268. package/dist/src/cli/commands/linear.d.ts.map +0 -1
  269. package/dist/src/cli/commands/linear.js +0 -393
  270. package/dist/src/cli/commands/linear.js.map +0 -1
  271. package/dist/src/cli/commands/log.d.ts +0 -7
  272. package/dist/src/cli/commands/log.d.ts.map +0 -1
  273. package/dist/src/cli/commands/log.js +0 -168
  274. package/dist/src/cli/commands/log.js.map +0 -1
  275. package/dist/src/cli/commands/onboard.d.ts +0 -8
  276. package/dist/src/cli/commands/onboard.d.ts.map +0 -1
  277. package/dist/src/cli/commands/onboard.js +0 -363
  278. package/dist/src/cli/commands/onboard.js.map +0 -1
  279. package/dist/src/cli/commands/projects.d.ts +0 -8
  280. package/dist/src/cli/commands/projects.d.ts.map +0 -1
  281. package/dist/src/cli/commands/projects.js +0 -220
  282. package/dist/src/cli/commands/projects.js.map +0 -1
  283. package/dist/src/cli/commands/search.d.ts +0 -7
  284. package/dist/src/cli/commands/search.d.ts.map +0 -1
  285. package/dist/src/cli/commands/search.js +0 -162
  286. package/dist/src/cli/commands/search.js.map +0 -1
  287. package/dist/src/cli/commands/session.d.ts +0 -7
  288. package/dist/src/cli/commands/session.d.ts.map +0 -1
  289. package/dist/src/cli/commands/session.js +0 -222
  290. package/dist/src/cli/commands/session.js.map +0 -1
  291. package/dist/src/cli/commands/tasks.d.ts +0 -7
  292. package/dist/src/cli/commands/tasks.d.ts.map +0 -1
  293. package/dist/src/cli/commands/tasks.js +0 -229
  294. package/dist/src/cli/commands/tasks.js.map +0 -1
  295. package/dist/src/cli/commands/webhook.d.ts +0 -3
  296. package/dist/src/cli/commands/webhook.d.ts.map +0 -1
  297. package/dist/src/cli/commands/webhook.js +0 -157
  298. package/dist/src/cli/commands/webhook.js.map +0 -1
  299. package/dist/src/cli/commands/worktree.d.ts +0 -8
  300. package/dist/src/cli/commands/worktree.d.ts.map +0 -1
  301. package/dist/src/cli/commands/worktree.js +0 -339
  302. package/dist/src/cli/commands/worktree.js.map +0 -1
  303. package/dist/src/cli/index.d.ts +0 -8
  304. package/dist/src/cli/index.d.ts.map +0 -1
  305. package/dist/src/cli/index.js +0 -995
  306. package/dist/src/cli/index.js.map +0 -1
  307. package/dist/src/cli/utils/viewer.d.ts +0 -3
  308. package/dist/src/cli/utils/viewer.d.ts.map +0 -1
  309. package/dist/src/cli/utils/viewer.js +0 -91
  310. package/dist/src/cli/utils/viewer.js.map +0 -1
  311. package/dist/src/core/config/config-manager.d.ts +0 -95
  312. package/dist/src/core/config/config-manager.d.ts.map +0 -1
  313. package/dist/src/core/config/config-manager.js +0 -359
  314. package/dist/src/core/config/config-manager.js.map +0 -1
  315. package/dist/src/core/config/types.d.ts +0 -72
  316. package/dist/src/core/config/types.d.ts.map +0 -1
  317. package/dist/src/core/config/types.js +0 -127
  318. package/dist/src/core/config/types.js.map +0 -1
  319. package/dist/src/core/context/auto-context.d.ts +0 -22
  320. package/dist/src/core/context/auto-context.d.ts.map +0 -1
  321. package/dist/src/core/context/auto-context.js +0 -77
  322. package/dist/src/core/context/auto-context.js.map +0 -1
  323. package/dist/src/core/context/compaction-handler.d.ts +0 -119
  324. package/dist/src/core/context/compaction-handler.d.ts.map +0 -1
  325. package/dist/src/core/context/compaction-handler.js +0 -306
  326. package/dist/src/core/context/compaction-handler.js.map +0 -1
  327. package/dist/src/core/context/frame-database.d.ts +0 -59
  328. package/dist/src/core/context/frame-database.d.ts.map +0 -1
  329. package/dist/src/core/context/frame-database.js +0 -333
  330. package/dist/src/core/context/frame-database.js.map +0 -1
  331. package/dist/src/core/context/frame-digest.d.ts +0 -59
  332. package/dist/src/core/context/frame-digest.d.ts.map +0 -1
  333. package/dist/src/core/context/frame-digest.js +0 -264
  334. package/dist/src/core/context/frame-digest.js.map +0 -1
  335. package/dist/src/core/context/frame-manager.d.ts +0 -112
  336. package/dist/src/core/context/frame-manager.d.ts.map +0 -1
  337. package/dist/src/core/context/frame-manager.js +0 -600
  338. package/dist/src/core/context/frame-manager.js.map +0 -1
  339. package/dist/src/core/context/frame-stack.d.ts +0 -85
  340. package/dist/src/core/context/frame-stack.d.ts.map +0 -1
  341. package/dist/src/core/context/frame-stack.js +0 -287
  342. package/dist/src/core/context/frame-stack.js.map +0 -1
  343. package/dist/src/core/context/frame-types.d.ts +0 -67
  344. package/dist/src/core/context/frame-types.d.ts.map +0 -1
  345. package/dist/src/core/context/frame-types.js +0 -6
  346. package/dist/src/core/context/frame-types.js.map +0 -1
  347. package/dist/src/core/context/index.d.ts +0 -11
  348. package/dist/src/core/context/index.d.ts.map +0 -1
  349. package/dist/src/core/context/index.js +0 -14
  350. package/dist/src/core/context/index.js.map +0 -1
  351. package/dist/src/core/context/model-aware-compaction.d.ts +0 -101
  352. package/dist/src/core/context/model-aware-compaction.d.ts.map +0 -1
  353. package/dist/src/core/context/model-aware-compaction.js +0 -616
  354. package/dist/src/core/context/model-aware-compaction.js.map +0 -1
  355. package/dist/src/core/context/refactored-frame-manager.d.ts +0 -99
  356. package/dist/src/core/context/refactored-frame-manager.d.ts.map +0 -1
  357. package/dist/src/core/context/refactored-frame-manager.js +0 -340
  358. package/dist/src/core/context/refactored-frame-manager.js.map +0 -1
  359. package/dist/src/core/database/batch-operations.d.ts +0 -118
  360. package/dist/src/core/database/batch-operations.d.ts.map +0 -1
  361. package/dist/src/core/database/batch-operations.js +0 -339
  362. package/dist/src/core/database/batch-operations.js.map +0 -1
  363. package/dist/src/core/database/connection-pool.d.ts +0 -79
  364. package/dist/src/core/database/connection-pool.d.ts.map +0 -1
  365. package/dist/src/core/database/connection-pool.js +0 -236
  366. package/dist/src/core/database/connection-pool.js.map +0 -1
  367. package/dist/src/core/database/query-cache.d.ts +0 -135
  368. package/dist/src/core/database/query-cache.d.ts.map +0 -1
  369. package/dist/src/core/database/query-cache.js +0 -294
  370. package/dist/src/core/database/query-cache.js.map +0 -1
  371. package/dist/src/core/digest/enhanced-hybrid-digest.d.ts +0 -125
  372. package/dist/src/core/digest/enhanced-hybrid-digest.d.ts.map +0 -1
  373. package/dist/src/core/digest/enhanced-hybrid-digest.js +0 -282
  374. package/dist/src/core/digest/enhanced-hybrid-digest.js.map +0 -1
  375. package/dist/src/core/digest/frame-digest-integration.d.ts +0 -67
  376. package/dist/src/core/digest/frame-digest-integration.d.ts.map +0 -1
  377. package/dist/src/core/digest/frame-digest-integration.js +0 -198
  378. package/dist/src/core/digest/frame-digest-integration.js.map +0 -1
  379. package/dist/src/core/digest/hybrid-digest-generator.d.ts +0 -76
  380. package/dist/src/core/digest/hybrid-digest-generator.d.ts.map +0 -1
  381. package/dist/src/core/digest/hybrid-digest-generator.js +0 -629
  382. package/dist/src/core/digest/hybrid-digest-generator.js.map +0 -1
  383. package/dist/src/core/digest/index.d.ts +0 -9
  384. package/dist/src/core/digest/index.d.ts.map +0 -1
  385. package/dist/src/core/digest/index.js +0 -9
  386. package/dist/src/core/digest/index.js.map +0 -1
  387. package/dist/src/core/digest/types.d.ts +0 -154
  388. package/dist/src/core/digest/types.d.ts.map +0 -1
  389. package/dist/src/core/digest/types.js +0 -18
  390. package/dist/src/core/digest/types.js.map +0 -1
  391. package/dist/src/core/errors/index.d.ts +0 -143
  392. package/dist/src/core/errors/index.d.ts.map +0 -1
  393. package/dist/src/core/errors/index.js +0 -282
  394. package/dist/src/core/errors/index.js.map +0 -1
  395. package/dist/src/core/errors/recovery.d.ts +0 -86
  396. package/dist/src/core/errors/recovery.d.ts.map +0 -1
  397. package/dist/src/core/errors/recovery.js +0 -274
  398. package/dist/src/core/errors/recovery.js.map +0 -1
  399. package/dist/src/core/merge/conflict-detector.d.ts +0 -122
  400. package/dist/src/core/merge/conflict-detector.d.ts.map +0 -1
  401. package/dist/src/core/merge/conflict-detector.js +0 -468
  402. package/dist/src/core/merge/conflict-detector.js.map +0 -1
  403. package/dist/src/core/merge/index.d.ts +0 -9
  404. package/dist/src/core/merge/index.d.ts.map +0 -1
  405. package/dist/src/core/merge/index.js +0 -9
  406. package/dist/src/core/merge/index.js.map +0 -1
  407. package/dist/src/core/merge/resolution-engine.d.ts +0 -120
  408. package/dist/src/core/merge/resolution-engine.d.ts.map +0 -1
  409. package/dist/src/core/merge/resolution-engine.js +0 -573
  410. package/dist/src/core/merge/resolution-engine.js.map +0 -1
  411. package/dist/src/core/merge/stack-diff.d.ts +0 -97
  412. package/dist/src/core/merge/stack-diff.d.ts.map +0 -1
  413. package/dist/src/core/merge/stack-diff.js +0 -516
  414. package/dist/src/core/merge/stack-diff.js.map +0 -1
  415. package/dist/src/core/merge/types.d.ts +0 -110
  416. package/dist/src/core/merge/types.d.ts.map +0 -1
  417. package/dist/src/core/merge/types.js +0 -6
  418. package/dist/src/core/merge/types.js.map +0 -1
  419. package/dist/src/core/monitoring/error-handler.d.ts +0 -46
  420. package/dist/src/core/monitoring/error-handler.d.ts.map +0 -1
  421. package/dist/src/core/monitoring/error-handler.js +0 -212
  422. package/dist/src/core/monitoring/error-handler.js.map +0 -1
  423. package/dist/src/core/monitoring/logger.d.ts +0 -24
  424. package/dist/src/core/monitoring/logger.d.ts.map +0 -1
  425. package/dist/src/core/monitoring/logger.js +0 -126
  426. package/dist/src/core/monitoring/logger.js.map +0 -1
  427. package/dist/src/core/monitoring/metrics.d.ts +0 -10
  428. package/dist/src/core/monitoring/metrics.d.ts.map +0 -1
  429. package/dist/src/core/monitoring/metrics.js +0 -152
  430. package/dist/src/core/monitoring/metrics.js.map +0 -1
  431. package/dist/src/core/monitoring/progress-tracker.d.ts +0 -95
  432. package/dist/src/core/monitoring/progress-tracker.d.ts.map +0 -1
  433. package/dist/src/core/monitoring/progress-tracker.js +0 -178
  434. package/dist/src/core/monitoring/progress-tracker.js.map +0 -1
  435. package/dist/src/core/performance/context-cache.d.ts +0 -109
  436. package/dist/src/core/performance/context-cache.d.ts.map +0 -1
  437. package/dist/src/core/performance/context-cache.js +0 -280
  438. package/dist/src/core/performance/context-cache.js.map +0 -1
  439. package/dist/src/core/performance/index.d.ts +0 -3
  440. package/dist/src/core/performance/index.d.ts.map +0 -1
  441. package/dist/src/core/performance/index.js +0 -3
  442. package/dist/src/core/performance/index.js.map +0 -1
  443. package/dist/src/core/performance/lazy-context-loader.d.ts +0 -93
  444. package/dist/src/core/performance/lazy-context-loader.d.ts.map +0 -1
  445. package/dist/src/core/performance/lazy-context-loader.js +0 -332
  446. package/dist/src/core/performance/lazy-context-loader.js.map +0 -1
  447. package/dist/src/core/performance/monitor.d.ts +0 -48
  448. package/dist/src/core/performance/monitor.d.ts.map +0 -1
  449. package/dist/src/core/performance/monitor.js +0 -226
  450. package/dist/src/core/performance/monitor.js.map +0 -1
  451. package/dist/src/core/performance/optimized-frame-context.d.ts +0 -74
  452. package/dist/src/core/performance/optimized-frame-context.d.ts.map +0 -1
  453. package/dist/src/core/performance/optimized-frame-context.js +0 -330
  454. package/dist/src/core/performance/optimized-frame-context.js.map +0 -1
  455. package/dist/src/core/performance/performance-benchmark.d.ts +0 -50
  456. package/dist/src/core/performance/performance-benchmark.d.ts.map +0 -1
  457. package/dist/src/core/performance/performance-benchmark.js +0 -290
  458. package/dist/src/core/performance/performance-benchmark.js.map +0 -1
  459. package/dist/src/core/performance/performance-profiler.d.ts +0 -151
  460. package/dist/src/core/performance/performance-profiler.d.ts.map +0 -1
  461. package/dist/src/core/performance/performance-profiler.js +0 -346
  462. package/dist/src/core/performance/performance-profiler.js.map +0 -1
  463. package/dist/src/core/performance/streaming-jsonl-parser.d.ts +0 -41
  464. package/dist/src/core/performance/streaming-jsonl-parser.d.ts.map +0 -1
  465. package/dist/src/core/performance/streaming-jsonl-parser.js +0 -193
  466. package/dist/src/core/performance/streaming-jsonl-parser.js.map +0 -1
  467. package/dist/src/core/persistence/postgres-adapter.d.ts +0 -31
  468. package/dist/src/core/persistence/postgres-adapter.d.ts.map +0 -1
  469. package/dist/src/core/persistence/postgres-adapter.js +0 -330
  470. package/dist/src/core/persistence/postgres-adapter.js.map +0 -1
  471. package/dist/src/core/projects/project-manager.d.ts +0 -130
  472. package/dist/src/core/projects/project-manager.d.ts.map +0 -1
  473. package/dist/src/core/projects/project-manager.js +0 -709
  474. package/dist/src/core/projects/project-manager.js.map +0 -1
  475. package/dist/src/core/query/query-parser.d.ts +0 -109
  476. package/dist/src/core/query/query-parser.d.ts.map +0 -1
  477. package/dist/src/core/query/query-parser.js +0 -415
  478. package/dist/src/core/query/query-parser.js.map +0 -1
  479. package/dist/src/core/query/query-templates.d.ts +0 -44
  480. package/dist/src/core/query/query-templates.d.ts.map +0 -1
  481. package/dist/src/core/query/query-templates.js +0 -326
  482. package/dist/src/core/query/query-templates.js.map +0 -1
  483. package/dist/src/core/retrieval/index.d.ts +0 -8
  484. package/dist/src/core/retrieval/index.d.ts.map +0 -1
  485. package/dist/src/core/retrieval/index.js +0 -8
  486. package/dist/src/core/retrieval/index.js.map +0 -1
  487. package/dist/src/core/retrieval/llm-context-retrieval.d.ts +0 -73
  488. package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +0 -1
  489. package/dist/src/core/retrieval/llm-context-retrieval.js +0 -597
  490. package/dist/src/core/retrieval/llm-context-retrieval.js.map +0 -1
  491. package/dist/src/core/retrieval/summary-generator.d.ts +0 -63
  492. package/dist/src/core/retrieval/summary-generator.d.ts.map +0 -1
  493. package/dist/src/core/retrieval/summary-generator.js +0 -622
  494. package/dist/src/core/retrieval/summary-generator.js.map +0 -1
  495. package/dist/src/core/retrieval/types.d.ts +0 -257
  496. package/dist/src/core/retrieval/types.d.ts.map +0 -1
  497. package/dist/src/core/retrieval/types.js +0 -18
  498. package/dist/src/core/retrieval/types.js.map +0 -1
  499. package/dist/src/core/session/index.d.ts +0 -2
  500. package/dist/src/core/session/index.d.ts.map +0 -1
  501. package/dist/src/core/session/index.js +0 -2
  502. package/dist/src/core/session/index.js.map +0 -1
  503. package/dist/src/core/session/session-manager.d.ts +0 -69
  504. package/dist/src/core/session/session-manager.d.ts.map +0 -1
  505. package/dist/src/core/session/session-manager.js +0 -311
  506. package/dist/src/core/session/session-manager.js.map +0 -1
  507. package/dist/src/core/trace/cli-trace-wrapper.d.ts +0 -23
  508. package/dist/src/core/trace/cli-trace-wrapper.d.ts.map +0 -1
  509. package/dist/src/core/trace/cli-trace-wrapper.js +0 -141
  510. package/dist/src/core/trace/cli-trace-wrapper.js.map +0 -1
  511. package/dist/src/core/trace/db-trace-wrapper.d.ts +0 -36
  512. package/dist/src/core/trace/db-trace-wrapper.d.ts.map +0 -1
  513. package/dist/src/core/trace/db-trace-wrapper.js +0 -252
  514. package/dist/src/core/trace/db-trace-wrapper.js.map +0 -1
  515. package/dist/src/core/trace/debug-trace.d.ts +0 -84
  516. package/dist/src/core/trace/debug-trace.d.ts.map +0 -1
  517. package/dist/src/core/trace/debug-trace.js +0 -402
  518. package/dist/src/core/trace/debug-trace.js.map +0 -1
  519. package/dist/src/core/trace/error-test.d.ts +0 -6
  520. package/dist/src/core/trace/error-test.d.ts.map +0 -1
  521. package/dist/src/core/trace/error-test.js +0 -128
  522. package/dist/src/core/trace/error-test.js.map +0 -1
  523. package/dist/src/core/trace/index.d.ts +0 -25
  524. package/dist/src/core/trace/index.d.ts.map +0 -1
  525. package/dist/src/core/trace/index.js +0 -121
  526. package/dist/src/core/trace/index.js.map +0 -1
  527. package/dist/src/core/trace/linear-api-wrapper.d.ts +0 -17
  528. package/dist/src/core/trace/linear-api-wrapper.d.ts.map +0 -1
  529. package/dist/src/core/trace/linear-api-wrapper.js +0 -205
  530. package/dist/src/core/trace/linear-api-wrapper.js.map +0 -1
  531. package/dist/src/core/trace/performance-test.d.ts +0 -6
  532. package/dist/src/core/trace/performance-test.d.ts.map +0 -1
  533. package/dist/src/core/trace/performance-test.js +0 -111
  534. package/dist/src/core/trace/performance-test.js.map +0 -1
  535. package/dist/src/core/trace/trace-demo.d.ts +0 -8
  536. package/dist/src/core/trace/trace-demo.d.ts.map +0 -1
  537. package/dist/src/core/trace/trace-demo.js +0 -154
  538. package/dist/src/core/trace/trace-demo.js.map +0 -1
  539. package/dist/src/core/trace/trace-detector.d.ts +0 -108
  540. package/dist/src/core/trace/trace-detector.d.ts.map +0 -1
  541. package/dist/src/core/trace/trace-detector.demo.d.ts +0 -5
  542. package/dist/src/core/trace/trace-detector.demo.d.ts.map +0 -1
  543. package/dist/src/core/trace/trace-detector.demo.js +0 -145
  544. package/dist/src/core/trace/trace-detector.demo.js.map +0 -1
  545. package/dist/src/core/trace/trace-detector.js +0 -425
  546. package/dist/src/core/trace/trace-detector.js.map +0 -1
  547. package/dist/src/core/trace/trace-store.d.ts +0 -60
  548. package/dist/src/core/trace/trace-store.d.ts.map +0 -1
  549. package/dist/src/core/trace/trace-store.js +0 -323
  550. package/dist/src/core/trace/trace-store.js.map +0 -1
  551. package/dist/src/core/trace/types.d.ts +0 -81
  552. package/dist/src/core/trace/types.d.ts.map +0 -1
  553. package/dist/src/core/trace/types.js +0 -70
  554. package/dist/src/core/trace/types.js.map +0 -1
  555. package/dist/src/core/types.d.ts +0 -35
  556. package/dist/src/core/types.d.ts.map +0 -1
  557. package/dist/src/core/types.js +0 -2
  558. package/dist/src/core/types.js.map +0 -1
  559. package/dist/src/core/utils/update-checker.d.ts +0 -38
  560. package/dist/src/core/utils/update-checker.d.ts.map +0 -1
  561. package/dist/src/core/utils/update-checker.js +0 -213
  562. package/dist/src/core/utils/update-checker.js.map +0 -1
  563. package/dist/src/core/worktree/worktree-manager.d.ts +0 -110
  564. package/dist/src/core/worktree/worktree-manager.d.ts.map +0 -1
  565. package/dist/src/core/worktree/worktree-manager.js +0 -456
  566. package/dist/src/core/worktree/worktree-manager.js.map +0 -1
  567. package/dist/src/features/analytics/api/analytics-api.d.ts +0 -24
  568. package/dist/src/features/analytics/api/analytics-api.d.ts.map +0 -1
  569. package/dist/src/features/analytics/api/analytics-api.js +0 -289
  570. package/dist/src/features/analytics/api/analytics-api.js.map +0 -1
  571. package/dist/src/features/analytics/core/analytics-service.d.ts +0 -29
  572. package/dist/src/features/analytics/core/analytics-service.d.ts.map +0 -1
  573. package/dist/src/features/analytics/core/analytics-service.js +0 -275
  574. package/dist/src/features/analytics/core/analytics-service.js.map +0 -1
  575. package/dist/src/features/analytics/index.d.ts +0 -12
  576. package/dist/src/features/analytics/index.d.ts.map +0 -1
  577. package/dist/src/features/analytics/index.js +0 -11
  578. package/dist/src/features/analytics/index.js.map +0 -1
  579. package/dist/src/features/analytics/queries/metrics-queries.d.ts +0 -11
  580. package/dist/src/features/analytics/queries/metrics-queries.d.ts.map +0 -1
  581. package/dist/src/features/analytics/queries/metrics-queries.js +0 -240
  582. package/dist/src/features/analytics/queries/metrics-queries.js.map +0 -1
  583. package/dist/src/features/analytics/types/metrics.d.ts +0 -60
  584. package/dist/src/features/analytics/types/metrics.d.ts.map +0 -1
  585. package/dist/src/features/analytics/types/metrics.js +0 -2
  586. package/dist/src/features/analytics/types/metrics.js.map +0 -1
  587. package/dist/src/features/browser/browser-mcp.d.ts +0 -94
  588. package/dist/src/features/browser/browser-mcp.d.ts.map +0 -1
  589. package/dist/src/features/browser/browser-mcp.js +0 -459
  590. package/dist/src/features/browser/browser-mcp.js.map +0 -1
  591. package/dist/src/features/tasks/pebbles-task-store.d.ts +0 -128
  592. package/dist/src/features/tasks/pebbles-task-store.d.ts.map +0 -1
  593. package/dist/src/features/tasks/pebbles-task-store.js +0 -572
  594. package/dist/src/features/tasks/pebbles-task-store.js.map +0 -1
  595. package/dist/src/features/tasks/task-aware-context.d.ts +0 -103
  596. package/dist/src/features/tasks/task-aware-context.d.ts.map +0 -1
  597. package/dist/src/features/tasks/task-aware-context.js +0 -412
  598. package/dist/src/features/tasks/task-aware-context.js.map +0 -1
  599. package/dist/src/index.d.ts +0 -21
  600. package/dist/src/index.d.ts.map +0 -1
  601. package/dist/src/index.js +0 -9
  602. package/dist/src/index.js.map +0 -1
  603. package/dist/src/integrations/linear/auth.d.ts +0 -99
  604. package/dist/src/integrations/linear/auth.d.ts.map +0 -1
  605. package/dist/src/integrations/linear/auth.js +0 -319
  606. package/dist/src/integrations/linear/auth.js.map +0 -1
  607. package/dist/src/integrations/linear/auto-sync.d.ts +0 -77
  608. package/dist/src/integrations/linear/auto-sync.d.ts.map +0 -1
  609. package/dist/src/integrations/linear/auto-sync.js +0 -268
  610. package/dist/src/integrations/linear/auto-sync.js.map +0 -1
  611. package/dist/src/integrations/linear/client.d.ts +0 -127
  612. package/dist/src/integrations/linear/client.d.ts.map +0 -1
  613. package/dist/src/integrations/linear/client.js +0 -446
  614. package/dist/src/integrations/linear/client.js.map +0 -1
  615. package/dist/src/integrations/linear/config.d.ts +0 -51
  616. package/dist/src/integrations/linear/config.d.ts.map +0 -1
  617. package/dist/src/integrations/linear/config.js +0 -103
  618. package/dist/src/integrations/linear/config.js.map +0 -1
  619. package/dist/src/integrations/linear/sync-manager.d.ts +0 -78
  620. package/dist/src/integrations/linear/sync-manager.d.ts.map +0 -1
  621. package/dist/src/integrations/linear/sync-manager.js +0 -235
  622. package/dist/src/integrations/linear/sync-manager.js.map +0 -1
  623. package/dist/src/integrations/linear/sync-service.d.ts +0 -46
  624. package/dist/src/integrations/linear/sync-service.d.ts.map +0 -1
  625. package/dist/src/integrations/linear/sync-service.js +0 -217
  626. package/dist/src/integrations/linear/sync-service.js.map +0 -1
  627. package/dist/src/integrations/linear/sync.d.ts +0 -125
  628. package/dist/src/integrations/linear/sync.d.ts.map +0 -1
  629. package/dist/src/integrations/linear/sync.js +0 -563
  630. package/dist/src/integrations/linear/sync.js.map +0 -1
  631. package/dist/src/integrations/linear/types.d.ts +0 -90
  632. package/dist/src/integrations/linear/types.d.ts.map +0 -1
  633. package/dist/src/integrations/linear/types.js +0 -2
  634. package/dist/src/integrations/linear/types.js.map +0 -1
  635. package/dist/src/integrations/linear/webhook-server.d.ts +0 -32
  636. package/dist/src/integrations/linear/webhook-server.d.ts.map +0 -1
  637. package/dist/src/integrations/linear/webhook-server.js +0 -190
  638. package/dist/src/integrations/linear/webhook-server.js.map +0 -1
  639. package/dist/src/integrations/linear/webhook.d.ts +0 -108
  640. package/dist/src/integrations/linear/webhook.d.ts.map +0 -1
  641. package/dist/src/integrations/linear/webhook.js +0 -291
  642. package/dist/src/integrations/linear/webhook.js.map +0 -1
  643. package/dist/src/integrations/mcp/handlers/context-handlers.d.ts +0 -39
  644. package/dist/src/integrations/mcp/handlers/context-handlers.d.ts.map +0 -1
  645. package/dist/src/integrations/mcp/handlers/context-handlers.js +0 -266
  646. package/dist/src/integrations/mcp/handlers/context-handlers.js.map +0 -1
  647. package/dist/src/integrations/mcp/handlers/index.d.ts +0 -37
  648. package/dist/src/integrations/mcp/handlers/index.d.ts.map +0 -1
  649. package/dist/src/integrations/mcp/handlers/index.js +0 -134
  650. package/dist/src/integrations/mcp/handlers/index.js.map +0 -1
  651. package/dist/src/integrations/mcp/handlers/linear-handlers.d.ts +0 -33
  652. package/dist/src/integrations/mcp/handlers/linear-handlers.d.ts.map +0 -1
  653. package/dist/src/integrations/mcp/handlers/linear-handlers.js +0 -251
  654. package/dist/src/integrations/mcp/handlers/linear-handlers.js.map +0 -1
  655. package/dist/src/integrations/mcp/handlers/task-handlers.d.ts +0 -42
  656. package/dist/src/integrations/mcp/handlers/task-handlers.d.ts.map +0 -1
  657. package/dist/src/integrations/mcp/handlers/task-handlers.js +0 -238
  658. package/dist/src/integrations/mcp/handlers/task-handlers.js.map +0 -1
  659. package/dist/src/integrations/mcp/handlers/trace-handlers.d.ts +0 -41
  660. package/dist/src/integrations/mcp/handlers/trace-handlers.d.ts.map +0 -1
  661. package/dist/src/integrations/mcp/handlers/trace-handlers.js +0 -298
  662. package/dist/src/integrations/mcp/handlers/trace-handlers.js.map +0 -1
  663. package/dist/src/integrations/mcp/index.d.ts +0 -13
  664. package/dist/src/integrations/mcp/index.d.ts.map +0 -1
  665. package/dist/src/integrations/mcp/index.js +0 -17
  666. package/dist/src/integrations/mcp/index.js.map +0 -1
  667. package/dist/src/integrations/mcp/refactored-server.d.ts +0 -76
  668. package/dist/src/integrations/mcp/refactored-server.d.ts.map +0 -1
  669. package/dist/src/integrations/mcp/refactored-server.js +0 -351
  670. package/dist/src/integrations/mcp/refactored-server.js.map +0 -1
  671. package/dist/src/integrations/mcp/server.d.ts +0 -54
  672. package/dist/src/integrations/mcp/server.d.ts.map +0 -1
  673. package/dist/src/integrations/mcp/server.js +0 -1616
  674. package/dist/src/integrations/mcp/server.js.map +0 -1
  675. package/dist/src/integrations/mcp/tool-definitions.d.ts +0 -44
  676. package/dist/src/integrations/mcp/tool-definitions.d.ts.map +0 -1
  677. package/dist/src/integrations/mcp/tool-definitions.js +0 -563
  678. package/dist/src/integrations/mcp/tool-definitions.js.map +0 -1
  679. package/dist/src/integrations/mcp/trace-test.d.ts +0 -5
  680. package/dist/src/integrations/mcp/trace-test.d.ts.map +0 -1
  681. package/dist/src/integrations/mcp/trace-test.js +0 -54
  682. package/dist/src/integrations/mcp/trace-test.js.map +0 -1
  683. package/dist/src/integrations/pg-aiguide/embedding-provider.d.ts +0 -48
  684. package/dist/src/integrations/pg-aiguide/embedding-provider.d.ts.map +0 -1
  685. package/dist/src/integrations/pg-aiguide/embedding-provider.js +0 -190
  686. package/dist/src/integrations/pg-aiguide/embedding-provider.js.map +0 -1
  687. package/dist/src/integrations/pg-aiguide/semantic-search.d.ts +0 -34
  688. package/dist/src/integrations/pg-aiguide/semantic-search.d.ts.map +0 -1
  689. package/dist/src/integrations/pg-aiguide/semantic-search.js +0 -176
  690. package/dist/src/integrations/pg-aiguide/semantic-search.js.map +0 -1
  691. package/dist/src/integrations/pg-aiguide/timescale-analytics.d.ts +0 -44
  692. package/dist/src/integrations/pg-aiguide/timescale-analytics.d.ts.map +0 -1
  693. package/dist/src/integrations/pg-aiguide/timescale-analytics.js +0 -215
  694. package/dist/src/integrations/pg-aiguide/timescale-analytics.js.map +0 -1
  695. package/dist/src/mcp/stackmemory-mcp-server.d.ts +0 -9
  696. package/dist/src/mcp/stackmemory-mcp-server.d.ts.map +0 -1
  697. package/dist/src/mcp/stackmemory-mcp-server.js +0 -519
  698. package/dist/src/mcp/stackmemory-mcp-server.js.map +0 -1
  699. package/dist/src/middleware/exponential-rate-limiter.d.ts +0 -78
  700. package/dist/src/middleware/exponential-rate-limiter.d.ts.map +0 -1
  701. package/dist/src/middleware/exponential-rate-limiter.js +0 -293
  702. package/dist/src/middleware/exponential-rate-limiter.js.map +0 -1
  703. package/dist/src/models/user.model.d.ts +0 -62
  704. package/dist/src/models/user.model.d.ts.map +0 -1
  705. package/dist/src/models/user.model.js +0 -311
  706. package/dist/src/models/user.model.js.map +0 -1
  707. package/dist/src/servers/production/auth-middleware.d.ts +0 -76
  708. package/dist/src/servers/production/auth-middleware.d.ts.map +0 -1
  709. package/dist/src/servers/production/auth-middleware.js +0 -558
  710. package/dist/src/servers/production/auth-middleware.js.map +0 -1
  711. package/dist/src/servers/railway/index.d.ts +0 -7
  712. package/dist/src/servers/railway/index.d.ts.map +0 -1
  713. package/dist/src/servers/railway/index.js +0 -401
  714. package/dist/src/servers/railway/index.js.map +0 -1
  715. package/dist/src/services/config-service.d.ts +0 -44
  716. package/dist/src/services/config-service.d.ts.map +0 -1
  717. package/dist/src/services/config-service.js +0 -61
  718. package/dist/src/services/config-service.js.map +0 -1
  719. package/dist/src/services/context-service.d.ts +0 -17
  720. package/dist/src/services/context-service.d.ts.map +0 -1
  721. package/dist/src/services/context-service.js +0 -173
  722. package/dist/src/services/context-service.js.map +0 -1
  723. package/dist/src/types/task.d.ts +0 -27
  724. package/dist/src/types/task.d.ts.map +0 -1
  725. package/dist/src/types/task.js +0 -2
  726. package/dist/src/types/task.js.map +0 -1
  727. package/dist/src/utils/logger.d.ts +0 -13
  728. package/dist/src/utils/logger.d.ts.map +0 -1
  729. package/dist/src/utils/logger.js +0 -52
  730. package/dist/src/utils/logger.js.map +0 -1
  731. package/dist/src/validation/schemas.d.ts +0 -633
  732. package/dist/src/validation/schemas.d.ts.map +0 -1
  733. package/dist/src/validation/schemas.js +0 -347
  734. package/dist/src/validation/schemas.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/core/retrieval/graph-retrieval.ts"],
4
+ "sourcesContent": ["/**\n * Graph-Based Retrieval with Explicit Semantic Navigation\n * Models documents as nodes with explicit relationships\n * Query traverses edges instead of embedding space\n *\n * The \"nuclear option\" for next-gen RAG\n */\n\nimport Database from 'better-sqlite3';\nimport { logger } from '../monitoring/logger.js';\nimport { Trace, CompressedTrace } from '../trace/types.js';\nimport { Frame, Anchor } from '../context/frame-manager.js';\nimport crypto from 'crypto';\n\nexport type NodeType =\n | 'document'\n | 'concept'\n | 'entity'\n | 'event'\n | 'decision'\n | 'constraint'\n | 'topic';\n\nexport type EdgeType =\n | 'citation' // Document cites another\n | 'topic_overlap' // Shares topics\n | 'temporal' // Time sequence\n | 'causal' // Causality chain\n | 'semantic' // Semantic similarity\n | 'structural' // Code structure relation\n | 'dependency' // Depends on\n | 'evolution' // Evolves from\n | 'contradiction' // Contradicts\n | 'implementation'; // Implements concept\n\nexport interface GraphNode {\n id: string;\n type: NodeType;\n label: string;\n content?: string;\n importance: number; // 0-1, affects node size\n metadata: {\n created: number;\n modified: number;\n accessed: number;\n accessCount: number;\n traceIds?: string[];\n frameIds?: string[];\n tags?: string[];\n embeddings?: number[];\n };\n}\n\nexport interface GraphEdge {\n id: string;\n source: string;\n target: string;\n type: EdgeType;\n weight: number; // 0-1, relationship strength\n metadata: {\n created: number;\n evidence?: string[];\n bidirectional?: boolean;\n };\n}\n\nexport interface TraversalPath {\n nodes: GraphNode[];\n edges: GraphEdge[];\n score: number;\n reasoning: string;\n}\n\nexport interface GraphQuery {\n startNodes?: string[]; // Start from specific nodes\n targetNodes?: string[]; // Find paths to targets\n edgeTypes?: EdgeType[]; // Allowed edge types\n maxHops?: number; // Max traversal depth\n minWeight?: number; // Min edge weight\n nodeTypes?: NodeType[]; // Filter node types\n}\n\nexport interface GraphConfig {\n maxNodes: number;\n maxEdges: number;\n minEdgeWeight: number;\n importanceThreshold: number;\n traversalTimeout: number;\n enableBidirectional: boolean;\n}\n\nexport const DEFAULT_GRAPH_CONFIG: GraphConfig = {\n maxNodes: 10000,\n maxEdges: 50000,\n minEdgeWeight: 0.1,\n importanceThreshold: 0.3,\n traversalTimeout: 5000,\n enableBidirectional: true,\n};\n\n/**\n * Graph-based retrieval system with explicit semantic relationships\n */\nexport class GraphRetrieval {\n private db: Database.Database;\n private config: GraphConfig;\n private nodeIndex: Map<string, GraphNode> = new Map();\n private adjacencyList: Map<string, GraphEdge[]> = new Map();\n private reverseAdjacencyList: Map<string, GraphEdge[]> = new Map();\n\n constructor(db: Database.Database, config: Partial<GraphConfig> = {}) {\n this.db = db;\n this.config = { ...DEFAULT_GRAPH_CONFIG, ...config };\n this.initializeSchema();\n }\n\n private initializeSchema(): void {\n // Nodes table\n this.db.exec(`\n CREATE TABLE IF NOT EXISTS graph_nodes (\n id TEXT PRIMARY KEY,\n type TEXT NOT NULL,\n label TEXT NOT NULL,\n content TEXT,\n importance REAL DEFAULT 0.5,\n created INTEGER DEFAULT (unixepoch() * 1000),\n modified INTEGER DEFAULT (unixepoch() * 1000),\n accessed INTEGER DEFAULT (unixepoch() * 1000),\n access_count INTEGER DEFAULT 0,\n trace_ids TEXT,\n frame_ids TEXT,\n tags TEXT,\n embeddings BLOB\n )\n `);\n\n // Edges table\n this.db.exec(`\n CREATE TABLE IF NOT EXISTS graph_edges (\n id TEXT PRIMARY KEY,\n source TEXT NOT NULL,\n target TEXT NOT NULL,\n type TEXT NOT NULL,\n weight REAL DEFAULT 0.5,\n created INTEGER DEFAULT (unixepoch() * 1000),\n evidence TEXT,\n bidirectional BOOLEAN DEFAULT 0,\n FOREIGN KEY (source) REFERENCES graph_nodes(id) ON DELETE CASCADE,\n FOREIGN KEY (target) REFERENCES graph_nodes(id) ON DELETE CASCADE,\n UNIQUE(source, target, type)\n )\n `);\n\n // Indexes for efficient traversal\n this.db.exec(`\n CREATE INDEX IF NOT EXISTS idx_graph_nodes_type ON graph_nodes(type);\n CREATE INDEX IF NOT EXISTS idx_graph_nodes_importance ON graph_nodes(importance DESC);\n CREATE INDEX IF NOT EXISTS idx_graph_edges_source ON graph_edges(source);\n CREATE INDEX IF NOT EXISTS idx_graph_edges_target ON graph_edges(target);\n CREATE INDEX IF NOT EXISTS idx_graph_edges_type ON graph_edges(type);\n CREATE INDEX IF NOT EXISTS idx_graph_edges_weight ON graph_edges(weight DESC);\n `);\n }\n\n /**\n * Build graph from traces and frames\n */\n async buildGraph(traces: Trace[], frames: Frame[]): Promise<void> {\n logger.info('Building semantic graph', {\n traceCount: traces.length,\n frameCount: frames.length,\n });\n\n // Create document nodes from traces\n for (const trace of traces) {\n await this.createDocumentNode(trace);\n }\n\n // Create concept nodes from frames\n for (const frame of frames) {\n await this.createConceptNode(frame);\n }\n\n // Establish edges based on relationships\n await this.establishTemporalEdges(traces);\n await this.establishCausalEdges(traces);\n await this.establishSemanticEdges(traces);\n await this.establishTopicEdges(traces);\n\n // Load graph into memory for fast traversal\n await this.loadGraphIntoMemory();\n\n logger.info('Graph built successfully', {\n nodes: this.nodeIndex.size,\n edges: this.adjacencyList.size,\n });\n }\n\n /**\n * Create document node from trace\n */\n private async createDocumentNode(trace: Trace): Promise<GraphNode> {\n const node: GraphNode = {\n id: `doc_${trace.id}`,\n type: 'document',\n label: trace.summary.substring(0, 100),\n content: JSON.stringify(trace),\n importance: trace.score,\n metadata: {\n created: trace.metadata.startTime,\n modified: trace.metadata.endTime,\n accessed: Date.now(),\n accessCount: 0,\n traceIds: [trace.id],\n tags: [trace.type, ...trace.metadata.filesModified.slice(0, 3)],\n },\n };\n\n await this.insertNode(node);\n return node;\n }\n\n /**\n * Create concept node from frame\n */\n private async createConceptNode(frame: Frame): Promise<GraphNode> {\n const node: GraphNode = {\n id: `concept_${frame.id}`,\n type: 'concept',\n label: frame.name,\n importance: frame.score,\n metadata: {\n created: frame.created_at,\n modified: frame.updated_at || frame.created_at,\n accessed: Date.now(),\n accessCount: 0,\n frameIds: [frame.id],\n tags: [frame.type],\n },\n };\n\n await this.insertNode(node);\n return node;\n }\n\n /**\n * Establish temporal edges between traces\n */\n private async establishTemporalEdges(traces: Trace[]): Promise<void> {\n // Sort by time\n const sorted = [...traces].sort(\n (a, b) => a.metadata.startTime - b.metadata.startTime\n );\n\n for (let i = 0; i < sorted.length - 1; i++) {\n const current = sorted[i];\n const next = sorted[i + 1];\n\n // Only link if within reasonable time window (1 hour)\n const timeDiff = next.metadata.startTime - current.metadata.endTime;\n if (timeDiff < 60 * 60 * 1000) {\n const weight = 1 / (1 + timeDiff / (1000 * 60)); // Decay by minutes\n\n await this.createEdge({\n id: this.generateId('edge'),\n source: `doc_${current.id}`,\n target: `doc_${next.id}`,\n type: 'temporal',\n weight,\n metadata: {\n created: Date.now(),\n evidence: [`${timeDiff}ms gap`],\n },\n });\n }\n }\n }\n\n /**\n * Establish causal edges based on trace relationships\n */\n private async establishCausalEdges(traces: Trace[]): Promise<void> {\n for (const trace of traces) {\n if (trace.metadata.causalChain && trace.metadata.causalChain.length > 0) {\n for (const parentId of trace.metadata.causalChain) {\n const parentExists = traces.find((t) => t.id === parentId);\n if (parentExists) {\n await this.createEdge({\n id: this.generateId('edge'),\n source: `doc_${parentId}`,\n target: `doc_${trace.id}`,\n type: 'causal',\n weight: 0.9, // Strong causal relationship\n metadata: {\n created: Date.now(),\n evidence: ['explicit causal chain'],\n },\n });\n }\n }\n }\n }\n }\n\n /**\n * Establish semantic edges based on similarity\n */\n private async establishSemanticEdges(traces: Trace[]): Promise<void> {\n // Compare each pair (expensive but thorough)\n for (let i = 0; i < traces.length - 1; i++) {\n for (let j = i + 1; j < traces.length; j++) {\n const similarity = this.calculateSimilarity(traces[i], traces[j]);\n\n if (similarity > this.config.minEdgeWeight) {\n await this.createEdge({\n id: this.generateId('edge'),\n source: `doc_${traces[i].id}`,\n target: `doc_${traces[j].id}`,\n type: 'semantic',\n weight: similarity,\n metadata: {\n created: Date.now(),\n evidence: [`similarity: ${similarity.toFixed(2)}`],\n bidirectional: true,\n },\n });\n }\n }\n }\n }\n\n /**\n * Establish topic overlap edges\n */\n private async establishTopicEdges(traces: Trace[]): Promise<void> {\n // Group by topic\n const topicGroups: Map<string, Trace[]> = new Map();\n\n for (const trace of traces) {\n const topic = trace.type;\n if (!topicGroups.has(topic)) {\n topicGroups.set(topic, []);\n }\n topicGroups.get(topic)!.push(trace);\n }\n\n // Connect traces within same topic\n for (const [topic, group] of topicGroups) {\n if (group.length < 2) continue;\n\n // Create topic hub node\n const topicNode: GraphNode = {\n id: `topic_${topic}`,\n type: 'topic',\n label: topic,\n importance: 0.7,\n metadata: {\n created: Date.now(),\n modified: Date.now(),\n accessed: Date.now(),\n accessCount: 0,\n tags: [topic],\n },\n };\n\n await this.insertNode(topicNode);\n\n // Connect all traces to topic hub\n for (const trace of group) {\n await this.createEdge({\n id: this.generateId('edge'),\n source: `doc_${trace.id}`,\n target: topicNode.id,\n type: 'topic_overlap',\n weight: 0.6,\n metadata: {\n created: Date.now(),\n bidirectional: true,\n },\n });\n }\n }\n }\n\n /**\n * Traverse graph to find relevant paths\n */\n async traverse(query: string, config?: GraphQuery): Promise<TraversalPath[]> {\n const startTime = Date.now();\n const queryConfig = config || {};\n const maxHops = queryConfig.maxHops || 3;\n const paths: TraversalPath[] = [];\n\n // Find starting nodes based on query\n const startNodes = await this.findStartNodes(query, queryConfig);\n\n if (startNodes.length === 0) {\n logger.warn('No starting nodes found for query', { query });\n return [];\n }\n\n // Perform BFS/DFS traversal from each start node\n for (const startNode of startNodes) {\n const nodePaths = await this.traverseFromNode(\n startNode,\n query,\n maxHops,\n queryConfig\n );\n paths.push(...nodePaths);\n }\n\n // Sort by score and limit results\n paths.sort((a, b) => b.score - a.score);\n const topPaths = paths.slice(0, 10);\n\n logger.info('Graph traversal complete', {\n query: query.substring(0, 50),\n startNodes: startNodes.length,\n pathsFound: paths.length,\n timeMs: Date.now() - startTime,\n });\n\n return topPaths;\n }\n\n /**\n * Find starting nodes for traversal\n */\n private async findStartNodes(\n query: string,\n config: GraphQuery\n ): Promise<GraphNode[]> {\n if (config.startNodes) {\n return config.startNodes\n .map((id) => this.nodeIndex.get(id))\n .filter((n) => n !== undefined) as GraphNode[];\n }\n\n // Find nodes matching query\n const queryWords = query.toLowerCase().split(/\\s+/);\n const candidates: Array<{ node: GraphNode; score: number }> = [];\n\n for (const node of this.nodeIndex.values()) {\n if (config.nodeTypes && !config.nodeTypes.includes(node.type)) {\n continue;\n }\n\n const label = node.label.toLowerCase();\n const tags = (node.metadata.tags || []).join(' ').toLowerCase();\n\n let score = 0;\n for (const word of queryWords) {\n if (label.includes(word)) score += 2;\n if (tags.includes(word)) score += 1;\n }\n\n if (score > 0) {\n score *= node.importance; // Weight by importance\n candidates.push({ node, score });\n }\n }\n\n // Sort and return top candidates\n candidates.sort((a, b) => b.score - a.score);\n return candidates.slice(0, 5).map((c) => c.node);\n }\n\n /**\n * Traverse from a specific node\n */\n private async traverseFromNode(\n startNode: GraphNode,\n query: string,\n maxHops: number,\n config: GraphQuery\n ): Promise<TraversalPath[]> {\n const paths: TraversalPath[] = [];\n const visited = new Set<string>();\n\n // BFS queue: [node, path, depth]\n const queue: Array<{\n node: GraphNode;\n path: TraversalPath;\n depth: number;\n }> = [\n {\n node: startNode,\n path: {\n nodes: [startNode],\n edges: [],\n score: startNode.importance,\n reasoning: `Starting from ${startNode.type}: ${startNode.label}`,\n },\n depth: 0,\n },\n ];\n\n while (queue.length > 0) {\n const current = queue.shift()!;\n\n if (current.depth >= maxHops) {\n paths.push(current.path);\n continue;\n }\n\n if (visited.has(current.node.id)) {\n continue;\n }\n visited.add(current.node.id);\n\n // Get outgoing edges\n const edges = this.adjacencyList.get(current.node.id) || [];\n\n for (const edge of edges) {\n // Filter by edge type if specified\n if (config.edgeTypes && !config.edgeTypes.includes(edge.type)) {\n continue;\n }\n\n // Filter by minimum weight\n if (config.minWeight && edge.weight < config.minWeight) {\n continue;\n }\n\n const targetNode = this.nodeIndex.get(edge.target);\n if (!targetNode) continue;\n\n // Calculate path score\n const pathScore = this.calculatePathScore(\n current.path,\n edge,\n targetNode,\n query\n );\n\n // Create new path\n const newPath: TraversalPath = {\n nodes: [...current.path.nodes, targetNode],\n edges: [...current.path.edges, edge],\n score: pathScore,\n reasoning: `${current.path.reasoning} \u2192 ${edge.type} \u2192 ${targetNode.label}`,\n };\n\n queue.push({\n node: targetNode,\n path: newPath,\n depth: current.depth + 1,\n });\n }\n }\n\n return paths;\n }\n\n /**\n * Calculate path score\n */\n private calculatePathScore(\n currentPath: TraversalPath,\n edge: GraphEdge,\n targetNode: GraphNode,\n query: string\n ): number {\n // Base score from current path\n let score = currentPath.score;\n\n // Edge weight contribution\n score *= edge.weight;\n\n // Target node importance\n score *= targetNode.importance;\n\n // Query relevance\n const queryWords = query.toLowerCase().split(/\\s+/);\n const targetLabel = targetNode.label.toLowerCase();\n let relevance = 0;\n for (const word of queryWords) {\n if (targetLabel.includes(word)) relevance += 1;\n }\n score *= 1 + relevance * 0.2;\n\n // Path length penalty (prefer shorter paths)\n score *= Math.pow(0.9, currentPath.nodes.length);\n\n return score;\n }\n\n /**\n * Calculate similarity between traces\n */\n private calculateSimilarity(a: Trace, b: Trace): number {\n // Type similarity\n const typeSim = a.type === b.type ? 0.3 : 0;\n\n // File overlap\n const filesA = new Set(a.metadata.filesModified);\n const filesB = new Set(b.metadata.filesModified);\n const intersection = new Set([...filesA].filter((x) => filesB.has(x)));\n const union = new Set([...filesA, ...filesB]);\n const fileSim = union.size > 0 ? (intersection.size / union.size) * 0.3 : 0;\n\n // Tool overlap\n const toolsA = new Set(a.tools.map((t) => t.tool));\n const toolsB = new Set(b.tools.map((t) => t.tool));\n const toolIntersection = new Set([...toolsA].filter((x) => toolsB.has(x)));\n const toolUnion = new Set([...toolsA, ...toolsB]);\n const toolSim =\n toolUnion.size > 0 ? (toolIntersection.size / toolUnion.size) * 0.2 : 0;\n\n // Summary text similarity (simple word overlap)\n const wordsA = new Set(a.summary.toLowerCase().split(/\\s+/));\n const wordsB = new Set(b.summary.toLowerCase().split(/\\s+/));\n const wordIntersection = new Set([...wordsA].filter((x) => wordsB.has(x)));\n const wordUnion = new Set([...wordsA, ...wordsB]);\n const textSim =\n wordUnion.size > 0 ? (wordIntersection.size / wordUnion.size) * 0.2 : 0;\n\n return typeSim + fileSim + toolSim + textSim;\n }\n\n /**\n * Insert node into database\n */\n private async insertNode(node: GraphNode): Promise<void> {\n this.db\n .prepare(\n `\n INSERT OR REPLACE INTO graph_nodes (\n id, type, label, content, importance,\n created, modified, accessed, access_count,\n trace_ids, frame_ids, tags, embeddings\n ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)\n `\n )\n .run(\n node.id,\n node.type,\n node.label,\n node.content || null,\n node.importance,\n node.metadata.created,\n node.metadata.modified,\n node.metadata.accessed,\n node.metadata.accessCount,\n JSON.stringify(node.metadata.traceIds || []),\n JSON.stringify(node.metadata.frameIds || []),\n JSON.stringify(node.metadata.tags || []),\n node.metadata.embeddings ? Buffer.from(node.metadata.embeddings) : null\n );\n }\n\n /**\n * Create edge in database\n */\n private async createEdge(edge: GraphEdge): Promise<void> {\n try {\n this.db\n .prepare(\n `\n INSERT OR IGNORE INTO graph_edges (\n id, source, target, type, weight,\n created, evidence, bidirectional\n ) VALUES (?, ?, ?, ?, ?, ?, ?, ?)\n `\n )\n .run(\n edge.id,\n edge.source,\n edge.target,\n edge.type,\n edge.weight,\n edge.metadata.created,\n JSON.stringify(edge.metadata.evidence || []),\n edge.metadata.bidirectional ? 1 : 0\n );\n } catch (error) {\n // Ignore duplicate edges\n }\n }\n\n /**\n * Load graph into memory for fast traversal\n */\n private async loadGraphIntoMemory(): Promise<void> {\n // Load nodes\n const nodes = this.db.prepare('SELECT * FROM graph_nodes').all() as any[];\n\n for (const row of nodes) {\n const node: GraphNode = {\n id: row.id,\n type: row.type as NodeType,\n label: row.label,\n content: row.content,\n importance: row.importance,\n metadata: {\n created: row.created,\n modified: row.modified,\n accessed: row.accessed,\n accessCount: row.access_count,\n traceIds: JSON.parse(row.trace_ids || '[]'),\n frameIds: JSON.parse(row.frame_ids || '[]'),\n tags: JSON.parse(row.tags || '[]'),\n },\n };\n this.nodeIndex.set(node.id, node);\n }\n\n // Load edges\n const edges = this.db.prepare('SELECT * FROM graph_edges').all() as any[];\n\n for (const row of edges) {\n const edge: GraphEdge = {\n id: row.id,\n source: row.source,\n target: row.target,\n type: row.type as EdgeType,\n weight: row.weight,\n metadata: {\n created: row.created,\n evidence: JSON.parse(row.evidence || '[]'),\n bidirectional: row.bidirectional === 1,\n },\n };\n\n // Add to adjacency list\n if (!this.adjacencyList.has(edge.source)) {\n this.adjacencyList.set(edge.source, []);\n }\n this.adjacencyList.get(edge.source)!.push(edge);\n\n // Add to reverse adjacency list\n if (!this.reverseAdjacencyList.has(edge.target)) {\n this.reverseAdjacencyList.set(edge.target, []);\n }\n this.reverseAdjacencyList.get(edge.target)!.push(edge);\n\n // If bidirectional, add reverse edge\n if (edge.metadata.bidirectional) {\n const reverseEdge = {\n ...edge,\n source: edge.target,\n target: edge.source,\n };\n if (!this.adjacencyList.has(reverseEdge.source)) {\n this.adjacencyList.set(reverseEdge.source, []);\n }\n this.adjacencyList.get(reverseEdge.source)!.push(reverseEdge);\n }\n }\n }\n\n /**\n * Generate unique ID\n */\n private generateId(prefix: string): string {\n return `${prefix}_${crypto.randomBytes(8).toString('hex')}`;\n }\n\n /**\n * Get graph statistics\n */\n getStatistics(): any {\n const nodeStats = this.db\n .prepare(\n `\n SELECT \n type,\n COUNT(*) as count,\n AVG(importance) as avg_importance,\n MAX(importance) as max_importance\n FROM graph_nodes\n GROUP BY type\n `\n )\n .all();\n\n const edgeStats = this.db\n .prepare(\n `\n SELECT \n type,\n COUNT(*) as count,\n AVG(weight) as avg_weight,\n MAX(weight) as max_weight\n FROM graph_edges\n GROUP BY type\n `\n )\n .all();\n\n return {\n nodes: {\n total: this.nodeIndex.size,\n byType: nodeStats,\n inMemory: this.nodeIndex.size,\n },\n edges: {\n total: edgeStats.reduce((sum: number, e: any) => sum + e.count, 0),\n byType: edgeStats,\n adjacencyListSize: this.adjacencyList.size,\n },\n connectivity: {\n avgDegree: this.calculateAverageDegree(),\n maxDegree: this.calculateMaxDegree(),\n },\n };\n }\n\n /**\n * Calculate average node degree\n */\n private calculateAverageDegree(): number {\n if (this.nodeIndex.size === 0) return 0;\n\n let totalDegree = 0;\n for (const nodeId of this.nodeIndex.keys()) {\n const outgoing = this.adjacencyList.get(nodeId)?.length || 0;\n const incoming = this.reverseAdjacencyList.get(nodeId)?.length || 0;\n totalDegree += outgoing + incoming;\n }\n\n return totalDegree / this.nodeIndex.size;\n }\n\n /**\n * Calculate maximum node degree\n */\n private calculateMaxDegree(): number {\n let maxDegree = 0;\n\n for (const nodeId of this.nodeIndex.keys()) {\n const outgoing = this.adjacencyList.get(nodeId)?.length || 0;\n const incoming = this.reverseAdjacencyList.get(nodeId)?.length || 0;\n maxDegree = Math.max(maxDegree, outgoing + incoming);\n }\n\n return maxDegree;\n }\n\n /**\n * Export graph for visualization\n */\n exportForVisualization(): any {\n const nodes = Array.from(this.nodeIndex.values()).map((node) => ({\n id: node.id,\n label: node.label,\n type: node.type,\n size: node.importance * 10,\n color: this.getNodeColor(node.type),\n }));\n\n const edges = [];\n for (const edgeList of this.adjacencyList.values()) {\n for (const edge of edgeList) {\n edges.push({\n source: edge.source,\n target: edge.target,\n type: edge.type,\n weight: edge.weight,\n color: this.getEdgeColor(edge.type),\n });\n }\n }\n\n return { nodes, edges };\n }\n\n /**\n * Get node color for visualization\n */\n private getNodeColor(type: NodeType): string {\n const colors: Record<NodeType, string> = {\n document: '#4A90E2',\n concept: '#7ED321',\n entity: '#F5A623',\n event: '#D0021B',\n decision: '#9013FE',\n constraint: '#50E3C2',\n topic: '#B8E986',\n };\n return colors[type] || '#CCCCCC';\n }\n\n /**\n * Get edge color for visualization\n */\n private getEdgeColor(type: EdgeType): string {\n const colors: Record<EdgeType, string> = {\n citation: '#4A90E2',\n topic_overlap: '#7ED321',\n temporal: '#F5A623',\n causal: '#D0021B',\n semantic: '#9013FE',\n structural: '#50E3C2',\n dependency: '#B8E986',\n evolution: '#417505',\n contradiction: '#FF0000',\n implementation: '#0099FF',\n };\n return colors[type] || '#999999';\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }