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
@@ -1,17 +1,27 @@
1
- /**
2
- * Job Conversion Functions
3
- * Convert internal job types to public API types
4
- */
5
1
  import { buildJobOpts } from './jobHelpers';
2
+ import { convertDlqEntry } from './dlqConversion';
6
3
  import { buildJobProperties, buildStateCheckMethods, buildSerializationMethods, } from './jobConversionHelpers';
7
4
  /** Convert internal job to public job (with methods) */
8
5
  export function createPublicJob(opts) {
9
- const { job, name, updateProgress, log, getState, remove, retry, getChildrenValues, updateData, promote, changeDelay, changePriority, extendLock, clearLogs, getDependencies, getDependenciesCount, moveToCompleted, moveToFailed, moveToWait, moveToDelayed, moveToWaitingChildren, waitUntilFinished, discard, getFailedChildrenValues, getIgnoredChildrenFailures, removeChildDependency, removeDeduplicationKey, removeUnprocessedChildren, token, processedBy, stacktrace, } = opts;
6
+ const { job, name, updateProgress, log, getState, remove, retry, getChildrenValues, updateData, promote, changeDelay, changePriority, extendLock, clearLogs, getDependencies, getDependenciesCount, moveToCompleted, moveToFailed, moveToWait, moveToDelayed, moveToWaitingChildren, waitUntilFinished, discard, getFailedChildrenValues, getIgnoredChildrenFailures, removeChildDependency, removeDeduplicationKey, removeUnprocessedChildren, token, processedBy, stacktrace, returnvalue, failedReason, } = opts;
10
7
  const id = String(job.id);
11
8
  const jobOpts = buildJobOpts(job);
12
- const props = buildJobProperties(job, name, stacktrace, token, processedBy);
9
+ const props = buildJobProperties(job, name, {
10
+ stacktrace,
11
+ token,
12
+ processedBy,
13
+ returnvalue,
14
+ failedReason,
15
+ });
13
16
  const stateChecks = buildStateCheckMethods(id, getState, getDependenciesCount);
14
- const serialization = buildSerializationMethods(job, id, name, jobOpts, stacktrace);
17
+ const serialization = buildSerializationMethods(job, {
18
+ id,
19
+ name,
20
+ jobOpts,
21
+ stacktrace,
22
+ returnvalue,
23
+ failedReason,
24
+ });
15
25
  return {
16
26
  ...props,
17
27
  ...stateChecks,
@@ -64,12 +74,23 @@ export function createPublicJob(opts) {
64
74
  }
65
75
  /** Simple public job without methods (for Queue.getJob) */
66
76
  export function toPublicJob(opts) {
67
- const { job, name, updateProgress, log, getState, remove, retry, getChildrenValues, updateData, promote, changeDelay, changePriority, extendLock, clearLogs, getDependencies, getDependenciesCount, moveToCompleted, moveToFailed, moveToWait, moveToDelayed, moveToWaitingChildren, waitUntilFinished, discard, getFailedChildrenValues, getIgnoredChildrenFailures, removeChildDependency, removeDeduplicationKey, removeUnprocessedChildren, stacktrace, } = opts;
77
+ const { job, name, updateProgress, log, getState, remove, retry, getChildrenValues, updateData, promote, changeDelay, changePriority, extendLock, clearLogs, getDependencies, getDependenciesCount, moveToCompleted, moveToFailed, moveToWait, moveToDelayed, moveToWaitingChildren, waitUntilFinished, discard, getFailedChildrenValues, getIgnoredChildrenFailures, removeChildDependency, removeDeduplicationKey, removeUnprocessedChildren, stacktrace, returnvalue, failedReason, } = opts;
68
78
  const id = String(job.id);
69
79
  const jobOpts = buildJobOpts(job);
70
- const props = buildJobProperties(job, name, stacktrace, undefined, undefined);
80
+ const props = buildJobProperties(job, name, {
81
+ stacktrace,
82
+ returnvalue,
83
+ failedReason,
84
+ });
71
85
  const stateChecks = buildStateCheckMethods(id, getState, getDependenciesCount);
72
- const serialization = buildSerializationMethods(job, id, name, jobOpts, stacktrace);
86
+ const serialization = buildSerializationMethods(job, {
87
+ id,
88
+ name,
89
+ jobOpts,
90
+ stacktrace,
91
+ returnvalue,
92
+ failedReason,
93
+ });
73
94
  return {
74
95
  ...props,
75
96
  ...stateChecks,
@@ -122,27 +143,5 @@ export function toPublicJob(opts) {
122
143
  }
123
144
  /** Convert internal DLQ entry to public DLQ entry */
124
145
  export function toDlqEntry(entry, methods) {
125
- const jobData = entry.job.data;
126
- return {
127
- job: createPublicJob({
128
- job: entry.job,
129
- name: jobData?.name ?? 'default',
130
- ...methods,
131
- }),
132
- enteredAt: entry.enteredAt,
133
- reason: entry.reason,
134
- error: entry.error,
135
- attempts: entry.attempts.map((a) => ({
136
- attempt: a.attempt,
137
- startedAt: a.startedAt,
138
- failedAt: a.failedAt,
139
- reason: a.reason,
140
- error: a.error,
141
- duration: a.duration,
142
- })),
143
- retryCount: entry.retryCount,
144
- lastRetryAt: entry.lastRetryAt,
145
- nextRetryAt: entry.nextRetryAt,
146
- expiresAt: entry.expiresAt,
147
- };
146
+ return convertDlqEntry(entry, methods, (options) => createPublicJob(options));
148
147
  }
@@ -4,9 +4,25 @@
4
4
  */
5
5
  import type { Job as InternalJob } from '../domain/types/job';
6
6
  import type { Job, JobStateType, JobOptions, GetDependenciesOpts, JobDependenciesCount } from './types';
7
+ interface JobPropertyOptions {
8
+ stacktrace?: string[] | null;
9
+ token?: string;
10
+ processedBy?: string;
11
+ returnvalue?: unknown;
12
+ failedReason?: string;
13
+ }
7
14
  /** Build common job properties from internal job */
8
- export declare function buildJobProperties<T>(job: InternalJob, name: string, stacktrace?: string[] | null, token?: string, processedBy?: string): Pick<Job<T>, 'id' | 'name' | 'data' | 'queueName' | 'attemptsMade' | 'timestamp' | 'progress' | 'parent' | 'delay' | 'processedOn' | 'finishedOn' | 'stacktrace' | 'stalledCounter' | 'priority' | 'parentKey' | 'opts' | 'token' | 'processedBy' | 'deduplicationId' | 'repeatJobKey' | 'attemptsStarted'>;
15
+ export declare function buildJobProperties<T>(job: InternalJob, name: string, options?: JobPropertyOptions): Pick<Job<T>, 'id' | 'name' | 'data' | 'queueName' | 'attemptsMade' | 'timestamp' | 'progress' | 'parent' | 'delay' | 'processedOn' | 'finishedOn' | 'stacktrace' | 'returnvalue' | 'failedReason' | 'stalledCounter' | 'priority' | 'parentKey' | 'opts' | 'token' | 'processedBy' | 'deduplicationId' | 'repeatJobKey' | 'attemptsStarted'>;
9
16
  /** Build state check methods */
10
17
  export declare function buildStateCheckMethods(id: string, getState?: (id: string) => Promise<JobStateType>, _getDependenciesCount?: (id: string, opts?: GetDependenciesOpts) => Promise<JobDependenciesCount>): Pick<Job, 'isWaiting' | 'isActive' | 'isDelayed' | 'isCompleted' | 'isFailed' | 'isWaitingChildren'>;
18
+ interface JobSerializationOptions {
19
+ id: string;
20
+ name: string;
21
+ jobOpts: JobOptions;
22
+ stacktrace?: string[] | null;
23
+ returnvalue?: unknown;
24
+ failedReason?: string;
25
+ }
11
26
  /** Build serialization methods */
12
- export declare function buildSerializationMethods<T>(job: InternalJob, id: string, name: string, jobOpts: JobOptions, stacktrace?: string[] | null): Pick<Job<T>, 'toJSON' | 'asJSON'>;
27
+ export declare function buildSerializationMethods<T>(job: InternalJob, options: JobSerializationOptions): Pick<Job<T>, 'toJSON' | 'asJSON'>;
28
+ export {};
@@ -2,16 +2,19 @@
2
2
  * Job Conversion Helpers
3
3
  * Builder functions for constructing public job properties
4
4
  */
5
- import { extractUserData, extractParent, buildJobOpts, buildParentKey, buildRepeatJobKey, } from './jobHelpers';
5
+ import { extractParent, buildJobOpts, buildParentKey, buildRepeatJobKey, resolvePublicJobPayload, } from './jobHelpers';
6
+ import { serializeReturnvalue } from './queue/jobMetadata';
6
7
  /** Build common job properties from internal job */
7
- export function buildJobProperties(job, name, stacktrace, token, processedBy) {
8
+ export function buildJobProperties(job, name, options = {}) {
9
+ const { stacktrace, token, processedBy, returnvalue, failedReason } = options;
8
10
  const id = String(job.id);
9
11
  const parent = extractParent(job.data);
10
12
  const jobOpts = buildJobOpts(job);
13
+ const payload = resolvePublicJobPayload(job);
11
14
  return {
12
15
  id,
13
16
  name,
14
- data: extractUserData(job.data),
17
+ data: payload.data,
15
18
  queueName: job.queue,
16
19
  attemptsMade: job.attempts,
17
20
  timestamp: job.createdAt,
@@ -22,6 +25,8 @@ export function buildJobProperties(job, name, stacktrace, token, processedBy) {
22
25
  finishedOn: job.completedAt ?? undefined,
23
26
  // Fall back to the stack persisted on the internal job at FAIL time (#74)
24
27
  stacktrace: stacktrace ?? job.stacktrace ?? null,
28
+ returnvalue,
29
+ failedReason,
25
30
  stalledCounter: job.stallCount,
26
31
  priority: job.priority,
27
32
  parentKey: buildParentKey(job),
@@ -67,22 +72,24 @@ export function buildStateCheckMethods(id, getState, _getDependenciesCount) {
67
72
  };
68
73
  }
69
74
  /** Build serialization methods */
70
- export function buildSerializationMethods(job, id, name, jobOpts, stacktrace) {
75
+ export function buildSerializationMethods(job, options) {
76
+ const { id, name, jobOpts, stacktrace, returnvalue, failedReason } = options;
71
77
  // Fall back to the stack persisted on the internal job at FAIL time (#74)
72
78
  const stack = stacktrace ?? job.stacktrace ?? null;
79
+ const payload = resolvePublicJobPayload(job);
73
80
  return {
74
81
  toJSON: () => ({
75
82
  id,
76
83
  name,
77
- data: extractUserData(job.data),
84
+ data: payload.data,
78
85
  opts: jobOpts,
79
86
  progress: job.progress,
80
87
  delay: job.runAt > job.createdAt ? job.runAt - job.createdAt : 0,
81
88
  timestamp: job.createdAt,
82
89
  attemptsMade: job.attempts,
83
90
  stacktrace: stack,
84
- returnvalue: undefined,
85
- failedReason: undefined,
91
+ returnvalue,
92
+ failedReason,
86
93
  finishedOn: job.completedAt ?? undefined,
87
94
  processedOn: job.startedAt ?? undefined,
88
95
  queueQualifiedName: `bull:${job.queue}`,
@@ -91,15 +98,15 @@ export function buildSerializationMethods(job, id, name, jobOpts, stacktrace) {
91
98
  asJSON: () => ({
92
99
  id,
93
100
  name,
94
- data: JSON.stringify(extractUserData(job.data)),
101
+ data: JSON.stringify(payload.data),
95
102
  opts: JSON.stringify(jobOpts),
96
103
  progress: JSON.stringify(job.progress),
97
104
  delay: String(job.runAt > job.createdAt ? job.runAt - job.createdAt : 0),
98
105
  timestamp: String(job.createdAt),
99
106
  attemptsMade: String(job.attempts),
100
107
  stacktrace: stack ? JSON.stringify(stack) : null,
101
- returnvalue: undefined,
102
- failedReason: undefined,
108
+ returnvalue: serializeReturnvalue(returnvalue),
109
+ failedReason,
103
110
  finishedOn: job.completedAt ? String(job.completedAt) : undefined,
104
111
  processedOn: job.startedAt ? String(job.startedAt) : undefined,
105
112
  parentKey: buildParentKey(job),
@@ -42,9 +42,11 @@ export interface CreatePublicJobOptions {
42
42
  token?: string;
43
43
  processedBy?: string;
44
44
  stacktrace?: string[] | null;
45
+ returnvalue?: unknown;
46
+ failedReason?: string;
45
47
  }
46
48
  /** Complete operation set required when exposing a live job from another view. */
47
- export type PublicJobMethodContext = Required<Omit<CreatePublicJobOptions, 'job' | 'name' | 'token' | 'processedBy' | 'stacktrace'>>;
49
+ export type PublicJobMethodContext = Required<Omit<CreatePublicJobOptions, 'job' | 'name' | 'token' | 'processedBy' | 'stacktrace' | 'returnvalue' | 'failedReason'>>;
48
50
  /** Options for creating a simple public job */
49
51
  export interface ToPublicJobOptions {
50
52
  job: InternalJob;
@@ -81,4 +83,6 @@ export interface ToPublicJobOptions {
81
83
  removeDeduplicationKey?: (id: string) => Promise<boolean>;
82
84
  removeUnprocessedChildren?: (id: string) => Promise<void>;
83
85
  stacktrace?: string[] | null;
86
+ returnvalue?: unknown;
87
+ failedReason?: string;
84
88
  }
@@ -2,10 +2,15 @@
2
2
  * Job Helper Functions
3
3
  * Internal utilities for extracting and building job data
4
4
  */
5
- import type { Job as InternalJob } from '../domain/types/job';
5
+ import { type Job as InternalJob } from '../domain/types/job';
6
6
  import type { RepeatOptions, JobOptions } from './types';
7
- /** Extract user data from stored job data (removes internal 'name' field) */
7
+ /** Decode a bare pre-name-field payload. Modern conversions use normalizeJobPayload(job). */
8
8
  export declare function extractUserData(jobData: unknown): unknown;
9
+ /** Resolve legacy names while preserving documented engine-owned flow metadata. */
10
+ export declare function resolvePublicJobPayload(job: InternalJob): {
11
+ name: string;
12
+ data: unknown;
13
+ };
9
14
  /** Extract parent info from job data if present */
10
15
  export declare function extractParent(jobData: unknown): {
11
16
  id: string;
@@ -2,13 +2,15 @@
2
2
  * Job Helper Functions
3
3
  * Internal utilities for extracting and building job data
4
4
  */
5
- /** Extract user data from stored job data (removes internal 'name' field) */
5
+ import { normalizeLegacyJobPayload } from '../domain/types/job';
6
+ /** Decode a bare pre-name-field payload. Modern conversions use normalizeJobPayload(job). */
6
7
  export function extractUserData(jobData) {
7
- if (typeof jobData === 'object' && jobData !== null) {
8
- const { name: _name, ...userData } = jobData;
9
- return userData;
10
- }
11
- return jobData;
8
+ return normalizeLegacyJobPayload({ data: jobData }).data;
9
+ }
10
+ /** Resolve legacy names while preserving documented engine-owned flow metadata. */
11
+ export function resolvePublicJobPayload(job) {
12
+ const payload = normalizeLegacyJobPayload(job);
13
+ return { name: payload.name, data: payload.data };
12
14
  }
13
15
  /** Extract parent info from job data if present */
14
16
  export function extractParent(jobData) {
@@ -83,8 +85,14 @@ export function buildJobOpts(job) {
83
85
  removeDependencyOnFailure: job.removeDependencyOnFailure,
84
86
  continueParentOnFailure: job.continueParentOnFailure,
85
87
  ignoreDependencyOnFailure: job.ignoreDependencyOnFailure,
86
- deduplication: job.deduplicationTtl !== null
87
- ? { id: job.customId ?? '', ttl: job.deduplicationTtl }
88
+ durable: job.durable ?? false,
89
+ deduplication: job.uniqueKey !== null
90
+ ? {
91
+ id: job.uniqueKey,
92
+ ttl: job.deduplicationTtl ?? undefined,
93
+ extend: job.deduplicationExtend,
94
+ replace: job.deduplicationReplace,
95
+ }
88
96
  : undefined,
89
97
  debounce: job.debounceId && job.debounceTtl !== null
90
98
  ? { id: job.debounceId, ttl: job.debounceTtl }
@@ -8,6 +8,8 @@ import { createSimpleJob } from './jobProxy';
8
8
  import * as dlqOps from './dlqOps';
9
9
  import { toDlqEntry } from '../jobConversion';
10
10
  import { createDlqJobMethods } from './dlqJobMethods';
11
+ import { resolvePublicJobPayload } from '../jobHelpers';
12
+ import { toPublicDlqStats } from './dlqStats';
11
13
  /** Client-side cache for TCP mode */
12
14
  const tcpDlqConfigCache = new Map();
13
15
  /** Set DLQ configuration */
@@ -99,8 +101,8 @@ export async function getDlqJobsAsync(ctx, count) {
99
101
  return [];
100
102
  }
101
103
  return raw.map((job) => {
102
- const name = job.data?.name ?? 'unknown';
103
- return createSimpleJob(String(job.id), name, job.data, job.createdAt ?? Date.now(), {
104
+ const { name, data } = resolvePublicJobPayload(job);
105
+ return createSimpleJob(String(job.id), name, data, job.createdAt ?? Date.now(), {
104
106
  queueName: ctx.name,
105
107
  embedded: ctx.embedded,
106
108
  tcp: ctx.tcp,
@@ -114,14 +116,7 @@ export async function getDlqJobsAsync(ctx, count) {
114
116
  /** Get DLQ stats */
115
117
  export function getDlqStats(ctx) {
116
118
  if (!ctx.embedded) {
117
- return {
118
- total: 0,
119
- byReason: {},
120
- pendingRetry: 0,
121
- expired: 0,
122
- oldestEntry: null,
123
- newestEntry: null,
124
- };
119
+ return toPublicDlqStats(undefined);
125
120
  }
126
121
  return dlqOps.getDlqStatsEmbedded(ctx.name);
127
122
  }
@@ -134,7 +129,7 @@ export async function getDlqStatsAsync(ctx) {
134
129
  const response = await ctx.tcp.send({ cmd: 'GetDlqStats', queue: ctx.name });
135
130
  if (!response.ok)
136
131
  return getDlqStats(ctx);
137
- return response.data.stats;
132
+ return toPublicDlqStats(response.data.stats);
138
133
  }
139
134
  /** Retry DLQ entries */
140
135
  export function retryDlq(ctx, id) {
@@ -161,9 +156,12 @@ export async function retryDlqAsync(ctx, id) {
161
156
  }
162
157
  /** Retry DLQ entries by filter */
163
158
  export function retryDlqByFilter(ctx, filter) {
164
- if (!ctx.embedded)
165
- return 0;
166
- return dlqOps.retryDlqByFilterEmbedded(ctx.name, filter);
159
+ if (ctx.embedded)
160
+ return dlqOps.retryDlqByFilterEmbedded(ctx.name, filter);
161
+ if (ctx.tcp) {
162
+ void ctx.tcp.send({ cmd: 'RetryDlq', queue: ctx.name, filter }).catch(() => undefined);
163
+ }
164
+ return 0;
167
165
  }
168
166
  /** Retry matching DLQ entries and return the applied count. */
169
167
  export async function retryDlqByFilterAsync(ctx, filter) {
@@ -96,31 +96,32 @@ export function createDlqJobMethods(ctx) {
96
96
  else
97
97
  await send(buildFailCommand(id, error, token), 'FAIL');
98
98
  },
99
- moveToWait: async (id) => {
99
+ moveToWait: async (id, token) => {
100
100
  if (ctx.embedded) {
101
101
  const state = await manager.getJobState(jobId(id));
102
102
  if (state === 'failed')
103
103
  return manager.retryDlq(ctx.name, jobId(id)) > 0;
104
104
  if (state === 'active')
105
- return manager.moveActiveToWait(jobId(id));
105
+ return manager.moveActiveToWait(jobId(id), token);
106
106
  if (state === 'delayed')
107
107
  return manager.promote(jobId(id));
108
108
  return state === 'waiting' || state === 'prioritized';
109
109
  }
110
- const response = await send({ cmd: 'MoveToWait', id }, 'MoveToWait');
110
+ const response = await send({ cmd: 'MoveToWait', id, ...(token === undefined ? {} : { token }) }, 'MoveToWait');
111
111
  return response.ok === true;
112
112
  },
113
- moveToDelayed: async (id, timestamp) => {
113
+ moveToDelayed: async (id, timestamp, token) => {
114
114
  const delay = Math.max(0, timestamp - Date.now());
115
115
  if (ctx.embedded)
116
- await manager.moveToDelayed(jobId(id), delay);
117
- else
118
- await send({ cmd: 'MoveToDelayed', id, delay }, 'MoveToDelayed');
116
+ await manager.moveToDelayed(jobId(id), delay, token);
117
+ else {
118
+ await send({ cmd: 'MoveToDelayed', id, delay, ...(token === undefined ? {} : { token }) }, 'MoveToDelayed');
119
+ }
119
120
  },
120
- moveToWaitingChildren: async (id) => {
121
+ moveToWaitingChildren: async (id, token) => {
121
122
  if (ctx.embedded)
122
- return manager.moveToWaitingChildren(jobId(id));
123
- await send({ cmd: 'MoveToWaitingChildren', id }, 'MoveToWaitingChildren');
123
+ return manager.moveToWaitingChildren(jobId(id), token);
124
+ await send({ cmd: 'MoveToWaitingChildren', id, ...(token === undefined ? {} : { token }) }, 'MoveToWaitingChildren');
124
125
  return true;
125
126
  },
126
127
  waitUntilFinished: async (id, _events, ttl) => {
@@ -7,6 +7,7 @@ import { jobId } from '../../domain/types/job';
7
7
  import { toDlqEntry } from '../types';
8
8
  import { getShard, getDlqContext, toDomainFilter, toDomainDlqConfig } from './helpers';
9
9
  import * as dlqOps from '../../application/dlqManager';
10
+ import { toPublicDlqStats } from './dlqStats';
10
11
  /** Set DLQ configuration (embedded only) */
11
12
  export function setDlqConfig(queue, config) {
12
13
  getSharedManager().setDlqConfig(queue, toDomainDlqConfig(config));
@@ -29,14 +30,7 @@ export function getDlqStatsEmbedded(queue) {
29
30
  const manager = getSharedManager();
30
31
  const ctx = getDlqContext(manager);
31
32
  const stats = dlqOps.getDlqStats(queue, ctx);
32
- return {
33
- total: stats.total,
34
- byReason: stats.byReason,
35
- pendingRetry: stats.pendingRetry,
36
- expired: stats.expired,
37
- oldestEntry: stats.oldestEntry,
38
- newestEntry: stats.newestEntry,
39
- };
33
+ return toPublicDlqStats(stats);
40
34
  }
41
35
  /** Retry DLQ jobs by filter (embedded only) */
42
36
  export function retryDlqByFilterEmbedded(queue, filter) {
@@ -0,0 +1,3 @@
1
+ import type { DlqStats } from '../types';
2
+ /** Normalize one authoritative DLQ stats shape for both transports. */
3
+ export declare function toPublicDlqStats(stats: Partial<DlqStats> | undefined): DlqStats;
@@ -0,0 +1,21 @@
1
+ const EMPTY_REASONS = {
2
+ ["explicit_fail" /* FailureReason.ExplicitFail */]: 0,
3
+ ["max_attempts_exceeded" /* FailureReason.MaxAttemptsExceeded */]: 0,
4
+ ["timeout" /* FailureReason.Timeout */]: 0,
5
+ ["stalled" /* FailureReason.Stalled */]: 0,
6
+ ["ttl_expired" /* FailureReason.TtlExpired */]: 0,
7
+ ["worker_lost" /* FailureReason.WorkerLost */]: 0,
8
+ ["unknown" /* FailureReason.Unknown */]: 0,
9
+ };
10
+ /** Normalize one authoritative DLQ stats shape for both transports. */
11
+ export function toPublicDlqStats(stats) {
12
+ return {
13
+ total: stats?.total ?? 0,
14
+ byReason: { ...EMPTY_REASONS, ...stats?.byReason },
15
+ byQueue: { ...stats?.byQueue },
16
+ pendingRetry: stats?.pendingRetry ?? 0,
17
+ expired: stats?.expired ?? 0,
18
+ oldestEntry: stats?.oldestEntry ?? null,
19
+ newestEntry: stats?.newestEntry ?? null,
20
+ };
21
+ }
@@ -0,0 +1,9 @@
1
+ import type { TcpConnectionPool } from '../../tcpPool';
2
+ export declare function computeDependencies(id: string, queueName: string, tcp: TcpConnectionPool): Promise<{
3
+ processed: Record<string, unknown>;
4
+ unprocessed: string[];
5
+ }>;
6
+ export declare function computeSimpleDependencies(id: string, queueName: string, embedded: boolean | undefined, tcp: TcpConnectionPool | null | undefined): Promise<{
7
+ processed: Record<string, unknown>;
8
+ unprocessed: string[];
9
+ }>;
@@ -0,0 +1,67 @@
1
+ import { getSharedManager } from '../../manager';
2
+ import { jobId } from '../../../domain/types/job';
3
+ export async function computeDependencies(id, queueName, tcp) {
4
+ const jobRes = await tcp.send({ cmd: 'GetJob', id });
5
+ const parent = jobRes.job;
6
+ const childIds = parent?.childrenIds ?? [];
7
+ const processed = {};
8
+ const unprocessed = [];
9
+ for (const childId of childIds) {
10
+ const stateRes = await tcp.send({ cmd: 'GetState', id: childId });
11
+ const state = stateRes.state ?? 'unknown';
12
+ const key = `${queueName}:${childId}`;
13
+ if (state === 'completed' || state === 'failed') {
14
+ if (state === 'completed') {
15
+ const resultResponse = await tcp.send({ cmd: 'GetResult', id: childId });
16
+ processed[key] = resultResponse.result ?? null;
17
+ }
18
+ else {
19
+ processed[key] = null;
20
+ }
21
+ }
22
+ else {
23
+ unprocessed.push(key);
24
+ }
25
+ }
26
+ return { processed, unprocessed };
27
+ }
28
+ export async function computeSimpleDependencies(id, queueName, embedded, tcp) {
29
+ const processed = {};
30
+ const unprocessed = [];
31
+ let childIds = [];
32
+ if (embedded) {
33
+ const job = await getSharedManager().getJob(jobId(id));
34
+ childIds = (job?.childrenIds ?? []).map(String);
35
+ }
36
+ else if (tcp) {
37
+ const jobRes = await tcp.send({ cmd: 'GetJob', id });
38
+ const parent = jobRes.job;
39
+ childIds = (parent?.childrenIds ?? []).map(String);
40
+ }
41
+ for (const childId of childIds) {
42
+ let state = 'unknown';
43
+ let result;
44
+ if (embedded) {
45
+ const manager = getSharedManager();
46
+ state = await manager.getJobState(jobId(childId));
47
+ if (state === 'completed')
48
+ result = manager.getResult(jobId(childId));
49
+ }
50
+ else if (tcp) {
51
+ const response = await tcp.send({ cmd: 'GetState', id: childId });
52
+ state = response.state ?? 'unknown';
53
+ if (state === 'completed') {
54
+ const resultResponse = await tcp.send({ cmd: 'GetResult', id: childId });
55
+ result = resultResponse.result;
56
+ }
57
+ }
58
+ const key = `${queueName}:${childId}`;
59
+ if (state === 'completed' || state === 'failed') {
60
+ processed[key] = result ?? null;
61
+ }
62
+ else {
63
+ unprocessed.push(key);
64
+ }
65
+ }
66
+ return { processed, unprocessed };
67
+ }
@@ -0,0 +1,2 @@
1
+ import type { JobReflectionMeta, ReflectedFields } from '../types/job';
2
+ export declare function reflectFields(id: string, queueName: string, meta?: JobReflectionMeta): ReflectedFields;
@@ -0,0 +1,18 @@
1
+ export function reflectFields(id, queueName, meta) {
2
+ const opts = meta?.opts ?? {};
3
+ const parent = opts.parent;
4
+ const repeat = opts.repeat;
5
+ const pattern = repeat?.pattern ?? (repeat?.every ? `every:${repeat.every}` : '');
6
+ return {
7
+ delay: meta?.delay ?? 0,
8
+ priority: meta?.priority ?? 0,
9
+ opts,
10
+ deduplicationId: opts.jobId ?? opts.deduplication?.id,
11
+ parentKey: parent ? `${parent.queue}:${parent.id}` : undefined,
12
+ parent: parent ? { id: parent.id, queueQualifiedName: parent.queue } : undefined,
13
+ repeatJobKey: repeat ? `${queueName}:${id}:${pattern}` : undefined,
14
+ stacktrace: meta?.stacktrace ?? null,
15
+ returnvalue: meta?.returnvalue,
16
+ failedReason: meta?.failedReason,
17
+ };
18
+ }
@@ -0,0 +1,3 @@
1
+ import type { Job } from '../../types';
2
+ import type { SimpleJobContext } from '../types/job';
3
+ export declare function createSimpleJob<T>(id: string, name: string, data: T, timestamp: number, ctx: SimpleJobContext): Job<T>;