@stackmemoryai/stackmemory 0.2.7 → 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 (297) hide show
  1. package/README.md +25 -8
  2. package/dist/scripts/cancel-duplicate-tasks.js +2 -1
  3. package/dist/scripts/cancel-duplicate-tasks.js.map +1 -1
  4. package/dist/scripts/list-linear-tasks.js +3 -4
  5. package/dist/scripts/list-linear-tasks.js.map +1 -1
  6. package/dist/scripts/merge-linear-duplicates-safe.js +4 -2
  7. package/dist/scripts/merge-linear-duplicates-safe.js.map +1 -1
  8. package/dist/scripts/show-linear-summary.js +4 -1
  9. package/dist/scripts/show-linear-summary.js.map +1 -1
  10. package/dist/scripts/status.js +6 -2
  11. package/dist/scripts/status.js.map +1 -1
  12. package/dist/src/cli/auto-detect.js.map +1 -1
  13. package/dist/src/cli/claude-sm.js.map +1 -1
  14. package/dist/src/cli/commands/config.d.ts +6 -0
  15. package/dist/src/cli/commands/config.d.ts.map +1 -0
  16. package/dist/src/cli/commands/config.js +224 -0
  17. package/dist/src/cli/commands/config.js.map +1 -0
  18. package/dist/src/cli/commands/linear.d.ts.map +1 -1
  19. package/dist/src/cli/commands/linear.js +123 -47
  20. package/dist/src/cli/commands/linear.js.map +1 -1
  21. package/dist/src/cli/index.d.ts.map +1 -1
  22. package/dist/src/cli/index.js +48 -1
  23. package/dist/src/cli/index.js.map +1 -1
  24. package/dist/src/core/config/config-manager.d.ts +95 -0
  25. package/dist/src/core/config/config-manager.d.ts.map +1 -0
  26. package/dist/src/core/config/config-manager.js +359 -0
  27. package/dist/src/core/config/config-manager.js.map +1 -0
  28. package/dist/src/core/config/types.d.ts +72 -0
  29. package/dist/src/core/config/types.d.ts.map +1 -0
  30. package/dist/src/core/config/types.js +127 -0
  31. package/dist/src/core/config/types.js.map +1 -0
  32. package/dist/src/core/context/compaction-handler.d.ts +119 -0
  33. package/dist/src/core/context/compaction-handler.d.ts.map +1 -0
  34. package/dist/src/core/context/compaction-handler.js +306 -0
  35. package/dist/src/core/context/compaction-handler.js.map +1 -0
  36. package/dist/src/core/context/model-aware-compaction.d.ts +101 -0
  37. package/dist/src/core/context/model-aware-compaction.d.ts.map +1 -0
  38. package/dist/src/core/context/model-aware-compaction.js +616 -0
  39. package/dist/src/core/context/model-aware-compaction.js.map +1 -0
  40. package/dist/src/core/query/query-parser.d.ts +104 -0
  41. package/dist/src/core/query/query-parser.d.ts.map +1 -0
  42. package/dist/src/core/query/query-parser.js +347 -0
  43. package/dist/src/core/query/query-parser.js.map +1 -0
  44. package/dist/src/core/retrieval/index.d.ts +8 -0
  45. package/dist/src/core/retrieval/index.d.ts.map +1 -0
  46. package/dist/src/core/retrieval/index.js +8 -0
  47. package/dist/src/core/retrieval/index.js.map +1 -0
  48. package/dist/src/core/retrieval/llm-context-retrieval.d.ts +71 -0
  49. package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +1 -0
  50. package/dist/src/core/retrieval/llm-context-retrieval.js +545 -0
  51. package/dist/src/core/retrieval/llm-context-retrieval.js.map +1 -0
  52. package/dist/src/core/retrieval/summary-generator.d.ts +63 -0
  53. package/dist/src/core/retrieval/summary-generator.d.ts.map +1 -0
  54. package/dist/src/core/retrieval/summary-generator.js +622 -0
  55. package/dist/src/core/retrieval/summary-generator.js.map +1 -0
  56. package/dist/src/core/retrieval/types.d.ts +257 -0
  57. package/dist/src/core/retrieval/types.d.ts.map +1 -0
  58. package/dist/src/core/retrieval/types.js +18 -0
  59. package/dist/src/core/retrieval/types.js.map +1 -0
  60. package/dist/src/core/trace/trace-detector.d.ts +108 -0
  61. package/dist/src/core/trace/trace-detector.d.ts.map +1 -0
  62. package/dist/src/core/trace/trace-detector.demo.d.ts +5 -0
  63. package/dist/src/core/trace/trace-detector.demo.d.ts.map +1 -0
  64. package/dist/src/core/trace/trace-detector.demo.js +145 -0
  65. package/dist/src/core/trace/trace-detector.demo.js.map +1 -0
  66. package/dist/src/core/trace/trace-detector.js +425 -0
  67. package/dist/src/core/trace/trace-detector.js.map +1 -0
  68. package/dist/src/core/trace/trace-store.d.ts +60 -0
  69. package/dist/src/core/trace/trace-store.d.ts.map +1 -0
  70. package/dist/src/core/trace/trace-store.js +323 -0
  71. package/dist/src/core/trace/trace-store.js.map +1 -0
  72. package/dist/src/core/trace/types.d.ts +81 -0
  73. package/dist/src/core/trace/types.d.ts.map +1 -0
  74. package/dist/src/core/trace/types.js +70 -0
  75. package/dist/src/core/trace/types.js.map +1 -0
  76. package/dist/src/integrations/linear/sync-manager.d.ts +76 -0
  77. package/dist/src/integrations/linear/sync-manager.d.ts.map +1 -0
  78. package/dist/src/integrations/linear/sync-manager.js +223 -0
  79. package/dist/src/integrations/linear/sync-manager.js.map +1 -0
  80. package/dist/src/integrations/mcp/server.d.ts +8 -0
  81. package/dist/src/integrations/mcp/server.d.ts.map +1 -1
  82. package/dist/src/integrations/mcp/server.js +368 -16
  83. package/dist/src/integrations/mcp/server.js.map +1 -1
  84. package/dist/src/integrations/mcp/trace-test.d.ts +5 -0
  85. package/dist/src/integrations/mcp/trace-test.d.ts.map +1 -0
  86. package/dist/src/integrations/mcp/trace-test.js +54 -0
  87. package/dist/src/integrations/mcp/trace-test.js.map +1 -0
  88. package/dist/src/services/config-service.d.ts +1 -1
  89. package/dist/src/services/config-service.d.ts.map +1 -1
  90. package/dist/src/services/config-service.js.map +1 -1
  91. package/dist/src/types/task.d.ts +11 -1
  92. package/dist/src/types/task.d.ts.map +1 -1
  93. package/dist/src/utils/logger.d.ts +4 -4
  94. package/dist/src/utils/logger.d.ts.map +1 -1
  95. package/dist/src/utils/logger.js.map +1 -1
  96. package/package.json +9 -8
  97. package/dist/attention-scoring/src/attention-tracker.d.ts +0 -79
  98. package/dist/attention-scoring/src/attention-tracker.d.ts.map +0 -1
  99. package/dist/attention-scoring/src/attention-tracker.js +0 -488
  100. package/dist/attention-scoring/src/attention-tracker.js.map +0 -1
  101. package/dist/attention-scoring/src/mcp-integration.d.ts +0 -56
  102. package/dist/attention-scoring/src/mcp-integration.d.ts.map +0 -1
  103. package/dist/attention-scoring/src/mcp-integration.js +0 -369
  104. package/dist/attention-scoring/src/mcp-integration.js.map +0 -1
  105. package/dist/index.js +0 -382
  106. package/dist/p2p-sync/src/p2p-sync.d.ts +0 -81
  107. package/dist/p2p-sync/src/p2p-sync.d.ts.map +0 -1
  108. package/dist/p2p-sync/src/p2p-sync.js +0 -457
  109. package/dist/p2p-sync/src/p2p-sync.js.map +0 -1
  110. package/dist/p2p-sync/src/team-context-sync.d.ts +0 -99
  111. package/dist/p2p-sync/src/team-context-sync.d.ts.map +0 -1
  112. package/dist/p2p-sync/src/team-context-sync.js +0 -491
  113. package/dist/p2p-sync/src/team-context-sync.js.map +0 -1
  114. package/dist/scripts/merge-linear-duplicates.d.ts +0 -7
  115. package/dist/scripts/merge-linear-duplicates.d.ts.map +0 -1
  116. package/dist/scripts/merge-linear-duplicates.js +0 -126
  117. package/dist/scripts/merge-linear-duplicates.js.map +0 -1
  118. package/dist/src/analytics/api/analytics-api.d.ts +0 -24
  119. package/dist/src/analytics/api/analytics-api.d.ts.map +0 -1
  120. package/dist/src/analytics/api/analytics-api.js +0 -279
  121. package/dist/src/analytics/api/analytics-api.js.map +0 -1
  122. package/dist/src/analytics/core/analytics-service.d.ts +0 -23
  123. package/dist/src/analytics/core/analytics-service.d.ts.map +0 -1
  124. package/dist/src/analytics/core/analytics-service.js +0 -160
  125. package/dist/src/analytics/core/analytics-service.js.map +0 -1
  126. package/dist/src/analytics/index.d.ts +0 -12
  127. package/dist/src/analytics/index.d.ts.map +0 -1
  128. package/dist/src/analytics/index.js +0 -11
  129. package/dist/src/analytics/index.js.map +0 -1
  130. package/dist/src/analytics/queries/metrics-queries.d.ts +0 -11
  131. package/dist/src/analytics/queries/metrics-queries.d.ts.map +0 -1
  132. package/dist/src/analytics/queries/metrics-queries.js +0 -179
  133. package/dist/src/analytics/queries/metrics-queries.js.map +0 -1
  134. package/dist/src/analytics/types/metrics.d.ts +0 -60
  135. package/dist/src/analytics/types/metrics.d.ts.map +0 -1
  136. package/dist/src/analytics/types/metrics.js +0 -2
  137. package/dist/src/analytics/types/metrics.js.map +0 -1
  138. package/dist/src/beads/beads-task-store.d.ts +0 -117
  139. package/dist/src/beads/beads-task-store.d.ts.map +0 -1
  140. package/dist/src/beads/beads-task-store.js +0 -318
  141. package/dist/src/beads/beads-task-store.js.map +0 -1
  142. package/dist/src/beads/task-aware-context.d.ts +0 -103
  143. package/dist/src/beads/task-aware-context.d.ts.map +0 -1
  144. package/dist/src/beads/task-aware-context.js +0 -395
  145. package/dist/src/beads/task-aware-context.js.map +0 -1
  146. package/dist/src/beads-task-store.d.ts +0 -117
  147. package/dist/src/beads-task-store.d.ts.map +0 -1
  148. package/dist/src/beads-task-store.js +0 -318
  149. package/dist/src/beads-task-store.js.map +0 -1
  150. package/dist/src/cli/__tests__/index.test.d.ts +0 -5
  151. package/dist/src/cli/__tests__/index.test.d.ts.map +0 -1
  152. package/dist/src/cli/__tests__/index.test.js +0 -726
  153. package/dist/src/cli/__tests__/index.test.js.map +0 -1
  154. package/dist/src/cli/analytics-viewer.d.ts +0 -3
  155. package/dist/src/cli/analytics-viewer.d.ts.map +0 -1
  156. package/dist/src/cli/analytics-viewer.js +0 -89
  157. package/dist/src/cli/analytics-viewer.js.map +0 -1
  158. package/dist/src/cli/cli.d.ts +0 -7
  159. package/dist/src/cli/cli.d.ts.map +0 -1
  160. package/dist/src/cli/cli.js +0 -704
  161. package/dist/src/cli/cli.js.map +0 -1
  162. package/dist/src/cli/project-commands.d.ts +0 -8
  163. package/dist/src/cli/project-commands.d.ts.map +0 -1
  164. package/dist/src/cli/project-commands.js +0 -212
  165. package/dist/src/cli/project-commands.js.map +0 -1
  166. package/dist/src/cli.d.ts +0 -7
  167. package/dist/src/cli.d.ts.map +0 -1
  168. package/dist/src/cli.js +0 -73
  169. package/dist/src/cli.js.map +0 -1
  170. package/dist/src/core/context/__tests__/frame-manager.test.d.ts +0 -5
  171. package/dist/src/core/context/__tests__/frame-manager.test.d.ts.map +0 -1
  172. package/dist/src/core/context/__tests__/frame-manager.test.js +0 -892
  173. package/dist/src/core/context/__tests__/frame-manager.test.js.map +0 -1
  174. package/dist/src/core/error-handler.d.ts +0 -46
  175. package/dist/src/core/error-handler.d.ts.map +0 -1
  176. package/dist/src/core/error-handler.js +0 -212
  177. package/dist/src/core/error-handler.js.map +0 -1
  178. package/dist/src/core/errors/__tests__/error-handling.test.d.ts +0 -5
  179. package/dist/src/core/errors/__tests__/error-handling.test.d.ts.map +0 -1
  180. package/dist/src/core/errors/__tests__/error-handling.test.js +0 -239
  181. package/dist/src/core/errors/__tests__/error-handling.test.js.map +0 -1
  182. package/dist/src/core/frame-manager.d.ts +0 -106
  183. package/dist/src/core/frame-manager.d.ts.map +0 -1
  184. package/dist/src/core/frame-manager.js +0 -387
  185. package/dist/src/core/frame-manager.js.map +0 -1
  186. package/dist/src/core/logger.d.ts +0 -24
  187. package/dist/src/core/logger.d.ts.map +0 -1
  188. package/dist/src/core/logger.js +0 -121
  189. package/dist/src/core/logger.js.map +0 -1
  190. package/dist/src/core/logger.test.d.ts +0 -2
  191. package/dist/src/core/logger.test.d.ts.map +0 -1
  192. package/dist/src/core/logger.test.js +0 -31
  193. package/dist/src/core/logger.test.js.map +0 -1
  194. package/dist/src/core/progress-tracker.d.ts +0 -95
  195. package/dist/src/core/progress-tracker.d.ts.map +0 -1
  196. package/dist/src/core/progress-tracker.js +0 -178
  197. package/dist/src/core/progress-tracker.js.map +0 -1
  198. package/dist/src/core/project-manager.d.ts +0 -130
  199. package/dist/src/core/project-manager.d.ts.map +0 -1
  200. package/dist/src/core/project-manager.js +0 -582
  201. package/dist/src/core/project-manager.js.map +0 -1
  202. package/dist/src/core/update-checker.d.ts +0 -38
  203. package/dist/src/core/update-checker.d.ts.map +0 -1
  204. package/dist/src/core/update-checker.js +0 -156
  205. package/dist/src/core/update-checker.js.map +0 -1
  206. package/dist/src/error-handler.d.ts +0 -42
  207. package/dist/src/error-handler.d.ts.map +0 -1
  208. package/dist/src/error-handler.js +0 -155
  209. package/dist/src/error-handler.js.map +0 -1
  210. package/dist/src/features/tasks/__tests__/pebbles-task-store.test.d.ts +0 -5
  211. package/dist/src/features/tasks/__tests__/pebbles-task-store.test.d.ts.map +0 -1
  212. package/dist/src/features/tasks/__tests__/pebbles-task-store.test.js +0 -712
  213. package/dist/src/features/tasks/__tests__/pebbles-task-store.test.js.map +0 -1
  214. package/dist/src/frame-manager.d.ts +0 -106
  215. package/dist/src/frame-manager.d.ts.map +0 -1
  216. package/dist/src/frame-manager.js +0 -361
  217. package/dist/src/frame-manager.js.map +0 -1
  218. package/dist/src/integrations/browser-mcp.d.ts +0 -94
  219. package/dist/src/integrations/browser-mcp.d.ts.map +0 -1
  220. package/dist/src/integrations/browser-mcp.js +0 -431
  221. package/dist/src/integrations/browser-mcp.js.map +0 -1
  222. package/dist/src/integrations/linear/__tests__/auth.test.d.ts +0 -5
  223. package/dist/src/integrations/linear/__tests__/auth.test.d.ts.map +0 -1
  224. package/dist/src/integrations/linear/__tests__/auth.test.js +0 -517
  225. package/dist/src/integrations/linear/__tests__/auth.test.js.map +0 -1
  226. package/dist/src/integrations/linear/__tests__/sync-service.test.d.ts +0 -5
  227. package/dist/src/integrations/linear/__tests__/sync-service.test.d.ts.map +0 -1
  228. package/dist/src/integrations/linear/__tests__/sync-service.test.js +0 -700
  229. package/dist/src/integrations/linear/__tests__/sync-service.test.js.map +0 -1
  230. package/dist/src/integrations/linear-auth.d.ts +0 -99
  231. package/dist/src/integrations/linear-auth.d.ts.map +0 -1
  232. package/dist/src/integrations/linear-auth.js +0 -319
  233. package/dist/src/integrations/linear-auth.js.map +0 -1
  234. package/dist/src/integrations/linear-auto-sync.d.ts +0 -77
  235. package/dist/src/integrations/linear-auto-sync.d.ts.map +0 -1
  236. package/dist/src/integrations/linear-auto-sync.js +0 -268
  237. package/dist/src/integrations/linear-auto-sync.js.map +0 -1
  238. package/dist/src/integrations/linear-client.d.ts +0 -86
  239. package/dist/src/integrations/linear-client.d.ts.map +0 -1
  240. package/dist/src/integrations/linear-client.js +0 -277
  241. package/dist/src/integrations/linear-client.js.map +0 -1
  242. package/dist/src/integrations/linear-config.d.ts +0 -51
  243. package/dist/src/integrations/linear-config.d.ts.map +0 -1
  244. package/dist/src/integrations/linear-config.js +0 -103
  245. package/dist/src/integrations/linear-config.js.map +0 -1
  246. package/dist/src/integrations/linear-sync.d.ts +0 -97
  247. package/dist/src/integrations/linear-sync.d.ts.map +0 -1
  248. package/dist/src/integrations/linear-sync.js +0 -391
  249. package/dist/src/integrations/linear-sync.js.map +0 -1
  250. package/dist/src/integrations/mcp/__tests__/server.test.d.ts +0 -5
  251. package/dist/src/integrations/mcp/__tests__/server.test.d.ts.map +0 -1
  252. package/dist/src/integrations/mcp/__tests__/server.test.js +0 -790
  253. package/dist/src/integrations/mcp/__tests__/server.test.js.map +0 -1
  254. package/dist/src/logger.d.ts +0 -24
  255. package/dist/src/logger.d.ts.map +0 -1
  256. package/dist/src/logger.js +0 -120
  257. package/dist/src/logger.js.map +0 -1
  258. package/dist/src/mcp/mcp-server.d.ts +0 -40
  259. package/dist/src/mcp/mcp-server.d.ts.map +0 -1
  260. package/dist/src/mcp/mcp-server.js +0 -828
  261. package/dist/src/mcp/mcp-server.js.map +0 -1
  262. package/dist/src/mcp-server.d.ts +0 -32
  263. package/dist/src/mcp-server.d.ts.map +0 -1
  264. package/dist/src/mcp-server.js +0 -441
  265. package/dist/src/mcp-server.js.map +0 -1
  266. package/dist/src/pebbles/pebbles-task-store.d.ts +0 -117
  267. package/dist/src/pebbles/pebbles-task-store.d.ts.map +0 -1
  268. package/dist/src/pebbles/pebbles-task-store.js +0 -335
  269. package/dist/src/pebbles/pebbles-task-store.js.map +0 -1
  270. package/dist/src/pebbles/task-aware-context.d.ts +0 -103
  271. package/dist/src/pebbles/task-aware-context.d.ts.map +0 -1
  272. package/dist/src/pebbles/task-aware-context.js +0 -412
  273. package/dist/src/pebbles/task-aware-context.js.map +0 -1
  274. package/dist/src/railway/index.d.ts +0 -7
  275. package/dist/src/railway/index.d.ts.map +0 -1
  276. package/dist/src/railway/index.js +0 -401
  277. package/dist/src/railway/index.js.map +0 -1
  278. package/dist/src/runway/auth/auth-middleware.d.ts +0 -66
  279. package/dist/src/runway/auth/auth-middleware.d.ts.map +0 -1
  280. package/dist/src/runway/auth/auth-middleware.js +0 -337
  281. package/dist/src/runway/auth/auth-middleware.js.map +0 -1
  282. package/dist/src/runway/server/runway-mcp-server.d.ts +0 -46
  283. package/dist/src/runway/server/runway-mcp-server.d.ts.map +0 -1
  284. package/dist/src/runway/server/runway-mcp-server.js +0 -601
  285. package/dist/src/runway/server/runway-mcp-server.js.map +0 -1
  286. package/dist/src/runway.bak/auth/auth-middleware.d.ts +0 -66
  287. package/dist/src/runway.bak/auth/auth-middleware.d.ts.map +0 -1
  288. package/dist/src/runway.bak/auth/auth-middleware.js +0 -337
  289. package/dist/src/runway.bak/auth/auth-middleware.js.map +0 -1
  290. package/dist/src/runway.bak/server/runway-mcp-server.d.ts +0 -46
  291. package/dist/src/runway.bak/server/runway-mcp-server.d.ts.map +0 -1
  292. package/dist/src/runway.bak/server/runway-mcp-server.js +0 -601
  293. package/dist/src/runway.bak/server/runway-mcp-server.js.map +0 -1
  294. package/dist/src/task-aware-context.d.ts +0 -103
  295. package/dist/src/task-aware-context.d.ts.map +0 -1
  296. package/dist/src/task-aware-context.js +0 -395
  297. package/dist/src/task-aware-context.js.map +0 -1
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Query Parser for StackMemory
3
+ * Handles both natural language and structured queries
4
+ */
5
+ export interface TimeFilter {
6
+ last?: string;
7
+ since?: Date;
8
+ until?: Date;
9
+ between?: [Date, Date];
10
+ specific?: Date;
11
+ }
12
+ export interface ContentFilter {
13
+ topic?: string[];
14
+ files?: string[];
15
+ errors?: string[];
16
+ tools?: string[];
17
+ }
18
+ export interface FrameFilter {
19
+ type?: FrameType[];
20
+ status?: FrameStatus[];
21
+ score?: {
22
+ min?: number;
23
+ max?: number;
24
+ };
25
+ depth?: {
26
+ min?: number;
27
+ max?: number;
28
+ };
29
+ }
30
+ export interface PeopleFilter {
31
+ owner?: string[];
32
+ contributors?: string[];
33
+ team?: string;
34
+ }
35
+ export interface OutputControl {
36
+ limit?: number;
37
+ sort?: 'time' | 'score' | 'relevance';
38
+ include?: ('digests' | 'events' | 'anchors')[];
39
+ format?: 'full' | 'summary' | 'ids';
40
+ }
41
+ export interface StackMemoryQuery {
42
+ time?: TimeFilter;
43
+ content?: ContentFilter;
44
+ frame?: FrameFilter;
45
+ people?: PeopleFilter;
46
+ output?: OutputControl;
47
+ }
48
+ export interface QueryResponse {
49
+ original: string;
50
+ interpreted: StackMemoryQuery;
51
+ expanded: StackMemoryQuery;
52
+ suggestions?: string[];
53
+ validationErrors?: string[];
54
+ }
55
+ export declare enum FrameType {
56
+ TASK = "task",
57
+ DEBUG = "debug",
58
+ FEATURE = "feature",
59
+ ARCHITECTURE = "architecture",
60
+ BUG = "bug",
61
+ REFACTOR = "refactor"
62
+ }
63
+ export declare enum FrameStatus {
64
+ OPEN = "open",
65
+ CLOSED = "closed",
66
+ STALLED = "stalled"
67
+ }
68
+ export declare class QueryParser {
69
+ private shortcuts;
70
+ /**
71
+ * Parse natural language query into structured format
72
+ */
73
+ parseNaturalLanguage(query: string): StackMemoryQuery;
74
+ /**
75
+ * Parse structured query with validation
76
+ */
77
+ parseStructured(query: StackMemoryQuery): StackMemoryQuery;
78
+ /**
79
+ * Parse hybrid query (natural language with structured modifiers)
80
+ */
81
+ parseHybrid(naturalQuery: string, modifiers?: Partial<StackMemoryQuery>): StackMemoryQuery;
82
+ private parseTimePatterns;
83
+ private parseTopicPatterns;
84
+ private parsePeoplePatterns;
85
+ private expandShortcuts;
86
+ private mergeQueries;
87
+ /**
88
+ * Expand query with synonyms and related terms
89
+ */
90
+ expandQuery(query: StackMemoryQuery): StackMemoryQuery;
91
+ /**
92
+ * Main parse method that returns a complete QueryResponse
93
+ */
94
+ parse(query: string | StackMemoryQuery): QueryResponse;
95
+ /**
96
+ * Validate query for errors and inconsistencies
97
+ */
98
+ private validateQuery;
99
+ /**
100
+ * Generate query suggestions based on the interpreted query
101
+ */
102
+ private generateSuggestions;
103
+ }
104
+ //# sourceMappingURL=query-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-parser.d.ts","sourceRoot":"","sources":["../../../../src/core/query/query-parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,347 @@
1
+ /**
2
+ * Query Parser for StackMemory
3
+ * Handles both natural language and structured queries
4
+ */
5
+ export var FrameType;
6
+ (function (FrameType) {
7
+ FrameType["TASK"] = "task";
8
+ FrameType["DEBUG"] = "debug";
9
+ FrameType["FEATURE"] = "feature";
10
+ FrameType["ARCHITECTURE"] = "architecture";
11
+ FrameType["BUG"] = "bug";
12
+ FrameType["REFACTOR"] = "refactor";
13
+ })(FrameType || (FrameType = {}));
14
+ export var FrameStatus;
15
+ (function (FrameStatus) {
16
+ FrameStatus["OPEN"] = "open";
17
+ FrameStatus["CLOSED"] = "closed";
18
+ FrameStatus["STALLED"] = "stalled";
19
+ })(FrameStatus || (FrameStatus = {}));
20
+ export class QueryParser {
21
+ shortcuts = new Map([
22
+ ['today', { time: { last: '24h' } }],
23
+ [
24
+ 'yesterday',
25
+ { time: { last: '48h', since: new Date(Date.now() - 48 * 3600000) } },
26
+ ],
27
+ ['this week', { time: { last: '7d' } }],
28
+ ['bugs', { frame: { type: [FrameType.BUG, FrameType.DEBUG] } }],
29
+ ['features', { frame: { type: [FrameType.FEATURE] } }],
30
+ ['critical', { frame: { score: { min: 0.8 } } }],
31
+ ['recent', { time: { last: '4h' } }],
32
+ ]);
33
+ /**
34
+ * Parse natural language query into structured format
35
+ */
36
+ parseNaturalLanguage(query) {
37
+ const result = {};
38
+ const lowerQuery = query.toLowerCase();
39
+ // Time-based patterns
40
+ this.parseTimePatterns(lowerQuery, result);
41
+ // Topic-based patterns
42
+ this.parseTopicPatterns(lowerQuery, result);
43
+ // People-based patterns
44
+ this.parsePeoplePatterns(lowerQuery, result);
45
+ // Shortcut expansion
46
+ this.expandShortcuts(lowerQuery, result);
47
+ // Default output settings if not specified
48
+ if (!result.output) {
49
+ result.output = {
50
+ limit: 50,
51
+ sort: 'time',
52
+ format: 'summary',
53
+ };
54
+ }
55
+ return result;
56
+ }
57
+ /**
58
+ * Parse structured query with validation
59
+ */
60
+ parseStructured(query) {
61
+ // Validate and normalize the query
62
+ if (query.frame?.score) {
63
+ if (query.frame.score.min !== undefined) {
64
+ query.frame.score.min = Math.max(0, Math.min(1, query.frame.score.min));
65
+ }
66
+ if (query.frame.score.max !== undefined) {
67
+ query.frame.score.max = Math.max(0, Math.min(1, query.frame.score.max));
68
+ }
69
+ }
70
+ // Apply defaults
71
+ if (!query.output) {
72
+ query.output = {
73
+ limit: 50,
74
+ sort: 'time',
75
+ format: 'full',
76
+ };
77
+ }
78
+ return query;
79
+ }
80
+ /**
81
+ * Parse hybrid query (natural language with structured modifiers)
82
+ */
83
+ parseHybrid(naturalQuery, modifiers) {
84
+ const nlQuery = this.parseNaturalLanguage(naturalQuery);
85
+ return this.mergeQueries(nlQuery, modifiers || {});
86
+ }
87
+ parseTimePatterns(query, result) {
88
+ // "last day", "last week", "last month"
89
+ const lastPattern = /last\s+(\d+)?\s*(day|hour|week|month)s?/i;
90
+ const match = query.match(lastPattern);
91
+ if (match) {
92
+ const quantity = match[1] ? parseInt(match[1]) : 1;
93
+ const unit = match[2].toLowerCase();
94
+ const unitMap = {
95
+ hour: 'h',
96
+ day: 'd',
97
+ week: 'w',
98
+ month: 'm',
99
+ };
100
+ result.time = { last: `${quantity}${unitMap[unit]}` };
101
+ }
102
+ // "yesterday", "today", "this week"
103
+ for (const [shortcut, value] of this.shortcuts) {
104
+ if (query.includes(shortcut) && value.time) {
105
+ result.time = { ...result.time, ...value.time };
106
+ }
107
+ }
108
+ // Date patterns "December 15", "2024-12-20"
109
+ const datePattern = /(\d{4}-\d{2}-\d{2})|((jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\w*\s+\d{1,2})/i;
110
+ const dateMatch = query.match(datePattern);
111
+ if (dateMatch) {
112
+ try {
113
+ const date = new Date(dateMatch[0]);
114
+ if (!isNaN(date.getTime())) {
115
+ result.time = { ...result.time, specific: date };
116
+ }
117
+ }
118
+ catch {
119
+ // Invalid date, ignore
120
+ }
121
+ }
122
+ }
123
+ parseTopicPatterns(query, result) {
124
+ // Common topics
125
+ const topics = [
126
+ 'auth',
127
+ 'authentication',
128
+ 'login',
129
+ 'oauth',
130
+ 'database',
131
+ 'migration',
132
+ 'cache',
133
+ 'api',
134
+ 'bug',
135
+ 'error',
136
+ 'fix',
137
+ 'feature',
138
+ 'test',
139
+ 'security',
140
+ 'performance',
141
+ ];
142
+ const foundTopics = [];
143
+ for (const topic of topics) {
144
+ if (query.includes(topic)) {
145
+ foundTopics.push(topic);
146
+ }
147
+ }
148
+ if (foundTopics.length > 0) {
149
+ result.content = { ...result.content, topic: foundTopics };
150
+ }
151
+ // File patterns
152
+ const filePattern = /(\w+\.\w+)|(\*\.\w+)/g;
153
+ const files = query.match(filePattern);
154
+ if (files) {
155
+ result.content = { ...result.content, files };
156
+ }
157
+ }
158
+ parsePeoplePatterns(query, result) {
159
+ // "@alice", "@bob" mentions
160
+ const mentionPattern = /@(\w+)/g;
161
+ const mentions = [...query.matchAll(mentionPattern)].map((m) => m[1]);
162
+ if (mentions.length > 0) {
163
+ result.people = { owner: mentions };
164
+ }
165
+ // "alice's work", "bob's changes"
166
+ const possessivePattern = /(\w+)'s\s+(work|changes|commits|frames)/i;
167
+ const possMatch = query.match(possessivePattern);
168
+ if (possMatch) {
169
+ const person = possMatch[1].toLowerCase();
170
+ result.people = { ...result.people, owner: [person] };
171
+ }
172
+ // "team work"
173
+ if (query.includes('team')) {
174
+ result.people = { ...result.people, team: '$current_team' };
175
+ }
176
+ }
177
+ expandShortcuts(query, result) {
178
+ // Priority shortcuts
179
+ if (query.includes('critical')) {
180
+ result.frame = {
181
+ ...result.frame,
182
+ score: { min: 0.8 },
183
+ };
184
+ }
185
+ else if (query.includes('high')) {
186
+ result.frame = {
187
+ ...result.frame,
188
+ score: { min: 0.7 },
189
+ };
190
+ }
191
+ if (query.includes('low priority')) {
192
+ result.frame = {
193
+ ...result.frame,
194
+ score: { max: 0.3 },
195
+ };
196
+ }
197
+ // Status shortcuts
198
+ if (query.includes('open') || query.includes('active')) {
199
+ result.frame = {
200
+ ...result.frame,
201
+ status: [FrameStatus.OPEN],
202
+ };
203
+ }
204
+ if (query.includes('closed') || query.includes('done')) {
205
+ result.frame = {
206
+ ...result.frame,
207
+ status: [FrameStatus.CLOSED],
208
+ };
209
+ }
210
+ }
211
+ mergeQueries(base, overlay) {
212
+ return {
213
+ time: { ...base.time, ...overlay.time },
214
+ content: { ...base.content, ...overlay.content },
215
+ frame: { ...base.frame, ...overlay.frame },
216
+ people: { ...base.people, ...overlay.people },
217
+ output: { ...base.output, ...overlay.output },
218
+ };
219
+ }
220
+ /**
221
+ * Expand query with synonyms and related terms
222
+ */
223
+ expandQuery(query) {
224
+ const synonyms = {
225
+ auth: ['authentication', 'oauth', 'login', 'session', 'jwt'],
226
+ bug: ['error', 'issue', 'problem', 'fix', 'defect'],
227
+ database: ['db', 'sql', 'postgres', 'migration', 'schema'],
228
+ test: ['testing', 'spec', 'unit', 'integration', 'e2e'],
229
+ };
230
+ if (query.content?.topic) {
231
+ const expandedTopics = new Set(query.content.topic);
232
+ for (const topic of query.content.topic) {
233
+ const syns = synonyms[topic.toLowerCase()];
234
+ if (syns) {
235
+ syns.forEach((s) => expandedTopics.add(s));
236
+ }
237
+ }
238
+ query.content.topic = Array.from(expandedTopics);
239
+ }
240
+ return query;
241
+ }
242
+ /**
243
+ * Main parse method that returns a complete QueryResponse
244
+ */
245
+ parse(query) {
246
+ const original = typeof query === 'string' ? query : JSON.stringify(query);
247
+ // Parse based on input type (clone to avoid mutation)
248
+ const interpreted = typeof query === 'string'
249
+ ? this.parseNaturalLanguage(query)
250
+ : this.parseStructured(JSON.parse(JSON.stringify(query)));
251
+ // Validate the query
252
+ const validationErrors = this.validateQuery(interpreted);
253
+ // Expand with synonyms
254
+ const expanded = this.expandQuery(JSON.parse(JSON.stringify(interpreted)));
255
+ // Generate suggestions
256
+ const suggestions = this.generateSuggestions(interpreted, validationErrors);
257
+ return {
258
+ original,
259
+ interpreted,
260
+ expanded,
261
+ suggestions,
262
+ validationErrors: validationErrors.length > 0 ? validationErrors : undefined,
263
+ };
264
+ }
265
+ /**
266
+ * Validate query for errors and inconsistencies
267
+ */
268
+ validateQuery(query) {
269
+ const errors = [];
270
+ // Validate time filters
271
+ if (query.time) {
272
+ if (query.time.since && query.time.until) {
273
+ if (query.time.since > query.time.until) {
274
+ errors.push('Time filter: "since" date is after "until" date');
275
+ }
276
+ }
277
+ if (query.time.between) {
278
+ if (query.time.between[0] > query.time.between[1]) {
279
+ errors.push('Time filter: Invalid date range in "between"');
280
+ }
281
+ }
282
+ }
283
+ // Validate score ranges
284
+ if (query.frame?.score) {
285
+ if (query.frame.score.min !== undefined &&
286
+ query.frame.score.max !== undefined) {
287
+ if (query.frame.score.min > query.frame.score.max) {
288
+ errors.push('Frame filter: Minimum score is greater than maximum score');
289
+ }
290
+ }
291
+ }
292
+ // Validate depth ranges
293
+ if (query.frame?.depth) {
294
+ if (query.frame.depth.min !== undefined &&
295
+ query.frame.depth.max !== undefined) {
296
+ if (query.frame.depth.min > query.frame.depth.max) {
297
+ errors.push('Frame filter: Minimum depth is greater than maximum depth');
298
+ }
299
+ }
300
+ }
301
+ // Validate output limit
302
+ if (query.output?.limit !== undefined) {
303
+ if (query.output.limit < 1 || query.output.limit > 1000) {
304
+ errors.push('Output limit must be between 1 and 1000');
305
+ }
306
+ }
307
+ return errors;
308
+ }
309
+ /**
310
+ * Generate query suggestions based on the interpreted query
311
+ */
312
+ generateSuggestions(query, errors) {
313
+ const suggestions = [];
314
+ // If no time filter, suggest adding one
315
+ if (!query.time) {
316
+ suggestions.push('Try adding a time filter like "last 24h" or "today"');
317
+ }
318
+ // If very broad query, suggest refinement
319
+ if (!query.content?.topic && !query.frame?.type && !query.people) {
320
+ suggestions.push('Consider filtering by topic, frame type, or people to narrow results');
321
+ }
322
+ // If searching for bugs/errors without time limit
323
+ if (query.frame?.type?.includes(FrameType.BUG) && !query.time) {
324
+ suggestions.push('Add a time filter to focus on recent bugs');
325
+ }
326
+ // If high score threshold without type filter
327
+ if (query.frame?.score?.min &&
328
+ query.frame.score.min >= 0.8 &&
329
+ !query.frame?.type) {
330
+ suggestions.push('Consider adding frame type filter with high score threshold');
331
+ }
332
+ // Suggest shortcuts if applicable
333
+ if (query.time?.last === '24h') {
334
+ suggestions.push('You can use "today" as a shortcut for last 24 hours');
335
+ }
336
+ if (query.frame?.type?.includes(FrameType.BUG) &&
337
+ query.frame?.type?.includes(FrameType.DEBUG)) {
338
+ suggestions.push('You can use "bugs" as a shortcut for bug and debug frames');
339
+ }
340
+ // If there are errors, suggest corrections
341
+ if (errors.length > 0) {
342
+ suggestions.push('Please correct the validation errors before running the query');
343
+ }
344
+ return suggestions;
345
+ }
346
+ }
347
+ //# sourceMappingURL=query-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-parser.js","sourceRoot":"","sources":["../../../../src/core/query/query-parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * LLM-Driven Context Retrieval Module
3
+ * Exports all retrieval functionality
4
+ */
5
+ export * from './types.js';
6
+ export * from './summary-generator.js';
7
+ export * from './llm-context-retrieval.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/retrieval/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * LLM-Driven Context Retrieval Module
3
+ * Exports all retrieval functionality
4
+ */
5
+ export * from './types.js';
6
+ export * from './summary-generator.js';
7
+ export * from './llm-context-retrieval.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/retrieval/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * LLM-Driven Context Retrieval System
3
+ * Uses LLM analysis to intelligently select relevant context
4
+ */
5
+ import Database from 'better-sqlite3';
6
+ import { FrameManager } from '../context/frame-manager.js';
7
+ import { CompressedSummary, RetrievedContext, RetrievalConfig, RetrievalHints } from './types.js';
8
+ /**
9
+ * LLM provider interface for context analysis
10
+ */
11
+ export interface LLMProvider {
12
+ analyze(prompt: string, maxTokens: number): Promise<string>;
13
+ }
14
+ /**
15
+ * Main LLM Context Retrieval class
16
+ */
17
+ export declare class LLMContextRetrieval {
18
+ private db;
19
+ private frameManager;
20
+ private summaryGenerator;
21
+ private queryParser;
22
+ private heuristicAnalyzer;
23
+ private llmProvider?;
24
+ private config;
25
+ private projectId;
26
+ constructor(db: Database.Database, frameManager: FrameManager, projectId: string, config?: Partial<RetrievalConfig>, llmProvider?: LLMProvider);
27
+ /**
28
+ * Retrieve context based on query using LLM analysis
29
+ */
30
+ retrieveContext(query: string, options?: {
31
+ tokenBudget?: number;
32
+ hints?: RetrievalHints;
33
+ forceRefresh?: boolean;
34
+ }): Promise<RetrievedContext>;
35
+ /**
36
+ * Perform LLM analysis or fall back to heuristics
37
+ */
38
+ private analyzeWithLLM;
39
+ /**
40
+ * Build the prompt for LLM analysis
41
+ */
42
+ private buildAnalysisPrompt;
43
+ /**
44
+ * Parse LLM response into structured analysis
45
+ */
46
+ private parseAnalysisResponse;
47
+ private assessQueryComplexity;
48
+ /**
49
+ * Retrieve frames based on analysis
50
+ */
51
+ private retrieveFrames;
52
+ private getFrameAnchors;
53
+ /**
54
+ * Assemble final context string
55
+ */
56
+ private assembleContext;
57
+ private summarizeEvents;
58
+ /**
59
+ * Get just the compressed summary (useful for external analysis)
60
+ */
61
+ getSummary(forceRefresh?: boolean): CompressedSummary;
62
+ /**
63
+ * Set LLM provider
64
+ */
65
+ setLLMProvider(provider: LLMProvider): void;
66
+ /**
67
+ * Clear caches
68
+ */
69
+ clearCache(): void;
70
+ }
71
+ //# sourceMappingURL=llm-context-retrieval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-context-retrieval.d.ts","sourceRoot":"","sources":["../../../../src/core/retrieval/llm-context-retrieval.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EACL,YAAY,EAIb,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,iBAAiB,EAGjB,gBAAgB,EAGhB,eAAe,EAEf,cAAc,EAEf,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7D;AAoND;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAS;gBAGxB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,EACrC,WAAW,CAAC,EAAE,WAAW;IAiB3B;;OAEG;IACU,eAAe,CAC1B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,cAAc,CAAC;QACvB,YAAY,CAAC,EAAE,OAAO,CAAC;KACnB,GACL,OAAO,CAAC,gBAAgB,CAAC;IAmE5B;;OAEG;YACW,cAAc;IA8D5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqD3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA2D7B,OAAO,CAAC,qBAAqB;IAS7B;;OAEG;IACH,OAAO,CAAC,cAAc;IAgDtB,OAAO,CAAC,eAAe;IAoBvB;;OAEG;IACH,OAAO,CAAC,eAAe;IA8EvB,OAAO,CAAC,eAAe;IAWvB;;OAEG;IACI,UAAU,CAAC,YAAY,UAAQ,GAAG,iBAAiB;IAI1D;;OAEG;IACI,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAIlD;;OAEG;IACI,UAAU,IAAI,IAAI;CAG1B"}