bunqueue 1.9.7 → 1.9.9

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 (245) hide show
  1. package/dist/application/backgroundTasks.d.ts +3 -6
  2. package/dist/application/backgroundTasks.d.ts.map +1 -1
  3. package/dist/application/backgroundTasks.js +10 -179
  4. package/dist/application/backgroundTasks.js.map +1 -1
  5. package/dist/application/cleanupTasks.d.ts +1 -1
  6. package/dist/application/cleanupTasks.d.ts.map +1 -1
  7. package/dist/application/cleanupTasks.js +61 -22
  8. package/dist/application/cleanupTasks.js.map +1 -1
  9. package/dist/application/clientTracking.d.ts +22 -0
  10. package/dist/application/clientTracking.d.ts.map +1 -0
  11. package/dist/application/clientTracking.js +118 -0
  12. package/dist/application/clientTracking.js.map +1 -0
  13. package/dist/application/contextFactory.d.ts +97 -0
  14. package/dist/application/contextFactory.d.ts.map +1 -0
  15. package/dist/application/contextFactory.js +170 -0
  16. package/dist/application/contextFactory.js.map +1 -0
  17. package/dist/application/dependencyProcessor.d.ts +11 -0
  18. package/dist/application/dependencyProcessor.d.ts.map +1 -0
  19. package/dist/application/dependencyProcessor.js +69 -0
  20. package/dist/application/dependencyProcessor.js.map +1 -0
  21. package/dist/application/dlqManager.d.ts +12 -0
  22. package/dist/application/dlqManager.d.ts.map +1 -1
  23. package/dist/application/dlqManager.js +36 -0
  24. package/dist/application/dlqManager.js.map +1 -1
  25. package/dist/application/lockManager.d.ts +3 -49
  26. package/dist/application/lockManager.d.ts.map +1 -1
  27. package/dist/application/lockManager.js +101 -272
  28. package/dist/application/lockManager.js.map +1 -1
  29. package/dist/application/lockOperations.d.ts +39 -0
  30. package/dist/application/lockOperations.d.ts.map +1 -0
  31. package/dist/application/lockOperations.js +101 -0
  32. package/dist/application/lockOperations.js.map +1 -0
  33. package/dist/application/operations/ack.d.ts +1 -5
  34. package/dist/application/operations/ack.d.ts.map +1 -1
  35. package/dist/application/operations/ack.js +43 -259
  36. package/dist/application/operations/ack.js.map +1 -1
  37. package/dist/application/operations/ackHelpers.d.ts +79 -0
  38. package/dist/application/operations/ackHelpers.d.ts.map +1 -0
  39. package/dist/application/operations/ackHelpers.js +173 -0
  40. package/dist/application/operations/ackHelpers.js.map +1 -0
  41. package/dist/application/operations/jobManagement.d.ts +2 -0
  42. package/dist/application/operations/jobManagement.d.ts.map +1 -1
  43. package/dist/application/operations/jobManagement.js +8 -0
  44. package/dist/application/operations/jobManagement.js.map +1 -1
  45. package/dist/application/operations/push.d.ts.map +1 -1
  46. package/dist/application/operations/push.js +20 -6
  47. package/dist/application/operations/push.js.map +1 -1
  48. package/dist/application/operations/queryOperations.d.ts +11 -0
  49. package/dist/application/operations/queryOperations.d.ts.map +1 -1
  50. package/dist/application/operations/queryOperations.js +32 -0
  51. package/dist/application/operations/queryOperations.js.map +1 -1
  52. package/dist/application/queueManager.d.ts +3 -11
  53. package/dist/application/queueManager.d.ts.map +1 -1
  54. package/dist/application/queueManager.js +98 -244
  55. package/dist/application/queueManager.js.map +1 -1
  56. package/dist/application/stallDetection.d.ts +11 -0
  57. package/dist/application/stallDetection.d.ts.map +1 -0
  58. package/dist/application/stallDetection.js +128 -0
  59. package/dist/application/stallDetection.js.map +1 -0
  60. package/dist/application/types.js +1 -1
  61. package/dist/application/types.js.map +1 -1
  62. package/dist/cli/client.d.ts +3 -5
  63. package/dist/cli/client.d.ts.map +1 -1
  64. package/dist/cli/client.js +31 -27
  65. package/dist/cli/client.js.map +1 -1
  66. package/dist/cli/commands/core.js +3 -3
  67. package/dist/cli/commands/core.js.map +1 -1
  68. package/dist/cli/commands/job.js +14 -14
  69. package/dist/cli/commands/job.js.map +1 -1
  70. package/dist/cli/commands/server.d.ts.map +1 -1
  71. package/dist/cli/commands/server.js +5 -29
  72. package/dist/cli/commands/server.js.map +1 -1
  73. package/dist/cli/index.d.ts.map +1 -1
  74. package/dist/cli/index.js +1 -9
  75. package/dist/cli/index.js.map +1 -1
  76. package/dist/client/events.d.ts +0 -1
  77. package/dist/client/events.d.ts.map +1 -1
  78. package/dist/client/events.js +4 -7
  79. package/dist/client/events.js.map +1 -1
  80. package/dist/client/flow.d.ts +23 -1
  81. package/dist/client/flow.d.ts.map +1 -1
  82. package/dist/client/flow.js +166 -68
  83. package/dist/client/flow.js.map +1 -1
  84. package/dist/client/queue/queue.d.ts.map +1 -1
  85. package/dist/client/queue/queue.js +3 -1
  86. package/dist/client/queue/queue.js.map +1 -1
  87. package/dist/client/sandboxed/types.d.ts +1 -0
  88. package/dist/client/sandboxed/types.d.ts.map +1 -1
  89. package/dist/client/sandboxed/worker.d.ts +1 -0
  90. package/dist/client/sandboxed/worker.d.ts.map +1 -1
  91. package/dist/client/sandboxed/worker.js +31 -8
  92. package/dist/client/sandboxed/worker.js.map +1 -1
  93. package/dist/client/sandboxed/wrapper.d.ts.map +1 -1
  94. package/dist/client/sandboxed/wrapper.js +10 -1
  95. package/dist/client/sandboxed/wrapper.js.map +1 -1
  96. package/dist/client/tcp/client.d.ts +4 -1
  97. package/dist/client/tcp/client.d.ts.map +1 -1
  98. package/dist/client/tcp/client.js +26 -8
  99. package/dist/client/tcp/client.js.map +1 -1
  100. package/dist/client/tcp/connection.d.ts +6 -8
  101. package/dist/client/tcp/connection.d.ts.map +1 -1
  102. package/dist/client/tcp/connection.js +24 -22
  103. package/dist/client/tcp/connection.js.map +1 -1
  104. package/dist/client/tcp/index.d.ts +0 -1
  105. package/dist/client/tcp/index.d.ts.map +1 -1
  106. package/dist/client/tcp/index.js +0 -1
  107. package/dist/client/tcp/index.js.map +1 -1
  108. package/dist/client/tcp/types.d.ts +8 -13
  109. package/dist/client/tcp/types.d.ts.map +1 -1
  110. package/dist/client/tcp/types.js +0 -1
  111. package/dist/client/tcp/types.js.map +1 -1
  112. package/dist/client/tcpPool.d.ts.map +1 -1
  113. package/dist/client/tcpPool.js +0 -6
  114. package/dist/client/tcpPool.js.map +1 -1
  115. package/dist/client/worker/ackBatcher.d.ts +1 -1
  116. package/dist/client/worker/ackBatcher.d.ts.map +1 -1
  117. package/dist/client/worker/ackBatcher.js +20 -18
  118. package/dist/client/worker/ackBatcher.js.map +1 -1
  119. package/dist/client/worker/jobParser.d.ts.map +1 -1
  120. package/dist/client/worker/jobParser.js +8 -7
  121. package/dist/client/worker/jobParser.js.map +1 -1
  122. package/dist/client/worker/processor.d.ts.map +1 -1
  123. package/dist/client/worker/processor.js +10 -6
  124. package/dist/client/worker/processor.js.map +1 -1
  125. package/dist/domain/queue/dependencyTracker.d.ts +74 -0
  126. package/dist/domain/queue/dependencyTracker.d.ts.map +1 -0
  127. package/dist/domain/queue/dependencyTracker.js +126 -0
  128. package/dist/domain/queue/dependencyTracker.js.map +1 -0
  129. package/dist/domain/queue/dlqShard.d.ts +61 -0
  130. package/dist/domain/queue/dlqShard.d.ts.map +1 -0
  131. package/dist/domain/queue/dlqShard.js +175 -0
  132. package/dist/domain/queue/dlqShard.js.map +1 -0
  133. package/dist/domain/queue/limiterManager.d.ts +44 -0
  134. package/dist/domain/queue/limiterManager.d.ts.map +1 -0
  135. package/dist/domain/queue/limiterManager.js +99 -0
  136. package/dist/domain/queue/limiterManager.js.map +1 -0
  137. package/dist/domain/queue/shard.d.ts +33 -124
  138. package/dist/domain/queue/shard.d.ts.map +1 -1
  139. package/dist/domain/queue/shard.js +157 -427
  140. package/dist/domain/queue/shard.js.map +1 -1
  141. package/dist/domain/queue/temporalManager.d.ts +82 -0
  142. package/dist/domain/queue/temporalManager.d.ts.map +1 -0
  143. package/dist/domain/queue/temporalManager.js +150 -0
  144. package/dist/domain/queue/temporalManager.js.map +1 -0
  145. package/dist/domain/queue/uniqueKeyManager.d.ts +32 -0
  146. package/dist/domain/queue/uniqueKeyManager.d.ts.map +1 -0
  147. package/dist/domain/queue/uniqueKeyManager.js +87 -0
  148. package/dist/domain/queue/uniqueKeyManager.js.map +1 -0
  149. package/dist/domain/types/command.d.ts +6 -0
  150. package/dist/domain/types/command.d.ts.map +1 -1
  151. package/dist/infrastructure/backup/s3Backup.d.ts +3 -40
  152. package/dist/infrastructure/backup/s3Backup.d.ts.map +1 -1
  153. package/dist/infrastructure/backup/s3Backup.js +10 -182
  154. package/dist/infrastructure/backup/s3Backup.js.map +1 -1
  155. package/dist/infrastructure/backup/s3BackupConfig.d.ts +67 -0
  156. package/dist/infrastructure/backup/s3BackupConfig.d.ts.map +1 -0
  157. package/dist/infrastructure/backup/s3BackupConfig.js +48 -0
  158. package/dist/infrastructure/backup/s3BackupConfig.js.map +1 -0
  159. package/dist/infrastructure/backup/s3BackupOperations.d.ts +23 -0
  160. package/dist/infrastructure/backup/s3BackupOperations.d.ts.map +1 -0
  161. package/dist/infrastructure/backup/s3BackupOperations.js +170 -0
  162. package/dist/infrastructure/backup/s3BackupOperations.js.map +1 -0
  163. package/dist/infrastructure/persistence/sqlite.d.ts +6 -13
  164. package/dist/infrastructure/persistence/sqlite.d.ts.map +1 -1
  165. package/dist/infrastructure/persistence/sqlite.js +28 -179
  166. package/dist/infrastructure/persistence/sqlite.js.map +1 -1
  167. package/dist/infrastructure/persistence/sqliteBatch.d.ts +38 -0
  168. package/dist/infrastructure/persistence/sqliteBatch.d.ts.map +1 -0
  169. package/dist/infrastructure/persistence/sqliteBatch.js +124 -0
  170. package/dist/infrastructure/persistence/sqliteBatch.js.map +1 -0
  171. package/dist/infrastructure/persistence/sqliteSerializer.d.ts +17 -0
  172. package/dist/infrastructure/persistence/sqliteSerializer.d.ts.map +1 -0
  173. package/dist/infrastructure/persistence/sqliteSerializer.js +81 -0
  174. package/dist/infrastructure/persistence/sqliteSerializer.js.map +1 -0
  175. package/dist/infrastructure/persistence/statements.d.ts +1 -1
  176. package/dist/infrastructure/persistence/statements.d.ts.map +1 -1
  177. package/dist/infrastructure/persistence/statements.js +3 -2
  178. package/dist/infrastructure/persistence/statements.js.map +1 -1
  179. package/dist/infrastructure/scheduler/cronScheduler.d.ts +7 -0
  180. package/dist/infrastructure/scheduler/cronScheduler.d.ts.map +1 -1
  181. package/dist/infrastructure/scheduler/cronScheduler.js +23 -3
  182. package/dist/infrastructure/scheduler/cronScheduler.js.map +1 -1
  183. package/dist/infrastructure/server/handler.d.ts.map +1 -1
  184. package/dist/infrastructure/server/handler.js +1 -186
  185. package/dist/infrastructure/server/handler.js.map +1 -1
  186. package/dist/infrastructure/server/handlerRoutes.d.ts +23 -0
  187. package/dist/infrastructure/server/handlerRoutes.d.ts.map +1 -0
  188. package/dist/infrastructure/server/handlerRoutes.js +190 -0
  189. package/dist/infrastructure/server/handlerRoutes.js.map +1 -0
  190. package/dist/infrastructure/server/handlers/core.d.ts.map +1 -1
  191. package/dist/infrastructure/server/handlers/core.js +26 -19
  192. package/dist/infrastructure/server/handlers/core.js.map +1 -1
  193. package/dist/infrastructure/server/http.d.ts +4 -25
  194. package/dist/infrastructure/server/http.d.ts.map +1 -1
  195. package/dist/infrastructure/server/http.js +68 -285
  196. package/dist/infrastructure/server/http.js.map +1 -1
  197. package/dist/infrastructure/server/httpEndpoints.d.ts +19 -0
  198. package/dist/infrastructure/server/httpEndpoints.d.ts.map +1 -0
  199. package/dist/infrastructure/server/httpEndpoints.js +151 -0
  200. package/dist/infrastructure/server/httpEndpoints.js.map +1 -0
  201. package/dist/infrastructure/server/protocol.d.ts +15 -1
  202. package/dist/infrastructure/server/protocol.d.ts.map +1 -1
  203. package/dist/infrastructure/server/protocol.js +37 -3
  204. package/dist/infrastructure/server/protocol.js.map +1 -1
  205. package/dist/infrastructure/server/sseHandler.d.ts +27 -0
  206. package/dist/infrastructure/server/sseHandler.d.ts.map +1 -0
  207. package/dist/infrastructure/server/sseHandler.js +77 -0
  208. package/dist/infrastructure/server/sseHandler.js.map +1 -0
  209. package/dist/infrastructure/server/tcp.d.ts +8 -10
  210. package/dist/infrastructure/server/tcp.d.ts.map +1 -1
  211. package/dist/infrastructure/server/tcp.js +51 -42
  212. package/dist/infrastructure/server/tcp.js.map +1 -1
  213. package/dist/infrastructure/server/wsHandler.d.ts +31 -0
  214. package/dist/infrastructure/server/wsHandler.d.ts.map +1 -0
  215. package/dist/infrastructure/server/wsHandler.js +63 -0
  216. package/dist/infrastructure/server/wsHandler.js.map +1 -0
  217. package/dist/main.js +2 -4
  218. package/dist/main.js.map +1 -1
  219. package/dist/mcp/index.js +3 -465
  220. package/dist/mcp/index.js.map +1 -1
  221. package/dist/mcp/mcpHandlers.d.ts +129 -0
  222. package/dist/mcp/mcpHandlers.d.ts.map +1 -0
  223. package/dist/mcp/mcpHandlers.js +204 -0
  224. package/dist/mcp/mcpHandlers.js.map +1 -0
  225. package/dist/mcp/mcpTools.d.ts +15 -0
  226. package/dist/mcp/mcpTools.d.ts.map +1 -0
  227. package/dist/mcp/mcpTools.js +277 -0
  228. package/dist/mcp/mcpTools.js.map +1 -0
  229. package/dist/shared/lru.d.ts +23 -0
  230. package/dist/shared/lru.d.ts.map +1 -1
  231. package/dist/shared/lru.js +61 -3
  232. package/dist/shared/lru.js.map +1 -1
  233. package/dist/shared/skipList.d.ts +10 -2
  234. package/dist/shared/skipList.d.ts.map +1 -1
  235. package/dist/shared/skipList.js +22 -1
  236. package/dist/shared/skipList.js.map +1 -1
  237. package/package.json +2 -2
  238. package/dist/cli/dashboard.d.ts +0 -32
  239. package/dist/cli/dashboard.d.ts.map +0 -1
  240. package/dist/cli/dashboard.js +0 -183
  241. package/dist/cli/dashboard.js.map +0 -1
  242. package/dist/client/tcp/lineBuffer.d.ts +0 -17
  243. package/dist/client/tcp/lineBuffer.d.ts.map +0 -1
  244. package/dist/client/tcp/lineBuffer.js +0 -32
  245. package/dist/client/tcp/lineBuffer.js.map +0 -1
package/dist/mcp/index.js CHANGED
@@ -18,472 +18,10 @@
18
18
  * }
19
19
  * ```
20
20
  */
21
- import { getSharedManager, shutdownManager } from '../client/manager';
22
- import { jobId } from '../domain/types/job';
21
+ import { shutdownManager } from '../client/manager';
23
22
  import { VERSION } from '../shared/version';
24
- const TOOLS = [
25
- // Job Operations
26
- {
27
- name: 'bunqueue_add_job',
28
- description: 'Add a job to a queue. Returns the job ID.',
29
- inputSchema: {
30
- type: 'object',
31
- properties: {
32
- queue: { type: 'string', description: 'Queue name' },
33
- name: { type: 'string', description: 'Job name/type' },
34
- data: { type: 'object', description: 'Job payload data' },
35
- priority: { type: 'number', description: 'Priority (higher = processed first)' },
36
- delay: { type: 'number', description: 'Delay in milliseconds before processing' },
37
- attempts: { type: 'number', description: 'Max retry attempts (default: 3)' },
38
- },
39
- required: ['queue', 'name', 'data'],
40
- },
41
- },
42
- {
43
- name: 'bunqueue_add_jobs_bulk',
44
- description: 'Add multiple jobs to a queue in a single operation.',
45
- inputSchema: {
46
- type: 'object',
47
- properties: {
48
- queue: { type: 'string', description: 'Queue name' },
49
- jobs: {
50
- type: 'array',
51
- description: 'Array of jobs to add',
52
- items: {
53
- type: 'object',
54
- properties: {
55
- name: { type: 'string' },
56
- data: { type: 'object' },
57
- priority: { type: 'number' },
58
- delay: { type: 'number' },
59
- },
60
- },
61
- },
62
- },
63
- required: ['queue', 'jobs'],
64
- },
65
- },
66
- {
67
- name: 'bunqueue_get_job',
68
- description: 'Get a job by ID.',
69
- inputSchema: {
70
- type: 'object',
71
- properties: {
72
- jobId: { type: 'string', description: 'Job ID' },
73
- },
74
- required: ['jobId'],
75
- },
76
- },
77
- {
78
- name: 'bunqueue_cancel_job',
79
- description: 'Cancel a waiting or delayed job.',
80
- inputSchema: {
81
- type: 'object',
82
- properties: {
83
- jobId: { type: 'string', description: 'Job ID to cancel' },
84
- },
85
- required: ['jobId'],
86
- },
87
- },
88
- {
89
- name: 'bunqueue_update_progress',
90
- description: 'Update job progress (0-100).',
91
- inputSchema: {
92
- type: 'object',
93
- properties: {
94
- jobId: { type: 'string', description: 'Job ID' },
95
- progress: { type: 'number', description: 'Progress value (0-100)' },
96
- message: { type: 'string', description: 'Optional progress message' },
97
- },
98
- required: ['jobId', 'progress'],
99
- },
100
- },
101
- // Queue Control
102
- {
103
- name: 'bunqueue_pause_queue',
104
- description: 'Pause job processing on a queue.',
105
- inputSchema: {
106
- type: 'object',
107
- properties: {
108
- queue: { type: 'string', description: 'Queue name' },
109
- },
110
- required: ['queue'],
111
- },
112
- },
113
- {
114
- name: 'bunqueue_resume_queue',
115
- description: 'Resume job processing on a paused queue.',
116
- inputSchema: {
117
- type: 'object',
118
- properties: {
119
- queue: { type: 'string', description: 'Queue name' },
120
- },
121
- required: ['queue'],
122
- },
123
- },
124
- {
125
- name: 'bunqueue_drain_queue',
126
- description: 'Remove all waiting jobs from a queue.',
127
- inputSchema: {
128
- type: 'object',
129
- properties: {
130
- queue: { type: 'string', description: 'Queue name' },
131
- },
132
- required: ['queue'],
133
- },
134
- },
135
- {
136
- name: 'bunqueue_obliterate_queue',
137
- description: 'Remove ALL data from a queue (waiting, active, completed, failed).',
138
- inputSchema: {
139
- type: 'object',
140
- properties: {
141
- queue: { type: 'string', description: 'Queue name' },
142
- },
143
- required: ['queue'],
144
- },
145
- },
146
- {
147
- name: 'bunqueue_list_queues',
148
- description: 'List all queues.',
149
- inputSchema: {
150
- type: 'object',
151
- properties: {},
152
- },
153
- },
154
- {
155
- name: 'bunqueue_count_jobs',
156
- description: 'Count jobs in a queue.',
157
- inputSchema: {
158
- type: 'object',
159
- properties: {
160
- queue: { type: 'string', description: 'Queue name' },
161
- },
162
- required: ['queue'],
163
- },
164
- },
165
- // Rate Limiting
166
- {
167
- name: 'bunqueue_set_rate_limit',
168
- description: 'Set rate limit for a queue (jobs per second).',
169
- inputSchema: {
170
- type: 'object',
171
- properties: {
172
- queue: { type: 'string', description: 'Queue name' },
173
- limit: { type: 'number', description: 'Max jobs per second' },
174
- },
175
- required: ['queue', 'limit'],
176
- },
177
- },
178
- {
179
- name: 'bunqueue_set_concurrency',
180
- description: 'Set concurrency limit for a queue.',
181
- inputSchema: {
182
- type: 'object',
183
- properties: {
184
- queue: { type: 'string', description: 'Queue name' },
185
- limit: { type: 'number', description: 'Max concurrent jobs' },
186
- },
187
- required: ['queue', 'limit'],
188
- },
189
- },
190
- // DLQ Operations
191
- {
192
- name: 'bunqueue_get_dlq',
193
- description: 'Get Dead Letter Queue entries for a queue.',
194
- inputSchema: {
195
- type: 'object',
196
- properties: {
197
- queue: { type: 'string', description: 'Queue name' },
198
- limit: { type: 'number', description: 'Max entries to return (default: 20)' },
199
- },
200
- required: ['queue'],
201
- },
202
- },
203
- {
204
- name: 'bunqueue_retry_dlq',
205
- description: 'Retry jobs from the Dead Letter Queue.',
206
- inputSchema: {
207
- type: 'object',
208
- properties: {
209
- queue: { type: 'string', description: 'Queue name' },
210
- jobId: { type: 'string', description: 'Specific job ID to retry (optional)' },
211
- },
212
- required: ['queue'],
213
- },
214
- },
215
- {
216
- name: 'bunqueue_purge_dlq',
217
- description: 'Remove all entries from the Dead Letter Queue.',
218
- inputSchema: {
219
- type: 'object',
220
- properties: {
221
- queue: { type: 'string', description: 'Queue name' },
222
- },
223
- required: ['queue'],
224
- },
225
- },
226
- // Cron Jobs
227
- {
228
- name: 'bunqueue_add_cron',
229
- description: 'Add a recurring cron job.',
230
- inputSchema: {
231
- type: 'object',
232
- properties: {
233
- name: { type: 'string', description: 'Unique cron job name' },
234
- queue: { type: 'string', description: 'Target queue name' },
235
- data: { type: 'object', description: 'Job payload data' },
236
- schedule: { type: 'string', description: 'Cron pattern (e.g., "0 * * * *" for hourly)' },
237
- repeatEvery: { type: 'number', description: 'Alternative: repeat every N milliseconds' },
238
- priority: { type: 'number', description: 'Job priority' },
239
- },
240
- required: ['name', 'queue', 'data'],
241
- },
242
- },
243
- {
244
- name: 'bunqueue_list_crons',
245
- description: 'List all scheduled cron jobs.',
246
- inputSchema: {
247
- type: 'object',
248
- properties: {},
249
- },
250
- },
251
- {
252
- name: 'bunqueue_delete_cron',
253
- description: 'Delete a cron job by name.',
254
- inputSchema: {
255
- type: 'object',
256
- properties: {
257
- name: { type: 'string', description: 'Cron job name to delete' },
258
- },
259
- required: ['name'],
260
- },
261
- },
262
- // Stats & Logs
263
- {
264
- name: 'bunqueue_get_stats',
265
- description: 'Get overall queue statistics.',
266
- inputSchema: {
267
- type: 'object',
268
- properties: {},
269
- },
270
- },
271
- {
272
- name: 'bunqueue_get_job_logs',
273
- description: 'Get logs for a specific job.',
274
- inputSchema: {
275
- type: 'object',
276
- properties: {
277
- jobId: { type: 'string', description: 'Job ID' },
278
- },
279
- required: ['jobId'],
280
- },
281
- },
282
- {
283
- name: 'bunqueue_add_job_log',
284
- description: 'Add a log entry to a job.',
285
- inputSchema: {
286
- type: 'object',
287
- properties: {
288
- jobId: { type: 'string', description: 'Job ID' },
289
- message: { type: 'string', description: 'Log message' },
290
- level: { type: 'string', enum: ['info', 'warn', 'error'], description: 'Log level' },
291
- },
292
- required: ['jobId', 'message'],
293
- },
294
- },
295
- ];
296
- async function handleAddJob(args) {
297
- const manager = getSharedManager();
298
- const job = await manager.push(args.queue, {
299
- data: { name: args.name, ...args.data },
300
- priority: args.priority,
301
- delay: args.delay,
302
- maxAttempts: args.attempts,
303
- });
304
- return { jobId: String(job.id), queue: args.queue, message: 'Job added successfully' };
305
- }
306
- async function handleAddJobsBulk(args) {
307
- const manager = getSharedManager();
308
- const jobs = args.jobs;
309
- const inputs = jobs.map((j) => ({
310
- data: { name: j.name, ...j.data },
311
- priority: j.priority,
312
- delay: j.delay,
313
- }));
314
- const jobIds = await manager.pushBatch(args.queue, inputs);
315
- return { count: jobIds.length, jobIds: jobIds.map(String), queue: args.queue };
316
- }
317
- async function handleGetJob(args) {
318
- const manager = getSharedManager();
319
- const job = await manager.getJob(jobId(args.jobId));
320
- if (!job)
321
- return { error: 'Job not found' };
322
- const data = job.data;
323
- return {
324
- id: String(job.id),
325
- name: data?.name ?? 'default',
326
- data: job.data,
327
- queue: job.queue,
328
- progress: job.progress,
329
- attempts: job.attempts,
330
- maxAttempts: job.maxAttempts,
331
- createdAt: new Date(job.createdAt).toISOString(),
332
- };
333
- }
334
- async function handleCancelJob(args) {
335
- const manager = getSharedManager();
336
- const cancelled = await manager.cancel(jobId(args.jobId));
337
- return { success: cancelled, jobId: args.jobId };
338
- }
339
- async function handleUpdateProgress(args) {
340
- const manager = getSharedManager();
341
- const updated = await manager.updateProgress(jobId(args.jobId), args.progress, args.message);
342
- return { success: updated, jobId: args.jobId, progress: args.progress };
343
- }
344
- function handlePauseQueue(args) {
345
- const manager = getSharedManager();
346
- manager.pause(args.queue);
347
- return { success: true, queue: args.queue, message: 'Queue paused' };
348
- }
349
- function handleResumeQueue(args) {
350
- const manager = getSharedManager();
351
- manager.resume(args.queue);
352
- return { success: true, queue: args.queue, message: 'Queue resumed' };
353
- }
354
- function handleDrainQueue(args) {
355
- const manager = getSharedManager();
356
- const removed = manager.drain(args.queue);
357
- return { success: true, queue: args.queue, removed, message: `Removed ${removed} waiting jobs` };
358
- }
359
- function handleObliterateQueue(args) {
360
- const manager = getSharedManager();
361
- manager.obliterate(args.queue);
362
- return { success: true, queue: args.queue, message: 'Queue obliterated' };
363
- }
364
- function handleListQueues() {
365
- const manager = getSharedManager();
366
- return { queues: manager.listQueues() };
367
- }
368
- function handleCountJobs(args) {
369
- const manager = getSharedManager();
370
- return { queue: args.queue, count: manager.count(args.queue) };
371
- }
372
- function handleSetRateLimit(args) {
373
- const manager = getSharedManager();
374
- manager.setRateLimit(args.queue, args.limit);
375
- return { success: true, queue: args.queue, rateLimit: args.limit };
376
- }
377
- function handleSetConcurrency(args) {
378
- const manager = getSharedManager();
379
- manager.setConcurrency(args.queue, args.limit);
380
- return { success: true, queue: args.queue, concurrency: args.limit };
381
- }
382
- function handleGetDlq(args) {
383
- const manager = getSharedManager();
384
- const limit = args.limit || 20;
385
- const jobs = manager.getDlq(args.queue, limit);
386
- return jobs.map((j) => {
387
- const data = j.data;
388
- return {
389
- id: String(j.id),
390
- name: data?.name ?? 'default',
391
- data: j.data,
392
- attempts: j.attempts,
393
- createdAt: new Date(j.createdAt).toISOString(),
394
- };
395
- });
396
- }
397
- function handleRetryDlq(args) {
398
- const manager = getSharedManager();
399
- const id = args.jobId ? jobId(args.jobId) : undefined;
400
- const retried = manager.retryDlq(args.queue, id);
401
- return { success: true, queue: args.queue, retried };
402
- }
403
- function handlePurgeDlq(args) {
404
- const manager = getSharedManager();
405
- const purged = manager.purgeDlq(args.queue);
406
- return { success: true, queue: args.queue, purged };
407
- }
408
- function handleAddCron(args) {
409
- const manager = getSharedManager();
410
- const cron = manager.addCron({
411
- name: args.name,
412
- queue: args.queue,
413
- data: args.data,
414
- schedule: args.schedule,
415
- repeatEvery: args.repeatEvery,
416
- priority: args.priority,
417
- });
418
- return {
419
- success: true,
420
- name: cron.name,
421
- queue: cron.queue,
422
- nextRun: cron.nextRun ? new Date(cron.nextRun).toISOString() : null,
423
- };
424
- }
425
- function handleListCrons() {
426
- const manager = getSharedManager();
427
- return manager.listCrons().map((c) => ({
428
- name: c.name,
429
- queue: c.queue,
430
- schedule: c.schedule,
431
- repeatEvery: c.repeatEvery,
432
- nextRun: c.nextRun ? new Date(c.nextRun).toISOString() : null,
433
- executions: c.executions,
434
- }));
435
- }
436
- function handleDeleteCron(args) {
437
- const manager = getSharedManager();
438
- const deleted = manager.removeCron(args.name);
439
- return { success: deleted, name: args.name };
440
- }
441
- function handleGetStats() {
442
- const manager = getSharedManager();
443
- const stats = manager.getStats();
444
- // Convert BigInt to number for JSON serialization
445
- return JSON.parse(JSON.stringify(stats, (_key, value) => typeof value === 'bigint' ? Number(value) : value));
446
- }
447
- function handleGetJobLogs(args) {
448
- const manager = getSharedManager();
449
- return manager.getLogs(jobId(args.jobId));
450
- }
451
- function handleAddJobLog(args) {
452
- const manager = getSharedManager();
453
- const level = args.level ?? 'info';
454
- const added = manager.addLog(jobId(args.jobId), args.message, level);
455
- return { success: added, jobId: args.jobId };
456
- }
457
- const TOOL_HANDLERS = new Map([
458
- ['bunqueue_add_job', handleAddJob],
459
- ['bunqueue_add_jobs_bulk', handleAddJobsBulk],
460
- ['bunqueue_get_job', handleGetJob],
461
- ['bunqueue_cancel_job', handleCancelJob],
462
- ['bunqueue_update_progress', handleUpdateProgress],
463
- ['bunqueue_pause_queue', handlePauseQueue],
464
- ['bunqueue_resume_queue', handleResumeQueue],
465
- ['bunqueue_drain_queue', handleDrainQueue],
466
- ['bunqueue_obliterate_queue', handleObliterateQueue],
467
- ['bunqueue_list_queues', () => handleListQueues()],
468
- ['bunqueue_count_jobs', handleCountJobs],
469
- ['bunqueue_set_rate_limit', handleSetRateLimit],
470
- ['bunqueue_set_concurrency', handleSetConcurrency],
471
- ['bunqueue_get_dlq', handleGetDlq],
472
- ['bunqueue_retry_dlq', handleRetryDlq],
473
- ['bunqueue_purge_dlq', handlePurgeDlq],
474
- ['bunqueue_add_cron', handleAddCron],
475
- ['bunqueue_list_crons', () => handleListCrons()],
476
- ['bunqueue_delete_cron', handleDeleteCron],
477
- ['bunqueue_get_stats', () => handleGetStats()],
478
- ['bunqueue_get_job_logs', handleGetJobLogs],
479
- ['bunqueue_add_job_log', handleAddJobLog],
480
- ]);
481
- function handleToolCall(name, args) {
482
- const handler = TOOL_HANDLERS.get(name);
483
- if (!handler)
484
- throw new Error(`Unknown tool: ${name}`);
485
- return handler(args);
486
- }
23
+ import { TOOLS } from './mcpTools';
24
+ import { handleToolCall } from './mcpHandlers';
487
25
  function createResponse(id, result) {
488
26
  return { jsonrpc: '2.0', id, result };
489
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * MCP Tool Handlers
3
+ * Implementation of tool operations for the bunqueue MCP server
4
+ */
5
+ export type ToolArgs = Record<string, unknown>;
6
+ export declare function handleAddJob(args: ToolArgs): Promise<{
7
+ jobId: string;
8
+ queue: unknown;
9
+ message: string;
10
+ }>;
11
+ export declare function handleAddJobsBulk(args: ToolArgs): Promise<{
12
+ count: number;
13
+ jobIds: string[];
14
+ queue: unknown;
15
+ }>;
16
+ export declare function handleGetJob(args: ToolArgs): Promise<{
17
+ error: string;
18
+ id?: undefined;
19
+ name?: undefined;
20
+ data?: undefined;
21
+ queue?: undefined;
22
+ progress?: undefined;
23
+ attempts?: undefined;
24
+ maxAttempts?: undefined;
25
+ createdAt?: undefined;
26
+ } | {
27
+ id: string;
28
+ name: string;
29
+ data: unknown;
30
+ queue: string;
31
+ progress: number;
32
+ attempts: number;
33
+ maxAttempts: number;
34
+ createdAt: string;
35
+ error?: undefined;
36
+ }>;
37
+ export declare function handleCancelJob(args: ToolArgs): Promise<{
38
+ success: boolean;
39
+ jobId: unknown;
40
+ }>;
41
+ export declare function handleUpdateProgress(args: ToolArgs): Promise<{
42
+ success: boolean;
43
+ jobId: unknown;
44
+ progress: unknown;
45
+ }>;
46
+ export declare function handlePauseQueue(args: ToolArgs): {
47
+ success: boolean;
48
+ queue: unknown;
49
+ message: string;
50
+ };
51
+ export declare function handleResumeQueue(args: ToolArgs): {
52
+ success: boolean;
53
+ queue: unknown;
54
+ message: string;
55
+ };
56
+ export declare function handleDrainQueue(args: ToolArgs): {
57
+ success: boolean;
58
+ queue: unknown;
59
+ removed: number;
60
+ message: string;
61
+ };
62
+ export declare function handleObliterateQueue(args: ToolArgs): {
63
+ success: boolean;
64
+ queue: unknown;
65
+ message: string;
66
+ };
67
+ export declare function handleListQueues(): {
68
+ queues: string[];
69
+ };
70
+ export declare function handleCountJobs(args: ToolArgs): {
71
+ queue: unknown;
72
+ count: number;
73
+ };
74
+ export declare function handleSetRateLimit(args: ToolArgs): {
75
+ success: boolean;
76
+ queue: unknown;
77
+ rateLimit: unknown;
78
+ };
79
+ export declare function handleSetConcurrency(args: ToolArgs): {
80
+ success: boolean;
81
+ queue: unknown;
82
+ concurrency: unknown;
83
+ };
84
+ export declare function handleGetDlq(args: ToolArgs): {
85
+ id: string;
86
+ name: string;
87
+ data: unknown;
88
+ attempts: number;
89
+ createdAt: string;
90
+ }[];
91
+ export declare function handleRetryDlq(args: ToolArgs): {
92
+ success: boolean;
93
+ queue: unknown;
94
+ retried: number;
95
+ };
96
+ export declare function handlePurgeDlq(args: ToolArgs): {
97
+ success: boolean;
98
+ queue: unknown;
99
+ purged: number;
100
+ };
101
+ export declare function handleAddCron(args: ToolArgs): {
102
+ success: boolean;
103
+ name: string;
104
+ queue: string;
105
+ nextRun: string | null;
106
+ };
107
+ export declare function handleListCrons(): {
108
+ name: string;
109
+ queue: string;
110
+ schedule: string | null;
111
+ repeatEvery: number | null;
112
+ nextRun: string | null;
113
+ executions: number;
114
+ }[];
115
+ export declare function handleDeleteCron(args: ToolArgs): {
116
+ success: boolean;
117
+ name: unknown;
118
+ };
119
+ export declare function handleGetStats(): Record<string, number>;
120
+ export declare function handleGetJobLogs(args: ToolArgs): import("../domain/types/worker").JobLogEntry[];
121
+ export declare function handleAddJobLog(args: ToolArgs): {
122
+ success: boolean;
123
+ jobId: unknown;
124
+ };
125
+ type ToolHandler = (args: ToolArgs) => unknown;
126
+ export declare const TOOL_HANDLERS: Map<string, ToolHandler>;
127
+ export declare function handleToolCall(name: string, args: ToolArgs): unknown;
128
+ export {};
129
+ //# sourceMappingURL=mcpHandlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpHandlers.d.ts","sourceRoot":"","sources":["../../src/mcp/mcpHandlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAW/C,wBAAsB,YAAY,CAAC,IAAI,EAAE,QAAQ;;;;GAShD;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,QAAQ;;;;GAUrD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,QAAQ;;;;;;;;;;;;;;;;;;;;GAehD;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,QAAQ;;;GAInD;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,QAAQ;;;;GAQxD;AAID,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ;;;;EAI9C;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ;;;;EAI/C;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ;;;;;EAI9C;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ;;;;EAInD;AAED,wBAAgB,gBAAgB;;EAG/B;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ;;;EAG7C;AAID,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ;;;;EAIhD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ;;;;EAIlD;AAID,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ;;;;;;IAc1C;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ;;;;EAK5C;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ;;;;EAI5C;AAID,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ;;;;;EAgB3C;AAED,wBAAgB,eAAe;;;;;;;IAU9B;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ;;;EAI9C;AAID,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASvD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,kDAG9C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ;;;EAK7C;AAID,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC;AAE/C,eAAO,MAAM,aAAa,0BAuBxB,CAAC;AAEH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAIpE"}