@stackmemoryai/stackmemory 0.2.6 → 0.2.8

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 (406) hide show
  1. package/README.md +262 -83
  2. package/dist/scripts/cancel-duplicate-tasks.d.ts +7 -0
  3. package/dist/scripts/cancel-duplicate-tasks.d.ts.map +1 -0
  4. package/dist/scripts/cancel-duplicate-tasks.js +172 -0
  5. package/dist/scripts/cancel-duplicate-tasks.js.map +1 -0
  6. package/dist/scripts/list-linear-tasks.d.ts +6 -0
  7. package/dist/scripts/list-linear-tasks.d.ts.map +1 -0
  8. package/dist/scripts/list-linear-tasks.js +121 -0
  9. package/dist/scripts/list-linear-tasks.js.map +1 -0
  10. package/dist/scripts/merge-linear-duplicates-safe.d.ts +7 -0
  11. package/dist/scripts/merge-linear-duplicates-safe.d.ts.map +1 -0
  12. package/dist/scripts/merge-linear-duplicates-safe.js +267 -0
  13. package/dist/scripts/merge-linear-duplicates-safe.js.map +1 -0
  14. package/dist/scripts/show-linear-summary.d.ts +6 -0
  15. package/dist/scripts/show-linear-summary.d.ts.map +1 -0
  16. package/dist/scripts/show-linear-summary.js +120 -0
  17. package/dist/scripts/show-linear-summary.js.map +1 -0
  18. package/dist/scripts/status.js +6 -2
  19. package/dist/scripts/status.js.map +1 -1
  20. package/dist/src/cli/auto-detect.d.ts +61 -0
  21. package/dist/src/cli/auto-detect.d.ts.map +1 -0
  22. package/dist/src/cli/auto-detect.js +350 -0
  23. package/dist/src/cli/auto-detect.js.map +1 -0
  24. package/dist/src/cli/claude-sm.d.ts +7 -0
  25. package/dist/src/cli/claude-sm.d.ts.map +1 -0
  26. package/dist/src/cli/claude-sm.js +357 -0
  27. package/dist/src/cli/claude-sm.js.map +1 -0
  28. package/dist/src/cli/commands/config.d.ts +6 -0
  29. package/dist/src/cli/commands/config.d.ts.map +1 -0
  30. package/dist/src/cli/commands/config.js +224 -0
  31. package/dist/src/cli/commands/config.js.map +1 -0
  32. package/dist/src/cli/commands/context.d.ts +7 -0
  33. package/dist/src/cli/commands/context.d.ts.map +1 -0
  34. package/dist/src/cli/commands/context.js +365 -0
  35. package/dist/src/cli/commands/context.js.map +1 -0
  36. package/dist/src/cli/commands/linear-test.d.ts +6 -0
  37. package/dist/src/cli/commands/linear-test.d.ts.map +1 -0
  38. package/dist/src/cli/commands/linear-test.js +123 -0
  39. package/dist/src/cli/commands/linear-test.js.map +1 -0
  40. package/dist/src/cli/commands/linear.d.ts +6 -0
  41. package/dist/src/cli/commands/linear.d.ts.map +1 -0
  42. package/dist/src/cli/commands/linear.js +393 -0
  43. package/dist/src/cli/commands/linear.js.map +1 -0
  44. package/dist/src/cli/commands/log.d.ts +7 -0
  45. package/dist/src/cli/commands/log.d.ts.map +1 -0
  46. package/dist/src/cli/commands/log.js +168 -0
  47. package/dist/src/cli/commands/log.js.map +1 -0
  48. package/dist/src/cli/commands/onboard.d.ts +8 -0
  49. package/dist/src/cli/commands/onboard.d.ts.map +1 -0
  50. package/dist/src/cli/commands/onboard.js +363 -0
  51. package/dist/src/cli/commands/onboard.js.map +1 -0
  52. package/dist/src/cli/commands/projects.js +1 -1
  53. package/dist/src/cli/commands/projects.js.map +1 -1
  54. package/dist/src/cli/commands/search.d.ts +7 -0
  55. package/dist/src/cli/commands/search.d.ts.map +1 -0
  56. package/dist/src/cli/commands/search.js +162 -0
  57. package/dist/src/cli/commands/search.js.map +1 -0
  58. package/dist/src/cli/commands/session.d.ts +7 -0
  59. package/dist/src/cli/commands/session.d.ts.map +1 -0
  60. package/dist/src/cli/commands/session.js +222 -0
  61. package/dist/src/cli/commands/session.js.map +1 -0
  62. package/dist/src/cli/commands/tasks.d.ts +7 -0
  63. package/dist/src/cli/commands/tasks.d.ts.map +1 -0
  64. package/dist/src/cli/commands/tasks.js +229 -0
  65. package/dist/src/cli/commands/tasks.js.map +1 -0
  66. package/dist/src/cli/commands/webhook.d.ts +3 -0
  67. package/dist/src/cli/commands/webhook.d.ts.map +1 -0
  68. package/dist/src/cli/commands/webhook.js +157 -0
  69. package/dist/src/cli/commands/webhook.js.map +1 -0
  70. package/dist/src/cli/commands/worktree.d.ts +8 -0
  71. package/dist/src/cli/commands/worktree.d.ts.map +1 -0
  72. package/dist/src/cli/commands/worktree.js +339 -0
  73. package/dist/src/cli/commands/worktree.js.map +1 -0
  74. package/dist/src/cli/index.d.ts +2 -1
  75. package/dist/src/cli/index.d.ts.map +1 -1
  76. package/dist/src/cli/index.js +337 -50
  77. package/dist/src/cli/index.js.map +1 -1
  78. package/dist/src/cli/utils/viewer.d.ts.map +1 -1
  79. package/dist/src/cli/utils/viewer.js +3 -1
  80. package/dist/src/cli/utils/viewer.js.map +1 -1
  81. package/dist/src/core/config/config-manager.d.ts +95 -0
  82. package/dist/src/core/config/config-manager.d.ts.map +1 -0
  83. package/dist/src/core/config/config-manager.js +359 -0
  84. package/dist/src/core/config/config-manager.js.map +1 -0
  85. package/dist/src/core/config/types.d.ts +72 -0
  86. package/dist/src/core/config/types.d.ts.map +1 -0
  87. package/dist/src/core/config/types.js +127 -0
  88. package/dist/src/core/config/types.js.map +1 -0
  89. package/dist/src/core/context/auto-context.d.ts +22 -0
  90. package/dist/src/core/context/auto-context.d.ts.map +1 -0
  91. package/dist/src/core/context/auto-context.js +77 -0
  92. package/dist/src/core/context/auto-context.js.map +1 -0
  93. package/dist/src/core/context/compaction-handler.d.ts +119 -0
  94. package/dist/src/core/context/compaction-handler.d.ts.map +1 -0
  95. package/dist/src/core/context/compaction-handler.js +306 -0
  96. package/dist/src/core/context/compaction-handler.js.map +1 -0
  97. package/dist/src/core/context/frame-manager.d.ts +4 -0
  98. package/dist/src/core/context/frame-manager.d.ts.map +1 -1
  99. package/dist/src/core/context/frame-manager.js +350 -144
  100. package/dist/src/core/context/frame-manager.js.map +1 -1
  101. package/dist/src/core/context/model-aware-compaction.d.ts +101 -0
  102. package/dist/src/core/context/model-aware-compaction.d.ts.map +1 -0
  103. package/dist/src/core/context/model-aware-compaction.js +616 -0
  104. package/dist/src/core/context/model-aware-compaction.js.map +1 -0
  105. package/dist/src/core/errors/index.d.ts +135 -0
  106. package/dist/src/core/errors/index.d.ts.map +1 -0
  107. package/dist/src/core/errors/index.js +274 -0
  108. package/dist/src/core/errors/index.js.map +1 -0
  109. package/dist/src/core/errors/recovery.d.ts +86 -0
  110. package/dist/src/core/errors/recovery.d.ts.map +1 -0
  111. package/dist/src/core/errors/recovery.js +274 -0
  112. package/dist/src/core/errors/recovery.js.map +1 -0
  113. package/dist/src/core/projects/project-manager.d.ts.map +1 -1
  114. package/dist/src/core/projects/project-manager.js +240 -122
  115. package/dist/src/core/projects/project-manager.js.map +1 -1
  116. package/dist/src/core/query/query-parser.d.ts +104 -0
  117. package/dist/src/core/query/query-parser.d.ts.map +1 -0
  118. package/dist/src/core/query/query-parser.js +347 -0
  119. package/dist/src/core/query/query-parser.js.map +1 -0
  120. package/dist/src/core/retrieval/index.d.ts +8 -0
  121. package/dist/src/core/retrieval/index.d.ts.map +1 -0
  122. package/dist/src/core/retrieval/index.js +8 -0
  123. package/dist/src/core/retrieval/index.js.map +1 -0
  124. package/dist/src/core/retrieval/llm-context-retrieval.d.ts +71 -0
  125. package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +1 -0
  126. package/dist/src/core/retrieval/llm-context-retrieval.js +545 -0
  127. package/dist/src/core/retrieval/llm-context-retrieval.js.map +1 -0
  128. package/dist/src/core/retrieval/summary-generator.d.ts +63 -0
  129. package/dist/src/core/retrieval/summary-generator.d.ts.map +1 -0
  130. package/dist/src/core/retrieval/summary-generator.js +622 -0
  131. package/dist/src/core/retrieval/summary-generator.js.map +1 -0
  132. package/dist/src/core/retrieval/types.d.ts +257 -0
  133. package/dist/src/core/retrieval/types.d.ts.map +1 -0
  134. package/dist/src/core/retrieval/types.js +18 -0
  135. package/dist/src/core/retrieval/types.js.map +1 -0
  136. package/dist/src/core/session/index.d.ts +2 -0
  137. package/dist/src/core/session/index.d.ts.map +1 -0
  138. package/dist/src/core/session/index.js +2 -0
  139. package/dist/src/core/session/index.js.map +1 -0
  140. package/dist/src/core/session/session-manager.d.ts +69 -0
  141. package/dist/src/core/session/session-manager.d.ts.map +1 -0
  142. package/dist/src/core/session/session-manager.js +311 -0
  143. package/dist/src/core/session/session-manager.js.map +1 -0
  144. package/dist/src/core/trace/trace-detector.d.ts +108 -0
  145. package/dist/src/core/trace/trace-detector.d.ts.map +1 -0
  146. package/dist/src/core/trace/trace-detector.demo.d.ts +5 -0
  147. package/dist/src/core/trace/trace-detector.demo.d.ts.map +1 -0
  148. package/dist/src/core/trace/trace-detector.demo.js +145 -0
  149. package/dist/src/core/trace/trace-detector.demo.js.map +1 -0
  150. package/dist/src/core/trace/trace-detector.js +425 -0
  151. package/dist/src/core/trace/trace-detector.js.map +1 -0
  152. package/dist/src/core/trace/trace-store.d.ts +60 -0
  153. package/dist/src/core/trace/trace-store.d.ts.map +1 -0
  154. package/dist/src/core/trace/trace-store.js +323 -0
  155. package/dist/src/core/trace/trace-store.js.map +1 -0
  156. package/dist/src/core/trace/types.d.ts +81 -0
  157. package/dist/src/core/trace/types.d.ts.map +1 -0
  158. package/dist/src/core/trace/types.js +70 -0
  159. package/dist/src/core/trace/types.js.map +1 -0
  160. package/dist/src/core/utils/update-checker.d.ts.map +1 -1
  161. package/dist/src/core/utils/update-checker.js +82 -25
  162. package/dist/src/core/utils/update-checker.js.map +1 -1
  163. package/dist/src/core/worktree/worktree-manager.d.ts +110 -0
  164. package/dist/src/core/worktree/worktree-manager.d.ts.map +1 -0
  165. package/dist/src/core/worktree/worktree-manager.js +456 -0
  166. package/dist/src/core/worktree/worktree-manager.js.map +1 -0
  167. package/dist/src/features/analytics/core/analytics-service.d.ts +6 -0
  168. package/dist/src/features/analytics/core/analytics-service.d.ts.map +1 -1
  169. package/dist/src/features/analytics/core/analytics-service.js +125 -10
  170. package/dist/src/features/analytics/core/analytics-service.js.map +1 -1
  171. package/dist/src/features/analytics/queries/metrics-queries.d.ts.map +1 -1
  172. package/dist/src/features/analytics/queries/metrics-queries.js +220 -163
  173. package/dist/src/features/analytics/queries/metrics-queries.js.map +1 -1
  174. package/dist/src/features/browser/browser-mcp.d.ts.map +1 -1
  175. package/dist/src/features/browser/browser-mcp.js +3 -0
  176. package/dist/src/features/browser/browser-mcp.js.map +1 -1
  177. package/dist/src/features/tasks/pebbles-task-store.d.ts +4 -0
  178. package/dist/src/features/tasks/pebbles-task-store.d.ts.map +1 -1
  179. package/dist/src/features/tasks/pebbles-task-store.js +299 -141
  180. package/dist/src/features/tasks/pebbles-task-store.js.map +1 -1
  181. package/dist/src/integrations/linear/client.d.ts +28 -1
  182. package/dist/src/integrations/linear/client.d.ts.map +1 -1
  183. package/dist/src/integrations/linear/client.js +87 -0
  184. package/dist/src/integrations/linear/client.js.map +1 -1
  185. package/dist/src/integrations/linear/sync-manager.d.ts +76 -0
  186. package/dist/src/integrations/linear/sync-manager.d.ts.map +1 -0
  187. package/dist/src/integrations/linear/sync-manager.js +223 -0
  188. package/dist/src/integrations/linear/sync-manager.js.map +1 -0
  189. package/dist/src/integrations/linear/sync-service.d.ts +25 -0
  190. package/dist/src/integrations/linear/sync-service.d.ts.map +1 -0
  191. package/dist/src/integrations/linear/sync-service.js +198 -0
  192. package/dist/src/integrations/linear/sync-service.js.map +1 -0
  193. package/dist/src/integrations/linear/sync.d.ts +23 -1
  194. package/dist/src/integrations/linear/sync.d.ts.map +1 -1
  195. package/dist/src/integrations/linear/sync.js +156 -9
  196. package/dist/src/integrations/linear/sync.js.map +1 -1
  197. package/dist/src/integrations/linear/types.d.ts +75 -0
  198. package/dist/src/integrations/linear/types.d.ts.map +1 -0
  199. package/dist/src/integrations/linear/types.js +2 -0
  200. package/dist/src/integrations/linear/types.js.map +1 -0
  201. package/dist/src/integrations/linear/webhook-server.d.ts +32 -0
  202. package/dist/src/integrations/linear/webhook-server.d.ts.map +1 -0
  203. package/dist/src/integrations/linear/webhook-server.js +188 -0
  204. package/dist/src/integrations/linear/webhook-server.js.map +1 -0
  205. package/dist/src/integrations/linear/webhook.d.ts +95 -0
  206. package/dist/src/integrations/linear/webhook.d.ts.map +1 -0
  207. package/dist/src/integrations/linear/webhook.js +204 -0
  208. package/dist/src/integrations/linear/webhook.js.map +1 -0
  209. package/dist/src/integrations/mcp/server.d.ts +14 -0
  210. package/dist/src/integrations/mcp/server.d.ts.map +1 -1
  211. package/dist/src/integrations/mcp/server.js +849 -61
  212. package/dist/src/integrations/mcp/server.js.map +1 -1
  213. package/dist/src/integrations/mcp/trace-test.d.ts +5 -0
  214. package/dist/src/integrations/mcp/trace-test.d.ts.map +1 -0
  215. package/dist/src/integrations/mcp/trace-test.js +54 -0
  216. package/dist/src/integrations/mcp/trace-test.js.map +1 -0
  217. package/dist/src/servers/production/auth-middleware.d.ts +2 -2
  218. package/dist/src/servers/production/auth-middleware.d.ts.map +1 -1
  219. package/dist/src/servers/production/auth-middleware.js +1 -1
  220. package/dist/src/servers/production/auth-middleware.js.map +1 -1
  221. package/dist/src/services/config-service.d.ts +44 -0
  222. package/dist/src/services/config-service.d.ts.map +1 -0
  223. package/dist/src/services/config-service.js +61 -0
  224. package/dist/src/services/config-service.js.map +1 -0
  225. package/dist/src/services/context-service.d.ts +17 -0
  226. package/dist/src/services/context-service.d.ts.map +1 -0
  227. package/dist/src/services/context-service.js +88 -0
  228. package/dist/src/services/context-service.js.map +1 -0
  229. package/dist/src/types/task.d.ts +27 -0
  230. package/dist/src/types/task.d.ts.map +1 -0
  231. package/dist/src/types/task.js +2 -0
  232. package/dist/src/types/task.js.map +1 -0
  233. package/dist/src/utils/logger.d.ts +13 -0
  234. package/dist/src/utils/logger.d.ts.map +1 -0
  235. package/dist/src/utils/logger.js +52 -0
  236. package/dist/src/utils/logger.js.map +1 -0
  237. package/package.json +24 -10
  238. package/dist/attention-scoring/src/attention-tracker.d.ts +0 -79
  239. package/dist/attention-scoring/src/attention-tracker.d.ts.map +0 -1
  240. package/dist/attention-scoring/src/attention-tracker.js +0 -488
  241. package/dist/attention-scoring/src/attention-tracker.js.map +0 -1
  242. package/dist/attention-scoring/src/mcp-integration.d.ts +0 -56
  243. package/dist/attention-scoring/src/mcp-integration.d.ts.map +0 -1
  244. package/dist/attention-scoring/src/mcp-integration.js +0 -369
  245. package/dist/attention-scoring/src/mcp-integration.js.map +0 -1
  246. package/dist/index.js +0 -382
  247. package/dist/p2p-sync/src/p2p-sync.d.ts +0 -81
  248. package/dist/p2p-sync/src/p2p-sync.d.ts.map +0 -1
  249. package/dist/p2p-sync/src/p2p-sync.js +0 -457
  250. package/dist/p2p-sync/src/p2p-sync.js.map +0 -1
  251. package/dist/p2p-sync/src/team-context-sync.d.ts +0 -99
  252. package/dist/p2p-sync/src/team-context-sync.d.ts.map +0 -1
  253. package/dist/p2p-sync/src/team-context-sync.js +0 -491
  254. package/dist/p2p-sync/src/team-context-sync.js.map +0 -1
  255. package/dist/src/analytics/api/analytics-api.d.ts +0 -24
  256. package/dist/src/analytics/api/analytics-api.d.ts.map +0 -1
  257. package/dist/src/analytics/api/analytics-api.js +0 -279
  258. package/dist/src/analytics/api/analytics-api.js.map +0 -1
  259. package/dist/src/analytics/core/analytics-service.d.ts +0 -23
  260. package/dist/src/analytics/core/analytics-service.d.ts.map +0 -1
  261. package/dist/src/analytics/core/analytics-service.js +0 -160
  262. package/dist/src/analytics/core/analytics-service.js.map +0 -1
  263. package/dist/src/analytics/index.d.ts +0 -12
  264. package/dist/src/analytics/index.d.ts.map +0 -1
  265. package/dist/src/analytics/index.js +0 -11
  266. package/dist/src/analytics/index.js.map +0 -1
  267. package/dist/src/analytics/queries/metrics-queries.d.ts +0 -11
  268. package/dist/src/analytics/queries/metrics-queries.d.ts.map +0 -1
  269. package/dist/src/analytics/queries/metrics-queries.js +0 -179
  270. package/dist/src/analytics/queries/metrics-queries.js.map +0 -1
  271. package/dist/src/analytics/types/metrics.d.ts +0 -60
  272. package/dist/src/analytics/types/metrics.d.ts.map +0 -1
  273. package/dist/src/analytics/types/metrics.js +0 -2
  274. package/dist/src/analytics/types/metrics.js.map +0 -1
  275. package/dist/src/beads/beads-task-store.d.ts +0 -117
  276. package/dist/src/beads/beads-task-store.d.ts.map +0 -1
  277. package/dist/src/beads/beads-task-store.js +0 -318
  278. package/dist/src/beads/beads-task-store.js.map +0 -1
  279. package/dist/src/beads/task-aware-context.d.ts +0 -103
  280. package/dist/src/beads/task-aware-context.d.ts.map +0 -1
  281. package/dist/src/beads/task-aware-context.js +0 -395
  282. package/dist/src/beads/task-aware-context.js.map +0 -1
  283. package/dist/src/beads-task-store.d.ts +0 -117
  284. package/dist/src/beads-task-store.d.ts.map +0 -1
  285. package/dist/src/beads-task-store.js +0 -318
  286. package/dist/src/beads-task-store.js.map +0 -1
  287. package/dist/src/cli/analytics-viewer.d.ts +0 -3
  288. package/dist/src/cli/analytics-viewer.d.ts.map +0 -1
  289. package/dist/src/cli/analytics-viewer.js +0 -89
  290. package/dist/src/cli/analytics-viewer.js.map +0 -1
  291. package/dist/src/cli/cli.d.ts +0 -7
  292. package/dist/src/cli/cli.d.ts.map +0 -1
  293. package/dist/src/cli/cli.js +0 -704
  294. package/dist/src/cli/cli.js.map +0 -1
  295. package/dist/src/cli/project-commands.d.ts +0 -8
  296. package/dist/src/cli/project-commands.d.ts.map +0 -1
  297. package/dist/src/cli/project-commands.js +0 -212
  298. package/dist/src/cli/project-commands.js.map +0 -1
  299. package/dist/src/cli.d.ts +0 -7
  300. package/dist/src/cli.d.ts.map +0 -1
  301. package/dist/src/cli.js +0 -73
  302. package/dist/src/cli.js.map +0 -1
  303. package/dist/src/core/error-handler.d.ts +0 -46
  304. package/dist/src/core/error-handler.d.ts.map +0 -1
  305. package/dist/src/core/error-handler.js +0 -212
  306. package/dist/src/core/error-handler.js.map +0 -1
  307. package/dist/src/core/frame-manager.d.ts +0 -106
  308. package/dist/src/core/frame-manager.d.ts.map +0 -1
  309. package/dist/src/core/frame-manager.js +0 -387
  310. package/dist/src/core/frame-manager.js.map +0 -1
  311. package/dist/src/core/logger.d.ts +0 -24
  312. package/dist/src/core/logger.d.ts.map +0 -1
  313. package/dist/src/core/logger.js +0 -121
  314. package/dist/src/core/logger.js.map +0 -1
  315. package/dist/src/core/logger.test.d.ts +0 -2
  316. package/dist/src/core/logger.test.d.ts.map +0 -1
  317. package/dist/src/core/logger.test.js +0 -31
  318. package/dist/src/core/logger.test.js.map +0 -1
  319. package/dist/src/core/progress-tracker.d.ts +0 -95
  320. package/dist/src/core/progress-tracker.d.ts.map +0 -1
  321. package/dist/src/core/progress-tracker.js +0 -178
  322. package/dist/src/core/progress-tracker.js.map +0 -1
  323. package/dist/src/core/project-manager.d.ts +0 -130
  324. package/dist/src/core/project-manager.d.ts.map +0 -1
  325. package/dist/src/core/project-manager.js +0 -582
  326. package/dist/src/core/project-manager.js.map +0 -1
  327. package/dist/src/core/update-checker.d.ts +0 -38
  328. package/dist/src/core/update-checker.d.ts.map +0 -1
  329. package/dist/src/core/update-checker.js +0 -156
  330. package/dist/src/core/update-checker.js.map +0 -1
  331. package/dist/src/error-handler.d.ts +0 -42
  332. package/dist/src/error-handler.d.ts.map +0 -1
  333. package/dist/src/error-handler.js +0 -155
  334. package/dist/src/error-handler.js.map +0 -1
  335. package/dist/src/frame-manager.d.ts +0 -106
  336. package/dist/src/frame-manager.d.ts.map +0 -1
  337. package/dist/src/frame-manager.js +0 -361
  338. package/dist/src/frame-manager.js.map +0 -1
  339. package/dist/src/integrations/browser-mcp.d.ts +0 -94
  340. package/dist/src/integrations/browser-mcp.d.ts.map +0 -1
  341. package/dist/src/integrations/browser-mcp.js +0 -431
  342. package/dist/src/integrations/browser-mcp.js.map +0 -1
  343. package/dist/src/integrations/linear-auth.d.ts +0 -99
  344. package/dist/src/integrations/linear-auth.d.ts.map +0 -1
  345. package/dist/src/integrations/linear-auth.js +0 -319
  346. package/dist/src/integrations/linear-auth.js.map +0 -1
  347. package/dist/src/integrations/linear-auto-sync.d.ts +0 -77
  348. package/dist/src/integrations/linear-auto-sync.d.ts.map +0 -1
  349. package/dist/src/integrations/linear-auto-sync.js +0 -268
  350. package/dist/src/integrations/linear-auto-sync.js.map +0 -1
  351. package/dist/src/integrations/linear-client.d.ts +0 -86
  352. package/dist/src/integrations/linear-client.d.ts.map +0 -1
  353. package/dist/src/integrations/linear-client.js +0 -277
  354. package/dist/src/integrations/linear-client.js.map +0 -1
  355. package/dist/src/integrations/linear-config.d.ts +0 -51
  356. package/dist/src/integrations/linear-config.d.ts.map +0 -1
  357. package/dist/src/integrations/linear-config.js +0 -103
  358. package/dist/src/integrations/linear-config.js.map +0 -1
  359. package/dist/src/integrations/linear-sync.d.ts +0 -97
  360. package/dist/src/integrations/linear-sync.d.ts.map +0 -1
  361. package/dist/src/integrations/linear-sync.js +0 -391
  362. package/dist/src/integrations/linear-sync.js.map +0 -1
  363. package/dist/src/logger.d.ts +0 -24
  364. package/dist/src/logger.d.ts.map +0 -1
  365. package/dist/src/logger.js +0 -120
  366. package/dist/src/logger.js.map +0 -1
  367. package/dist/src/mcp/mcp-server.d.ts +0 -40
  368. package/dist/src/mcp/mcp-server.d.ts.map +0 -1
  369. package/dist/src/mcp/mcp-server.js +0 -828
  370. package/dist/src/mcp/mcp-server.js.map +0 -1
  371. package/dist/src/mcp-server.d.ts +0 -32
  372. package/dist/src/mcp-server.d.ts.map +0 -1
  373. package/dist/src/mcp-server.js +0 -441
  374. package/dist/src/mcp-server.js.map +0 -1
  375. package/dist/src/pebbles/pebbles-task-store.d.ts +0 -117
  376. package/dist/src/pebbles/pebbles-task-store.d.ts.map +0 -1
  377. package/dist/src/pebbles/pebbles-task-store.js +0 -335
  378. package/dist/src/pebbles/pebbles-task-store.js.map +0 -1
  379. package/dist/src/pebbles/task-aware-context.d.ts +0 -103
  380. package/dist/src/pebbles/task-aware-context.d.ts.map +0 -1
  381. package/dist/src/pebbles/task-aware-context.js +0 -412
  382. package/dist/src/pebbles/task-aware-context.js.map +0 -1
  383. package/dist/src/railway/index.d.ts +0 -7
  384. package/dist/src/railway/index.d.ts.map +0 -1
  385. package/dist/src/railway/index.js +0 -401
  386. package/dist/src/railway/index.js.map +0 -1
  387. package/dist/src/runway/auth/auth-middleware.d.ts +0 -66
  388. package/dist/src/runway/auth/auth-middleware.d.ts.map +0 -1
  389. package/dist/src/runway/auth/auth-middleware.js +0 -337
  390. package/dist/src/runway/auth/auth-middleware.js.map +0 -1
  391. package/dist/src/runway/server/runway-mcp-server.d.ts +0 -46
  392. package/dist/src/runway/server/runway-mcp-server.d.ts.map +0 -1
  393. package/dist/src/runway/server/runway-mcp-server.js +0 -601
  394. package/dist/src/runway/server/runway-mcp-server.js.map +0 -1
  395. package/dist/src/runway.bak/auth/auth-middleware.d.ts +0 -66
  396. package/dist/src/runway.bak/auth/auth-middleware.d.ts.map +0 -1
  397. package/dist/src/runway.bak/auth/auth-middleware.js +0 -337
  398. package/dist/src/runway.bak/auth/auth-middleware.js.map +0 -1
  399. package/dist/src/runway.bak/server/runway-mcp-server.d.ts +0 -46
  400. package/dist/src/runway.bak/server/runway-mcp-server.d.ts.map +0 -1
  401. package/dist/src/runway.bak/server/runway-mcp-server.js +0 -601
  402. package/dist/src/runway.bak/server/runway-mcp-server.js.map +0 -1
  403. package/dist/src/task-aware-context.d.ts +0 -103
  404. package/dist/src/task-aware-context.d.ts.map +0 -1
  405. package/dist/src/task-aware-context.js +0 -395
  406. package/dist/src/task-aware-context.js.map +0 -1
@@ -1,387 +0,0 @@
1
- /**
2
- * StackMemory Frame Manager - Call Stack Implementation
3
- * Manages nested frames representing the call stack of work
4
- */
5
- import { v4 as uuidv4 } from 'uuid';
6
- import { logger } from './logger.js';
7
- import { StackMemoryError, ErrorCode } from './error-handler.js';
8
- export class FrameManager {
9
- db;
10
- currentRunId;
11
- projectId;
12
- activeStack = []; // Stack of active frame IDs
13
- constructor(db, projectId, runId) {
14
- this.db = db;
15
- this.projectId = projectId;
16
- this.currentRunId = runId || uuidv4();
17
- this.initializeSchema();
18
- this.loadActiveStack();
19
- }
20
- initializeSchema() {
21
- // Enhanced frames table matching architecture
22
- this.db.exec(`
23
- CREATE TABLE IF NOT EXISTS frames (
24
- frame_id TEXT PRIMARY KEY,
25
- run_id TEXT NOT NULL,
26
- project_id TEXT NOT NULL,
27
- parent_frame_id TEXT REFERENCES frames(frame_id),
28
- depth INTEGER NOT NULL DEFAULT 0,
29
- type TEXT NOT NULL,
30
- name TEXT NOT NULL,
31
- state TEXT DEFAULT 'active',
32
- inputs TEXT DEFAULT '{}',
33
- outputs TEXT DEFAULT '{}',
34
- digest_text TEXT,
35
- digest_json TEXT DEFAULT '{}',
36
- created_at INTEGER DEFAULT (unixepoch()),
37
- closed_at INTEGER
38
- );
39
-
40
- CREATE TABLE IF NOT EXISTS events (
41
- event_id TEXT PRIMARY KEY,
42
- run_id TEXT NOT NULL,
43
- frame_id TEXT NOT NULL,
44
- seq INTEGER NOT NULL,
45
- event_type TEXT NOT NULL,
46
- payload TEXT NOT NULL,
47
- ts INTEGER DEFAULT (unixepoch()),
48
- FOREIGN KEY(frame_id) REFERENCES frames(frame_id)
49
- );
50
-
51
- CREATE TABLE IF NOT EXISTS anchors (
52
- anchor_id TEXT PRIMARY KEY,
53
- frame_id TEXT NOT NULL,
54
- project_id TEXT NOT NULL,
55
- type TEXT NOT NULL,
56
- text TEXT NOT NULL,
57
- priority INTEGER DEFAULT 0,
58
- created_at INTEGER DEFAULT (unixepoch()),
59
- metadata TEXT DEFAULT '{}',
60
- FOREIGN KEY(frame_id) REFERENCES frames(frame_id)
61
- );
62
-
63
- CREATE INDEX IF NOT EXISTS idx_frames_run ON frames(run_id);
64
- CREATE INDEX IF NOT EXISTS idx_frames_parent ON frames(parent_frame_id);
65
- CREATE INDEX IF NOT EXISTS idx_frames_state ON frames(state);
66
- CREATE INDEX IF NOT EXISTS idx_events_frame ON events(frame_id);
67
- CREATE INDEX IF NOT EXISTS idx_events_seq ON events(frame_id, seq);
68
- CREATE INDEX IF NOT EXISTS idx_anchors_frame ON anchors(frame_id);
69
- `);
70
- }
71
- loadActiveStack() {
72
- // Load currently active frames for this run
73
- const activeFrames = this.db
74
- .prepare(`
75
- SELECT frame_id, parent_frame_id, depth
76
- FROM frames
77
- WHERE run_id = ? AND state = 'active'
78
- ORDER BY depth ASC
79
- `)
80
- .all(this.currentRunId);
81
- // Rebuild stack order
82
- this.activeStack = this.buildStackOrder(activeFrames);
83
- logger.info('Loaded active stack', {
84
- runId: this.currentRunId,
85
- stackDepth: this.activeStack.length,
86
- activeFrames: this.activeStack,
87
- });
88
- }
89
- buildStackOrder(frames) {
90
- const stack = [];
91
- // Find root frame (no parent)
92
- const rootFrame = frames.find((f) => !f.parent_frame_id);
93
- if (!rootFrame)
94
- return [];
95
- // Build stack by following parent-child relationships
96
- let currentFrame = rootFrame;
97
- stack.push(currentFrame.frame_id);
98
- while (currentFrame) {
99
- const childFrame = frames.find((f) => f.parent_frame_id === currentFrame.frame_id);
100
- if (!childFrame)
101
- break;
102
- stack.push(childFrame.frame_id);
103
- currentFrame = childFrame;
104
- }
105
- return stack;
106
- }
107
- /**
108
- * Create a new frame and push to stack
109
- */
110
- createFrame(options) {
111
- const frameId = uuidv4();
112
- const parentFrameId = options.parentFrameId || this.getCurrentFrameId();
113
- const depth = parentFrameId ? this.getFrameDepth(parentFrameId) + 1 : 0;
114
- const frame = {
115
- frame_id: frameId,
116
- run_id: this.currentRunId,
117
- project_id: this.projectId,
118
- parent_frame_id: parentFrameId,
119
- depth,
120
- type: options.type,
121
- name: options.name,
122
- state: 'active',
123
- inputs: options.inputs || {},
124
- created_at: Math.floor(Date.now() / 1000),
125
- };
126
- this.db
127
- .prepare(`
128
- INSERT INTO frames (
129
- frame_id, run_id, project_id, parent_frame_id, depth, type, name, state, inputs, created_at
130
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
131
- `)
132
- .run(frame.frame_id, frame.run_id, frame.project_id, frame.parent_frame_id, frame.depth, frame.type, frame.name, frame.state, JSON.stringify(frame.inputs), frame.created_at);
133
- // Push to active stack
134
- this.activeStack.push(frameId);
135
- logger.info('Created frame', {
136
- frameId,
137
- type: options.type,
138
- name: options.name,
139
- depth,
140
- parentFrameId,
141
- stackDepth: this.activeStack.length,
142
- });
143
- return frameId;
144
- }
145
- /**
146
- * Close the current frame and generate digest
147
- */
148
- closeFrame(frameId, outputs) {
149
- const targetFrameId = frameId || this.getCurrentFrameId();
150
- if (!targetFrameId) {
151
- throw new StackMemoryError(ErrorCode.OPERATION_FAILED, 'No active frame to close');
152
- }
153
- // Get frame details
154
- const frame = this.getFrame(targetFrameId);
155
- if (!frame) {
156
- throw new StackMemoryError(ErrorCode.OPERATION_FAILED, `Frame not found: ${targetFrameId}`);
157
- }
158
- if (frame.state === 'closed') {
159
- logger.warn('Attempted to close already closed frame', {
160
- frameId: targetFrameId,
161
- });
162
- return;
163
- }
164
- // Generate digest before closing
165
- const digest = this.generateDigest(targetFrameId);
166
- const finalOutputs = { ...outputs, ...digest.structured };
167
- // Update frame to closed state
168
- this.db
169
- .prepare(`
170
- UPDATE frames
171
- SET state = 'closed',
172
- outputs = ?,
173
- digest_text = ?,
174
- digest_json = ?,
175
- closed_at = unixepoch()
176
- WHERE frame_id = ?
177
- `)
178
- .run(JSON.stringify(finalOutputs), digest.text, JSON.stringify(digest.structured), targetFrameId);
179
- // Remove from active stack
180
- this.activeStack = this.activeStack.filter((id) => id !== targetFrameId);
181
- // Close all child frames recursively
182
- this.closeChildFrames(targetFrameId);
183
- logger.info('Closed frame', {
184
- frameId: targetFrameId,
185
- name: frame.name,
186
- duration: Math.floor(Date.now() / 1000) - frame.created_at,
187
- digestLength: digest.text.length,
188
- stackDepth: this.activeStack.length,
189
- });
190
- }
191
- closeChildFrames(parentFrameId) {
192
- const children = this.db
193
- .prepare(`
194
- SELECT frame_id FROM frames
195
- WHERE parent_frame_id = ? AND state = 'active'
196
- `)
197
- .all(parentFrameId);
198
- children.forEach((child) => {
199
- this.closeFrame(child.frame_id);
200
- });
201
- }
202
- /**
203
- * Generate digest for a frame
204
- */
205
- generateDigest(frameId) {
206
- const frame = this.getFrame(frameId);
207
- const events = this.getFrameEvents(frameId);
208
- const anchors = this.getFrameAnchors(frameId);
209
- if (!frame) {
210
- throw new StackMemoryError(ErrorCode.OPERATION_FAILED, `Cannot generate digest: frame not found ${frameId}`);
211
- }
212
- // Extract key information
213
- const decisions = anchors.filter((a) => a.type === 'DECISION');
214
- const constraints = anchors.filter((a) => a.type === 'CONSTRAINT');
215
- const risks = anchors.filter((a) => a.type === 'RISK');
216
- const toolCalls = events.filter((e) => e.event_type === 'tool_call');
217
- const artifacts = events.filter((e) => e.event_type === 'artifact');
218
- // Generate structured digest
219
- const structured = {
220
- result: frame.name,
221
- decisions: decisions.map((d) => ({ id: d.anchor_id, text: d.text })),
222
- constraints: constraints.map((c) => ({ id: c.anchor_id, text: c.text })),
223
- risks: risks.map((r) => ({ id: r.anchor_id, text: r.text })),
224
- artifacts: artifacts.map((a) => ({
225
- kind: a.payload.kind || 'unknown',
226
- ref: a.payload.ref,
227
- })),
228
- tool_calls_count: toolCalls.length,
229
- duration_seconds: frame.closed_at
230
- ? frame.closed_at - frame.created_at
231
- : 0,
232
- };
233
- // Generate text summary
234
- const text = this.generateDigestText(frame, structured, events.length);
235
- return { text, structured };
236
- }
237
- generateDigestText(frame, structured, eventCount) {
238
- let summary = `Completed: ${frame.name}\n`;
239
- if (structured.decisions.length > 0) {
240
- summary += `\nDecisions made:\n${structured.decisions.map((d) => `- ${d.text}`).join('\n')}`;
241
- }
242
- if (structured.constraints.length > 0) {
243
- summary += `\nConstraints established:\n${structured.constraints.map((c) => `- ${c.text}`).join('\n')}`;
244
- }
245
- if (structured.risks.length > 0) {
246
- summary += `\nRisks identified:\n${structured.risks.map((r) => `- ${r.text}`).join('\n')}`;
247
- }
248
- summary += `\nActivity: ${eventCount} events, ${structured.tool_calls_count} tool calls`;
249
- if (structured.duration_seconds > 0) {
250
- summary += `, ${Math.floor(structured.duration_seconds / 60)}m ${structured.duration_seconds % 60}s duration`;
251
- }
252
- return summary;
253
- }
254
- /**
255
- * Add event to current frame
256
- */
257
- addEvent(eventType, payload, frameId) {
258
- const targetFrameId = frameId || this.getCurrentFrameId();
259
- if (!targetFrameId) {
260
- throw new StackMemoryError(ErrorCode.OPERATION_FAILED, 'No active frame for event');
261
- }
262
- const eventId = uuidv4();
263
- const seq = this.getNextEventSequence(targetFrameId);
264
- this.db
265
- .prepare(`
266
- INSERT INTO events (event_id, run_id, frame_id, seq, event_type, payload)
267
- VALUES (?, ?, ?, ?, ?, ?)
268
- `)
269
- .run(eventId, this.currentRunId, targetFrameId, seq, eventType, JSON.stringify(payload));
270
- return eventId;
271
- }
272
- /**
273
- * Add anchor to frame
274
- */
275
- addAnchor(type, text, priority = 0, metadata = {}, frameId) {
276
- const targetFrameId = frameId || this.getCurrentFrameId();
277
- if (!targetFrameId) {
278
- throw new StackMemoryError(ErrorCode.OPERATION_FAILED, 'No active frame for anchor');
279
- }
280
- const anchorId = uuidv4();
281
- this.db
282
- .prepare(`
283
- INSERT INTO anchors (anchor_id, frame_id, project_id, type, text, priority, metadata)
284
- VALUES (?, ?, ?, ?, ?, ?, ?)
285
- `)
286
- .run(anchorId, targetFrameId, this.projectId, type, text, priority, JSON.stringify(metadata));
287
- return anchorId;
288
- }
289
- /**
290
- * Get hot stack context for current active frames
291
- */
292
- getHotStackContext(maxEvents = 20) {
293
- return this.activeStack
294
- .map((frameId) => {
295
- const frame = this.getFrame(frameId);
296
- if (!frame)
297
- return null;
298
- return {
299
- frameId,
300
- header: {
301
- goal: frame.name,
302
- constraints: this.extractConstraints(frame.inputs),
303
- definitions: frame.inputs.definitions,
304
- },
305
- anchors: this.getFrameAnchors(frameId),
306
- recentEvents: this.getFrameEvents(frameId, maxEvents),
307
- activeArtifacts: this.getActiveArtifacts(frameId),
308
- };
309
- })
310
- .filter(Boolean);
311
- }
312
- /**
313
- * Get active frame path (root to current)
314
- */
315
- getActiveFramePath() {
316
- return this.activeStack
317
- .map((frameId) => this.getFrame(frameId))
318
- .filter(Boolean);
319
- }
320
- // Utility methods
321
- getCurrentFrameId() {
322
- return this.activeStack[this.activeStack.length - 1];
323
- }
324
- getStackDepth() {
325
- return this.activeStack.length;
326
- }
327
- getFrameDepth(frameId) {
328
- const frame = this.getFrame(frameId);
329
- return frame?.depth || 0;
330
- }
331
- getFrame(frameId) {
332
- const row = this.db
333
- .prepare(`
334
- SELECT * FROM frames WHERE frame_id = ?
335
- `)
336
- .get(frameId);
337
- if (!row)
338
- return undefined;
339
- return {
340
- ...row,
341
- inputs: JSON.parse(row.inputs || '{}'),
342
- outputs: JSON.parse(row.outputs || '{}'),
343
- digest_json: JSON.parse(row.digest_json || '{}'),
344
- };
345
- }
346
- getFrameEvents(frameId, limit) {
347
- const query = limit
348
- ? `SELECT * FROM events WHERE frame_id = ? ORDER BY seq DESC LIMIT ?`
349
- : `SELECT * FROM events WHERE frame_id = ? ORDER BY seq ASC`;
350
- const params = limit ? [frameId, limit] : [frameId];
351
- const rows = this.db.prepare(query).all(...params);
352
- return rows.map((row) => ({
353
- ...row,
354
- payload: JSON.parse(row.payload),
355
- }));
356
- }
357
- getFrameAnchors(frameId) {
358
- const rows = this.db
359
- .prepare(`
360
- SELECT * FROM anchors WHERE frame_id = ? ORDER BY priority DESC, created_at ASC
361
- `)
362
- .all(frameId);
363
- return rows.map((row) => ({
364
- ...row,
365
- metadata: JSON.parse(row.metadata || '{}'),
366
- }));
367
- }
368
- getNextEventSequence(frameId) {
369
- const result = this.db
370
- .prepare(`
371
- SELECT MAX(seq) as max_seq FROM events WHERE frame_id = ?
372
- `)
373
- .get(frameId);
374
- return (result.max_seq || 0) + 1;
375
- }
376
- extractConstraints(inputs) {
377
- return inputs.constraints;
378
- }
379
- getActiveArtifacts(frameId) {
380
- const artifacts = this.getFrameEvents(frameId)
381
- .filter((e) => e.event_type === 'artifact')
382
- .map((e) => e.payload.ref)
383
- .filter(Boolean);
384
- return artifacts;
385
- }
386
- }
387
- //# sourceMappingURL=frame-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frame-manager.js","sourceRoot":"","sources":["../../../src/core/frame-manager.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- /**
2
- * Structured logging utility for StackMemory CLI
3
- */
4
- export declare enum LogLevel {
5
- ERROR = 0,
6
- WARN = 1,
7
- INFO = 2,
8
- DEBUG = 3
9
- }
10
- export declare class Logger {
11
- private static instance;
12
- private logLevel;
13
- private logFile?;
14
- private constructor();
15
- static getInstance(): Logger;
16
- private ensureLogDirectory;
17
- private writeLog;
18
- error(message: string, error?: Error, context?: Record<string, unknown>): void;
19
- warn(message: string, context?: Record<string, unknown>): void;
20
- info(message: string, context?: Record<string, unknown>): void;
21
- debug(message: string, context?: Record<string, unknown>): void;
22
- }
23
- export declare const logger: Logger;
24
- //# sourceMappingURL=logger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/core/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,oBAAY,QAAQ;IAClB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAUD,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAS;IAChC,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,OAAO,CAAC,CAAS;IAEzB,OAAO;IA0BP,MAAM,CAAC,WAAW,IAAI,MAAM;IAO5B,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,QAAQ;IAgChB,KAAK,CACH,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,KAAK,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,IAAI;IAUP,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAS9D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAS9D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAQhE;AAGD,eAAO,MAAM,MAAM,QAAuB,CAAC"}
@@ -1,121 +0,0 @@
1
- /**
2
- * Structured logging utility for StackMemory CLI
3
- */
4
- import * as fs from 'fs';
5
- import * as path from 'path';
6
- export var LogLevel;
7
- (function (LogLevel) {
8
- LogLevel[LogLevel["ERROR"] = 0] = "ERROR";
9
- LogLevel[LogLevel["WARN"] = 1] = "WARN";
10
- LogLevel[LogLevel["INFO"] = 2] = "INFO";
11
- LogLevel[LogLevel["DEBUG"] = 3] = "DEBUG";
12
- })(LogLevel || (LogLevel = {}));
13
- export class Logger {
14
- static instance;
15
- logLevel = LogLevel.INFO;
16
- logFile;
17
- constructor() {
18
- // Set log level from environment
19
- const envLevel = process.env.STACKMEMORY_LOG_LEVEL?.toUpperCase();
20
- switch (envLevel) {
21
- case 'ERROR':
22
- this.logLevel = LogLevel.ERROR;
23
- break;
24
- case 'WARN':
25
- this.logLevel = LogLevel.WARN;
26
- break;
27
- case 'DEBUG':
28
- this.logLevel = LogLevel.DEBUG;
29
- break;
30
- default:
31
- this.logLevel = LogLevel.INFO;
32
- }
33
- // Set up log file if in debug mode or if specified
34
- if (this.logLevel === LogLevel.DEBUG || process.env.STACKMEMORY_LOG_FILE) {
35
- this.logFile =
36
- process.env.STACKMEMORY_LOG_FILE ||
37
- path.join(process.env.HOME || '.', '.stackmemory', 'logs', 'cli.log');
38
- this.ensureLogDirectory();
39
- }
40
- }
41
- static getInstance() {
42
- if (!Logger.instance) {
43
- Logger.instance = new Logger();
44
- }
45
- return Logger.instance;
46
- }
47
- ensureLogDirectory() {
48
- if (this.logFile) {
49
- const logDir = path.dirname(this.logFile);
50
- if (!fs.existsSync(logDir)) {
51
- fs.mkdirSync(logDir, { recursive: true });
52
- }
53
- }
54
- }
55
- writeLog(entry) {
56
- const logLine = JSON.stringify(entry) + '\n';
57
- // Always write to file if configured
58
- if (this.logFile) {
59
- try {
60
- fs.appendFileSync(this.logFile, logLine);
61
- }
62
- catch {
63
- // Silent failure to prevent recursive logging
64
- }
65
- }
66
- // Console output based on level
67
- if (entry.level <= this.logLevel) {
68
- const levelNames = ['ERROR', 'WARN', 'INFO', 'DEBUG'];
69
- const levelName = levelNames[entry.level] || 'UNKNOWN';
70
- const consoleMessage = `[${entry.timestamp}] ${levelName}: ${entry.message}`;
71
- if (entry.level === LogLevel.ERROR) {
72
- console.error(consoleMessage);
73
- if (entry.error) {
74
- console.error(entry.error.stack);
75
- }
76
- }
77
- else if (entry.level === LogLevel.WARN) {
78
- console.warn(consoleMessage);
79
- }
80
- else {
81
- console.log(consoleMessage);
82
- }
83
- }
84
- }
85
- error(message, error, context) {
86
- this.writeLog({
87
- timestamp: new Date().toISOString(),
88
- level: LogLevel.ERROR,
89
- message,
90
- context,
91
- error,
92
- });
93
- }
94
- warn(message, context) {
95
- this.writeLog({
96
- timestamp: new Date().toISOString(),
97
- level: LogLevel.WARN,
98
- message,
99
- context,
100
- });
101
- }
102
- info(message, context) {
103
- this.writeLog({
104
- timestamp: new Date().toISOString(),
105
- level: LogLevel.INFO,
106
- message,
107
- context,
108
- });
109
- }
110
- debug(message, context) {
111
- this.writeLog({
112
- timestamp: new Date().toISOString(),
113
- level: LogLevel.DEBUG,
114
- message,
115
- context,
116
- });
117
- }
118
- }
119
- // Export singleton instance
120
- export const logger = Logger.getInstance();
121
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/core/logger.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=logger.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.test.d.ts","sourceRoot":"","sources":["../../../src/core/logger.test.ts"],"names":[],"mappings":""}
@@ -1,31 +0,0 @@
1
- import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
- import { logger, LogLevel } from './monitoring/logger.js';
3
- describe('Logger', () => {
4
- let consoleSpy;
5
- beforeEach(() => {
6
- consoleSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
7
- });
8
- afterEach(() => {
9
- consoleSpy.mockRestore();
10
- });
11
- it('should have logger instance', () => {
12
- expect(logger).toBeDefined();
13
- });
14
- it('should log info messages', () => {
15
- logger.info('test message');
16
- expect(consoleSpy).toHaveBeenCalled();
17
- });
18
- it('should have working methods', () => {
19
- expect(typeof logger.debug).toBe('function');
20
- expect(typeof logger.info).toBe('function');
21
- expect(typeof logger.warn).toBe('function');
22
- expect(typeof logger.error).toBe('function');
23
- });
24
- it('should have log levels defined', () => {
25
- expect(LogLevel.DEBUG).toBe(3);
26
- expect(LogLevel.INFO).toBe(2);
27
- expect(LogLevel.WARN).toBe(1);
28
- expect(LogLevel.ERROR).toBe(0);
29
- });
30
- });
31
- //# sourceMappingURL=logger.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.test.js","sourceRoot":"","sources":["../../../src/core/logger.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAE1D,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,IAAI,UAAuC,CAAC;IAE5C,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}