bunqueue 2.8.0 → 2.8.1

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 (291) hide show
  1. package/README.md +26 -11
  2. package/dist/application/backgroundTasks.d.ts.map +1 -1
  3. package/dist/application/backgroundTasks.js +83 -0
  4. package/dist/application/backgroundTasks.js.map +1 -1
  5. package/dist/application/clientTracking.d.ts +23 -0
  6. package/dist/application/clientTracking.d.ts.map +1 -1
  7. package/dist/application/clientTracking.js +80 -25
  8. package/dist/application/clientTracking.js.map +1 -1
  9. package/dist/application/contextFactory.d.ts +6 -0
  10. package/dist/application/contextFactory.d.ts.map +1 -1
  11. package/dist/application/contextFactory.js +7 -0
  12. package/dist/application/contextFactory.js.map +1 -1
  13. package/dist/application/dlqManager.d.ts.map +1 -1
  14. package/dist/application/dlqManager.js +5 -0
  15. package/dist/application/dlqManager.js.map +1 -1
  16. package/dist/application/eventsManager.js.map +1 -1
  17. package/dist/application/lockManager.d.ts +1 -1
  18. package/dist/application/lockManager.d.ts.map +1 -1
  19. package/dist/application/lockManager.js +1 -1
  20. package/dist/application/lockManager.js.map +1 -1
  21. package/dist/application/operations/ack.d.ts.map +1 -1
  22. package/dist/application/operations/ack.js +32 -33
  23. package/dist/application/operations/ack.js.map +1 -1
  24. package/dist/application/operations/jobManagement.d.ts +1 -1
  25. package/dist/application/operations/jobManagement.d.ts.map +1 -1
  26. package/dist/application/operations/jobManagement.js +3 -2
  27. package/dist/application/operations/jobManagement.js.map +1 -1
  28. package/dist/application/operations/push.js.map +1 -1
  29. package/dist/application/operations/queryOperations.d.ts.map +1 -1
  30. package/dist/application/operations/queryOperations.js +37 -3
  31. package/dist/application/operations/queryOperations.js.map +1 -1
  32. package/dist/application/operations/queueControl.d.ts +16 -4
  33. package/dist/application/operations/queueControl.d.ts.map +1 -1
  34. package/dist/application/operations/queueControl.js +119 -23
  35. package/dist/application/operations/queueControl.js.map +1 -1
  36. package/dist/application/queueManager.d.ts +17 -3
  37. package/dist/application/queueManager.d.ts.map +1 -1
  38. package/dist/application/queueManager.js +106 -27
  39. package/dist/application/queueManager.js.map +1 -1
  40. package/dist/application/stallDetection.js +1 -0
  41. package/dist/application/stallDetection.js.map +1 -1
  42. package/dist/application/types.d.ts +2 -1
  43. package/dist/application/types.d.ts.map +1 -1
  44. package/dist/cli/client.d.ts.map +1 -1
  45. package/dist/cli/client.js +15 -2
  46. package/dist/cli/client.js.map +1 -1
  47. package/dist/cli/index.d.ts.map +1 -1
  48. package/dist/cli/index.js +31 -2
  49. package/dist/cli/index.js.map +1 -1
  50. package/dist/cli/output.d.ts +1 -1
  51. package/dist/cli/output.d.ts.map +1 -1
  52. package/dist/cli/output.js +71 -9
  53. package/dist/cli/output.js.map +1 -1
  54. package/dist/client/bunqueue/batch.js +2 -2
  55. package/dist/client/bunqueue/batch.js.map +1 -1
  56. package/dist/client/bunqueue.d.ts.map +1 -1
  57. package/dist/client/bunqueue.js +3 -3
  58. package/dist/client/bunqueue.js.map +1 -1
  59. package/dist/client/flow.d.ts.map +1 -1
  60. package/dist/client/flow.js +3 -1
  61. package/dist/client/flow.js.map +1 -1
  62. package/dist/client/flowJobFactory.d.ts +8 -1
  63. package/dist/client/flowJobFactory.d.ts.map +1 -1
  64. package/dist/client/flowJobFactory.js +328 -56
  65. package/dist/client/flowJobFactory.js.map +1 -1
  66. package/dist/client/flowPush.d.ts.map +1 -1
  67. package/dist/client/flowPush.js +95 -46
  68. package/dist/client/flowPush.js.map +1 -1
  69. package/dist/client/jobConversion.d.ts.map +1 -1
  70. package/dist/client/jobConversion.js +12 -4
  71. package/dist/client/jobConversion.js.map +1 -1
  72. package/dist/client/queue/bullmqCompat.d.ts +1 -0
  73. package/dist/client/queue/bullmqCompat.d.ts.map +1 -1
  74. package/dist/client/queue/dlq.js.map +1 -1
  75. package/dist/client/queue/dlqOps.d.ts.map +1 -1
  76. package/dist/client/queue/dlqOps.js.map +1 -1
  77. package/dist/client/queue/helpers.js.map +1 -1
  78. package/dist/client/queue/jobProxy.d.ts +22 -3
  79. package/dist/client/queue/jobProxy.d.ts.map +1 -1
  80. package/dist/client/queue/jobProxy.js +347 -66
  81. package/dist/client/queue/jobProxy.js.map +1 -1
  82. package/dist/client/queue/operations/add.d.ts +1 -0
  83. package/dist/client/queue/operations/add.d.ts.map +1 -1
  84. package/dist/client/queue/operations/add.js +126 -29
  85. package/dist/client/queue/operations/add.js.map +1 -1
  86. package/dist/client/queue/operations/management.d.ts +1 -1
  87. package/dist/client/queue/operations/management.d.ts.map +1 -1
  88. package/dist/client/queue/operations/management.js +27 -9
  89. package/dist/client/queue/operations/management.js.map +1 -1
  90. package/dist/client/queue/operations/query.d.ts +12 -0
  91. package/dist/client/queue/operations/query.d.ts.map +1 -1
  92. package/dist/client/queue/operations/query.js +44 -4
  93. package/dist/client/queue/operations/query.js.map +1 -1
  94. package/dist/client/queue/queue.d.ts.map +1 -1
  95. package/dist/client/queue/queue.js +8 -1
  96. package/dist/client/queue/queue.js.map +1 -1
  97. package/dist/client/queue/scheduler.d.ts +2 -0
  98. package/dist/client/queue/scheduler.d.ts.map +1 -1
  99. package/dist/client/queue/scheduler.js +28 -0
  100. package/dist/client/queue/scheduler.js.map +1 -1
  101. package/dist/client/queue/stall.js.map +1 -1
  102. package/dist/client/sandboxed/worker.d.ts.map +1 -1
  103. package/dist/client/sandboxed/worker.js +57 -15
  104. package/dist/client/sandboxed/worker.js.map +1 -1
  105. package/dist/client/sandboxed/wrapper.d.ts.map +1 -1
  106. package/dist/client/sandboxed/wrapper.js +62 -10
  107. package/dist/client/sandboxed/wrapper.js.map +1 -1
  108. package/dist/client/tcp/client.d.ts +9 -0
  109. package/dist/client/tcp/client.d.ts.map +1 -1
  110. package/dist/client/tcp/client.js +84 -28
  111. package/dist/client/tcp/client.js.map +1 -1
  112. package/dist/client/tcp/connection.d.ts.map +1 -1
  113. package/dist/client/tcp/connection.js +6 -1
  114. package/dist/client/tcp/connection.js.map +1 -1
  115. package/dist/client/tcp/types.d.ts +7 -0
  116. package/dist/client/tcp/types.d.ts.map +1 -1
  117. package/dist/client/types.d.ts +8 -4
  118. package/dist/client/types.d.ts.map +1 -1
  119. package/dist/client/types.js.map +1 -1
  120. package/dist/client/worker/ackBatcher.d.ts.map +1 -1
  121. package/dist/client/worker/ackBatcher.js +18 -8
  122. package/dist/client/worker/ackBatcher.js.map +1 -1
  123. package/dist/client/worker/processor.d.ts.map +1 -1
  124. package/dist/client/worker/processor.js +54 -99
  125. package/dist/client/worker/processor.js.map +1 -1
  126. package/dist/client/worker/processorHandlers.d.ts +55 -0
  127. package/dist/client/worker/processorHandlers.d.ts.map +1 -0
  128. package/dist/client/worker/processorHandlers.js +373 -0
  129. package/dist/client/worker/processorHandlers.js.map +1 -0
  130. package/dist/client/workflow/compensator.d.ts +15 -0
  131. package/dist/client/workflow/compensator.d.ts.map +1 -0
  132. package/dist/client/workflow/compensator.js +46 -0
  133. package/dist/client/workflow/compensator.js.map +1 -0
  134. package/dist/client/workflow/emitter.d.ts.map +1 -1
  135. package/dist/client/workflow/emitter.js +15 -3
  136. package/dist/client/workflow/emitter.js.map +1 -1
  137. package/dist/client/workflow/engine.d.ts +8 -1
  138. package/dist/client/workflow/engine.d.ts.map +1 -1
  139. package/dist/client/workflow/engine.js +9 -0
  140. package/dist/client/workflow/engine.js.map +1 -1
  141. package/dist/client/workflow/executor.d.ts +5 -2
  142. package/dist/client/workflow/executor.d.ts.map +1 -1
  143. package/dist/client/workflow/executor.js +43 -60
  144. package/dist/client/workflow/executor.js.map +1 -1
  145. package/dist/client/workflow/index.d.ts +1 -1
  146. package/dist/client/workflow/index.d.ts.map +1 -1
  147. package/dist/client/workflow/loops.d.ts +1 -1
  148. package/dist/client/workflow/loops.d.ts.map +1 -1
  149. package/dist/client/workflow/loops.js +10 -1
  150. package/dist/client/workflow/loops.js.map +1 -1
  151. package/dist/client/workflow/recovery.d.ts +23 -0
  152. package/dist/client/workflow/recovery.d.ts.map +1 -0
  153. package/dist/client/workflow/recovery.js +74 -0
  154. package/dist/client/workflow/recovery.js.map +1 -0
  155. package/dist/client/workflow/runner.d.ts.map +1 -1
  156. package/dist/client/workflow/runner.js +7 -5
  157. package/dist/client/workflow/runner.js.map +1 -1
  158. package/dist/client/workflow/store.d.ts +2 -0
  159. package/dist/client/workflow/store.d.ts.map +1 -1
  160. package/dist/client/workflow/store.js +6 -0
  161. package/dist/client/workflow/store.js.map +1 -1
  162. package/dist/client/workflow/types.d.ts +41 -22
  163. package/dist/client/workflow/types.d.ts.map +1 -1
  164. package/dist/client/workflow/workflow.d.ts +17 -14
  165. package/dist/client/workflow/workflow.d.ts.map +1 -1
  166. package/dist/client/workflow/workflow.js +30 -20
  167. package/dist/client/workflow/workflow.js.map +1 -1
  168. package/dist/domain/queue/dlqShard.d.ts.map +1 -1
  169. package/dist/domain/queue/dlqShard.js +6 -0
  170. package/dist/domain/queue/dlqShard.js.map +1 -1
  171. package/dist/domain/queue/priorityQueue.d.ts +2 -2
  172. package/dist/domain/queue/priorityQueue.d.ts.map +1 -1
  173. package/dist/domain/queue/priorityQueue.js +5 -3
  174. package/dist/domain/queue/priorityQueue.js.map +1 -1
  175. package/dist/domain/types/command.d.ts +22 -0
  176. package/dist/domain/types/command.d.ts.map +1 -1
  177. package/dist/domain/types/cron.d.ts +21 -0
  178. package/dist/domain/types/cron.d.ts.map +1 -1
  179. package/dist/domain/types/cron.js +1 -0
  180. package/dist/domain/types/cron.js.map +1 -1
  181. package/dist/domain/types/job.d.ts.map +1 -1
  182. package/dist/domain/types/job.js +9 -2
  183. package/dist/domain/types/job.js.map +1 -1
  184. package/dist/domain/types/response.d.ts +2 -0
  185. package/dist/domain/types/response.d.ts.map +1 -1
  186. package/dist/domain/types/response.js.map +1 -1
  187. package/dist/infrastructure/backup/s3BackupOperations.d.ts.map +1 -1
  188. package/dist/infrastructure/backup/s3BackupOperations.js +44 -6
  189. package/dist/infrastructure/backup/s3BackupOperations.js.map +1 -1
  190. package/dist/infrastructure/cloud/cloudAgent.d.ts +1 -1
  191. package/dist/infrastructure/cloud/cloudAgent.d.ts.map +1 -1
  192. package/dist/infrastructure/cloud/cloudAgent.js +9 -11
  193. package/dist/infrastructure/cloud/cloudAgent.js.map +1 -1
  194. package/dist/infrastructure/cloud/commands.js +2 -2
  195. package/dist/infrastructure/cloud/commands.js.map +1 -1
  196. package/dist/infrastructure/cloud/redact.d.ts +11 -0
  197. package/dist/infrastructure/cloud/redact.d.ts.map +1 -0
  198. package/dist/infrastructure/cloud/redact.js +22 -0
  199. package/dist/infrastructure/cloud/redact.js.map +1 -0
  200. package/dist/infrastructure/cloud/snapshotCollector.d.ts +4 -0
  201. package/dist/infrastructure/cloud/snapshotCollector.d.ts.map +1 -1
  202. package/dist/infrastructure/cloud/snapshotCollector.js +32 -17
  203. package/dist/infrastructure/cloud/snapshotCollector.js.map +1 -1
  204. package/dist/infrastructure/cloud/snapshotHelpers.d.ts +9 -2
  205. package/dist/infrastructure/cloud/snapshotHelpers.d.ts.map +1 -1
  206. package/dist/infrastructure/cloud/snapshotHelpers.js +10 -8
  207. package/dist/infrastructure/cloud/snapshotHelpers.js.map +1 -1
  208. package/dist/infrastructure/persistence/schema.d.ts +2 -2
  209. package/dist/infrastructure/persistence/schema.d.ts.map +1 -1
  210. package/dist/infrastructure/persistence/schema.js +16 -2
  211. package/dist/infrastructure/persistence/schema.js.map +1 -1
  212. package/dist/infrastructure/persistence/sqlite.d.ts +54 -1
  213. package/dist/infrastructure/persistence/sqlite.d.ts.map +1 -1
  214. package/dist/infrastructure/persistence/sqlite.js +174 -2
  215. package/dist/infrastructure/persistence/sqlite.js.map +1 -1
  216. package/dist/infrastructure/persistence/sqliteBatch.d.ts +14 -0
  217. package/dist/infrastructure/persistence/sqliteBatch.d.ts.map +1 -1
  218. package/dist/infrastructure/persistence/sqliteBatch.js +29 -0
  219. package/dist/infrastructure/persistence/sqliteBatch.js.map +1 -1
  220. package/dist/infrastructure/persistence/sqliteSerializer.d.ts +16 -0
  221. package/dist/infrastructure/persistence/sqliteSerializer.d.ts.map +1 -1
  222. package/dist/infrastructure/persistence/sqliteSerializer.js +73 -8
  223. package/dist/infrastructure/persistence/sqliteSerializer.js.map +1 -1
  224. package/dist/infrastructure/persistence/statements.d.ts +2 -1
  225. package/dist/infrastructure/persistence/statements.d.ts.map +1 -1
  226. package/dist/infrastructure/persistence/statements.js +3 -2
  227. package/dist/infrastructure/persistence/statements.js.map +1 -1
  228. package/dist/infrastructure/scheduler/cronScheduler.d.ts.map +1 -1
  229. package/dist/infrastructure/scheduler/cronScheduler.js +19 -1
  230. package/dist/infrastructure/scheduler/cronScheduler.js.map +1 -1
  231. package/dist/infrastructure/server/handlers/advanced.d.ts +7 -1
  232. package/dist/infrastructure/server/handlers/advanced.d.ts.map +1 -1
  233. package/dist/infrastructure/server/handlers/advanced.js +41 -10
  234. package/dist/infrastructure/server/handlers/advanced.js.map +1 -1
  235. package/dist/infrastructure/server/handlers/core.d.ts.map +1 -1
  236. package/dist/infrastructure/server/handlers/core.js +8 -0
  237. package/dist/infrastructure/server/handlers/core.js.map +1 -1
  238. package/dist/infrastructure/server/handlers/cron.d.ts.map +1 -1
  239. package/dist/infrastructure/server/handlers/cron.js +1 -0
  240. package/dist/infrastructure/server/handlers/cron.js.map +1 -1
  241. package/dist/infrastructure/server/handlers/dashboard.d.ts.map +1 -1
  242. package/dist/infrastructure/server/handlers/dashboard.js +1 -0
  243. package/dist/infrastructure/server/handlers/dashboard.js.map +1 -1
  244. package/dist/infrastructure/server/handlers/dlq.js.map +1 -1
  245. package/dist/infrastructure/server/handlers/management.d.ts +1 -1
  246. package/dist/infrastructure/server/handlers/management.d.ts.map +1 -1
  247. package/dist/infrastructure/server/handlers/management.js +27 -12
  248. package/dist/infrastructure/server/handlers/management.js.map +1 -1
  249. package/dist/infrastructure/server/handlers/monitoring.js.map +1 -1
  250. package/dist/infrastructure/server/handlers/query.js.map +1 -1
  251. package/dist/infrastructure/server/httpRouteJobs.js.map +1 -1
  252. package/dist/infrastructure/server/httpRouteQueueConfig.js.map +1 -1
  253. package/dist/infrastructure/server/httpRouteQueues.js.map +1 -1
  254. package/dist/infrastructure/server/httpRouteResources.js.map +1 -1
  255. package/dist/infrastructure/server/protocol.d.ts +4 -0
  256. package/dist/infrastructure/server/protocol.d.ts.map +1 -1
  257. package/dist/infrastructure/server/protocol.js +17 -2
  258. package/dist/infrastructure/server/protocol.js.map +1 -1
  259. package/dist/infrastructure/server/socketWriteQueue.d.ts +67 -0
  260. package/dist/infrastructure/server/socketWriteQueue.d.ts.map +1 -0
  261. package/dist/infrastructure/server/socketWriteQueue.js +127 -0
  262. package/dist/infrastructure/server/socketWriteQueue.js.map +1 -0
  263. package/dist/infrastructure/server/tcp.d.ts +17 -0
  264. package/dist/infrastructure/server/tcp.d.ts.map +1 -1
  265. package/dist/infrastructure/server/tcp.js +112 -14
  266. package/dist/infrastructure/server/tcp.js.map +1 -1
  267. package/dist/infrastructure/server/wsHandler.js.map +1 -1
  268. package/dist/main.d.ts.map +1 -1
  269. package/dist/main.js +48 -43
  270. package/dist/main.js.map +1 -1
  271. package/dist/mcp/adapter.d.ts +3 -3
  272. package/dist/mcp/adapter.d.ts.map +1 -1
  273. package/dist/mcp/adapter.js +48 -15
  274. package/dist/mcp/adapter.js.map +1 -1
  275. package/dist/mcp/index.d.ts +3 -3
  276. package/dist/mcp/index.d.ts.map +1 -1
  277. package/dist/mcp/index.js +26 -89
  278. package/dist/mcp/index.js.map +1 -1
  279. package/dist/mcp/server.d.ts +16 -0
  280. package/dist/mcp/server.d.ts.map +1 -0
  281. package/dist/mcp/server.js +101 -0
  282. package/dist/mcp/server.js.map +1 -0
  283. package/dist/mcp/tools/queueTools.d.ts.map +1 -1
  284. package/dist/mcp/tools/queueTools.js +6 -3
  285. package/dist/mcp/tools/queueTools.js.map +1 -1
  286. package/dist/mcp/tools/webhookTools.js +1 -1
  287. package/dist/mcp/tools/webhookTools.js.map +1 -1
  288. package/dist/shared/lock.d.ts.map +1 -1
  289. package/dist/shared/lock.js +15 -0
  290. package/dist/shared/lock.js.map +1 -1
  291. package/package.json +12 -7
@@ -2,6 +2,8 @@
2
2
  * Flow Job Factory
3
3
  * Creates simple Job objects for FlowProducer results
4
4
  */
5
+ import { getSharedManager } from './manager';
6
+ import { jobId } from '../domain/types/job';
5
7
  /** Extract user data (remove internal fields like __parentId, __childrenIds, name) */
6
8
  export function extractUserDataFromInternal(data) {
7
9
  const result = {};
@@ -15,6 +17,37 @@ export function extractUserDataFromInternal(data) {
15
17
  /** Create a simple Job object for flow results */
16
18
  export function createFlowJobObject(id, name, data, queueName, callbacks) {
17
19
  const ts = Date.now();
20
+ const embedded = !!callbacks?.embedded;
21
+ const tcp = callbacks?.tcp ?? null;
22
+ const stateAsType = (s) => {
23
+ const valid = [
24
+ 'waiting',
25
+ 'active',
26
+ 'completed',
27
+ 'failed',
28
+ 'delayed',
29
+ 'prioritized',
30
+ 'waiting-children',
31
+ 'unknown',
32
+ ];
33
+ return (valid.includes(s) ? s : 'unknown');
34
+ };
35
+ const getStateInternal = () => {
36
+ if (callbacks?.getState)
37
+ return callbacks.getState(id).then(stateAsType);
38
+ if (embedded) {
39
+ return getSharedManager()
40
+ .getJobState(jobId(id))
41
+ .then((s) => stateAsType(s));
42
+ }
43
+ if (tcp) {
44
+ return tcp.send({ cmd: 'GetState', id }).then((r) => {
45
+ const s = r.state ?? 'unknown';
46
+ return stateAsType(s);
47
+ });
48
+ }
49
+ return Promise.resolve('unknown');
50
+ };
18
51
  return {
19
52
  id,
20
53
  name,
@@ -23,7 +56,6 @@ export function createFlowJobObject(id, name, data, queueName, callbacks) {
23
56
  attemptsMade: 0,
24
57
  timestamp: ts,
25
58
  progress: 0,
26
- // BullMQ v5 properties
27
59
  delay: 0,
28
60
  processedOn: undefined,
29
61
  finishedOn: undefined,
@@ -37,47 +69,158 @@ export function createFlowJobObject(id, name, data, queueName, callbacks) {
37
69
  deduplicationId: undefined,
38
70
  repeatJobKey: undefined,
39
71
  attemptsStarted: 0,
40
- // Methods - wired to callbacks when available, otherwise no-op
41
- updateProgress: (progress) => callbacks?.updateProgress
42
- ? callbacks.updateProgress(id, progress)
43
- : Promise.resolve(),
44
- log: (message) => (callbacks?.log ? callbacks.log(id, message) : Promise.resolve()),
45
- getState: () => callbacks?.getState
46
- ? callbacks.getState(id)
47
- : Promise.resolve('waiting'),
48
- remove: () => (callbacks?.remove ? callbacks.remove(id) : Promise.resolve()),
49
- retry: () => (callbacks?.retry ? callbacks.retry(id) : Promise.resolve()),
50
- getChildrenValues: () => Promise.resolve({}),
51
- // BullMQ v5 state check methods
52
- isWaiting: () => callbacks?.getState
53
- ? callbacks.getState(id).then((s) => s === 'waiting')
54
- : Promise.resolve(true),
55
- isActive: () => callbacks?.getState
56
- ? callbacks.getState(id).then((s) => s === 'active')
57
- : Promise.resolve(false),
58
- isDelayed: () => callbacks?.getState
59
- ? callbacks.getState(id).then((s) => s === 'delayed')
60
- : Promise.resolve(false),
61
- isCompleted: () => callbacks?.getState
62
- ? callbacks.getState(id).then((s) => s === 'completed')
63
- : Promise.resolve(false),
64
- isFailed: () => callbacks?.getState
65
- ? callbacks.getState(id).then((s) => s === 'failed')
66
- : Promise.resolve(false),
67
- isWaitingChildren: () => Promise.resolve(false),
68
- // BullMQ v5 mutation methods
69
- updateData: (newData) => callbacks?.updateData ? callbacks.updateData(id, newData) : Promise.resolve(),
70
- promote: () => (callbacks?.promote ? callbacks.promote(id) : Promise.resolve()),
71
- changeDelay: (delay) => callbacks?.changeDelay ? callbacks.changeDelay(id, delay) : Promise.resolve(),
72
- changePriority: (opts) => callbacks?.changePriority
73
- ? callbacks.changePriority(id, opts.priority)
74
- : Promise.resolve(),
75
- extendLock: () => Promise.resolve(0),
76
- clearLogs: () => (callbacks?.clearLogs ? callbacks.clearLogs(id) : Promise.resolve()),
77
- // BullMQ v5 dependency methods
78
- getDependencies: () => Promise.resolve({ processed: {}, unprocessed: [] }),
79
- getDependenciesCount: () => Promise.resolve({ processed: 0, unprocessed: 0 }),
80
- // BullMQ v5 serialization methods
72
+ updateProgress: async (progress) => {
73
+ if (callbacks?.updateProgress) {
74
+ return callbacks.updateProgress(id, progress);
75
+ }
76
+ if (embedded) {
77
+ await getSharedManager().updateProgress(jobId(id), progress);
78
+ return;
79
+ }
80
+ if (tcp)
81
+ await tcp.send({ cmd: 'Progress', id, progress: progress });
82
+ },
83
+ log: async (message) => {
84
+ if (callbacks?.log)
85
+ return callbacks.log(id, message);
86
+ if (embedded) {
87
+ getSharedManager().addLog(jobId(id), message);
88
+ return;
89
+ }
90
+ if (tcp)
91
+ await tcp.send({ cmd: 'AddLog', id, message });
92
+ },
93
+ getState: getStateInternal,
94
+ remove: async () => {
95
+ if (callbacks?.remove)
96
+ return callbacks.remove(id);
97
+ if (embedded) {
98
+ await getSharedManager().cancel(jobId(id));
99
+ return;
100
+ }
101
+ if (tcp)
102
+ await tcp.send({ cmd: 'Cancel', id });
103
+ },
104
+ retry: async () => {
105
+ if (callbacks?.retry)
106
+ return callbacks.retry(id);
107
+ if (embedded) {
108
+ const mgr = getSharedManager();
109
+ const state = await mgr.getJobState(jobId(id));
110
+ if (state === 'failed') {
111
+ const count = mgr.retryDlq(queueName, jobId(id));
112
+ if (count === 0)
113
+ throw new Error(`Job ${id} is failed but not present in DLQ`);
114
+ return;
115
+ }
116
+ if (state === 'active') {
117
+ const ok = await mgr.moveActiveToWait(jobId(id));
118
+ if (!ok)
119
+ throw new Error(`Failed to retry active job ${id}`);
120
+ return;
121
+ }
122
+ if (state === 'waiting' || state === 'prioritized' || state === 'delayed')
123
+ return;
124
+ throw new Error(`Cannot retry job ${id} from state '${state}'`);
125
+ }
126
+ if (!tcp)
127
+ return;
128
+ const res = await tcp.send({ cmd: 'MoveToWait', id });
129
+ if (res.ok !== true) {
130
+ const err = typeof res.error === 'string' ? res.error : 'retry failed';
131
+ throw new Error(err);
132
+ }
133
+ },
134
+ getChildrenValues: async () => {
135
+ if (embedded) {
136
+ return (await getSharedManager().getChildrenValues(jobId(id)));
137
+ }
138
+ if (!tcp)
139
+ return {};
140
+ const res = await tcp.send({ cmd: 'GetChildrenValues', id });
141
+ const vals = res.data?.values ?? {};
142
+ return vals;
143
+ },
144
+ isWaiting: async () => (await getStateInternal()) === 'waiting',
145
+ isActive: async () => (await getStateInternal()) === 'active',
146
+ isDelayed: async () => (await getStateInternal()) === 'delayed',
147
+ isCompleted: async () => (await getStateInternal()) === 'completed',
148
+ isFailed: async () => (await getStateInternal()) === 'failed',
149
+ isWaitingChildren: async () => (await getStateInternal()) === 'waiting-children',
150
+ updateData: async (newData) => {
151
+ if (callbacks?.updateData)
152
+ return callbacks.updateData(id, newData);
153
+ if (embedded) {
154
+ await getSharedManager().updateJobData(jobId(id), newData);
155
+ return;
156
+ }
157
+ if (tcp)
158
+ await tcp.send({ cmd: 'Update', id, data: newData });
159
+ },
160
+ promote: async () => {
161
+ if (callbacks?.promote)
162
+ return callbacks.promote(id);
163
+ if (embedded) {
164
+ await getSharedManager().promote(jobId(id));
165
+ return;
166
+ }
167
+ if (tcp)
168
+ await tcp.send({ cmd: 'Promote', id });
169
+ },
170
+ changeDelay: async (delay) => {
171
+ if (callbacks?.changeDelay)
172
+ return callbacks.changeDelay(id, delay);
173
+ if (embedded) {
174
+ await getSharedManager().changeDelay(jobId(id), delay);
175
+ return;
176
+ }
177
+ if (tcp)
178
+ await tcp.send({ cmd: 'ChangeDelay', id, delay });
179
+ },
180
+ changePriority: async (opts) => {
181
+ if (callbacks?.changePriority) {
182
+ return callbacks.changePriority(id, { priority: opts.priority, lifo: opts.lifo });
183
+ }
184
+ if (embedded) {
185
+ await getSharedManager().changePriority(jobId(id), opts.priority, opts.lifo);
186
+ return;
187
+ }
188
+ if (tcp) {
189
+ await tcp.send({ cmd: 'ChangePriority', id, priority: opts.priority, lifo: opts.lifo });
190
+ }
191
+ },
192
+ extendLock: async (token, duration) => {
193
+ if (embedded) {
194
+ const ok = await getSharedManager().extendLock(jobId(id), token, duration);
195
+ return ok ? duration : 0;
196
+ }
197
+ if (!tcp)
198
+ return 0;
199
+ const res = await tcp.send({ cmd: 'ExtendLock', id, token, duration });
200
+ return res.ok === true ? duration : 0;
201
+ },
202
+ clearLogs: async (keepLogs) => {
203
+ if (callbacks?.clearLogs)
204
+ return callbacks.clearLogs(id);
205
+ if (embedded) {
206
+ getSharedManager().clearLogs(jobId(id), keepLogs);
207
+ return;
208
+ }
209
+ if (tcp)
210
+ await tcp.send({ cmd: 'ClearLogs', id, keepLogs });
211
+ },
212
+ getDependencies: async () => {
213
+ const childIds = await fetchChildIds(id, embedded, tcp);
214
+ return computeDepsFlow(queueName, childIds, embedded, tcp);
215
+ },
216
+ getDependenciesCount: async () => {
217
+ const childIds = await fetchChildIds(id, embedded, tcp);
218
+ const deps = await computeDepsFlow(queueName, childIds, embedded, tcp);
219
+ return {
220
+ processed: Object.keys(deps.processed).length,
221
+ unprocessed: deps.unprocessed.length,
222
+ };
223
+ },
81
224
  toJSON: () => ({
82
225
  id,
83
226
  name,
@@ -101,20 +244,149 @@ export function createFlowJobObject(id, name, data, queueName, callbacks) {
101
244
  attemptsMade: '0',
102
245
  stacktrace: null,
103
246
  }),
104
- // BullMQ v5 move methods
105
- moveToCompleted: () => Promise.resolve(null),
106
- moveToFailed: () => Promise.resolve(),
107
- moveToWait: () => Promise.resolve(false),
108
- moveToDelayed: () => Promise.resolve(),
109
- moveToWaitingChildren: () => Promise.resolve(false),
110
- waitUntilFinished: () => Promise.resolve(undefined),
111
- // BullMQ v5 additional methods
112
- discard: () => { },
113
- getFailedChildrenValues: () => Promise.resolve({}),
114
- getIgnoredChildrenFailures: () => Promise.resolve({}),
115
- removeChildDependency: () => Promise.resolve(false),
116
- removeDeduplicationKey: () => Promise.resolve(false),
117
- removeUnprocessedChildren: () => Promise.resolve(),
247
+ moveToCompleted: async (returnValue) => {
248
+ if (embedded) {
249
+ await getSharedManager().ack(jobId(id), returnValue);
250
+ return null;
251
+ }
252
+ if (tcp)
253
+ await tcp.send({ cmd: 'ACK', id, result: returnValue });
254
+ return null;
255
+ },
256
+ moveToFailed: async (error) => {
257
+ if (embedded) {
258
+ await getSharedManager().fail(jobId(id), error.message);
259
+ return;
260
+ }
261
+ if (tcp)
262
+ await tcp.send({ cmd: 'FAIL', id, error: error.message });
263
+ },
264
+ moveToWait: async () => {
265
+ if (embedded)
266
+ return await getSharedManager().moveActiveToWait(jobId(id));
267
+ if (!tcp)
268
+ return false;
269
+ const res = await tcp.send({ cmd: 'MoveToWait', id });
270
+ return res.ok === true;
271
+ },
272
+ moveToDelayed: async (timestamp) => {
273
+ const delay = Math.max(0, timestamp - Date.now());
274
+ if (embedded) {
275
+ await getSharedManager().moveToDelayed(jobId(id), delay);
276
+ return;
277
+ }
278
+ if (tcp)
279
+ await tcp.send({ cmd: 'MoveToDelayed', id, delay });
280
+ },
281
+ moveToWaitingChildren: async () => {
282
+ if (embedded)
283
+ return await getSharedManager().moveToWaitingChildren(jobId(id));
284
+ throw new Error('moveToWaitingChildren is not supported in TCP mode — no server command available');
285
+ },
286
+ waitUntilFinished: async (_qe, ttl) => {
287
+ const timeout = ttl ?? 30000;
288
+ if (embedded) {
289
+ const mgr = getSharedManager();
290
+ const job = await mgr.getJob(jobId(id));
291
+ if (!job)
292
+ throw new Error(`Job ${id} not found`);
293
+ if (job.completedAt)
294
+ return mgr.getResult(jobId(id));
295
+ const ok = await mgr.waitForJobCompletion(jobId(id), timeout);
296
+ if (!ok)
297
+ throw new Error(`waitUntilFinished timed out after ${timeout}ms`);
298
+ return mgr.getResult(jobId(id));
299
+ }
300
+ if (!tcp)
301
+ throw new Error('waitUntilFinished: no connection');
302
+ const res = await tcp.send({ cmd: 'WaitJob', id, timeout });
303
+ const typed = res;
304
+ if (!typed.completed)
305
+ throw new Error(`waitUntilFinished timed out after ${timeout}ms`);
306
+ return typed.result;
307
+ },
308
+ discard: () => {
309
+ if (embedded) {
310
+ void getSharedManager().discard(jobId(id));
311
+ return;
312
+ }
313
+ if (tcp)
314
+ void tcp.send({ cmd: 'Discard', id });
315
+ },
316
+ getFailedChildrenValues: async () => {
317
+ if (embedded)
318
+ return await getSharedManager().getFailedChildrenValues(jobId(id));
319
+ if (!tcp)
320
+ return {};
321
+ const res = await tcp.send({ cmd: 'GetFailedChildrenValues', id });
322
+ return res.values ?? {};
323
+ },
324
+ getIgnoredChildrenFailures: async () => {
325
+ if (embedded)
326
+ return await getSharedManager().getIgnoredChildrenFailures(jobId(id));
327
+ if (!tcp)
328
+ return {};
329
+ const res = await tcp.send({ cmd: 'GetIgnoredChildrenFailures', id });
330
+ return res.values ?? {};
331
+ },
332
+ removeChildDependency: async () => {
333
+ if (embedded)
334
+ return await getSharedManager().removeChildDependency(jobId(id));
335
+ if (!tcp)
336
+ return false;
337
+ const res = await tcp.send({ cmd: 'RemoveChildDependency', id });
338
+ return res.removed ?? false;
339
+ },
340
+ removeDeduplicationKey: () => Promise.reject(new Error('removeDeduplicationKey is not implemented — no server primitive available')),
341
+ removeUnprocessedChildren: async () => {
342
+ if (embedded) {
343
+ await getSharedManager().removeUnprocessedChildren(jobId(id));
344
+ return;
345
+ }
346
+ if (tcp)
347
+ await tcp.send({ cmd: 'RemoveUnprocessedChildren', id });
348
+ },
118
349
  };
119
350
  }
351
+ async function fetchChildIds(id, embedded, tcp) {
352
+ if (embedded) {
353
+ const job = await getSharedManager().getJob(jobId(id));
354
+ return (job?.childrenIds ?? []).map(String);
355
+ }
356
+ if (!tcp)
357
+ return [];
358
+ const jobRes = await tcp.send({ cmd: 'GetJob', id });
359
+ const parent = jobRes.job;
360
+ return (parent?.childrenIds ?? []).map(String);
361
+ }
362
+ async function computeDepsFlow(queueName, childIds, embedded, tcp) {
363
+ const processed = {};
364
+ const unprocessed = [];
365
+ for (const cid of childIds) {
366
+ let state = 'unknown';
367
+ let result;
368
+ if (embedded) {
369
+ const mgr = getSharedManager();
370
+ state = await mgr.getJobState(jobId(cid));
371
+ if (state === 'completed')
372
+ result = mgr.getResult(jobId(cid));
373
+ }
374
+ else if (tcp) {
375
+ const r = await tcp.send({ cmd: 'GetState', id: cid });
376
+ state = r.state ?? 'unknown';
377
+ if (state === 'completed') {
378
+ const rr = await tcp.send({ cmd: 'GetResult', id: cid });
379
+ result = rr.result;
380
+ }
381
+ }
382
+ const key = `${queueName}:${cid}`;
383
+ if (state === 'completed' || state === 'failed') {
384
+ processed[key] = result ?? null;
385
+ }
386
+ else {
387
+ unprocessed.push(key);
388
+ }
389
+ }
390
+ return { processed, unprocessed };
391
+ }
120
392
  //# sourceMappingURL=flowJobFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowJobFactory.js","sourceRoot":"","sources":["../../src/client/flowJobFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flowJobFactory.js","sourceRoot":"","sources":["../../src/client/flowJobFactory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"flowPush.d.ts","sourceRoot":"","sources":["../../src/client/flowPush.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC/B;AAaD,6CAA6C;AAC7C,wBAAsB,OAAO,CAC3B,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,OAAO,EACb,IAAI,GAAE,UAAe,EACrB,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,MAAM,CAAC,CA+CjB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAChD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,+CAA+C;AAC/C,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,MAAM,CAAC,CAsEjB;AAED,+DAA+D;AAC/D,wBAAsB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBnF"}
1
+ {"version":3,"file":"flowPush.d.ts","sourceRoot":"","sources":["../../src/client/flowPush.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC/B;AAsGD,6CAA6C;AAC7C,wBAAsB,OAAO,CAC3B,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,OAAO,EACb,IAAI,GAAE,UAAe,EACrB,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,MAAM,CAAC,CA8BjB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAChD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,+CAA+C;AAC/C,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,MAAM,CAAC,CAoDjB;AAED,+DAA+D;AAC/D,wBAAsB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBnF"}
@@ -11,25 +11,101 @@ function parseRemoveOptions(opts) {
11
11
  removeOnFail: typeof opts.removeOnFail === 'boolean' ? opts.removeOnFail : false,
12
12
  };
13
13
  }
14
+ /** Normalize repeat startDate/endDate to epoch ms for the embedded manager. */
15
+ function normalizeRepeat(repeat) {
16
+ if (!repeat)
17
+ return undefined;
18
+ const toMs = (d) => d instanceof Date ? d.getTime() : typeof d === 'string' ? new Date(d).getTime() : d;
19
+ return {
20
+ every: repeat.every,
21
+ limit: repeat.limit,
22
+ pattern: repeat.pattern,
23
+ count: repeat.count,
24
+ startDate: toMs(repeat.startDate),
25
+ endDate: toMs(repeat.endDate),
26
+ tz: repeat.tz,
27
+ immediately: repeat.immediately,
28
+ prevMillis: repeat.prevMillis,
29
+ offset: repeat.offset,
30
+ jobId: repeat.jobId,
31
+ };
32
+ }
33
+ function dedupConfig(opts) {
34
+ return opts.deduplication
35
+ ? {
36
+ ttl: opts.deduplication.ttl,
37
+ extend: opts.deduplication.extend,
38
+ replace: opts.deduplication.replace,
39
+ }
40
+ : undefined;
41
+ }
42
+ /**
43
+ * Full option set for the embedded manager.push, mirroring Queue.add (#90).
44
+ * Flow nodes must forward the same options as a direct add, not a subset.
45
+ */
46
+ function managerOptions(opts) {
47
+ return {
48
+ priority: opts.priority,
49
+ delay: opts.delay,
50
+ maxAttempts: opts.attempts,
51
+ backoff: opts.backoff,
52
+ timeout: opts.timeout,
53
+ customId: opts.jobId ?? opts.deduplication?.id,
54
+ uniqueKey: opts.deduplication?.id,
55
+ dedup: dedupConfig(opts),
56
+ lifo: opts.lifo,
57
+ stallTimeout: opts.stallTimeout,
58
+ durable: opts.durable,
59
+ stackTraceLimit: opts.stackTraceLimit,
60
+ keepLogs: opts.keepLogs,
61
+ sizeLimit: opts.sizeLimit,
62
+ timestamp: opts.timestamp,
63
+ repeat: normalizeRepeat(opts.repeat),
64
+ debounceId: opts.debounce?.id,
65
+ debounceTtl: opts.debounce?.ttl,
66
+ failParentOnFailure: opts.failParentOnFailure,
67
+ removeDependencyOnFailure: opts.removeDependencyOnFailure,
68
+ ignoreDependencyOnFailure: opts.ignoreDependencyOnFailure,
69
+ continueParentOnFailure: opts.continueParentOnFailure,
70
+ };
71
+ }
72
+ /** Full option set for the TCP PUSH command, mirroring buildPushPayload in add.ts (#90). */
73
+ function tcpOptions(opts) {
74
+ return {
75
+ priority: opts.priority,
76
+ delay: opts.delay,
77
+ maxAttempts: opts.attempts,
78
+ backoff: opts.backoff,
79
+ timeout: opts.timeout,
80
+ jobId: opts.jobId,
81
+ uniqueKey: opts.deduplication?.id,
82
+ dedup: dedupConfig(opts),
83
+ lifo: opts.lifo,
84
+ stallTimeout: opts.stallTimeout,
85
+ durable: opts.durable,
86
+ stackTraceLimit: opts.stackTraceLimit,
87
+ keepLogs: opts.keepLogs,
88
+ sizeLimit: opts.sizeLimit,
89
+ timestamp: opts.timestamp,
90
+ repeat: opts.repeat,
91
+ debounceId: opts.debounce?.id,
92
+ debounceTtl: opts.debounce?.ttl,
93
+ failParentOnFailure: opts.failParentOnFailure,
94
+ removeDependencyOnFailure: opts.removeDependencyOnFailure,
95
+ ignoreDependencyOnFailure: opts.ignoreDependencyOnFailure,
96
+ continueParentOnFailure: opts.continueParentOnFailure,
97
+ };
98
+ }
14
99
  /** Push a job via embedded manager or TCP */
15
100
  export async function pushJob(ctx, queueName, data, opts = {}, dependsOn) {
101
+ const { removeOnComplete, removeOnFail } = parseRemoveOptions(opts);
16
102
  if (ctx.embedded) {
17
103
  const manager = getSharedManager();
18
- const { removeOnComplete, removeOnFail } = parseRemoveOptions(opts);
19
104
  const job = await manager.push(queueName, {
20
105
  data,
21
- priority: opts.priority,
22
- delay: opts.delay,
23
- maxAttempts: opts.attempts,
24
- backoff: opts.backoff,
25
- timeout: opts.timeout,
26
- customId: opts.jobId,
106
+ ...managerOptions(opts),
27
107
  removeOnComplete,
28
108
  removeOnFail,
29
- failParentOnFailure: opts.failParentOnFailure,
30
- removeDependencyOnFailure: opts.removeDependencyOnFailure,
31
- ignoreDependencyOnFailure: opts.ignoreDependencyOnFailure,
32
- continueParentOnFailure: opts.continueParentOnFailure,
33
109
  dependsOn: dependsOn?.map((id) => jobId(id)),
34
110
  });
35
111
  return String(job.id);
@@ -40,18 +116,9 @@ export async function pushJob(ctx, queueName, data, opts = {}, dependsOn) {
40
116
  cmd: 'PUSH',
41
117
  queue: queueName,
42
118
  data,
43
- priority: opts.priority,
44
- delay: opts.delay,
45
- maxAttempts: opts.attempts,
46
- backoff: opts.backoff,
47
- timeout: opts.timeout,
48
- jobId: opts.jobId,
49
- removeOnComplete: opts.removeOnComplete,
50
- removeOnFail: opts.removeOnFail,
51
- failParentOnFailure: opts.failParentOnFailure,
52
- removeDependencyOnFailure: opts.removeDependencyOnFailure,
53
- ignoreDependencyOnFailure: opts.ignoreDependencyOnFailure,
54
- continueParentOnFailure: opts.continueParentOnFailure,
119
+ ...tcpOptions(opts),
120
+ removeOnComplete,
121
+ removeOnFail,
55
122
  dependsOn,
56
123
  });
57
124
  if (!response.ok) {
@@ -62,24 +129,15 @@ export async function pushJob(ctx, queueName, data, opts = {}, dependsOn) {
62
129
  /** Push a job with parent/children tracking */
63
130
  export async function pushJobWithParent(ctx, params) {
64
131
  const { queueName, data, opts, parentRef, childIds } = params;
132
+ const { removeOnComplete, removeOnFail } = parseRemoveOptions(opts);
65
133
  if (ctx.embedded) {
66
134
  const manager = getSharedManager();
67
- const { removeOnComplete, removeOnFail } = parseRemoveOptions(opts);
68
135
  const childJobIds = childIds.map((id) => jobId(id));
69
136
  const job = await manager.push(queueName, {
70
137
  data,
71
- priority: opts.priority,
72
- delay: opts.delay,
73
- maxAttempts: opts.attempts,
74
- backoff: opts.backoff,
75
- timeout: opts.timeout,
76
- customId: opts.jobId,
138
+ ...managerOptions(opts),
77
139
  removeOnComplete,
78
140
  removeOnFail,
79
- failParentOnFailure: opts.failParentOnFailure,
80
- removeDependencyOnFailure: opts.removeDependencyOnFailure,
81
- ignoreDependencyOnFailure: opts.ignoreDependencyOnFailure,
82
- continueParentOnFailure: opts.continueParentOnFailure,
83
141
  parentId: parentRef ? jobId(parentRef.id) : undefined,
84
142
  dependsOn: childJobIds.length > 0 ? childJobIds : undefined,
85
143
  childrenIds: childJobIds.length > 0 ? childJobIds : undefined,
@@ -97,18 +155,9 @@ export async function pushJobWithParent(ctx, params) {
97
155
  cmd: 'PUSH',
98
156
  queue: queueName,
99
157
  data,
100
- priority: opts.priority,
101
- delay: opts.delay,
102
- maxAttempts: opts.attempts,
103
- backoff: opts.backoff,
104
- timeout: opts.timeout,
105
- jobId: opts.jobId,
106
- removeOnComplete: opts.removeOnComplete,
107
- removeOnFail: opts.removeOnFail,
108
- failParentOnFailure: opts.failParentOnFailure,
109
- removeDependencyOnFailure: opts.removeDependencyOnFailure,
110
- ignoreDependencyOnFailure: opts.ignoreDependencyOnFailure,
111
- continueParentOnFailure: opts.continueParentOnFailure,
158
+ ...tcpOptions(opts),
159
+ removeOnComplete,
160
+ removeOnFail,
112
161
  parentId: parentRef?.id,
113
162
  childrenIds: childIds.length > 0 ? childIds : undefined,
114
163
  dependsOn: childIds.length > 0 ? childIds : undefined,