bunqueue 2.8.54 → 2.8.57

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 (718) hide show
  1. package/dist/application/background/dlq.d.ts +2 -0
  2. package/dist/application/background/dlq.js +26 -0
  3. package/dist/application/background/lifecycle.d.ts +4 -0
  4. package/dist/application/background/lifecycle.js +90 -0
  5. package/dist/application/background/recovery/active.d.ts +4 -0
  6. package/dist/application/background/recovery/active.js +69 -0
  7. package/dist/application/background/recovery/index.d.ts +2 -0
  8. package/dist/application/background/recovery/index.js +22 -0
  9. package/dist/application/background/recovery/pending.d.ts +3 -0
  10. package/dist/application/background/recovery/pending.js +69 -0
  11. package/dist/application/background/recovery/restore.d.ts +5 -0
  12. package/dist/application/background/recovery/restore.js +58 -0
  13. package/dist/application/background/recovery/shared.d.ts +6 -0
  14. package/dist/application/background/recovery/shared.js +15 -0
  15. package/dist/application/background/timeouts.d.ts +25 -0
  16. package/dist/application/background/timeouts.js +191 -0
  17. package/dist/application/backgroundTasks.d.ts +7 -31
  18. package/dist/application/backgroundTasks.js +6 -442
  19. package/dist/application/cleanupTasks.js +1 -0
  20. package/dist/application/clientTracking.js +2 -0
  21. package/dist/application/contextFactory.d.ts +13 -90
  22. package/dist/application/contextFactory.js +8 -0
  23. package/dist/application/dependencyResultTracker.d.ts +1 -0
  24. package/dist/application/dependencyResultTracker.js +3 -0
  25. package/dist/application/dlqManager.d.ts +2 -8
  26. package/dist/application/dlqManager.js +33 -162
  27. package/dist/application/dlqRetry.d.ts +12 -0
  28. package/dist/application/dlqRetry.js +97 -0
  29. package/dist/application/lockManager.js +21 -1
  30. package/dist/application/lockOperations.js +16 -3
  31. package/dist/application/operations/ack/batch.d.ts +8 -0
  32. package/dist/application/operations/ack/batch.js +64 -0
  33. package/dist/application/operations/ack/completion.d.ts +3 -0
  34. package/dist/application/operations/ack/completion.js +74 -0
  35. package/dist/application/operations/ack/failure.d.ts +3 -0
  36. package/dist/application/operations/ack/failure.js +160 -0
  37. package/dist/application/operations/ack.d.ts +5 -79
  38. package/dist/application/operations/ack.js +4 -319
  39. package/dist/application/operations/ackHelpers.d.ts +3 -52
  40. package/dist/application/operations/ackHelpers.js +10 -3
  41. package/dist/application/operations/customId.d.ts +18 -5
  42. package/dist/application/operations/customId.js +36 -25
  43. package/dist/application/operations/flowValidation.js +9 -4
  44. package/dist/application/operations/jobManagement.js +44 -7
  45. package/dist/application/operations/parentLink.d.ts +36 -0
  46. package/dist/application/operations/parentLink.js +153 -0
  47. package/dist/application/operations/parentLinkInput.d.ts +8 -0
  48. package/dist/application/operations/parentLinkInput.js +23 -0
  49. package/dist/application/operations/push.d.ts +5 -44
  50. package/dist/application/operations/push.js +62 -152
  51. package/dist/application/operations/pushAdmission.d.ts +32 -0
  52. package/dist/application/operations/pushAdmission.js +38 -0
  53. package/dist/application/operations/pushBatch.d.ts +4 -0
  54. package/dist/application/operations/pushBatch.js +136 -0
  55. package/dist/application/operations/pushContext.d.ts +39 -0
  56. package/dist/application/operations/pushContext.js +1 -0
  57. package/dist/application/operations/pushDeduplication.d.ts +42 -0
  58. package/dist/application/operations/pushDeduplication.js +131 -0
  59. package/dist/application/operations/pushInsert.d.ts +13 -1
  60. package/dist/application/operations/pushInsert.js +33 -17
  61. package/dist/application/operations/pushLocks.js +13 -9
  62. package/dist/application/operations/query/collect.d.ts +12 -0
  63. package/dist/application/operations/query/collect.js +118 -0
  64. package/dist/application/operations/query/jobLookup.d.ts +9 -0
  65. package/dist/application/operations/query/jobLookup.js +110 -0
  66. package/dist/application/operations/query/pagination.d.ts +8 -0
  67. package/dist/application/operations/query/pagination.js +90 -0
  68. package/dist/application/operations/query/state.d.ts +4 -0
  69. package/dist/application/operations/query/state.js +63 -0
  70. package/dist/application/operations/queryOperations.d.ts +5 -50
  71. package/dist/application/operations/queryOperations.js +4 -474
  72. package/dist/application/queue-manager/ack.d.ts +23 -0
  73. package/dist/application/queue-manager/ack.js +242 -0
  74. package/dist/application/queue-manager/configuration.d.ts +27 -0
  75. package/dist/application/queue-manager/configuration.js +84 -0
  76. package/dist/application/queue-manager/context.d.ts +5 -0
  77. package/dist/application/queue-manager/context.js +61 -0
  78. package/dist/application/queue-manager/control.d.ts +17 -0
  79. package/dist/application/queue-manager/control.js +133 -0
  80. package/dist/application/queue-manager/delivery.d.ts +32 -0
  81. package/dist/application/queue-manager/delivery.js +143 -0
  82. package/dist/application/queue-manager/dependencies.d.ts +8 -0
  83. package/dist/application/queue-manager/dependencies.js +127 -0
  84. package/dist/application/queue-manager/dependency-runtime.d.ts +8 -0
  85. package/dist/application/queue-manager/dependency-runtime.js +40 -0
  86. package/dist/application/queue-manager/flow-failures.d.ts +18 -0
  87. package/dist/application/queue-manager/flow-failures.js +107 -0
  88. package/dist/application/queue-manager/flow-options.d.ts +8 -0
  89. package/dist/application/queue-manager/flow-options.js +129 -0
  90. package/dist/application/queue-manager/job-management.d.ts +17 -0
  91. package/dist/application/queue-manager/job-management.js +100 -0
  92. package/dist/application/queue-manager/lifecycle.d.ts +4 -0
  93. package/dist/application/queue-manager/lifecycle.js +41 -0
  94. package/dist/application/queue-manager/limits.d.ts +41 -0
  95. package/dist/application/queue-manager/limits.js +108 -0
  96. package/dist/application/queue-manager/locks.d.ts +21 -0
  97. package/dist/application/queue-manager/locks.js +59 -0
  98. package/dist/application/queue-manager/observability.d.ts +16 -0
  99. package/dist/application/queue-manager/observability.js +44 -0
  100. package/dist/application/queue-manager/queries.d.ts +17 -0
  101. package/dist/application/queue-manager/queries.js +118 -0
  102. package/dist/application/queue-manager/repeat.d.ts +4 -0
  103. package/dist/application/queue-manager/repeat.js +26 -0
  104. package/dist/application/queue-manager/services.d.ts +19 -0
  105. package/dist/application/queue-manager/services.js +80 -0
  106. package/dist/application/queue-manager/state.d.ts +92 -0
  107. package/dist/application/queue-manager/state.js +144 -0
  108. package/dist/application/queue-manager/stats.d.ts +28 -0
  109. package/dist/application/queue-manager/stats.js +52 -0
  110. package/dist/application/queueManager.d.ts +4 -400
  111. package/dist/application/queueManager.js +3 -1922
  112. package/dist/application/queueTelemetryJournal.d.ts +20 -0
  113. package/dist/application/queueTelemetryJournal.js +133 -0
  114. package/dist/application/repeatJobs.d.ts +7 -0
  115. package/dist/application/repeatJobs.js +132 -0
  116. package/dist/application/stallDetection.js +6 -1
  117. package/dist/application/types/ack.d.ts +132 -0
  118. package/dist/application/types/ack.js +1 -0
  119. package/dist/application/types/background.d.ts +18 -0
  120. package/dist/application/types/background.js +1 -0
  121. package/dist/application/types/config.d.ts +37 -0
  122. package/dist/application/{types.js → types/config.js} +3 -4
  123. package/dist/application/types/contextFactory.d.ts +83 -0
  124. package/dist/application/types/contextFactory.js +1 -0
  125. package/dist/application/types/contexts.d.ts +110 -0
  126. package/dist/application/types/contexts.js +1 -0
  127. package/dist/application/types/index.d.ts +7 -0
  128. package/dist/application/types/index.js +1 -0
  129. package/dist/application/types/query.d.ts +23 -0
  130. package/dist/application/types/query.js +1 -0
  131. package/dist/application/types/queueManager.d.ts +94 -0
  132. package/dist/application/types/queueManager.js +1 -0
  133. package/dist/cli/commandRouter.d.ts +1 -1
  134. package/dist/cli/commands/core.js +1 -0
  135. package/dist/cli/output/collections.d.ts +8 -0
  136. package/dist/cli/output/collections.js +131 -0
  137. package/dist/cli/output/jobs.d.ts +2 -0
  138. package/dist/cli/output/jobs.js +61 -0
  139. package/dist/cli/output/style.d.ts +14 -0
  140. package/dist/cli/output/style.js +28 -0
  141. package/dist/cli/output/success.d.ts +1 -0
  142. package/dist/cli/output/success.js +108 -0
  143. package/dist/cli/output.d.ts +1 -6
  144. package/dist/cli/output.js +7 -395
  145. package/dist/client/bunqueue/dlqRateLimit.d.ts +8 -0
  146. package/dist/client/bunqueue/dlqRateLimit.js +24 -0
  147. package/dist/client/bunqueue/runtime.d.ts +35 -0
  148. package/dist/client/bunqueue/runtime.js +138 -0
  149. package/dist/client/bunqueue.d.ts +19 -34
  150. package/dist/client/bunqueue.js +45 -166
  151. package/dist/client/dlqConversion.d.ts +5 -0
  152. package/dist/client/dlqConversion.js +28 -0
  153. package/dist/client/events.d.ts +7 -56
  154. package/dist/client/events.js +38 -15
  155. package/dist/client/flow.d.ts +6 -12
  156. package/dist/client/flow.js +16 -34
  157. package/dist/client/flowJobFactory.d.ts +9 -1
  158. package/dist/client/flowJobFactory.js +25 -9
  159. package/dist/client/flowJobMoveMethods.d.ts +5 -5
  160. package/dist/client/flowJobMoveMethods.js +31 -16
  161. package/dist/client/flowLegacyPlan.js +22 -8
  162. package/dist/client/flowOptions.d.ts +1 -1
  163. package/dist/client/flowOptions.js +2 -1
  164. package/dist/client/flowPlan.js +2 -3
  165. package/dist/client/flowPush.d.ts +1 -0
  166. package/dist/client/flowPush.js +5 -1
  167. package/dist/client/flowReader.js +5 -5
  168. package/dist/client/flowResults.d.ts +11 -0
  169. package/dist/client/flowResults.js +42 -0
  170. package/dist/client/index.d.ts +3 -1
  171. package/dist/client/jobConversion.d.ts +0 -4
  172. package/dist/client/jobConversion.js +32 -33
  173. package/dist/client/jobConversionHelpers.d.ts +18 -2
  174. package/dist/client/jobConversionHelpers.js +17 -10
  175. package/dist/client/jobConversionTypes.d.ts +5 -1
  176. package/dist/client/jobHelpers.d.ts +7 -2
  177. package/dist/client/jobHelpers.js +16 -8
  178. package/dist/client/queue/dlq.js +12 -14
  179. package/dist/client/queue/dlqJobMethods.js +11 -10
  180. package/dist/client/queue/dlqOps.js +2 -8
  181. package/dist/client/queue/dlqStats.d.ts +3 -0
  182. package/dist/client/queue/dlqStats.js +21 -0
  183. package/dist/client/queue/job-proxy/dependencies.d.ts +9 -0
  184. package/dist/client/queue/job-proxy/dependencies.js +67 -0
  185. package/dist/client/queue/job-proxy/reflection.d.ts +2 -0
  186. package/dist/client/queue/job-proxy/reflection.js +18 -0
  187. package/dist/client/queue/job-proxy/simple.d.ts +3 -0
  188. package/dist/client/queue/job-proxy/simple.js +316 -0
  189. package/dist/client/queue/job-proxy/tcp.d.ts +4 -0
  190. package/dist/client/queue/job-proxy/tcp.js +191 -0
  191. package/dist/client/queue/jobMetadata.d.ts +10 -0
  192. package/dist/client/queue/jobMetadata.js +24 -0
  193. package/dist/client/queue/jobMove.d.ts +4 -4
  194. package/dist/client/queue/jobMove.js +82 -24
  195. package/dist/client/queue/jobProxy.d.ts +4 -50
  196. package/dist/client/queue/jobProxy.js +3 -516
  197. package/dist/client/queue/operations/add/bulk.d.ts +7 -0
  198. package/dist/client/queue/operations/add/bulk.js +129 -0
  199. package/dist/client/queue/operations/add/payload.d.ts +24 -0
  200. package/dist/client/queue/operations/add/payload.js +85 -0
  201. package/dist/client/queue/operations/add/single.d.ts +3 -0
  202. package/dist/client/queue/operations/add/single.js +107 -0
  203. package/dist/client/queue/operations/add.d.ts +2 -47
  204. package/dist/client/queue/operations/add.js +2 -364
  205. package/dist/client/queue/operations/management.js +2 -1
  206. package/dist/client/queue/operations/query.js +20 -63
  207. package/dist/client/queue/queue.d.ts +6 -192
  208. package/dist/client/queue/queue.js +6 -559
  209. package/dist/client/queue/runtime/compatibility.d.ts +13 -0
  210. package/dist/client/queue/runtime/compatibility.js +38 -0
  211. package/dist/client/queue/runtime/configuration.d.ts +42 -0
  212. package/dist/client/queue/runtime/configuration.js +109 -0
  213. package/dist/client/queue/runtime/connection.d.ts +6 -0
  214. package/dist/client/queue/runtime/connection.js +16 -0
  215. package/dist/client/queue/runtime/control.d.ts +41 -0
  216. package/dist/client/queue/runtime/control.js +87 -0
  217. package/dist/client/queue/runtime/queries.d.ts +48 -0
  218. package/dist/client/queue/runtime/queries.js +95 -0
  219. package/dist/client/queue/runtime/scheduling.d.ts +33 -0
  220. package/dist/client/queue/runtime/scheduling.js +56 -0
  221. package/dist/client/queue/runtime/state.d.ts +96 -0
  222. package/dist/client/queue/runtime/state.js +149 -0
  223. package/dist/client/queue/scheduler.d.ts +2 -5
  224. package/dist/client/queue/scheduler.js +25 -23
  225. package/dist/client/queue/schedulerPagination.d.ts +7 -0
  226. package/dist/client/queue/schedulerPagination.js +10 -0
  227. package/dist/client/queue/types/add.d.ts +40 -0
  228. package/dist/client/queue/types/add.js +1 -0
  229. package/dist/client/queue/{queueTypes.d.ts → types/contexts.d.ts} +2 -2
  230. package/dist/client/queue/types/index.d.ts +3 -0
  231. package/dist/client/queue/types/index.js +1 -0
  232. package/dist/client/queue/types/job.d.ts +50 -0
  233. package/dist/client/queue/types/job.js +1 -0
  234. package/dist/client/queue/types/runtime.d.ts +35 -0
  235. package/dist/client/queue/types/runtime.js +1 -0
  236. package/dist/client/queue/workers.d.ts +4 -8
  237. package/dist/client/queue/workers.js +22 -14
  238. package/dist/client/queue-events/tcpSubscription.d.ts +23 -0
  239. package/dist/client/queue-events/tcpSubscription.js +99 -0
  240. package/dist/client/sandboxed/queueOps.d.ts +2 -2
  241. package/dist/client/sandboxed/queueOps.js +32 -5
  242. package/dist/client/sandboxed/runtime/dispatch.d.ts +13 -0
  243. package/dist/client/sandboxed/runtime/dispatch.js +186 -0
  244. package/dist/client/sandboxed/runtime/lifecycle.d.ts +20 -0
  245. package/dist/client/sandboxed/runtime/lifecycle.js +95 -0
  246. package/dist/client/sandboxed/runtime/log.d.ts +1 -0
  247. package/dist/client/sandboxed/runtime/log.js +15 -0
  248. package/dist/client/sandboxed/runtime/pool.d.ts +11 -0
  249. package/dist/client/sandboxed/runtime/pool.js +121 -0
  250. package/dist/client/sandboxed/runtime/recovery.d.ts +11 -0
  251. package/dist/client/sandboxed/runtime/recovery.js +122 -0
  252. package/dist/client/sandboxed/runtime/state.d.ts +39 -0
  253. package/dist/client/sandboxed/runtime/state.js +59 -0
  254. package/dist/client/sandboxed/types/index.d.ts +2 -0
  255. package/dist/client/sandboxed/types/index.js +1 -0
  256. package/dist/client/sandboxed/types/options.d.ts +27 -0
  257. package/dist/client/sandboxed/types/options.js +1 -0
  258. package/dist/client/sandboxed/types/process.d.ts +30 -0
  259. package/dist/client/sandboxed/types/process.js +1 -0
  260. package/dist/client/sandboxed/worker.d.ts +3 -85
  261. package/dist/client/sandboxed/worker.js +3 -557
  262. package/dist/client/sandboxed/wrapper.js +1 -0
  263. package/dist/client/tcp/client.d.ts +5 -112
  264. package/dist/client/tcp/client.js +5 -481
  265. package/dist/client/tcp/commandQueue.d.ts +23 -0
  266. package/dist/client/tcp/commandQueue.js +89 -0
  267. package/dist/client/tcp/connection.d.ts +4 -85
  268. package/dist/client/tcp/connection.js +3 -315
  269. package/dist/client/tcp/errors.d.ts +6 -0
  270. package/dist/client/tcp/errors.js +18 -0
  271. package/dist/client/tcp/runtime/commands.d.ts +9 -0
  272. package/dist/client/tcp/runtime/commands.js +124 -0
  273. package/dist/client/tcp/runtime/connectivity.d.ts +13 -0
  274. package/dist/client/tcp/runtime/connectivity.js +77 -0
  275. package/dist/client/tcp/runtime/health.d.ts +14 -0
  276. package/dist/client/tcp/runtime/health.js +127 -0
  277. package/dist/client/tcp/runtime/lifecycle.d.ts +8 -0
  278. package/dist/client/tcp/runtime/lifecycle.js +32 -0
  279. package/dist/client/tcp/runtime/state.d.ts +50 -0
  280. package/dist/client/tcp/runtime/state.js +45 -0
  281. package/dist/client/tcp/transport.d.ts +18 -0
  282. package/dist/client/tcp/transport.js +158 -0
  283. package/dist/client/tcp/types/command.d.ts +9 -0
  284. package/dist/client/tcp/types/command.js +1 -0
  285. package/dist/client/tcp/types/connection.d.ts +31 -0
  286. package/dist/client/tcp/types/connection.js +17 -0
  287. package/dist/client/tcp/types/index.d.ts +5 -0
  288. package/dist/client/tcp/types/index.js +1 -0
  289. package/dist/client/tcp/types/socket.d.ts +8 -0
  290. package/dist/client/tcp/types/socket.js +1 -0
  291. package/dist/client/tcp/types/tls.d.ts +4 -0
  292. package/dist/client/tcp/types/tls.js +1 -0
  293. package/dist/client/tcp/types.d.ts +2 -106
  294. package/dist/client/tcp/types.js +2 -22
  295. package/dist/client/types/connection.d.ts +29 -0
  296. package/dist/client/types/connection.js +1 -0
  297. package/dist/client/types/dlq.d.ts +45 -0
  298. package/dist/client/types/dlq.js +1 -0
  299. package/dist/client/types/events.d.ts +54 -0
  300. package/dist/client/types/events.js +1 -0
  301. package/dist/client/types/flow.d.ts +10 -0
  302. package/dist/client/types/flow.js +1 -0
  303. package/dist/client/types/index.d.ts +10 -0
  304. package/dist/client/types/index.js +1 -0
  305. package/dist/client/types/job.d.ts +127 -0
  306. package/dist/client/types/job.js +1 -0
  307. package/dist/client/types/metrics.d.ts +1 -0
  308. package/dist/client/types/metrics.js +1 -0
  309. package/dist/client/types/options.d.ts +62 -0
  310. package/dist/client/types/options.js +1 -0
  311. package/dist/client/types/worker.d.ts +38 -0
  312. package/dist/client/types/worker.js +1 -0
  313. package/dist/client/types.d.ts +2 -583
  314. package/dist/client/types.js +2 -6
  315. package/dist/client/worker/ackBatcher.d.ts +1 -1
  316. package/dist/client/worker/ackBatcher.js +17 -5
  317. package/dist/client/worker/ackOutcome.d.ts +8 -0
  318. package/dist/client/worker/ackOutcome.js +58 -0
  319. package/dist/client/worker/constants.d.ts +7 -0
  320. package/dist/client/worker/{types.js → constants.js} +0 -6
  321. package/dist/client/worker/groupConcurrency.js +3 -0
  322. package/dist/client/worker/handlers/completion.d.ts +28 -0
  323. package/dist/client/worker/handlers/completion.js +68 -0
  324. package/dist/client/worker/handlers/dependencies.d.ts +11 -0
  325. package/dist/client/worker/handlers/dependencies.js +107 -0
  326. package/dist/client/worker/handlers/mutations.d.ts +23 -0
  327. package/dist/client/worker/handlers/mutations.js +211 -0
  328. package/dist/client/worker/handlers/queries.d.ts +15 -0
  329. package/dist/client/worker/handlers/queries.js +100 -0
  330. package/dist/client/worker/index.d.ts +2 -2
  331. package/dist/client/worker/index.js +1 -1
  332. package/dist/client/worker/jobParser.js +4 -2
  333. package/dist/client/worker/processor.d.ts +2 -15
  334. package/dist/client/worker/processor.js +67 -124
  335. package/dist/client/worker/processorHandlers.d.ts +4 -61
  336. package/dist/client/worker/processorHandlers.js +4 -398
  337. package/dist/client/worker/processorOutcome.d.ts +14 -0
  338. package/dist/client/worker/processorOutcome.js +125 -0
  339. package/dist/client/worker/runtime/buffer.d.ts +8 -0
  340. package/dist/client/worker/runtime/buffer.js +50 -0
  341. package/dist/client/worker/runtime/control.d.ts +26 -0
  342. package/dist/client/worker/runtime/control.js +175 -0
  343. package/dist/client/worker/runtime/execution.d.ts +11 -0
  344. package/dist/client/worker/runtime/execution.js +123 -0
  345. package/dist/client/worker/runtime/lifecycle.d.ts +7 -0
  346. package/dist/client/worker/runtime/lifecycle.js +114 -0
  347. package/dist/client/worker/runtime/manual.d.ts +10 -0
  348. package/dist/client/worker/runtime/manual.js +137 -0
  349. package/dist/client/worker/runtime/options.d.ts +5 -0
  350. package/dist/client/worker/runtime/options.js +39 -0
  351. package/dist/client/worker/runtime/polling.d.ts +12 -0
  352. package/dist/client/worker/runtime/polling.js +123 -0
  353. package/dist/client/worker/runtime/state.d.ts +110 -0
  354. package/dist/client/worker/runtime/state.js +156 -0
  355. package/dist/client/worker/types/index.d.ts +5 -0
  356. package/dist/client/worker/types/index.js +1 -0
  357. package/dist/client/worker/types/manual.d.ts +7 -0
  358. package/dist/client/worker/types/manual.js +1 -0
  359. package/dist/client/worker/types/options.d.ts +24 -0
  360. package/dist/client/worker/types/options.js +1 -0
  361. package/dist/client/worker/types/outcome.d.ts +23 -0
  362. package/dist/client/worker/types/outcome.js +1 -0
  363. package/dist/client/worker/types/processor.d.ts +22 -0
  364. package/dist/client/worker/types/processor.js +1 -0
  365. package/dist/client/worker/types/transport.d.ts +11 -0
  366. package/dist/client/worker/types/transport.js +1 -0
  367. package/dist/client/worker/worker.d.ts +3 -160
  368. package/dist/client/worker/worker.js +3 -928
  369. package/dist/client/worker/workerRateLimiter.d.ts +5 -1
  370. package/dist/client/worker/workerRateLimiter.js +40 -20
  371. package/dist/client/worker.d.ts +1 -0
  372. package/dist/client/workflow/compensationChild.d.ts +2 -1
  373. package/dist/client/workflow/compensationChild.js +1 -1
  374. package/dist/client/workflow/compensationClaim.d.ts +11 -0
  375. package/dist/client/workflow/compensationClaim.js +30 -0
  376. package/dist/client/workflow/compensator.d.ts +7 -2
  377. package/dist/client/workflow/compensator.js +5 -11
  378. package/dist/client/workflow/recovery.js +25 -2
  379. package/dist/client/workflow/rollbackControl.js +1 -1
  380. package/dist/domain/job/constants.d.ts +12 -0
  381. package/dist/domain/job/constants.js +12 -0
  382. package/dist/domain/job/create.d.ts +2 -0
  383. package/dist/domain/job/create.js +103 -0
  384. package/dist/domain/job/ids.d.ts +5 -0
  385. package/dist/domain/job/ids.js +12 -0
  386. package/dist/domain/job/locks.d.ts +4 -0
  387. package/dist/domain/job/locks.js +23 -0
  388. package/dist/domain/job/payload.d.ts +18 -0
  389. package/dist/domain/job/payload.js +43 -0
  390. package/dist/domain/job/state.d.ts +8 -0
  391. package/dist/domain/job/state.js +51 -0
  392. package/dist/domain/job/terminal.d.ts +3 -0
  393. package/dist/domain/job/terminal.js +9 -0
  394. package/dist/domain/queue/dlqShard.d.ts +2 -0
  395. package/dist/domain/queue/dlqShard.js +34 -9
  396. package/dist/domain/queue/priorityQueue.js +3 -39
  397. package/dist/domain/queue/priorityQueueOrder.d.ts +3 -0
  398. package/dist/domain/queue/priorityQueueOrder.js +21 -0
  399. package/dist/domain/queue/shard/dependencies.d.ts +11 -0
  400. package/dist/domain/queue/shard/dependencies.js +22 -0
  401. package/dist/domain/queue/shard/dlq.d.ts +25 -0
  402. package/dist/domain/queue/shard/dlq.js +71 -0
  403. package/dist/domain/queue/shard/keys.d.ts +18 -0
  404. package/dist/domain/queue/shard/keys.js +45 -0
  405. package/dist/domain/queue/shard/lifecycle.d.ts +10 -0
  406. package/dist/domain/queue/shard/lifecycle.js +43 -0
  407. package/dist/domain/queue/shard/limits.d.ts +24 -0
  408. package/dist/domain/queue/shard/limits.js +57 -0
  409. package/dist/domain/queue/shard/metrics.d.ts +32 -0
  410. package/dist/domain/queue/shard/metrics.js +72 -0
  411. package/dist/domain/queue/shard/state.d.ts +34 -0
  412. package/dist/domain/queue/shard/state.js +80 -0
  413. package/dist/domain/queue/shard.d.ts +5 -145
  414. package/dist/domain/queue/shard.js +4 -409
  415. package/dist/domain/response/builders.d.ts +15 -0
  416. package/dist/domain/response/builders.js +39 -0
  417. package/dist/domain/types/command.d.ts +2 -555
  418. package/dist/domain/types/command.js +2 -5
  419. package/dist/domain/types/commands/base.d.ts +5 -0
  420. package/dist/domain/types/commands/base.js +1 -0
  421. package/dist/domain/types/commands/core.d.ts +106 -0
  422. package/dist/domain/types/commands/core.js +1 -0
  423. package/dist/domain/types/commands/cron.d.ts +36 -0
  424. package/dist/domain/types/commands/cron.js +1 -0
  425. package/dist/domain/types/commands/dashboard.d.ts +13 -0
  426. package/dist/domain/types/commands/dashboard.js +1 -0
  427. package/dist/domain/types/commands/dlq.d.ts +39 -0
  428. package/dist/domain/types/commands/dlq.js +1 -0
  429. package/dist/domain/types/commands/extended.d.ts +63 -0
  430. package/dist/domain/types/commands/extended.js +1 -0
  431. package/dist/domain/types/commands/index.d.ts +12 -0
  432. package/dist/domain/types/commands/index.js +12 -0
  433. package/dist/domain/types/commands/limits.d.ts +54 -0
  434. package/dist/domain/types/commands/limits.js +1 -0
  435. package/dist/domain/types/commands/management.d.ts +73 -0
  436. package/dist/domain/types/commands/management.js +1 -0
  437. package/dist/domain/types/commands/monitoring.d.ts +49 -0
  438. package/dist/domain/types/commands/monitoring.js +1 -0
  439. package/dist/domain/types/commands/protocol.d.ts +20 -0
  440. package/dist/domain/types/commands/protocol.js +1 -0
  441. package/dist/domain/types/commands/query.d.ts +46 -0
  442. package/dist/domain/types/commands/query.js +1 -0
  443. package/dist/domain/types/commands/union.d.ts +13 -0
  444. package/dist/domain/types/commands/union.js +1 -0
  445. package/dist/domain/types/commands/workers.d.ts +39 -0
  446. package/dist/domain/types/commands/workers.js +1 -0
  447. package/dist/domain/types/cron.d.ts +4 -2
  448. package/dist/domain/types/cron.js +3 -0
  449. package/dist/domain/types/dlq.d.ts +17 -0
  450. package/dist/domain/types/dlq.js +70 -14
  451. package/dist/domain/types/index.d.ts +2 -0
  452. package/dist/domain/types/index.js +1 -0
  453. package/dist/domain/types/job.d.ts +8 -269
  454. package/dist/domain/types/job.js +8 -234
  455. package/dist/domain/types/jobs/model.d.ts +152 -0
  456. package/dist/domain/types/jobs/model.js +1 -0
  457. package/dist/domain/types/metrics.d.ts +16 -0
  458. package/dist/domain/types/metrics.js +1 -0
  459. package/dist/domain/types/priorityQueue.d.ts +12 -0
  460. package/dist/domain/types/priorityQueue.js +1 -0
  461. package/dist/domain/types/protocol.d.ts +5 -0
  462. package/dist/domain/types/protocol.js +4 -0
  463. package/dist/domain/types/queue.d.ts +2 -0
  464. package/dist/domain/types/response.d.ts +3 -192
  465. package/dist/domain/types/response.js +3 -101
  466. package/dist/domain/types/responses/model.d.ts +152 -0
  467. package/dist/domain/types/responses/model.js +1 -0
  468. package/dist/domain/types/shard.d.ts +4 -0
  469. package/dist/domain/types/shard.js +1 -0
  470. package/dist/infrastructure/cloud/cloudAgent.js +6 -0
  471. package/dist/infrastructure/cloud/commandHandler.d.ts +2 -41
  472. package/dist/infrastructure/cloud/commandHandler.js +1 -1
  473. package/dist/infrastructure/cloud/commands/integrations.d.ts +2 -0
  474. package/dist/infrastructure/cloud/commands/integrations.js +31 -0
  475. package/dist/infrastructure/cloud/commands/jobMapper.d.ts +56 -0
  476. package/dist/infrastructure/cloud/commands/jobMapper.js +72 -0
  477. package/dist/infrastructure/cloud/commands/jobs.d.ts +2 -0
  478. package/dist/infrastructure/cloud/commands/jobs.js +111 -0
  479. package/dist/infrastructure/cloud/commands/queues.d.ts +2 -0
  480. package/dist/infrastructure/cloud/commands/queues.js +126 -0
  481. package/dist/infrastructure/cloud/commands.d.ts +3 -10
  482. package/dist/infrastructure/cloud/commands.js +7 -344
  483. package/dist/infrastructure/cloud/snapshot/analytics.d.ts +16 -0
  484. package/dist/infrastructure/cloud/snapshot/analytics.js +132 -0
  485. package/dist/infrastructure/cloud/snapshot/collector.d.ts +24 -0
  486. package/dist/infrastructure/cloud/snapshot/collector.js +105 -0
  487. package/dist/infrastructure/cloud/snapshot/config.d.ts +5 -0
  488. package/dist/infrastructure/cloud/snapshot/config.js +86 -0
  489. package/dist/infrastructure/cloud/snapshot/jobs.d.ts +5 -0
  490. package/dist/infrastructure/cloud/snapshot/jobs.js +148 -0
  491. package/dist/infrastructure/cloud/snapshot/stalls.d.ts +3 -0
  492. package/dist/infrastructure/cloud/snapshot/stalls.js +34 -0
  493. package/dist/infrastructure/cloud/snapshotCollector.d.ts +2 -53
  494. package/dist/infrastructure/cloud/snapshotCollector.js +5 -107
  495. package/dist/infrastructure/cloud/snapshotHelpers.d.ts +5 -45
  496. package/dist/infrastructure/cloud/snapshotHelpers.js +4 -426
  497. package/dist/infrastructure/cloud/types/collector.d.ts +54 -0
  498. package/dist/infrastructure/cloud/types/collector.js +1 -0
  499. package/dist/infrastructure/cloud/types/command.d.ts +44 -0
  500. package/dist/infrastructure/cloud/types/command.js +1 -0
  501. package/dist/infrastructure/cloud/types/config.d.ts +18 -0
  502. package/dist/infrastructure/cloud/types/config.js +1 -0
  503. package/dist/infrastructure/cloud/types/event.d.ts +14 -0
  504. package/dist/infrastructure/cloud/types/event.js +1 -0
  505. package/dist/infrastructure/cloud/types/redact.d.ts +4 -0
  506. package/dist/infrastructure/cloud/types/redact.js +1 -0
  507. package/dist/infrastructure/cloud/types/snapshot.d.ts +52 -0
  508. package/dist/infrastructure/cloud/types/snapshot.js +1 -0
  509. package/dist/infrastructure/cloud/types/snapshotCore.d.ts +125 -0
  510. package/dist/infrastructure/cloud/types/snapshotCore.js +1 -0
  511. package/dist/infrastructure/cloud/types/snapshotJobs.d.ts +124 -0
  512. package/dist/infrastructure/cloud/types/snapshotJobs.js +1 -0
  513. package/dist/infrastructure/cloud/types/snapshotTelemetry.d.ts +100 -0
  514. package/dist/infrastructure/cloud/types/snapshotTelemetry.js +1 -0
  515. package/dist/infrastructure/cloud/types.d.ts +3 -445
  516. package/dist/infrastructure/cloud/types.js +0 -4
  517. package/dist/infrastructure/persistence/batchInsert.d.ts +13 -0
  518. package/dist/infrastructure/persistence/batchInsert.js +96 -0
  519. package/dist/infrastructure/persistence/jobOptionsBlob.d.ts +18 -0
  520. package/dist/infrastructure/persistence/jobOptionsBlob.js +56 -0
  521. package/dist/infrastructure/persistence/legacyNameMigration.d.ts +5 -0
  522. package/dist/infrastructure/persistence/legacyNameMigration.js +42 -0
  523. package/dist/infrastructure/persistence/migrations.d.ts +3 -0
  524. package/dist/infrastructure/persistence/migrations.js +120 -0
  525. package/dist/infrastructure/persistence/schema.d.ts +3 -5
  526. package/dist/infrastructure/persistence/schema.js +40 -136
  527. package/dist/infrastructure/persistence/sqlite/admission.d.ts +9 -0
  528. package/dist/infrastructure/persistence/sqlite/admission.js +34 -0
  529. package/dist/infrastructure/persistence/sqlite/control.d.ts +32 -0
  530. package/dist/infrastructure/persistence/sqlite/control.js +90 -0
  531. package/dist/infrastructure/persistence/sqlite/flows.d.ts +26 -0
  532. package/dist/infrastructure/persistence/sqlite/flows.js +167 -0
  533. package/dist/infrastructure/persistence/sqlite/jobs.d.ts +23 -0
  534. package/dist/infrastructure/persistence/sqlite/jobs.js +166 -0
  535. package/dist/infrastructure/persistence/sqlite/lifecycle.d.ts +6 -0
  536. package/dist/infrastructure/persistence/sqlite/lifecycle.js +30 -0
  537. package/dist/infrastructure/persistence/sqlite/mutations.d.ts +20 -0
  538. package/dist/infrastructure/persistence/sqlite/mutations.js +149 -0
  539. package/dist/infrastructure/persistence/sqlite/queries.d.ts +23 -0
  540. package/dist/infrastructure/persistence/sqlite/queries.js +89 -0
  541. package/dist/infrastructure/persistence/sqlite/records.d.ts +24 -0
  542. package/dist/infrastructure/persistence/sqlite/records.js +115 -0
  543. package/dist/infrastructure/persistence/sqlite/state.d.ts +36 -0
  544. package/dist/infrastructure/persistence/sqlite/state.js +207 -0
  545. package/dist/infrastructure/persistence/sqlite/telemetry.d.ts +16 -0
  546. package/dist/infrastructure/persistence/sqlite/telemetry.js +126 -0
  547. package/dist/infrastructure/persistence/sqlite.d.ts +5 -280
  548. package/dist/infrastructure/persistence/sqlite.js +3 -1013
  549. package/dist/infrastructure/persistence/sqliteBatch.d.ts +4 -121
  550. package/dist/infrastructure/persistence/sqliteBatch.js +3 -422
  551. package/dist/infrastructure/persistence/sqliteSerializer.d.ts +6 -1
  552. package/dist/infrastructure/persistence/sqliteSerializer.js +33 -11
  553. package/dist/infrastructure/persistence/statements.d.ts +5 -1
  554. package/dist/infrastructure/persistence/statements.js +14 -9
  555. package/dist/infrastructure/persistence/types/admission.d.ts +8 -0
  556. package/dist/infrastructure/persistence/types/admission.js +1 -0
  557. package/dist/infrastructure/persistence/types/batch.d.ts +12 -0
  558. package/dist/infrastructure/persistence/types/batch.js +1 -0
  559. package/dist/infrastructure/persistence/types/sqlite.d.ts +17 -0
  560. package/dist/infrastructure/persistence/types/sqlite.js +1 -0
  561. package/dist/infrastructure/persistence/writeBuffer.d.ts +38 -0
  562. package/dist/infrastructure/persistence/writeBuffer.js +221 -0
  563. package/dist/infrastructure/scheduler/cron/execution.d.ts +12 -0
  564. package/dist/infrastructure/scheduler/cron/execution.js +150 -0
  565. package/dist/infrastructure/scheduler/cron/runtime.d.ts +31 -0
  566. package/dist/infrastructure/scheduler/cron/runtime.js +143 -0
  567. package/dist/infrastructure/scheduler/cronScheduler.d.ts +4 -117
  568. package/dist/infrastructure/scheduler/cronScheduler.js +3 -436
  569. package/dist/infrastructure/scheduler/types/cronScheduler.d.ts +16 -0
  570. package/dist/infrastructure/scheduler/types/cronScheduler.js +1 -0
  571. package/dist/infrastructure/server/bootstrap.js +3 -0
  572. package/dist/infrastructure/server/handler-routes/control.d.ts +8 -0
  573. package/dist/infrastructure/server/handler-routes/control.js +82 -0
  574. package/dist/infrastructure/server/handler-routes/jobs.d.ts +6 -0
  575. package/dist/infrastructure/server/handler-routes/jobs.js +110 -0
  576. package/dist/infrastructure/server/handler-routes/monitoring.d.ts +5 -0
  577. package/dist/infrastructure/server/handler-routes/monitoring.js +65 -0
  578. package/dist/infrastructure/server/handlerRoutes.d.ts +3 -26
  579. package/dist/infrastructure/server/handlerRoutes.js +3 -270
  580. package/dist/infrastructure/server/handlers/advanced/configNumbers.d.ts +2 -0
  581. package/dist/infrastructure/server/handlers/advanced/configNumbers.js +26 -0
  582. package/dist/infrastructure/server/handlers/advanced/dependencies.d.ts +15 -0
  583. package/dist/infrastructure/server/handlers/advanced/dependencies.js +38 -0
  584. package/dist/infrastructure/server/handlers/advanced/jobs.d.ts +33 -0
  585. package/dist/infrastructure/server/handlers/advanced/jobs.js +136 -0
  586. package/dist/infrastructure/server/handlers/advanced/queue.d.ts +42 -0
  587. package/dist/infrastructure/server/handlers/advanced/queue.js +111 -0
  588. package/dist/infrastructure/server/handlers/advanced.d.ts +3 -121
  589. package/dist/infrastructure/server/handlers/advanced.js +3 -336
  590. package/dist/infrastructure/server/handlers/core.d.ts +1 -4
  591. package/dist/infrastructure/server/handlers/core.js +37 -20
  592. package/dist/infrastructure/server/handlers/cron.js +9 -1
  593. package/dist/infrastructure/server/handlers/flow.js +6 -1
  594. package/dist/infrastructure/server/handlers/introspection.js +1 -1
  595. package/dist/infrastructure/server/handlers/management.d.ts +8 -0
  596. package/dist/infrastructure/server/handlers/management.js +30 -0
  597. package/dist/infrastructure/server/handlers/monitoring/health.d.ts +13 -0
  598. package/dist/infrastructure/server/handlers/monitoring/health.js +61 -0
  599. package/dist/infrastructure/server/handlers/monitoring/operations.d.ts +8 -0
  600. package/dist/infrastructure/server/handlers/monitoring/operations.js +28 -0
  601. package/dist/infrastructure/server/handlers/monitoring/webhooks.d.ts +7 -0
  602. package/dist/infrastructure/server/handlers/monitoring/webhooks.js +56 -0
  603. package/dist/infrastructure/server/handlers/monitoring/workers.d.ts +6 -0
  604. package/dist/infrastructure/server/handlers/monitoring/workers.js +57 -0
  605. package/dist/infrastructure/server/handlers/monitoring.d.ts +4 -30
  606. package/dist/infrastructure/server/handlers/monitoring.js +4 -222
  607. package/dist/infrastructure/server/handlers/pushBatchValidation.d.ts +1 -1
  608. package/dist/infrastructure/server/handlers/pushBatchValidation.js +7 -0
  609. package/dist/infrastructure/server/handlers/query.js +12 -3
  610. package/dist/infrastructure/server/http-routes/jobAdvanced.d.ts +2 -0
  611. package/dist/infrastructure/server/http-routes/jobAdvanced.js +106 -0
  612. package/dist/infrastructure/server/http-routes/jobManagement.d.ts +2 -0
  613. package/dist/infrastructure/server/http-routes/jobManagement.js +74 -0
  614. package/dist/infrastructure/server/http-routes/queueJobs.d.ts +2 -0
  615. package/dist/infrastructure/server/http-routes/queueJobs.js +108 -0
  616. package/dist/infrastructure/server/httpRouteJobs.d.ts +1 -8
  617. package/dist/infrastructure/server/httpRouteJobs.js +33 -222
  618. package/dist/infrastructure/server/httpRouteQueues.d.ts +1 -6
  619. package/dist/infrastructure/server/httpRouteQueues.js +51 -217
  620. package/dist/infrastructure/server/httpRouteResources.js +1 -0
  621. package/dist/infrastructure/server/protocol/commands.d.ts +8 -0
  622. package/dist/infrastructure/server/protocol/commands.js +31 -0
  623. package/dist/infrastructure/server/protocol/frameParser.d.ts +16 -0
  624. package/dist/infrastructure/server/protocol/frameParser.js +65 -0
  625. package/dist/infrastructure/server/protocol/lineBuffer.d.ts +6 -0
  626. package/dist/infrastructure/server/protocol/lineBuffer.js +21 -0
  627. package/dist/infrastructure/server/protocol/validation.d.ts +9 -0
  628. package/dist/infrastructure/server/protocol/validation.js +75 -0
  629. package/dist/infrastructure/server/protocol.d.ts +5 -77
  630. package/dist/infrastructure/server/protocol.js +4 -265
  631. package/dist/infrastructure/server/rateLimiter.js +1 -0
  632. package/dist/infrastructure/server/socketWriteQueue.d.ts +1 -1
  633. package/dist/infrastructure/server/socketWriteQueue.js +8 -5
  634. package/dist/infrastructure/server/sse/constants.d.ts +5 -0
  635. package/dist/infrastructure/server/sse/constants.js +5 -0
  636. package/dist/infrastructure/server/sse/eventBuffer.d.ts +3 -0
  637. package/dist/infrastructure/server/sse/eventBuffer.js +21 -0
  638. package/dist/infrastructure/server/sseHandler.d.ts +2 -6
  639. package/dist/infrastructure/server/sseHandler.js +20 -96
  640. package/dist/infrastructure/server/tcp/clientRelease.d.ts +2 -0
  641. package/dist/infrastructure/server/tcp/clientRelease.js +18 -0
  642. package/dist/infrastructure/server/tcp/connections.d.ts +24 -0
  643. package/dist/infrastructure/server/tcp/connections.js +162 -0
  644. package/dist/infrastructure/server/tcp/constants.d.ts +3 -0
  645. package/dist/infrastructure/server/tcp/constants.js +3 -0
  646. package/dist/infrastructure/server/tcp/eventSubscriptions.d.ts +10 -0
  647. package/dist/infrastructure/server/tcp/eventSubscriptions.js +17 -0
  648. package/dist/infrastructure/server/tcp/responses.d.ts +3 -0
  649. package/dist/infrastructure/server/tcp/responses.js +8 -0
  650. package/dist/infrastructure/server/tcp.d.ts +10 -68
  651. package/dist/infrastructure/server/tcp.js +47 -256
  652. package/dist/infrastructure/server/types/protocol.d.ts +4 -0
  653. package/dist/infrastructure/server/types/protocol.js +1 -0
  654. package/dist/infrastructure/server/types/sse.d.ts +11 -0
  655. package/dist/infrastructure/server/types/sse.js +1 -0
  656. package/dist/infrastructure/server/types/tcpServer.d.ts +25 -0
  657. package/dist/infrastructure/server/types/tcpServer.js +1 -0
  658. package/dist/infrastructure/server/types/ws.d.ts +6 -0
  659. package/dist/infrastructure/server/types/ws.js +1 -0
  660. package/dist/infrastructure/server/ws/constants.d.ts +6 -0
  661. package/dist/infrastructure/server/ws/constants.js +130 -0
  662. package/dist/infrastructure/server/ws/snapshots.d.ts +4 -0
  663. package/dist/infrastructure/server/ws/snapshots.js +52 -0
  664. package/dist/infrastructure/server/ws/subscriptions.d.ts +10 -0
  665. package/dist/infrastructure/server/ws/subscriptions.js +39 -0
  666. package/dist/infrastructure/server/wsHandler.d.ts +2 -10
  667. package/dist/infrastructure/server/wsHandler.js +12 -237
  668. package/dist/mcp/adapter.d.ts +5 -403
  669. package/dist/mcp/adapter.js +6 -778
  670. package/dist/mcp/backend/embedded/base.d.ts +7 -0
  671. package/dist/mcp/backend/embedded/base.js +15 -0
  672. package/dist/mcp/backend/embedded/index.d.ts +14 -0
  673. package/dist/mcp/backend/embedded/index.js +22 -0
  674. package/dist/mcp/backend/embedded/jobs.d.ts +44 -0
  675. package/dist/mcp/backend/embedded/jobs.js +98 -0
  676. package/dist/mcp/backend/embedded/queues.d.ts +27 -0
  677. package/dist/mcp/backend/embedded/queues.js +84 -0
  678. package/dist/mcp/backend/embedded/services.d.ts +29 -0
  679. package/dist/mcp/backend/embedded/services.js +107 -0
  680. package/dist/mcp/backend/serializers.d.ts +7 -0
  681. package/dist/mcp/backend/serializers.js +32 -0
  682. package/dist/mcp/backend/tcp/base.d.ts +19 -0
  683. package/dist/mcp/backend/tcp/base.js +54 -0
  684. package/dist/mcp/backend/tcp/index.d.ts +14 -0
  685. package/dist/mcp/backend/tcp/index.js +20 -0
  686. package/dist/mcp/backend/tcp/jobs.d.ts +44 -0
  687. package/dist/mcp/backend/tcp/jobs.js +122 -0
  688. package/dist/mcp/backend/tcp/queues.d.ts +27 -0
  689. package/dist/mcp/backend/tcp/queues.js +89 -0
  690. package/dist/mcp/backend/tcp/services.d.ts +30 -0
  691. package/dist/mcp/backend/tcp/services.js +161 -0
  692. package/dist/mcp/types/adapter.d.ts +176 -0
  693. package/dist/mcp/types/adapter.js +1 -0
  694. package/dist/shared/asyncLock.d.ts +13 -0
  695. package/dist/shared/asyncLock.js +65 -0
  696. package/dist/shared/lock.d.ts +10 -72
  697. package/dist/shared/lock.js +7 -231
  698. package/dist/shared/lockError.d.ts +3 -0
  699. package/dist/shared/lockError.js +6 -0
  700. package/dist/shared/lockTimeout.d.ts +2 -0
  701. package/dist/shared/lockTimeout.js +2 -0
  702. package/dist/shared/rwLock.d.ts +22 -0
  703. package/dist/shared/rwLock.js +124 -0
  704. package/dist/shared/serialization.js +1 -0
  705. package/dist/shared/skipList.d.ts +0 -5
  706. package/dist/shared/skipList.js +10 -57
  707. package/dist/shared/skipListNodes.d.ts +6 -0
  708. package/dist/shared/skipListNodes.js +43 -0
  709. package/dist/shared/types/lock.d.ts +7 -0
  710. package/dist/shared/types/lock.js +1 -0
  711. package/dist/shared/types/skipList.d.ts +4 -0
  712. package/dist/shared/types/skipList.js +1 -0
  713. package/package.json +2 -1
  714. package/dist/application/types.d.ts +0 -148
  715. package/dist/client/sandboxed/types.d.ts +0 -79
  716. package/dist/client/sandboxed/types.js +0 -5
  717. package/dist/client/worker/types.d.ts +0 -50
  718. /package/dist/client/queue/{queueTypes.js → types/contexts.js} +0 -0
@@ -0,0 +1,42 @@
1
+ import type { Command } from '../../../../domain/types/command';
2
+ import type { Response } from '../../../../domain/types/response';
3
+ import type { HandlerContext } from '../../types';
4
+ export declare function handleIsPaused(command: Extract<Command, {
5
+ cmd: 'IsPaused';
6
+ }>, context: HandlerContext, requestId?: string): Response;
7
+ export declare function handleObliterate(command: Extract<Command, {
8
+ cmd: 'Obliterate';
9
+ }>, context: HandlerContext, requestId?: string): Response;
10
+ export declare function handleListQueues(_command: Extract<Command, {
11
+ cmd: 'ListQueues';
12
+ }>, context: HandlerContext, requestId?: string): Response;
13
+ export declare function handleClean(command: Extract<Command, {
14
+ cmd: 'Clean';
15
+ }>, context: HandlerContext, requestId?: string): Response;
16
+ export declare function handleCount(command: Extract<Command, {
17
+ cmd: 'Count';
18
+ }>, context: HandlerContext, requestId?: string): Response;
19
+ export declare function handleRateLimit(command: Extract<Command, {
20
+ cmd: 'RateLimit';
21
+ }>, context: HandlerContext, requestId?: string): Response;
22
+ export declare function handleRateLimitClear(command: Extract<Command, {
23
+ cmd: 'RateLimitClear';
24
+ }>, context: HandlerContext, requestId?: string): Response;
25
+ export declare function handleSetConcurrency(command: Extract<Command, {
26
+ cmd: 'SetConcurrency';
27
+ }>, context: HandlerContext, requestId?: string): Response;
28
+ export declare function handleClearConcurrency(command: Extract<Command, {
29
+ cmd: 'ClearConcurrency';
30
+ }>, context: HandlerContext, requestId?: string): Response;
31
+ export declare function handleSetStallConfig(command: Extract<Command, {
32
+ cmd: 'SetStallConfig';
33
+ }>, context: HandlerContext, requestId?: string): Response;
34
+ export declare function handleGetStallConfig(command: Extract<Command, {
35
+ cmd: 'GetStallConfig';
36
+ }>, context: HandlerContext, requestId?: string): Response;
37
+ export declare function handleSetDlqConfig(command: Extract<Command, {
38
+ cmd: 'SetDlqConfig';
39
+ }>, context: HandlerContext, requestId?: string): Response;
40
+ export declare function handleGetDlqConfig(command: Extract<Command, {
41
+ cmd: 'GetDlqConfig';
42
+ }>, context: HandlerContext, requestId?: string): Response;
@@ -0,0 +1,111 @@
1
+ import * as response from '../../../../domain/types/response';
2
+ import { sanitizeConfigNumbers, toFiniteNumber } from './configNumbers';
3
+ export function handleIsPaused(command, context, requestId) {
4
+ return {
5
+ ok: true,
6
+ paused: context.queueManager.isPaused(command.queue),
7
+ reqId: requestId,
8
+ };
9
+ }
10
+ export function handleObliterate(command, context, requestId) {
11
+ context.queueManager.obliterate(command.queue);
12
+ return response.ok(undefined, requestId);
13
+ }
14
+ export function handleListQueues(_command, context, requestId) {
15
+ return {
16
+ ok: true,
17
+ queues: context.queueManager.listQueues(),
18
+ reqId: requestId,
19
+ };
20
+ }
21
+ export function handleClean(command, context, requestId) {
22
+ const ids = context.queueManager.clean(command.queue, command.grace, command.state, command.limit);
23
+ if (ids.length > 0) {
24
+ context.queueManager.emitDashboardEvent('queue:cleaned', {
25
+ queue: command.queue,
26
+ state: command.state,
27
+ count: ids.length,
28
+ });
29
+ }
30
+ return { ok: true, count: ids.length, ids, reqId: requestId };
31
+ }
32
+ export function handleCount(command, context, requestId) {
33
+ return { ok: true, count: context.queueManager.count(command.queue), reqId: requestId };
34
+ }
35
+ export function handleRateLimit(command, context, requestId) {
36
+ const limit = toFiniteNumber(command.limit);
37
+ if (limit === undefined)
38
+ return response.error('limit must be a finite number', requestId);
39
+ const duration = toFiniteNumber(command.duration);
40
+ const ttl = toFiniteNumber(command.ttl);
41
+ context.queueManager.setRateLimit(command.queue, limit, duration, ttl);
42
+ context.queueManager.emitDashboardEvent('ratelimit:set', {
43
+ queue: command.queue,
44
+ max: limit,
45
+ ...(duration !== undefined && { duration }),
46
+ ...(ttl !== undefined && { ttl }),
47
+ });
48
+ return response.ok(undefined, requestId);
49
+ }
50
+ export function handleRateLimitClear(command, context, requestId) {
51
+ context.queueManager.clearRateLimit(command.queue);
52
+ context.queueManager.emitDashboardEvent('ratelimit:cleared', { queue: command.queue });
53
+ return response.ok(undefined, requestId);
54
+ }
55
+ export function handleSetConcurrency(command, context, requestId) {
56
+ const limit = toFiniteNumber(command.limit);
57
+ if (limit === undefined)
58
+ return response.error('limit must be a finite number', requestId);
59
+ context.queueManager.setConcurrency(command.queue, limit);
60
+ context.queueManager.emitDashboardEvent('concurrency:set', {
61
+ queue: command.queue,
62
+ concurrency: limit,
63
+ });
64
+ return response.ok(undefined, requestId);
65
+ }
66
+ export function handleClearConcurrency(command, context, requestId) {
67
+ context.queueManager.clearConcurrency(command.queue);
68
+ context.queueManager.emitDashboardEvent('concurrency:cleared', { queue: command.queue });
69
+ return response.ok(undefined, requestId);
70
+ }
71
+ export function handleSetStallConfig(command, context, requestId) {
72
+ const config = sanitizeConfigNumbers(command.config, [
73
+ 'stallInterval',
74
+ 'maxStalls',
75
+ 'gracePeriod',
76
+ ]);
77
+ context.queueManager.setStallConfig(command.queue, config);
78
+ context.queueManager.emitDashboardEvent('config:stall-changed', {
79
+ queue: command.queue,
80
+ config,
81
+ });
82
+ return response.ok(undefined, requestId);
83
+ }
84
+ export function handleGetStallConfig(command, context, requestId) {
85
+ return {
86
+ ok: true,
87
+ config: context.queueManager.getStallConfig(command.queue),
88
+ reqId: requestId,
89
+ };
90
+ }
91
+ export function handleSetDlqConfig(command, context, requestId) {
92
+ const config = sanitizeConfigNumbers(command.config, [
93
+ 'autoRetryInterval',
94
+ 'maxAutoRetries',
95
+ 'maxAge',
96
+ 'maxEntries',
97
+ ]);
98
+ context.queueManager.setDlqConfig(command.queue, config);
99
+ context.queueManager.emitDashboardEvent('config:dlq-changed', {
100
+ queue: command.queue,
101
+ config,
102
+ });
103
+ return response.ok(undefined, requestId);
104
+ }
105
+ export function handleGetDlqConfig(command, context, requestId) {
106
+ return {
107
+ ok: true,
108
+ config: context.queueManager.getDlqConfig(command.queue),
109
+ reqId: requestId,
110
+ };
111
+ }
@@ -1,121 +1,3 @@
1
- /**
2
- * Advanced Command Handlers
3
- * Job management, queue control, rate limiting
4
- */
5
- import type { Command } from '../../../domain/types/command';
6
- import type { Response } from '../../../domain/types/response';
7
- import type { HandlerContext } from '../types';
8
- /** Handle Update command - update job data */
9
- export declare function handleUpdate(cmd: Extract<Command, {
10
- cmd: 'Update';
11
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
12
- /** Handle ChangePriority command */
13
- export declare function handleChangePriority(cmd: Extract<Command, {
14
- cmd: 'ChangePriority';
15
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
16
- /** Handle Promote command - move delayed to waiting */
17
- export declare function handlePromote(cmd: Extract<Command, {
18
- cmd: 'Promote';
19
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
20
- /** Handle UpdateParent command - update child's parent reference */
21
- export declare function handleUpdateParent(cmd: Extract<Command, {
22
- cmd: 'UpdateParent';
23
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
24
- /** Handle MoveToDelayed command */
25
- export declare function handleMoveToDelayed(cmd: Extract<Command, {
26
- cmd: 'MoveToDelayed';
27
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
28
- /** Handle Discard command - move to DLQ */
29
- export declare function handleDiscard(cmd: Extract<Command, {
30
- cmd: 'Discard';
31
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
32
- /** Handle WaitJob command - wait for job completion (event-driven, no polling) */
33
- export declare function handleWaitJob(cmd: Extract<Command, {
34
- cmd: 'WaitJob';
35
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
36
- /** Handle IsPaused command */
37
- export declare function handleIsPaused(cmd: Extract<Command, {
38
- cmd: 'IsPaused';
39
- }>, ctx: HandlerContext, reqId?: string): Response;
40
- /** Handle Obliterate command */
41
- export declare function handleObliterate(cmd: Extract<Command, {
42
- cmd: 'Obliterate';
43
- }>, ctx: HandlerContext, reqId?: string): Response;
44
- /** Handle ListQueues command */
45
- export declare function handleListQueues(_cmd: Extract<Command, {
46
- cmd: 'ListQueues';
47
- }>, ctx: HandlerContext, reqId?: string): Response;
48
- /** Handle Clean command */
49
- export declare function handleClean(cmd: Extract<Command, {
50
- cmd: 'Clean';
51
- }>, ctx: HandlerContext, reqId?: string): Response;
52
- /** Handle Count command */
53
- export declare function handleCount(cmd: Extract<Command, {
54
- cmd: 'Count';
55
- }>, ctx: HandlerContext, reqId?: string): Response;
56
- /** Handle RateLimit command */
57
- export declare function handleRateLimit(cmd: Extract<Command, {
58
- cmd: 'RateLimit';
59
- }>, ctx: HandlerContext, reqId?: string): Response;
60
- /** Handle RateLimitClear command */
61
- export declare function handleRateLimitClear(cmd: Extract<Command, {
62
- cmd: 'RateLimitClear';
63
- }>, ctx: HandlerContext, reqId?: string): Response;
64
- /** Handle SetConcurrency command */
65
- export declare function handleSetConcurrency(cmd: Extract<Command, {
66
- cmd: 'SetConcurrency';
67
- }>, ctx: HandlerContext, reqId?: string): Response;
68
- /** Handle ClearConcurrency command */
69
- export declare function handleClearConcurrency(cmd: Extract<Command, {
70
- cmd: 'ClearConcurrency';
71
- }>, ctx: HandlerContext, reqId?: string): Response;
72
- /** Handle SetStallConfig command */
73
- export declare function handleSetStallConfig(cmd: Extract<Command, {
74
- cmd: 'SetStallConfig';
75
- }>, ctx: HandlerContext, reqId?: string): Response;
76
- /** Handle GetStallConfig command */
77
- export declare function handleGetStallConfig(cmd: Extract<Command, {
78
- cmd: 'GetStallConfig';
79
- }>, ctx: HandlerContext, reqId?: string): Response;
80
- /** Handle SetDlqConfig command */
81
- export declare function handleSetDlqConfig(cmd: Extract<Command, {
82
- cmd: 'SetDlqConfig';
83
- }>, ctx: HandlerContext, reqId?: string): Response;
84
- /** Handle GetDlqConfig command */
85
- export declare function handleGetDlqConfig(cmd: Extract<Command, {
86
- cmd: 'GetDlqConfig';
87
- }>, ctx: HandlerContext, reqId?: string): Response;
88
- /** Handle ChangeDelay command - change delay for a delayed/active job */
89
- export declare function handleChangeDelay(cmd: Extract<Command, {
90
- cmd: 'ChangeDelay';
91
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
92
- /** Handle MoveToWait command - move a job back to waiting.
93
- * Dispatch by state to match embedded branching in jobMove.ts.
94
- * - active -> moveActiveToWait
95
- * - delayed -> promote
96
- * - failed -> retryDlq
97
- * - waiting / prioritized -> already there, no-op success
98
- */
99
- export declare function handleMoveToWait(cmd: Extract<Command, {
100
- cmd: 'MoveToWait';
101
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
102
- /** Handle PromoteJobs command - promote all delayed jobs in a queue */
103
- export declare function handlePromoteJobs(cmd: Extract<Command, {
104
- cmd: 'PromoteJobs';
105
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
106
- /** Handle GetFailedChildrenValues command */
107
- export declare function handleGetFailedChildrenValues(cmd: Extract<Command, {
108
- cmd: 'GetFailedChildrenValues';
109
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
110
- /** Handle GetIgnoredChildrenFailures command */
111
- export declare function handleGetIgnoredChildrenFailures(cmd: Extract<Command, {
112
- cmd: 'GetIgnoredChildrenFailures';
113
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
114
- /** Handle RemoveChildDependency command */
115
- export declare function handleRemoveChildDependency(cmd: Extract<Command, {
116
- cmd: 'RemoveChildDependency';
117
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
118
- /** Handle RemoveUnprocessedChildren command */
119
- export declare function handleRemoveUnprocessedChildren(cmd: Extract<Command, {
120
- cmd: 'RemoveUnprocessedChildren';
121
- }>, ctx: HandlerContext, reqId?: string): Promise<Response>;
1
+ export { handleGetFailedChildrenValues, handleGetIgnoredChildrenFailures, handleRemoveChildDependency, handleRemoveUnprocessedChildren, } from './advanced/dependencies';
2
+ export { handleChangeDelay, handleChangePriority, handleDiscard, handleMoveToDelayed, handleMoveToWait, handlePromote, handlePromoteJobs, handleUpdate, handleUpdateParent, handleWaitJob, } from './advanced/jobs';
3
+ export { handleClean, handleClearConcurrency, handleCount, handleGetDlqConfig, handleGetStallConfig, handleIsPaused, handleListQueues, handleObliterate, handleRateLimit, handleRateLimitClear, handleSetConcurrency, handleSetDlqConfig, handleSetStallConfig, } from './advanced/queue';
@@ -1,336 +1,3 @@
1
- /**
2
- * Advanced Command Handlers
3
- * Job management, queue control, rate limiting
4
- */
5
- import * as resp from '../../../domain/types/response';
6
- import { jobId } from '../../../domain/types/job';
7
- import { validateNumericField } from '../protocol';
8
- /**
9
- * Coerce a value to a finite number, or return undefined if it can't be.
10
- * Guards config endpoints against non-numeric input (e.g. `"abc"`) that would
11
- * otherwise reach numeric comparisons as NaN and silently break behaviour
12
- * (a string `stallInterval` disabled stall detection entirely).
13
- */
14
- function toFiniteNumber(value) {
15
- if (value === undefined || value === null)
16
- return undefined;
17
- const n = typeof value === 'number' ? value : Number(value);
18
- return Number.isFinite(n) ? n : undefined;
19
- }
20
- /**
21
- * Sanitize the numeric fields of a config object: coerce numeric strings, drop
22
- * non-numeric garbage (so the manager's merge keeps the existing/default value
23
- * instead of storing NaN). Booleans and unknown keys pass through untouched.
24
- */
25
- function sanitizeConfigNumbers(config, numericKeys) {
26
- if (!config || typeof config !== 'object')
27
- return config;
28
- const numeric = new Set(numericKeys);
29
- const out = {};
30
- for (const [key, value] of Object.entries(config)) {
31
- if (!numeric.has(key)) {
32
- out[key] = value; // booleans / unknown keys pass through untouched
33
- continue;
34
- }
35
- if (value === null) {
36
- out[key] = null; // valid for nullable fields (e.g. dlq maxAge)
37
- continue;
38
- }
39
- const n = toFiniteNumber(value);
40
- // coerce numeric strings; omit non-numeric garbage so the manager's merge
41
- // keeps the existing/default value instead of storing NaN
42
- if (n !== undefined)
43
- out[key] = n;
44
- }
45
- return out;
46
- }
47
- // ============ Job Management ============
48
- /** Handle Update command - update job data */
49
- export async function handleUpdate(cmd, ctx, reqId) {
50
- const success = await ctx.queueManager.updateJobData(jobId(cmd.id), cmd.data);
51
- if (success)
52
- ctx.queueManager.emitDashboardEvent('job:data-updated', { jobId: cmd.id });
53
- return success
54
- ? resp.ok(undefined, reqId)
55
- : resp.error('Job not found or cannot be updated', reqId);
56
- }
57
- /** Handle ChangePriority command */
58
- export async function handleChangePriority(cmd, ctx, reqId) {
59
- const success = await ctx.queueManager.changePriority(jobId(cmd.id), cmd.priority, cmd.lifo);
60
- if (success) {
61
- ctx.queueManager.emitDashboardEvent('job:priority-changed', {
62
- jobId: cmd.id,
63
- newPriority: cmd.priority,
64
- });
65
- }
66
- return success ? resp.ok(undefined, reqId) : resp.error('Job not found or not in queue', reqId);
67
- }
68
- /** Handle Promote command - move delayed to waiting */
69
- export async function handlePromote(cmd, ctx, reqId) {
70
- const success = await ctx.queueManager.promote(jobId(cmd.id));
71
- if (success)
72
- ctx.queueManager.emitDashboardEvent('job:promoted', { jobId: cmd.id });
73
- return success ? resp.ok(undefined, reqId) : resp.error('Job not found or not delayed', reqId);
74
- }
75
- /** Handle UpdateParent command - update child's parent reference */
76
- export async function handleUpdateParent(cmd, ctx, reqId) {
77
- try {
78
- await ctx.queueManager.updateJobParent(jobId(cmd.childId), jobId(cmd.parentId));
79
- return resp.ok(undefined, reqId);
80
- }
81
- catch (error) {
82
- return resp.error(error instanceof Error ? error.message : 'Failed to update parent', reqId);
83
- }
84
- }
85
- /** Handle MoveToDelayed command */
86
- export async function handleMoveToDelayed(cmd, ctx, reqId) {
87
- const id = jobId(cmd.id);
88
- const success = await ctx.queueManager.moveToDelayed(id, cmd.delay);
89
- if (success) {
90
- ctx.queueManager.emitDashboardEvent('job:moved-to-delayed', {
91
- jobId: cmd.id,
92
- delay: cmd.delay,
93
- });
94
- return resp.ok(undefined, reqId);
95
- }
96
- const state = await ctx.queueManager.getJobState(id);
97
- if (state === 'unknown') {
98
- return resp.error('Job not found', reqId);
99
- }
100
- return resp.error(`Job is not active (current state: ${state})`, reqId);
101
- }
102
- /** Handle Discard command - move to DLQ */
103
- export async function handleDiscard(cmd, ctx, reqId) {
104
- const success = await ctx.queueManager.discard(jobId(cmd.id));
105
- if (success)
106
- ctx.queueManager.emitDashboardEvent('job:discarded', { jobId: cmd.id });
107
- return success ? resp.ok(undefined, reqId) : resp.error('Job not found', reqId);
108
- }
109
- /** Handle WaitJob command - wait for job completion (event-driven, no polling) */
110
- export async function handleWaitJob(cmd, ctx, reqId) {
111
- const jid = jobId(cmd.id);
112
- // Bounded like PULL (which caps at 60s); waiting for completion is
113
- // legitimately longer, so the cap here is 10 min. validateNumericField also
114
- // rejects NaN/Infinity from hostile clients (a hand-rolled <0/>max check
115
- // would let NaN through and resolve instantly as a false "not completed").
116
- const timeoutError = validateNumericField(cmd.timeout, 'timeout', { min: 0, max: 600000 });
117
- if (timeoutError)
118
- return resp.error(timeoutError, reqId);
119
- const timeout = cmd.timeout ?? 30000;
120
- // First check if job exists and is already completed
121
- const job = await ctx.queueManager.getJob(jid);
122
- if (!job)
123
- return resp.error('Job not found', reqId);
124
- if (job.completedAt) {
125
- const result = ctx.queueManager.getResult(jid);
126
- return { ok: true, completed: true, result, reqId };
127
- }
128
- // Wait for completion event - event-driven, no polling
129
- const completed = await ctx.queueManager.waitForJobCompletion(jid, timeout);
130
- if (completed) {
131
- const result = ctx.queueManager.getResult(jid);
132
- return { ok: true, completed: true, result, reqId };
133
- }
134
- return { ok: true, completed: false, reqId };
135
- }
136
- // ============ Queue Control ============
137
- /** Handle IsPaused command */
138
- export function handleIsPaused(cmd, ctx, reqId) {
139
- const paused = ctx.queueManager.isPaused(cmd.queue);
140
- return { ok: true, paused, reqId };
141
- }
142
- /** Handle Obliterate command */
143
- export function handleObliterate(cmd, ctx, reqId) {
144
- ctx.queueManager.obliterate(cmd.queue);
145
- return resp.ok(undefined, reqId);
146
- }
147
- /** Handle ListQueues command */
148
- export function handleListQueues(_cmd, ctx, reqId) {
149
- const queues = ctx.queueManager.listQueues();
150
- return { ok: true, queues, reqId };
151
- }
152
- /** Handle Clean command */
153
- export function handleClean(cmd, ctx, reqId) {
154
- const ids = ctx.queueManager.clean(cmd.queue, cmd.grace, cmd.state, cmd.limit);
155
- if (ids.length > 0) {
156
- ctx.queueManager.emitDashboardEvent('queue:cleaned', {
157
- queue: cmd.queue,
158
- state: cmd.state,
159
- count: ids.length,
160
- });
161
- }
162
- return { ok: true, count: ids.length, ids, reqId };
163
- }
164
- /** Handle Count command */
165
- export function handleCount(cmd, ctx, reqId) {
166
- const count = ctx.queueManager.count(cmd.queue);
167
- return { ok: true, count, reqId };
168
- }
169
- // ============ Rate Limiting ============
170
- /** Handle RateLimit command */
171
- export function handleRateLimit(cmd, ctx, reqId) {
172
- const limit = toFiniteNumber(cmd.limit);
173
- if (limit === undefined)
174
- return resp.error('limit must be a finite number', reqId);
175
- // Optional window/TTL: invalid values degrade to the defaults (1s window,
176
- // permanent limit) inside the limiter rather than failing the command.
177
- const duration = toFiniteNumber(cmd.duration);
178
- const ttl = toFiniteNumber(cmd.ttl);
179
- ctx.queueManager.setRateLimit(cmd.queue, limit, duration, ttl);
180
- ctx.queueManager.emitDashboardEvent('ratelimit:set', {
181
- queue: cmd.queue,
182
- max: limit,
183
- ...(duration !== undefined && { duration }),
184
- ...(ttl !== undefined && { ttl }),
185
- });
186
- return resp.ok(undefined, reqId);
187
- }
188
- /** Handle RateLimitClear command */
189
- export function handleRateLimitClear(cmd, ctx, reqId) {
190
- ctx.queueManager.clearRateLimit(cmd.queue);
191
- ctx.queueManager.emitDashboardEvent('ratelimit:cleared', { queue: cmd.queue });
192
- return resp.ok(undefined, reqId);
193
- }
194
- /** Handle SetConcurrency command */
195
- export function handleSetConcurrency(cmd, ctx, reqId) {
196
- const limit = toFiniteNumber(cmd.limit);
197
- if (limit === undefined)
198
- return resp.error('limit must be a finite number', reqId);
199
- ctx.queueManager.setConcurrency(cmd.queue, limit);
200
- ctx.queueManager.emitDashboardEvent('concurrency:set', {
201
- queue: cmd.queue,
202
- concurrency: limit,
203
- });
204
- return resp.ok(undefined, reqId);
205
- }
206
- /** Handle ClearConcurrency command */
207
- export function handleClearConcurrency(cmd, ctx, reqId) {
208
- ctx.queueManager.clearConcurrency(cmd.queue);
209
- ctx.queueManager.emitDashboardEvent('concurrency:cleared', { queue: cmd.queue });
210
- return resp.ok(undefined, reqId);
211
- }
212
- // ============ Config Commands ============
213
- /** Handle SetStallConfig command */
214
- export function handleSetStallConfig(cmd, ctx, reqId) {
215
- const config = sanitizeConfigNumbers(cmd.config, ['stallInterval', 'maxStalls', 'gracePeriod']);
216
- ctx.queueManager.setStallConfig(cmd.queue, config);
217
- ctx.queueManager.emitDashboardEvent('config:stall-changed', {
218
- queue: cmd.queue,
219
- config,
220
- });
221
- return resp.ok(undefined, reqId);
222
- }
223
- /** Handle GetStallConfig command */
224
- export function handleGetStallConfig(cmd, ctx, reqId) {
225
- const config = ctx.queueManager.getStallConfig(cmd.queue);
226
- return { ok: true, config, reqId };
227
- }
228
- /** Handle SetDlqConfig command */
229
- export function handleSetDlqConfig(cmd, ctx, reqId) {
230
- const config = sanitizeConfigNumbers(cmd.config, [
231
- 'autoRetryInterval',
232
- 'maxAutoRetries',
233
- 'maxAge',
234
- 'maxEntries',
235
- ]);
236
- ctx.queueManager.setDlqConfig(cmd.queue, config);
237
- ctx.queueManager.emitDashboardEvent('config:dlq-changed', {
238
- queue: cmd.queue,
239
- config,
240
- });
241
- return resp.ok(undefined, reqId);
242
- }
243
- /** Handle GetDlqConfig command */
244
- export function handleGetDlqConfig(cmd, ctx, reqId) {
245
- const config = ctx.queueManager.getDlqConfig(cmd.queue);
246
- return { ok: true, config, reqId };
247
- }
248
- /** Handle ChangeDelay command - change delay for a delayed/active job */
249
- export async function handleChangeDelay(cmd, ctx, reqId) {
250
- const success = await ctx.queueManager.changeDelay(jobId(cmd.id), cmd.delay);
251
- if (success) {
252
- ctx.queueManager.emitDashboardEvent('job:delay-changed', {
253
- jobId: cmd.id,
254
- newDelay: cmd.delay,
255
- });
256
- }
257
- return success
258
- ? resp.ok(undefined, reqId)
259
- : resp.error('Job not found or cannot change delay', reqId);
260
- }
261
- /** Handle MoveToWait command - move a job back to waiting.
262
- * Dispatch by state to match embedded branching in jobMove.ts.
263
- * - active -> moveActiveToWait
264
- * - delayed -> promote
265
- * - failed -> retryDlq
266
- * - waiting / prioritized -> already there, no-op success
267
- */
268
- export async function handleMoveToWait(cmd, ctx, reqId) {
269
- const id = jobId(cmd.id);
270
- const state = await ctx.queueManager.getJobState(id);
271
- if (state === 'active') {
272
- const ok = await ctx.queueManager.moveActiveToWait(id);
273
- return ok ? resp.ok(undefined, reqId) : resp.error('Job not found or not active', reqId);
274
- }
275
- if (state === 'delayed') {
276
- const ok = await ctx.queueManager.promote(id);
277
- return ok ? resp.ok(undefined, reqId) : resp.error('Job not found or not delayed', reqId);
278
- }
279
- if (state === 'failed') {
280
- const job = await ctx.queueManager.getJob(id);
281
- if (!job)
282
- return resp.error('Job not found', reqId);
283
- const count = ctx.queueManager.retryDlq(job.queue, id);
284
- return count > 0 ? resp.ok(undefined, reqId) : resp.error('Failed job not in DLQ', reqId);
285
- }
286
- if (state === 'waiting' || state === 'prioritized') {
287
- return resp.ok(undefined, reqId);
288
- }
289
- return resp.error(`Cannot move job from state '${state}' to waiting`, reqId);
290
- }
291
- /** Handle PromoteJobs command - promote all delayed jobs in a queue */
292
- export async function handlePromoteJobs(cmd, ctx, reqId) {
293
- const count = await ctx.queueManager.promoteJobs(cmd.queue, cmd.count);
294
- return { ok: true, count, reqId };
295
- }
296
- // ============ Flow Dependency Commands ============
297
- /** Handle GetFailedChildrenValues command */
298
- export async function handleGetFailedChildrenValues(cmd, ctx, reqId) {
299
- try {
300
- const values = await ctx.queueManager.getFailedChildrenValues(jobId(cmd.id));
301
- return { ok: true, values, reqId };
302
- }
303
- catch {
304
- return { ok: true, values: {}, reqId };
305
- }
306
- }
307
- /** Handle GetIgnoredChildrenFailures command */
308
- export async function handleGetIgnoredChildrenFailures(cmd, ctx, reqId) {
309
- try {
310
- const values = await ctx.queueManager.getIgnoredChildrenFailures(jobId(cmd.id));
311
- return { ok: true, values, reqId };
312
- }
313
- catch {
314
- return { ok: true, values: {}, reqId };
315
- }
316
- }
317
- /** Handle RemoveChildDependency command */
318
- export async function handleRemoveChildDependency(cmd, ctx, reqId) {
319
- try {
320
- const removed = await ctx.queueManager.removeChildDependency(jobId(cmd.id));
321
- return { ok: true, removed, reqId };
322
- }
323
- catch (err) {
324
- return resp.error(err instanceof Error ? err.message : String(err), reqId);
325
- }
326
- }
327
- /** Handle RemoveUnprocessedChildren command */
328
- export async function handleRemoveUnprocessedChildren(cmd, ctx, reqId) {
329
- try {
330
- await ctx.queueManager.removeUnprocessedChildren(jobId(cmd.id));
331
- return resp.ok(undefined, reqId);
332
- }
333
- catch (err) {
334
- return resp.error(err instanceof Error ? err.message : String(err), reqId);
335
- }
336
- }
1
+ export { handleGetFailedChildrenValues, handleGetIgnoredChildrenFailures, handleRemoveChildDependency, handleRemoveUnprocessedChildren, } from './advanced/dependencies';
2
+ export { handleChangeDelay, handleChangePriority, handleDiscard, handleMoveToDelayed, handleMoveToWait, handlePromote, handlePromoteJobs, handleUpdate, handleUpdateParent, handleWaitJob, } from './advanced/jobs';
3
+ export { handleClean, handleClearConcurrency, handleCount, handleGetDlqConfig, handleGetStallConfig, handleIsPaused, handleListQueues, handleObliterate, handleRateLimit, handleRateLimitClear, handleSetConcurrency, handleSetDlqConfig, handleSetStallConfig, } from './advanced/queue';
@@ -1,7 +1,4 @@
1
- /**
2
- * Core Command Handlers
3
- * Push, Pull, Ack, Fail operations
4
- */
1
+ /** Core command handlers for push, pull, acknowledgement, and failure. */
5
2
  import type { Command } from '../../../domain/types/command';
6
3
  import type { Response } from '../../../domain/types/response';
7
4
  import type { HandlerContext } from '../types';