bunqueue 2.8.53 → 2.8.56
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.
- package/dist/application/background/dlq.d.ts +2 -0
- package/dist/application/background/dlq.js +26 -0
- package/dist/application/background/lifecycle.d.ts +4 -0
- package/dist/application/background/lifecycle.js +90 -0
- package/dist/application/background/recovery/active.d.ts +4 -0
- package/dist/application/background/recovery/active.js +69 -0
- package/dist/application/background/recovery/index.d.ts +2 -0
- package/dist/application/background/recovery/index.js +22 -0
- package/dist/application/background/recovery/pending.d.ts +3 -0
- package/dist/application/background/recovery/pending.js +69 -0
- package/dist/application/background/recovery/restore.d.ts +5 -0
- package/dist/application/background/recovery/restore.js +58 -0
- package/dist/application/background/recovery/shared.d.ts +6 -0
- package/dist/application/background/recovery/shared.js +15 -0
- package/dist/application/background/timeouts.d.ts +25 -0
- package/dist/application/background/timeouts.js +191 -0
- package/dist/application/backgroundTasks.d.ts +7 -31
- package/dist/application/backgroundTasks.js +6 -438
- package/dist/application/cleanupTasks.js +2 -1
- package/dist/application/clientTracking.js +3 -1
- package/dist/application/contextFactory.d.ts +13 -90
- package/dist/application/contextFactory.js +9 -0
- package/dist/application/dependencyResultTracker.d.ts +1 -0
- package/dist/application/dependencyResultTracker.js +3 -0
- package/dist/application/dlqManager.d.ts +9 -9
- package/dist/application/dlqManager.js +49 -167
- package/dist/application/dlqRetry.d.ts +12 -0
- package/dist/application/dlqRetry.js +97 -0
- package/dist/application/lockManager.js +24 -4
- package/dist/application/lockOperations.js +16 -3
- package/dist/application/operations/ack/batch.d.ts +8 -0
- package/dist/application/operations/ack/batch.js +64 -0
- package/dist/application/operations/ack/completion.d.ts +3 -0
- package/dist/application/operations/ack/completion.js +74 -0
- package/dist/application/operations/ack/failure.d.ts +3 -0
- package/dist/application/operations/ack/failure.js +160 -0
- package/dist/application/operations/ack.d.ts +5 -79
- package/dist/application/operations/ack.js +4 -319
- package/dist/application/operations/ackHelpers.d.ts +3 -52
- package/dist/application/operations/ackHelpers.js +11 -4
- package/dist/application/operations/customId.d.ts +18 -5
- package/dist/application/operations/customId.js +36 -25
- package/dist/application/operations/flowValidation.js +9 -4
- package/dist/application/operations/jobManagement.js +50 -11
- package/dist/application/operations/jobMoveOperations.js +3 -3
- package/dist/application/operations/jobStateTransitions.d.ts +1 -1
- package/dist/application/operations/jobStateTransitions.js +16 -2
- package/dist/application/operations/parentLink.d.ts +36 -0
- package/dist/application/operations/parentLink.js +153 -0
- package/dist/application/operations/parentLinkInput.d.ts +8 -0
- package/dist/application/operations/parentLinkInput.js +23 -0
- package/dist/application/operations/push.d.ts +5 -44
- package/dist/application/operations/push.js +62 -152
- package/dist/application/operations/pushAdmission.d.ts +32 -0
- package/dist/application/operations/pushAdmission.js +38 -0
- package/dist/application/operations/pushBatch.d.ts +4 -0
- package/dist/application/operations/pushBatch.js +136 -0
- package/dist/application/operations/pushContext.d.ts +39 -0
- package/dist/application/operations/pushContext.js +1 -0
- package/dist/application/operations/pushDeduplication.d.ts +42 -0
- package/dist/application/operations/pushDeduplication.js +131 -0
- package/dist/application/operations/pushInsert.d.ts +13 -1
- package/dist/application/operations/pushInsert.js +33 -17
- package/dist/application/operations/pushLocks.js +13 -9
- package/dist/application/operations/query/collect.d.ts +12 -0
- package/dist/application/operations/query/collect.js +118 -0
- package/dist/application/operations/query/jobLookup.d.ts +9 -0
- package/dist/application/operations/query/jobLookup.js +110 -0
- package/dist/application/operations/query/pagination.d.ts +8 -0
- package/dist/application/operations/query/pagination.js +90 -0
- package/dist/application/operations/query/state.d.ts +4 -0
- package/dist/application/operations/query/state.js +63 -0
- package/dist/application/operations/queryOperations.d.ts +5 -50
- package/dist/application/operations/queryOperations.js +4 -474
- package/dist/application/queue-manager/ack.d.ts +23 -0
- package/dist/application/queue-manager/ack.js +242 -0
- package/dist/application/queue-manager/configuration.d.ts +27 -0
- package/dist/application/queue-manager/configuration.js +84 -0
- package/dist/application/queue-manager/context.d.ts +5 -0
- package/dist/application/queue-manager/context.js +61 -0
- package/dist/application/queue-manager/control.d.ts +17 -0
- package/dist/application/queue-manager/control.js +133 -0
- package/dist/application/queue-manager/delivery.d.ts +32 -0
- package/dist/application/queue-manager/delivery.js +143 -0
- package/dist/application/queue-manager/dependencies.d.ts +8 -0
- package/dist/application/queue-manager/dependencies.js +127 -0
- package/dist/application/queue-manager/dependency-runtime.d.ts +8 -0
- package/dist/application/queue-manager/dependency-runtime.js +40 -0
- package/dist/application/queue-manager/flow-failures.d.ts +18 -0
- package/dist/application/queue-manager/flow-failures.js +107 -0
- package/dist/application/queue-manager/flow-options.d.ts +8 -0
- package/dist/application/queue-manager/flow-options.js +129 -0
- package/dist/application/queue-manager/job-management.d.ts +17 -0
- package/dist/application/queue-manager/job-management.js +100 -0
- package/dist/application/queue-manager/lifecycle.d.ts +4 -0
- package/dist/application/queue-manager/lifecycle.js +41 -0
- package/dist/application/queue-manager/limits.d.ts +41 -0
- package/dist/application/queue-manager/limits.js +108 -0
- package/dist/application/queue-manager/locks.d.ts +21 -0
- package/dist/application/queue-manager/locks.js +59 -0
- package/dist/application/queue-manager/observability.d.ts +16 -0
- package/dist/application/queue-manager/observability.js +44 -0
- package/dist/application/queue-manager/queries.d.ts +17 -0
- package/dist/application/queue-manager/queries.js +118 -0
- package/dist/application/queue-manager/repeat.d.ts +4 -0
- package/dist/application/queue-manager/repeat.js +26 -0
- package/dist/application/queue-manager/services.d.ts +19 -0
- package/dist/application/queue-manager/services.js +80 -0
- package/dist/application/queue-manager/state.d.ts +92 -0
- package/dist/application/queue-manager/state.js +144 -0
- package/dist/application/queue-manager/stats.d.ts +28 -0
- package/dist/application/queue-manager/stats.js +52 -0
- package/dist/application/queueManager.d.ts +4 -380
- package/dist/application/queueManager.js +3 -1880
- package/dist/application/queueTelemetryJournal.d.ts +20 -0
- package/dist/application/queueTelemetryJournal.js +133 -0
- package/dist/application/repeatJobs.d.ts +7 -0
- package/dist/application/repeatJobs.js +132 -0
- package/dist/application/stallDetection.js +9 -4
- package/dist/application/types/ack.d.ts +132 -0
- package/dist/application/types/ack.js +1 -0
- package/dist/application/types/background.d.ts +18 -0
- package/dist/application/types/background.js +1 -0
- package/dist/application/types/config.d.ts +37 -0
- package/dist/application/types/config.js +15 -0
- package/dist/application/types/contextFactory.d.ts +83 -0
- package/dist/application/types/contextFactory.js +1 -0
- package/dist/application/types/contexts.d.ts +110 -0
- package/dist/application/types/contexts.js +1 -0
- package/dist/application/types/index.d.ts +7 -0
- package/dist/application/types/index.js +1 -0
- package/dist/application/types/query.d.ts +23 -0
- package/dist/application/types/query.js +1 -0
- package/dist/application/types/queueManager.d.ts +94 -0
- package/dist/application/types/queueManager.js +1 -0
- package/dist/cli/commandRouter.d.ts +1 -1
- package/dist/cli/commands/core.js +1 -0
- package/dist/cli/output/collections.d.ts +8 -0
- package/dist/cli/output/collections.js +131 -0
- package/dist/cli/output/jobs.d.ts +2 -0
- package/dist/cli/output/jobs.js +61 -0
- package/dist/cli/output/style.d.ts +14 -0
- package/dist/cli/output/style.js +28 -0
- package/dist/cli/output/success.d.ts +1 -0
- package/dist/cli/output/success.js +108 -0
- package/dist/cli/output.d.ts +1 -6
- package/dist/cli/output.js +7 -395
- package/dist/client/bunqueue/dlqRateLimit.d.ts +8 -0
- package/dist/client/bunqueue/dlqRateLimit.js +24 -0
- package/dist/client/bunqueue/runtime.d.ts +35 -0
- package/dist/client/bunqueue/runtime.js +138 -0
- package/dist/client/bunqueue.d.ts +19 -34
- package/dist/client/bunqueue.js +45 -166
- package/dist/client/dlqConversion.d.ts +5 -0
- package/dist/client/dlqConversion.js +28 -0
- package/dist/client/events.d.ts +7 -56
- package/dist/client/events.js +38 -15
- package/dist/client/flow.d.ts +6 -12
- package/dist/client/flow.js +16 -34
- package/dist/client/flowJobDependencies.js +3 -1
- package/dist/client/flowJobFactory.d.ts +9 -1
- package/dist/client/flowJobFactory.js +25 -9
- package/dist/client/flowJobMoveMethods.d.ts +5 -5
- package/dist/client/flowJobMoveMethods.js +37 -17
- package/dist/client/flowLegacyPlan.js +22 -8
- package/dist/client/flowOptions.d.ts +1 -1
- package/dist/client/flowOptions.js +2 -1
- package/dist/client/flowPlan.js +2 -3
- package/dist/client/flowPush.d.ts +1 -0
- package/dist/client/flowPush.js +5 -1
- package/dist/client/flowReader.js +5 -5
- package/dist/client/flowResults.d.ts +11 -0
- package/dist/client/flowResults.js +42 -0
- package/dist/client/index.d.ts +3 -1
- package/dist/client/jobConversion.d.ts +3 -7
- package/dist/client/jobConversion.js +36 -33
- package/dist/client/jobConversionHelpers.d.ts +19 -3
- package/dist/client/jobConversionHelpers.js +20 -16
- package/dist/client/jobConversionTypes.d.ts +8 -0
- package/dist/client/jobDeduplication.d.ts +6 -0
- package/dist/client/jobDeduplication.js +14 -0
- package/dist/client/jobHelpers.d.ts +7 -2
- package/dist/client/jobHelpers.js +16 -8
- package/dist/client/queue/bullmqCompat.d.ts +18 -8
- package/dist/client/queue/bullmqCompat.js +39 -71
- package/dist/client/queue/deduplication.d.ts +2 -0
- package/dist/client/queue/deduplication.js +20 -11
- package/dist/client/queue/dlq.d.ts +11 -6
- package/dist/client/queue/dlq.js +57 -16
- package/dist/client/queue/dlqJobMethods.d.ts +9 -0
- package/dist/client/queue/dlqJobMethods.js +177 -0
- package/dist/client/queue/dlqOps.d.ts +2 -1
- package/dist/client/queue/dlqOps.js +4 -10
- package/dist/client/queue/dlqStats.d.ts +3 -0
- package/dist/client/queue/dlqStats.js +21 -0
- package/dist/client/queue/job-proxy/dependencies.d.ts +9 -0
- package/dist/client/queue/job-proxy/dependencies.js +67 -0
- package/dist/client/queue/job-proxy/reflection.d.ts +2 -0
- package/dist/client/queue/job-proxy/reflection.js +18 -0
- package/dist/client/queue/job-proxy/simple.d.ts +3 -0
- package/dist/client/queue/job-proxy/simple.js +316 -0
- package/dist/client/queue/job-proxy/tcp.d.ts +4 -0
- package/dist/client/queue/job-proxy/tcp.js +191 -0
- package/dist/client/queue/jobMetadata.d.ts +10 -0
- package/dist/client/queue/jobMetadata.js +24 -0
- package/dist/client/queue/jobMove.d.ts +4 -4
- package/dist/client/queue/jobMove.js +87 -24
- package/dist/client/queue/jobProxy.d.ts +4 -50
- package/dist/client/queue/jobProxy.js +3 -511
- package/dist/client/queue/operations/add/bulk.d.ts +7 -0
- package/dist/client/queue/operations/add/bulk.js +129 -0
- package/dist/client/queue/operations/add/payload.d.ts +24 -0
- package/dist/client/queue/operations/add/payload.js +85 -0
- package/dist/client/queue/operations/add/single.d.ts +3 -0
- package/dist/client/queue/operations/add/single.js +107 -0
- package/dist/client/queue/operations/add.d.ts +2 -47
- package/dist/client/queue/operations/add.js +2 -347
- package/dist/client/queue/operations/index.d.ts +1 -0
- package/dist/client/queue/operations/index.js +1 -0
- package/dist/client/queue/operations/management.d.ts +0 -4
- package/dist/client/queue/operations/management.js +35 -6
- package/dist/client/queue/operations/query.d.ts +1 -20
- package/dist/client/queue/operations/query.js +38 -116
- package/dist/client/queue/operations/queryStates.d.ts +13 -0
- package/dist/client/queue/operations/queryStates.js +32 -0
- package/dist/client/queue/operations/queryTcpPages.d.ts +14 -0
- package/dist/client/queue/operations/queryTcpPages.js +40 -0
- package/dist/client/queue/queue.d.ts +6 -189
- package/dist/client/queue/queue.js +6 -547
- package/dist/client/queue/rateLimit.d.ts +4 -4
- package/dist/client/queue/rateLimit.js +17 -8
- package/dist/client/queue/runtime/compatibility.d.ts +13 -0
- package/dist/client/queue/runtime/compatibility.js +38 -0
- package/dist/client/queue/runtime/configuration.d.ts +42 -0
- package/dist/client/queue/runtime/configuration.js +109 -0
- package/dist/client/queue/runtime/connection.d.ts +6 -0
- package/dist/client/queue/runtime/connection.js +16 -0
- package/dist/client/queue/runtime/control.d.ts +41 -0
- package/dist/client/queue/runtime/control.js +87 -0
- package/dist/client/queue/runtime/queries.d.ts +48 -0
- package/dist/client/queue/runtime/queries.js +95 -0
- package/dist/client/queue/runtime/scheduling.d.ts +33 -0
- package/dist/client/queue/runtime/scheduling.js +56 -0
- package/dist/client/queue/runtime/state.d.ts +96 -0
- package/dist/client/queue/runtime/state.js +149 -0
- package/dist/client/queue/scheduler.d.ts +2 -5
- package/dist/client/queue/scheduler.js +25 -23
- package/dist/client/queue/schedulerPagination.d.ts +7 -0
- package/dist/client/queue/schedulerPagination.js +10 -0
- package/dist/client/queue/types/add.d.ts +40 -0
- package/dist/client/queue/types/add.js +1 -0
- package/dist/client/queue/types/contexts.d.ts +33 -0
- package/dist/client/queue/types/contexts.js +5 -0
- package/dist/client/queue/types/index.d.ts +3 -0
- package/dist/client/queue/types/index.js +1 -0
- package/dist/client/queue/types/job.d.ts +50 -0
- package/dist/client/queue/types/job.js +1 -0
- package/dist/client/queue/types/runtime.d.ts +35 -0
- package/dist/client/queue/types/runtime.js +1 -0
- package/dist/client/queue/workers.d.ts +16 -8
- package/dist/client/queue/workers.js +42 -16
- package/dist/client/queue-events/tcpSubscription.d.ts +23 -0
- package/dist/client/queue-events/tcpSubscription.js +99 -0
- package/dist/client/queueGroup.d.ts +11 -0
- package/dist/client/queueGroup.js +28 -1
- package/dist/client/sandboxed/queueOps.d.ts +2 -2
- package/dist/client/sandboxed/queueOps.js +32 -5
- package/dist/client/sandboxed/runtime/dispatch.d.ts +13 -0
- package/dist/client/sandboxed/runtime/dispatch.js +186 -0
- package/dist/client/sandboxed/runtime/lifecycle.d.ts +20 -0
- package/dist/client/sandboxed/runtime/lifecycle.js +95 -0
- package/dist/client/sandboxed/runtime/log.d.ts +1 -0
- package/dist/client/sandboxed/runtime/log.js +15 -0
- package/dist/client/sandboxed/runtime/pool.d.ts +11 -0
- package/dist/client/sandboxed/runtime/pool.js +121 -0
- package/dist/client/sandboxed/runtime/recovery.d.ts +11 -0
- package/dist/client/sandboxed/runtime/recovery.js +122 -0
- package/dist/client/sandboxed/runtime/state.d.ts +39 -0
- package/dist/client/sandboxed/runtime/state.js +59 -0
- package/dist/client/sandboxed/types/index.d.ts +2 -0
- package/dist/client/sandboxed/types/index.js +1 -0
- package/dist/client/sandboxed/types/options.d.ts +27 -0
- package/dist/client/sandboxed/types/options.js +1 -0
- package/dist/client/sandboxed/types/process.d.ts +30 -0
- package/dist/client/sandboxed/types/process.js +1 -0
- package/dist/client/sandboxed/worker.d.ts +3 -85
- package/dist/client/sandboxed/worker.js +3 -557
- package/dist/client/sandboxed/wrapper.js +1 -0
- package/dist/client/tcp/client.d.ts +5 -112
- package/dist/client/tcp/client.js +5 -481
- package/dist/client/tcp/commandQueue.d.ts +23 -0
- package/dist/client/tcp/commandQueue.js +89 -0
- package/dist/client/tcp/connection.d.ts +4 -85
- package/dist/client/tcp/connection.js +3 -315
- package/dist/client/tcp/errors.d.ts +6 -0
- package/dist/client/tcp/errors.js +18 -0
- package/dist/client/tcp/runtime/commands.d.ts +9 -0
- package/dist/client/tcp/runtime/commands.js +124 -0
- package/dist/client/tcp/runtime/connectivity.d.ts +13 -0
- package/dist/client/tcp/runtime/connectivity.js +77 -0
- package/dist/client/tcp/runtime/health.d.ts +14 -0
- package/dist/client/tcp/runtime/health.js +127 -0
- package/dist/client/tcp/runtime/lifecycle.d.ts +8 -0
- package/dist/client/tcp/runtime/lifecycle.js +32 -0
- package/dist/client/tcp/runtime/state.d.ts +50 -0
- package/dist/client/tcp/runtime/state.js +45 -0
- package/dist/client/tcp/transport.d.ts +18 -0
- package/dist/client/tcp/transport.js +158 -0
- package/dist/client/tcp/types/command.d.ts +9 -0
- package/dist/client/tcp/types/command.js +1 -0
- package/dist/client/tcp/types/connection.d.ts +31 -0
- package/dist/client/tcp/types/connection.js +17 -0
- package/dist/client/tcp/types/index.d.ts +5 -0
- package/dist/client/tcp/types/index.js +1 -0
- package/dist/client/tcp/types/socket.d.ts +8 -0
- package/dist/client/tcp/types/socket.js +1 -0
- package/dist/client/tcp/types/tls.d.ts +4 -0
- package/dist/client/tcp/types/tls.js +1 -0
- package/dist/client/tcp/types.d.ts +2 -106
- package/dist/client/tcp/types.js +2 -22
- package/dist/client/types/connection.d.ts +29 -0
- package/dist/client/types/connection.js +1 -0
- package/dist/client/types/dlq.d.ts +45 -0
- package/dist/client/types/dlq.js +1 -0
- package/dist/client/types/events.d.ts +54 -0
- package/dist/client/types/events.js +1 -0
- package/dist/client/types/flow.d.ts +10 -0
- package/dist/client/types/flow.js +1 -0
- package/dist/client/types/index.d.ts +10 -0
- package/dist/client/types/index.js +1 -0
- package/dist/client/types/job.d.ts +127 -0
- package/dist/client/types/job.js +1 -0
- package/dist/client/types/metrics.d.ts +1 -0
- package/dist/client/types/metrics.js +1 -0
- package/dist/client/types/options.d.ts +62 -0
- package/dist/client/types/options.js +1 -0
- package/dist/client/types/worker.d.ts +38 -0
- package/dist/client/types/worker.js +1 -0
- package/dist/client/types.d.ts +2 -583
- package/dist/client/types.js +2 -6
- package/dist/client/worker/ackBatcher.d.ts +1 -1
- package/dist/client/worker/ackBatcher.js +17 -5
- package/dist/client/worker/ackOutcome.d.ts +8 -0
- package/dist/client/worker/ackOutcome.js +58 -0
- package/dist/client/worker/constants.d.ts +7 -0
- package/dist/client/worker/constants.js +7 -0
- package/dist/client/worker/groupConcurrency.js +3 -0
- package/dist/client/worker/handlers/completion.d.ts +28 -0
- package/dist/client/worker/handlers/completion.js +68 -0
- package/dist/client/worker/handlers/dependencies.d.ts +11 -0
- package/dist/client/worker/handlers/dependencies.js +107 -0
- package/dist/client/worker/handlers/mutations.d.ts +23 -0
- package/dist/client/worker/handlers/mutations.js +211 -0
- package/dist/client/worker/handlers/queries.d.ts +15 -0
- package/dist/client/worker/handlers/queries.js +100 -0
- package/dist/client/worker/index.d.ts +2 -2
- package/dist/client/worker/index.js +1 -1
- package/dist/client/worker/jobParser.js +4 -2
- package/dist/client/worker/processor.d.ts +2 -15
- package/dist/client/worker/processor.js +68 -125
- package/dist/client/worker/processorHandlers.d.ts +4 -65
- package/dist/client/worker/processorHandlers.js +4 -400
- package/dist/client/worker/processorOutcome.d.ts +14 -0
- package/dist/client/worker/processorOutcome.js +125 -0
- package/dist/client/worker/runtime/buffer.d.ts +8 -0
- package/dist/client/worker/runtime/buffer.js +50 -0
- package/dist/client/worker/runtime/control.d.ts +26 -0
- package/dist/client/worker/runtime/control.js +175 -0
- package/dist/client/worker/runtime/execution.d.ts +11 -0
- package/dist/client/worker/runtime/execution.js +123 -0
- package/dist/client/worker/runtime/lifecycle.d.ts +7 -0
- package/dist/client/worker/runtime/lifecycle.js +114 -0
- package/dist/client/worker/runtime/manual.d.ts +10 -0
- package/dist/client/worker/runtime/manual.js +137 -0
- package/dist/client/worker/runtime/options.d.ts +5 -0
- package/dist/client/worker/runtime/options.js +39 -0
- package/dist/client/worker/runtime/polling.d.ts +12 -0
- package/dist/client/worker/runtime/polling.js +123 -0
- package/dist/client/worker/runtime/state.d.ts +110 -0
- package/dist/client/worker/runtime/state.js +156 -0
- package/dist/client/worker/types/index.d.ts +5 -0
- package/dist/client/worker/types/index.js +1 -0
- package/dist/client/worker/types/manual.d.ts +7 -0
- package/dist/client/worker/types/manual.js +1 -0
- package/dist/client/worker/types/options.d.ts +24 -0
- package/dist/client/worker/types/options.js +1 -0
- package/dist/client/worker/types/outcome.d.ts +23 -0
- package/dist/client/worker/types/outcome.js +1 -0
- package/dist/client/worker/types/processor.d.ts +22 -0
- package/dist/client/worker/types/processor.js +1 -0
- package/dist/client/worker/types/transport.d.ts +11 -0
- package/dist/client/worker/types/transport.js +1 -0
- package/dist/client/worker/worker.d.ts +3 -160
- package/dist/client/worker/worker.js +3 -904
- package/dist/client/worker/workerRateLimiter.d.ts +5 -1
- package/dist/client/worker/workerRateLimiter.js +40 -20
- package/dist/client/worker.d.ts +1 -0
- package/dist/client/workflow/compensationChild.d.ts +2 -1
- package/dist/client/workflow/compensationChild.js +1 -1
- package/dist/client/workflow/compensationClaim.d.ts +11 -0
- package/dist/client/workflow/compensationClaim.js +30 -0
- package/dist/client/workflow/compensator.d.ts +7 -2
- package/dist/client/workflow/compensator.js +5 -11
- package/dist/client/workflow/recovery.js +25 -2
- package/dist/client/workflow/rollbackControl.js +1 -1
- package/dist/domain/job/constants.d.ts +12 -0
- package/dist/domain/job/constants.js +12 -0
- package/dist/domain/job/create.d.ts +2 -0
- package/dist/domain/job/create.js +103 -0
- package/dist/domain/job/ids.d.ts +5 -0
- package/dist/domain/job/ids.js +12 -0
- package/dist/domain/job/locks.d.ts +4 -0
- package/dist/domain/job/locks.js +23 -0
- package/dist/domain/job/payload.d.ts +18 -0
- package/dist/domain/job/payload.js +43 -0
- package/dist/domain/job/state.d.ts +8 -0
- package/dist/domain/job/state.js +51 -0
- package/dist/domain/job/terminal.d.ts +3 -0
- package/dist/domain/job/terminal.js +9 -0
- package/dist/domain/queue/dlqShard.d.ts +2 -0
- package/dist/domain/queue/dlqShard.js +34 -9
- package/dist/domain/queue/limiterManager.d.ts +11 -0
- package/dist/domain/queue/limiterManager.js +28 -0
- package/dist/domain/queue/priorityQueue.js +3 -39
- package/dist/domain/queue/priorityQueueOrder.d.ts +3 -0
- package/dist/domain/queue/priorityQueueOrder.js +21 -0
- package/dist/domain/queue/shard/dependencies.d.ts +11 -0
- package/dist/domain/queue/shard/dependencies.js +22 -0
- package/dist/domain/queue/shard/dlq.d.ts +25 -0
- package/dist/domain/queue/shard/dlq.js +71 -0
- package/dist/domain/queue/shard/keys.d.ts +18 -0
- package/dist/domain/queue/shard/keys.js +45 -0
- package/dist/domain/queue/shard/lifecycle.d.ts +10 -0
- package/dist/domain/queue/shard/lifecycle.js +43 -0
- package/dist/domain/queue/shard/limits.d.ts +24 -0
- package/dist/domain/queue/shard/limits.js +57 -0
- package/dist/domain/queue/shard/metrics.d.ts +32 -0
- package/dist/domain/queue/shard/metrics.js +72 -0
- package/dist/domain/queue/shard/state.d.ts +34 -0
- package/dist/domain/queue/shard/state.js +80 -0
- package/dist/domain/queue/shard.d.ts +5 -137
- package/dist/domain/queue/shard.js +4 -390
- package/dist/domain/queue/uniqueKeyManager.d.ts +3 -1
- package/dist/domain/queue/uniqueKeyManager.js +9 -1
- package/dist/domain/response/builders.d.ts +15 -0
- package/dist/domain/response/builders.js +39 -0
- package/dist/domain/types/command.d.ts +2 -522
- package/dist/domain/types/command.js +2 -5
- package/dist/domain/types/commands/base.d.ts +5 -0
- package/dist/domain/types/commands/base.js +1 -0
- package/dist/domain/types/commands/core.d.ts +106 -0
- package/dist/domain/types/commands/core.js +1 -0
- package/dist/domain/types/commands/cron.d.ts +36 -0
- package/dist/domain/types/commands/cron.js +1 -0
- package/dist/domain/types/commands/dashboard.d.ts +13 -0
- package/dist/domain/types/commands/dashboard.js +1 -0
- package/dist/domain/types/commands/dlq.d.ts +39 -0
- package/dist/domain/types/commands/dlq.js +1 -0
- package/dist/domain/types/commands/extended.d.ts +63 -0
- package/dist/domain/types/commands/extended.js +1 -0
- package/dist/domain/types/commands/index.d.ts +12 -0
- package/dist/domain/types/commands/index.js +12 -0
- package/dist/domain/types/commands/limits.d.ts +54 -0
- package/dist/domain/types/commands/limits.js +1 -0
- package/dist/domain/types/commands/management.d.ts +73 -0
- package/dist/domain/types/commands/management.js +1 -0
- package/dist/domain/types/commands/monitoring.d.ts +49 -0
- package/dist/domain/types/commands/monitoring.js +1 -0
- package/dist/domain/types/commands/protocol.d.ts +20 -0
- package/dist/domain/types/commands/protocol.js +1 -0
- package/dist/domain/types/commands/query.d.ts +46 -0
- package/dist/domain/types/commands/query.js +1 -0
- package/dist/domain/types/commands/union.d.ts +13 -0
- package/dist/domain/types/commands/union.js +1 -0
- package/dist/domain/types/commands/workers.d.ts +39 -0
- package/dist/domain/types/commands/workers.js +1 -0
- package/dist/domain/types/cron.d.ts +4 -2
- package/dist/domain/types/cron.js +3 -0
- package/dist/domain/types/dlq.d.ts +17 -0
- package/dist/domain/types/dlq.js +70 -14
- package/dist/domain/types/index.d.ts +2 -0
- package/dist/domain/types/index.js +1 -0
- package/dist/domain/types/job.d.ts +8 -269
- package/dist/domain/types/job.js +8 -234
- package/dist/domain/types/jobs/model.d.ts +152 -0
- package/dist/domain/types/jobs/model.js +1 -0
- package/dist/domain/types/metrics.d.ts +16 -0
- package/dist/domain/types/metrics.js +1 -0
- package/dist/domain/types/priorityQueue.d.ts +12 -0
- package/dist/domain/types/priorityQueue.js +1 -0
- package/dist/domain/types/protocol.d.ts +5 -0
- package/dist/domain/types/protocol.js +4 -0
- package/dist/domain/types/queue.d.ts +7 -0
- package/dist/domain/types/queue.js +13 -0
- package/dist/domain/types/response.d.ts +3 -192
- package/dist/domain/types/response.js +3 -101
- package/dist/domain/types/responses/model.d.ts +152 -0
- package/dist/domain/types/responses/model.js +1 -0
- package/dist/domain/types/shard.d.ts +4 -0
- package/dist/domain/types/shard.js +1 -0
- package/dist/infrastructure/cloud/cloudAgent.js +6 -0
- package/dist/infrastructure/cloud/commandHandler.d.ts +2 -41
- package/dist/infrastructure/cloud/commandHandler.js +1 -1
- package/dist/infrastructure/cloud/commands/integrations.d.ts +2 -0
- package/dist/infrastructure/cloud/commands/integrations.js +31 -0
- package/dist/infrastructure/cloud/commands/jobMapper.d.ts +56 -0
- package/dist/infrastructure/cloud/commands/jobMapper.js +72 -0
- package/dist/infrastructure/cloud/commands/jobs.d.ts +2 -0
- package/dist/infrastructure/cloud/commands/jobs.js +111 -0
- package/dist/infrastructure/cloud/commands/queues.d.ts +2 -0
- package/dist/infrastructure/cloud/commands/queues.js +126 -0
- package/dist/infrastructure/cloud/commands.d.ts +3 -10
- package/dist/infrastructure/cloud/commands.js +7 -344
- package/dist/infrastructure/cloud/snapshot/analytics.d.ts +16 -0
- package/dist/infrastructure/cloud/snapshot/analytics.js +132 -0
- package/dist/infrastructure/cloud/snapshot/collector.d.ts +24 -0
- package/dist/infrastructure/cloud/snapshot/collector.js +105 -0
- package/dist/infrastructure/cloud/snapshot/config.d.ts +5 -0
- package/dist/infrastructure/cloud/snapshot/config.js +86 -0
- package/dist/infrastructure/cloud/snapshot/jobs.d.ts +5 -0
- package/dist/infrastructure/cloud/snapshot/jobs.js +148 -0
- package/dist/infrastructure/cloud/snapshot/stalls.d.ts +3 -0
- package/dist/infrastructure/cloud/snapshot/stalls.js +34 -0
- package/dist/infrastructure/cloud/snapshotCollector.d.ts +2 -53
- package/dist/infrastructure/cloud/snapshotCollector.js +5 -107
- package/dist/infrastructure/cloud/snapshotHelpers.d.ts +5 -45
- package/dist/infrastructure/cloud/snapshotHelpers.js +4 -426
- package/dist/infrastructure/cloud/types/collector.d.ts +54 -0
- package/dist/infrastructure/cloud/types/collector.js +1 -0
- package/dist/infrastructure/cloud/types/command.d.ts +44 -0
- package/dist/infrastructure/cloud/types/command.js +1 -0
- package/dist/infrastructure/cloud/types/config.d.ts +18 -0
- package/dist/infrastructure/cloud/types/config.js +1 -0
- package/dist/infrastructure/cloud/types/event.d.ts +14 -0
- package/dist/infrastructure/cloud/types/event.js +1 -0
- package/dist/infrastructure/cloud/types/redact.d.ts +4 -0
- package/dist/infrastructure/cloud/types/redact.js +1 -0
- package/dist/infrastructure/cloud/types/snapshot.d.ts +52 -0
- package/dist/infrastructure/cloud/types/snapshot.js +1 -0
- package/dist/infrastructure/cloud/types/snapshotCore.d.ts +125 -0
- package/dist/infrastructure/cloud/types/snapshotCore.js +1 -0
- package/dist/infrastructure/cloud/types/snapshotJobs.d.ts +124 -0
- package/dist/infrastructure/cloud/types/snapshotJobs.js +1 -0
- package/dist/infrastructure/cloud/types/snapshotTelemetry.d.ts +100 -0
- package/dist/infrastructure/cloud/types/snapshotTelemetry.js +1 -0
- package/dist/infrastructure/cloud/types.d.ts +3 -445
- package/dist/infrastructure/cloud/types.js +0 -4
- package/dist/infrastructure/persistence/batchInsert.d.ts +13 -0
- package/dist/infrastructure/persistence/batchInsert.js +96 -0
- package/dist/infrastructure/persistence/jobOptionsBlob.d.ts +18 -0
- package/dist/infrastructure/persistence/jobOptionsBlob.js +56 -0
- package/dist/infrastructure/persistence/legacyNameMigration.d.ts +5 -0
- package/dist/infrastructure/persistence/legacyNameMigration.js +42 -0
- package/dist/infrastructure/persistence/migrations.d.ts +3 -0
- package/dist/infrastructure/persistence/migrations.js +120 -0
- package/dist/infrastructure/persistence/schema.d.ts +3 -5
- package/dist/infrastructure/persistence/schema.js +40 -136
- package/dist/infrastructure/persistence/sqlite/admission.d.ts +9 -0
- package/dist/infrastructure/persistence/sqlite/admission.js +34 -0
- package/dist/infrastructure/persistence/sqlite/control.d.ts +32 -0
- package/dist/infrastructure/persistence/sqlite/control.js +90 -0
- package/dist/infrastructure/persistence/sqlite/flows.d.ts +26 -0
- package/dist/infrastructure/persistence/sqlite/flows.js +167 -0
- package/dist/infrastructure/persistence/sqlite/jobs.d.ts +23 -0
- package/dist/infrastructure/persistence/sqlite/jobs.js +166 -0
- package/dist/infrastructure/persistence/sqlite/lifecycle.d.ts +6 -0
- package/dist/infrastructure/persistence/sqlite/lifecycle.js +30 -0
- package/dist/infrastructure/persistence/sqlite/mutations.d.ts +20 -0
- package/dist/infrastructure/persistence/sqlite/mutations.js +149 -0
- package/dist/infrastructure/persistence/sqlite/queries.d.ts +23 -0
- package/dist/infrastructure/persistence/sqlite/queries.js +89 -0
- package/dist/infrastructure/persistence/sqlite/records.d.ts +24 -0
- package/dist/infrastructure/persistence/sqlite/records.js +115 -0
- package/dist/infrastructure/persistence/sqlite/state.d.ts +36 -0
- package/dist/infrastructure/persistence/sqlite/state.js +207 -0
- package/dist/infrastructure/persistence/sqlite/telemetry.d.ts +16 -0
- package/dist/infrastructure/persistence/sqlite/telemetry.js +126 -0
- package/dist/infrastructure/persistence/sqlite.d.ts +5 -276
- package/dist/infrastructure/persistence/sqlite.js +3 -997
- package/dist/infrastructure/persistence/sqliteBatch.d.ts +4 -121
- package/dist/infrastructure/persistence/sqliteBatch.js +3 -422
- package/dist/infrastructure/persistence/sqliteSerializer.d.ts +6 -1
- package/dist/infrastructure/persistence/sqliteSerializer.js +33 -11
- package/dist/infrastructure/persistence/statements.d.ts +5 -1
- package/dist/infrastructure/persistence/statements.js +14 -9
- package/dist/infrastructure/persistence/types/admission.d.ts +8 -0
- package/dist/infrastructure/persistence/types/admission.js +1 -0
- package/dist/infrastructure/persistence/types/batch.d.ts +12 -0
- package/dist/infrastructure/persistence/types/batch.js +1 -0
- package/dist/infrastructure/persistence/types/sqlite.d.ts +17 -0
- package/dist/infrastructure/persistence/types/sqlite.js +1 -0
- package/dist/infrastructure/persistence/writeBuffer.d.ts +38 -0
- package/dist/infrastructure/persistence/writeBuffer.js +221 -0
- package/dist/infrastructure/scheduler/cron/execution.d.ts +12 -0
- package/dist/infrastructure/scheduler/cron/execution.js +150 -0
- package/dist/infrastructure/scheduler/cron/runtime.d.ts +31 -0
- package/dist/infrastructure/scheduler/cron/runtime.js +143 -0
- package/dist/infrastructure/scheduler/cronScheduler.d.ts +4 -117
- package/dist/infrastructure/scheduler/cronScheduler.js +3 -436
- package/dist/infrastructure/scheduler/types/cronScheduler.d.ts +16 -0
- package/dist/infrastructure/scheduler/types/cronScheduler.js +1 -0
- package/dist/infrastructure/server/bootstrap.js +3 -0
- package/dist/infrastructure/server/handler-routes/control.d.ts +8 -0
- package/dist/infrastructure/server/handler-routes/control.js +82 -0
- package/dist/infrastructure/server/handler-routes/jobs.d.ts +6 -0
- package/dist/infrastructure/server/handler-routes/jobs.js +110 -0
- package/dist/infrastructure/server/handler-routes/monitoring.d.ts +5 -0
- package/dist/infrastructure/server/handler-routes/monitoring.js +65 -0
- package/dist/infrastructure/server/handlerRoutes.d.ts +3 -26
- package/dist/infrastructure/server/handlerRoutes.js +3 -257
- package/dist/infrastructure/server/handlers/advanced/configNumbers.d.ts +2 -0
- package/dist/infrastructure/server/handlers/advanced/configNumbers.js +26 -0
- package/dist/infrastructure/server/handlers/advanced/dependencies.d.ts +15 -0
- package/dist/infrastructure/server/handlers/advanced/dependencies.js +38 -0
- package/dist/infrastructure/server/handlers/advanced/jobs.d.ts +33 -0
- package/dist/infrastructure/server/handlers/advanced/jobs.js +136 -0
- package/dist/infrastructure/server/handlers/advanced/queue.d.ts +42 -0
- package/dist/infrastructure/server/handlers/advanced/queue.js +111 -0
- package/dist/infrastructure/server/handlers/advanced.d.ts +3 -121
- package/dist/infrastructure/server/handlers/advanced.js +3 -336
- package/dist/infrastructure/server/handlers/core.d.ts +1 -4
- package/dist/infrastructure/server/handlers/core.js +37 -20
- package/dist/infrastructure/server/handlers/cron.js +9 -1
- package/dist/infrastructure/server/handlers/dlq.d.ts +3 -0
- package/dist/infrastructure/server/handlers/dlq.js +18 -4
- package/dist/infrastructure/server/handlers/flow.js +6 -1
- package/dist/infrastructure/server/handlers/introspection.d.ts +19 -0
- package/dist/infrastructure/server/handlers/introspection.js +21 -0
- package/dist/infrastructure/server/handlers/management.d.ts +8 -0
- package/dist/infrastructure/server/handlers/management.js +30 -0
- package/dist/infrastructure/server/handlers/monitoring/health.d.ts +13 -0
- package/dist/infrastructure/server/handlers/monitoring/health.js +61 -0
- package/dist/infrastructure/server/handlers/monitoring/operations.d.ts +8 -0
- package/dist/infrastructure/server/handlers/monitoring/operations.js +28 -0
- package/dist/infrastructure/server/handlers/monitoring/webhooks.d.ts +7 -0
- package/dist/infrastructure/server/handlers/monitoring/webhooks.js +56 -0
- package/dist/infrastructure/server/handlers/monitoring/workers.d.ts +6 -0
- package/dist/infrastructure/server/handlers/monitoring/workers.js +57 -0
- package/dist/infrastructure/server/handlers/monitoring.d.ts +4 -30
- package/dist/infrastructure/server/handlers/monitoring.js +4 -222
- package/dist/infrastructure/server/handlers/pushBatchValidation.d.ts +1 -1
- package/dist/infrastructure/server/handlers/pushBatchValidation.js +7 -0
- package/dist/infrastructure/server/handlers/query.js +13 -4
- package/dist/infrastructure/server/http-routes/jobAdvanced.d.ts +2 -0
- package/dist/infrastructure/server/http-routes/jobAdvanced.js +106 -0
- package/dist/infrastructure/server/http-routes/jobManagement.d.ts +2 -0
- package/dist/infrastructure/server/http-routes/jobManagement.js +74 -0
- package/dist/infrastructure/server/http-routes/queueJobs.d.ts +2 -0
- package/dist/infrastructure/server/http-routes/queueJobs.js +108 -0
- package/dist/infrastructure/server/httpRouteJobs.d.ts +1 -8
- package/dist/infrastructure/server/httpRouteJobs.js +33 -222
- package/dist/infrastructure/server/httpRouteQueues.d.ts +1 -6
- package/dist/infrastructure/server/httpRouteQueues.js +51 -217
- package/dist/infrastructure/server/httpRouteResources.js +1 -0
- package/dist/infrastructure/server/protocol/commands.d.ts +8 -0
- package/dist/infrastructure/server/protocol/commands.js +31 -0
- package/dist/infrastructure/server/protocol/frameParser.d.ts +16 -0
- package/dist/infrastructure/server/protocol/frameParser.js +65 -0
- package/dist/infrastructure/server/protocol/lineBuffer.d.ts +6 -0
- package/dist/infrastructure/server/protocol/lineBuffer.js +21 -0
- package/dist/infrastructure/server/protocol/validation.d.ts +9 -0
- package/dist/infrastructure/server/protocol/validation.js +75 -0
- package/dist/infrastructure/server/protocol.d.ts +5 -77
- package/dist/infrastructure/server/protocol.js +4 -265
- package/dist/infrastructure/server/rateLimiter.js +1 -0
- package/dist/infrastructure/server/socketWriteQueue.d.ts +1 -1
- package/dist/infrastructure/server/socketWriteQueue.js +8 -5
- package/dist/infrastructure/server/sse/constants.d.ts +5 -0
- package/dist/infrastructure/server/sse/constants.js +5 -0
- package/dist/infrastructure/server/sse/eventBuffer.d.ts +3 -0
- package/dist/infrastructure/server/sse/eventBuffer.js +21 -0
- package/dist/infrastructure/server/sseHandler.d.ts +2 -6
- package/dist/infrastructure/server/sseHandler.js +20 -96
- package/dist/infrastructure/server/tcp/clientRelease.d.ts +2 -0
- package/dist/infrastructure/server/tcp/clientRelease.js +18 -0
- package/dist/infrastructure/server/tcp/connections.d.ts +24 -0
- package/dist/infrastructure/server/tcp/connections.js +162 -0
- package/dist/infrastructure/server/tcp/constants.d.ts +3 -0
- package/dist/infrastructure/server/tcp/constants.js +3 -0
- package/dist/infrastructure/server/tcp/eventSubscriptions.d.ts +10 -0
- package/dist/infrastructure/server/tcp/eventSubscriptions.js +17 -0
- package/dist/infrastructure/server/tcp/responses.d.ts +3 -0
- package/dist/infrastructure/server/tcp/responses.js +8 -0
- package/dist/infrastructure/server/tcp.d.ts +10 -68
- package/dist/infrastructure/server/tcp.js +47 -256
- package/dist/infrastructure/server/types/protocol.d.ts +4 -0
- package/dist/infrastructure/server/types/protocol.js +1 -0
- package/dist/infrastructure/server/types/sse.d.ts +11 -0
- package/dist/infrastructure/server/types/sse.js +1 -0
- package/dist/infrastructure/server/types/tcpServer.d.ts +25 -0
- package/dist/infrastructure/server/types/tcpServer.js +1 -0
- package/dist/infrastructure/server/types/ws.d.ts +6 -0
- package/dist/infrastructure/server/types/ws.js +1 -0
- package/dist/infrastructure/server/ws/constants.d.ts +6 -0
- package/dist/infrastructure/server/ws/constants.js +130 -0
- package/dist/infrastructure/server/ws/snapshots.d.ts +4 -0
- package/dist/infrastructure/server/ws/snapshots.js +52 -0
- package/dist/infrastructure/server/ws/subscriptions.d.ts +10 -0
- package/dist/infrastructure/server/ws/subscriptions.js +39 -0
- package/dist/infrastructure/server/wsHandler.d.ts +2 -10
- package/dist/infrastructure/server/wsHandler.js +12 -237
- package/dist/mcp/adapter.d.ts +5 -403
- package/dist/mcp/adapter.js +6 -778
- package/dist/mcp/backend/embedded/base.d.ts +7 -0
- package/dist/mcp/backend/embedded/base.js +15 -0
- package/dist/mcp/backend/embedded/index.d.ts +14 -0
- package/dist/mcp/backend/embedded/index.js +22 -0
- package/dist/mcp/backend/embedded/jobs.d.ts +44 -0
- package/dist/mcp/backend/embedded/jobs.js +98 -0
- package/dist/mcp/backend/embedded/queues.d.ts +27 -0
- package/dist/mcp/backend/embedded/queues.js +84 -0
- package/dist/mcp/backend/embedded/services.d.ts +29 -0
- package/dist/mcp/backend/embedded/services.js +107 -0
- package/dist/mcp/backend/serializers.d.ts +7 -0
- package/dist/mcp/backend/serializers.js +32 -0
- package/dist/mcp/backend/tcp/base.d.ts +19 -0
- package/dist/mcp/backend/tcp/base.js +54 -0
- package/dist/mcp/backend/tcp/index.d.ts +14 -0
- package/dist/mcp/backend/tcp/index.js +20 -0
- package/dist/mcp/backend/tcp/jobs.d.ts +44 -0
- package/dist/mcp/backend/tcp/jobs.js +122 -0
- package/dist/mcp/backend/tcp/queues.d.ts +27 -0
- package/dist/mcp/backend/tcp/queues.js +89 -0
- package/dist/mcp/backend/tcp/services.d.ts +30 -0
- package/dist/mcp/backend/tcp/services.js +161 -0
- package/dist/mcp/types/adapter.d.ts +176 -0
- package/dist/mcp/types/adapter.js +1 -0
- package/dist/shared/asyncLock.d.ts +13 -0
- package/dist/shared/asyncLock.js +65 -0
- package/dist/shared/lock.d.ts +10 -72
- package/dist/shared/lock.js +7 -231
- package/dist/shared/lockError.d.ts +3 -0
- package/dist/shared/lockError.js +6 -0
- package/dist/shared/lockTimeout.d.ts +2 -0
- package/dist/shared/lockTimeout.js +2 -0
- package/dist/shared/rwLock.d.ts +22 -0
- package/dist/shared/rwLock.js +124 -0
- package/dist/shared/serialization.js +1 -0
- package/dist/shared/skipList.d.ts +0 -5
- package/dist/shared/skipList.js +10 -57
- package/dist/shared/skipListNodes.d.ts +6 -0
- package/dist/shared/skipListNodes.js +43 -0
- package/dist/shared/types/lock.d.ts +7 -0
- package/dist/shared/types/lock.js +1 -0
- package/dist/shared/types/skipList.d.ts +4 -0
- package/dist/shared/types/skipList.js +1 -0
- package/package.json +2 -1
|
@@ -1,381 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import type { Job, JobId, JobInput, JobLock, LockToken } from '../domain/types/job';
|
|
6
|
-
import type { AtomicFlowBatchInput, AtomicFlowBatchResult } from '../domain/types/flow';
|
|
7
|
-
import type { JobLocation, JobEvent } from '../domain/types/queue';
|
|
8
|
-
import type { CronJob, CronJobInput } from '../domain/types/cron';
|
|
9
|
-
import type { JobLogEntry, CreateWorkerOptions } from '../domain/types/worker';
|
|
10
|
-
import { type StallConfig } from '../domain/types/stall';
|
|
11
|
-
import type { DlqConfig, DlqEntry, DlqFilter, DlqStats } from '../domain/types/dlq';
|
|
12
|
-
import { Shard } from '../domain/queue/shard';
|
|
13
|
-
import { WebhookManager } from './webhookManager';
|
|
14
|
-
import { WorkerManager } from './workerManager';
|
|
15
|
-
import { type OperationalMetrics } from './metricsExporter';
|
|
16
|
-
import { type SetLike } from '../shared/lru';
|
|
17
|
-
import type { QueueManagerConfig } from './types';
|
|
18
|
-
import * as statsMgr from './statsManager';
|
|
19
|
-
export type { QueueManagerConfig };
|
|
20
|
-
/**
|
|
21
|
-
* QueueManager - Central coordinator
|
|
22
|
-
*/
|
|
23
|
-
export declare class QueueManager {
|
|
24
|
-
private readonly config;
|
|
25
|
-
private readonly storage;
|
|
26
|
-
private readonly shards;
|
|
27
|
-
private readonly shardLocks;
|
|
28
|
-
private readonly customIdLock;
|
|
29
|
-
private readonly processingShards;
|
|
30
|
-
private readonly processingLocks;
|
|
31
|
-
private readonly jobIndex;
|
|
32
|
-
private readonly completedJobs;
|
|
33
|
-
private readonly completedJobsData;
|
|
34
|
-
private readonly depCompletions;
|
|
35
|
-
private readonly timedOutJobs;
|
|
36
|
-
private readonly jobResults;
|
|
37
|
-
private readonly dependencyResults;
|
|
38
|
-
private readonly customIdMap;
|
|
39
|
-
private readonly jobLogs;
|
|
40
|
-
private readonly pendingDepChecks;
|
|
41
|
-
private readonly stalledCandidates;
|
|
42
|
-
private depFlushScheduled;
|
|
43
|
-
private depFlushRunning;
|
|
44
|
-
private readonly jobLocks;
|
|
45
|
-
private readonly clientJobs;
|
|
46
|
-
private readonly repeatChain;
|
|
47
|
-
/** Stores failed children values for continueParentOnFailure — parentId → { childKey: error } */
|
|
48
|
-
private readonly failedChildrenValues;
|
|
49
|
-
/** Stores ignored children failures for ignoreDependencyOnFailure — parentId → { childKey: error } */
|
|
50
|
-
private readonly ignoredChildrenFailures;
|
|
51
|
-
private readonly cronScheduler;
|
|
52
|
-
readonly webhookManager: WebhookManager;
|
|
53
|
-
readonly workerManager: WorkerManager;
|
|
54
|
-
private readonly eventsManager;
|
|
55
|
-
private dashboardEmit;
|
|
56
|
-
private recoveryStats;
|
|
57
|
-
private readonly maxLogsPerJob;
|
|
58
|
-
private readonly metrics;
|
|
59
|
-
private operationalMetricsProvider;
|
|
60
|
-
private readonly perQueueMetrics;
|
|
61
|
-
private readonly startTime;
|
|
62
|
-
private readonly backgroundTaskHandles;
|
|
63
|
-
private readonly queueNamesCache;
|
|
64
|
-
private readonly monitoringState;
|
|
65
|
-
private readonly contextFactory;
|
|
66
|
-
constructor(config?: QueueManagerConfig);
|
|
67
|
-
private getContextDependencies;
|
|
68
|
-
private getContextCallbacks;
|
|
69
|
-
private handleRepeat;
|
|
70
|
-
push(queue: string, input: JobInput): Promise<Job>;
|
|
71
|
-
pushBatch(queue: string, inputs: JobInput[]): Promise<JobId[]>;
|
|
72
|
-
pushFlow(batch: AtomicFlowBatchInput): Promise<AtomicFlowBatchResult>;
|
|
73
|
-
pull(queue: string, timeoutMs?: number, signal?: AbortSignal): Promise<Job | null>;
|
|
74
|
-
pullWithLock(queue: string, owner: string, timeoutMs?: number, lockTtl?: number, signal?: AbortSignal): Promise<{
|
|
75
|
-
job: Job | null;
|
|
76
|
-
token: string | null;
|
|
77
|
-
}>;
|
|
78
|
-
pullBatch(queue: string, count: number, timeoutMs?: number, signal?: AbortSignal): Promise<Job[]>;
|
|
79
|
-
pullBatchWithLock(queue: string, count: number, owner: string, timeoutMs?: number, lockTtl?: number, signal?: AbortSignal): Promise<{
|
|
80
|
-
jobs: Job[];
|
|
81
|
-
tokens: string[];
|
|
82
|
-
}>;
|
|
83
|
-
ack(jobId: JobId, result?: unknown, token?: string): Promise<void>;
|
|
84
|
-
ackBatch(jobIds: JobId[], tokens?: string[]): Promise<void>;
|
|
85
|
-
ackBatchWithResults(items: Array<{
|
|
86
|
-
id: JobId;
|
|
87
|
-
result: unknown;
|
|
88
|
-
token?: string;
|
|
89
|
-
}>): Promise<void>;
|
|
90
|
-
fail(jobId: JobId, error?: string, token?: string, unrecoverable?: boolean, stack?: string[]): Promise<void>;
|
|
91
|
-
/**
|
|
92
|
-
* Check if a failed lock verification is a genuine ownership conflict.
|
|
93
|
-
* If the job is still in processing with a different lock, throw.
|
|
94
|
-
* If the job was already requeued by the background lock expiration task, return silently.
|
|
95
|
-
*/
|
|
96
|
-
private throwIfOwnershipConflict;
|
|
97
|
-
/**
|
|
98
|
-
* Issue #101 grace window: decide whether an ACK whose lock failed
|
|
99
|
-
* verification (because the TTL expired) should still be honored.
|
|
100
|
-
*
|
|
101
|
-
* Returns true ONLY when ALL hold:
|
|
102
|
-
* 1. the job is still in `processing`,
|
|
103
|
-
* 2. the lock entry's token still matches the presenting worker, and
|
|
104
|
-
* 3. the lock belongs to the CURRENT processing instance — its `createdAt`
|
|
105
|
-
* is not older than the job's `startedAt`.
|
|
106
|
-
*
|
|
107
|
-
* Condition 3 is the re-lease guard. A lock-expiry re-lease (checkExpiredLocks)
|
|
108
|
-
* deletes the stale lock, so a new lease installs a NEW token and condition 2
|
|
109
|
-
* already fails. But the STALL path (stallDetection retry/moveToDlq) requeues
|
|
110
|
-
* the job WITHOUT deleting the lock — the original (now-expired) lock lingers
|
|
111
|
-
* with the original token. If another worker then re-pulls the job, its
|
|
112
|
-
* `startedAt` is reset to a newer time than the lingering lock's `createdAt`,
|
|
113
|
-
* so condition 3 fails and the timed-out worker's late ack is rejected
|
|
114
|
-
* (preventing a double-completion the skeptic confirmed). In the genuine #101
|
|
115
|
-
* case — the same worker finishing just after its lock expired, no re-pull —
|
|
116
|
-
* `startedAt` is unchanged and `createdAt >= startedAt`, so the grace is granted
|
|
117
|
-
* and the successful completion is recorded instead of being lost to a stall.
|
|
118
|
-
*
|
|
119
|
-
* Without this, a successful completion arriving just after lock expiry is
|
|
120
|
-
* rejected as "Invalid or expired lock token", the client drops it, and the
|
|
121
|
-
* job stalls to `failed` despite having been processed correctly.
|
|
122
|
-
*/
|
|
123
|
-
private isExpiredButOwned;
|
|
124
|
-
/** Check if a queued job was stall-retried (has been processed before). */
|
|
125
|
-
private isStallRetried;
|
|
126
|
-
/**
|
|
127
|
-
* Complete a job that stall detection moved back to the queue while still processing.
|
|
128
|
-
* Removes from queue and marks completed to prevent duplicate execution (Issue #33).
|
|
129
|
-
*/
|
|
130
|
-
private completeStallRetriedJob;
|
|
131
|
-
jobHeartbeat(jobId: JobId, token?: string): boolean;
|
|
132
|
-
jobHeartbeatBatch(jobIds: JobId[], tokens?: string[]): number;
|
|
133
|
-
/** Remove a lock unconditionally (used by worker dedup to clear stale locks) */
|
|
134
|
-
removeLock(jobId: JobId): void;
|
|
135
|
-
createLock(jobId: JobId, owner: string, ttl?: number): LockToken | null;
|
|
136
|
-
verifyLock(jobId: JobId, token: string): boolean;
|
|
137
|
-
renewJobLock(jobId: JobId, token: string, newTtl?: number): boolean;
|
|
138
|
-
renewJobLockBatch(items: Array<{
|
|
139
|
-
id: JobId;
|
|
140
|
-
token: string;
|
|
141
|
-
ttl?: number;
|
|
142
|
-
}>): string[];
|
|
143
|
-
releaseLock(jobId: JobId, token?: string): boolean;
|
|
144
|
-
getLockInfo(jobId: JobId): JobLock | null;
|
|
145
|
-
registerClientJob(clientId: string, jobId: JobId): void;
|
|
146
|
-
unregisterClientJob(clientId: string | undefined, jobId: JobId): void;
|
|
147
|
-
releaseClientJobs(clientId: string): Promise<number>;
|
|
148
|
-
/**
|
|
149
|
-
* Force-release client tracking without acquiring queue locks. Last-resort
|
|
150
|
-
* fallback when releaseClientJobs has exhausted its retry budget — clears
|
|
151
|
-
* the clientJobs map entry to prevent leaks and resets job heartbeats so
|
|
152
|
-
* the stall detector recovers orphaned active jobs on its next tick.
|
|
153
|
-
*/
|
|
154
|
-
forceReleaseClientJobs(clientId: string): number;
|
|
155
|
-
getJob(jobId: JobId): Promise<Job | null>;
|
|
156
|
-
getJobState(jobId: JobId): Promise<string>;
|
|
157
|
-
getResult(jobId: JobId): unknown;
|
|
158
|
-
/**
|
|
159
|
-
* Get return values from all children of a parent job.
|
|
160
|
-
* Returns a Record where keys are job keys (queueName:jobId) and values are return values.
|
|
161
|
-
* BullMQ v5 compatible.
|
|
162
|
-
*/
|
|
163
|
-
getChildrenValues(parentJobId: JobId): Promise<Record<string, unknown>>;
|
|
164
|
-
/**
|
|
165
|
-
* Update a job's parent reference.
|
|
166
|
-
* Used by FlowProducer when creating flows where children need to reference parent.
|
|
167
|
-
*/
|
|
168
|
-
updateJobParent(childJobId: JobId, parentJobId: JobId): Promise<void>;
|
|
169
|
-
getJobByCustomId(customId: string): Job | null;
|
|
170
|
-
getProgress(jobId: JobId): {
|
|
171
|
-
progress: number;
|
|
172
|
-
message: string | null;
|
|
173
|
-
} | null;
|
|
174
|
-
count(queue: string): number;
|
|
175
|
-
pause(queue: string): void;
|
|
176
|
-
resume(queue: string): void;
|
|
177
|
-
isPaused(queue: string): boolean;
|
|
178
|
-
drain(queue: string): number;
|
|
179
|
-
obliterate(queue: string): void;
|
|
180
|
-
/**
|
|
181
|
-
* Drop per-queue metadata that obliterate is responsible for reclaiming:
|
|
182
|
-
* cumulative metrics (keyed by name, never self-expiring) and the persisted
|
|
183
|
-
* control-state row (#100 — so a stale pause/limit can't resurrect on the
|
|
184
|
-
* next restart).
|
|
185
|
-
*/
|
|
186
|
-
private purgeQueueMetadata;
|
|
187
|
-
listQueues(): string[];
|
|
188
|
-
private registerQueueName;
|
|
189
|
-
private unregisterQueueName;
|
|
190
|
-
private releaseCompletionPins;
|
|
191
|
-
private reconcileCompletionPins;
|
|
192
|
-
clean(queue: string, graceMs: number, state?: string, limit?: number): JobId[];
|
|
193
|
-
getCountsPerPriority(queue: string): Record<number, number>;
|
|
194
|
-
getJobs(queue: string, options?: {
|
|
195
|
-
state?: string | string[];
|
|
196
|
-
start?: number;
|
|
197
|
-
end?: number;
|
|
198
|
-
asc?: boolean;
|
|
199
|
-
}): Job[];
|
|
200
|
-
getDlq(queue: string, count?: number): Job[];
|
|
201
|
-
getDlqEntries(queue: string, filter?: DlqFilter): DlqEntry[];
|
|
202
|
-
getDlqCount(queue: string): number;
|
|
203
|
-
getDlqStats(queue: string): DlqStats;
|
|
204
|
-
retryDlq(queue: string, jobId?: JobId, limit?: number): number;
|
|
205
|
-
purgeDlq(queue: string): number;
|
|
206
|
-
retryCompleted(queue: string, jobId?: JobId): number;
|
|
207
|
-
setRateLimit(queue: string, limit: number, durationMs?: number, ttlMs?: number): void;
|
|
208
|
-
clearRateLimit(queue: string): void;
|
|
209
|
-
setConcurrency(queue: string, limit: number): void;
|
|
210
|
-
clearConcurrency(queue: string): void;
|
|
211
|
-
/**
|
|
212
|
-
* Issue #100: write-through the current control-state (paused / rate-limit /
|
|
213
|
-
* concurrency) to the `queue_state` table so it survives a server restart.
|
|
214
|
-
* Reads the post-mutation state from the owning shard and UPSERTs the row.
|
|
215
|
-
*/
|
|
216
|
-
private persistQueueState;
|
|
217
|
-
/** Get rate limit and concurrency limit for a queue */
|
|
218
|
-
getQueueLimits(queue: string): {
|
|
219
|
-
rateLimit: number | null;
|
|
220
|
-
concurrencyLimit: number | null;
|
|
221
|
-
};
|
|
222
|
-
/** Get all job results (for cloud telemetry) */
|
|
223
|
-
getAllJobResults(): Map<JobId, unknown>;
|
|
224
|
-
/** Get all job logs (for cloud telemetry) */
|
|
225
|
-
getAllJobLogs(): Map<JobId, JobLogEntry[]>;
|
|
226
|
-
/** Get all active job locks (for cloud telemetry) */
|
|
227
|
-
getAllJobLocks(): Map<JobId, JobLock>;
|
|
228
|
-
setStallConfig(queue: string, config: Record<string, unknown>): void;
|
|
229
|
-
getStallConfig(queue: string): StallConfig;
|
|
230
|
-
setDlqConfig(queue: string, config: Record<string, unknown>): void;
|
|
231
|
-
getDlqConfig(queue: string): DlqConfig;
|
|
232
|
-
/** Get extended telemetry data for cloud snapshot */
|
|
233
|
-
getCloudTelemetry(queueNames: string[]): {
|
|
234
|
-
perQueue: Record<string, {
|
|
235
|
-
uniqueKeys: number;
|
|
236
|
-
activeGroups: number;
|
|
237
|
-
waitingDeps: number;
|
|
238
|
-
waitingChildren: number;
|
|
239
|
-
}>;
|
|
240
|
-
eventSubscribers: number;
|
|
241
|
-
pendingDepChecks: number;
|
|
242
|
-
};
|
|
243
|
-
cancel(jobId: JobId): Promise<boolean>;
|
|
244
|
-
updateProgress(jobId: JobId, progress: number, message?: string): Promise<boolean>;
|
|
245
|
-
updateJobData(jobId: JobId, data: unknown): Promise<boolean>;
|
|
246
|
-
changePriority(jobId: JobId, priority: number, lifo?: boolean): Promise<boolean>;
|
|
247
|
-
promote(jobId: JobId): Promise<boolean>;
|
|
248
|
-
promoteJobs(queue: string, count?: number): Promise<number>;
|
|
249
|
-
moveToDelayed(jobId: JobId, delay: number): Promise<boolean>;
|
|
250
|
-
changeDelay(jobId: JobId, delay: number): Promise<boolean>;
|
|
251
|
-
moveActiveToWait(jobId: JobId): Promise<boolean>;
|
|
252
|
-
changeWaitingDelay(jobId: JobId, delay: number): Promise<boolean>;
|
|
253
|
-
moveToWaitingChildren(jobId: JobId): Promise<boolean>;
|
|
254
|
-
extendLock(jobId: JobId | string, token: string | null, duration: number): Promise<boolean>;
|
|
255
|
-
discard(jobId: JobId): Promise<boolean>;
|
|
256
|
-
addLog(jobId: JobId, message: string, level?: 'info' | 'warn' | 'error'): boolean;
|
|
257
|
-
getLogs(jobId: JobId): JobLogEntry[];
|
|
258
|
-
clearLogs(jobId: JobId, keepLogs?: number): void;
|
|
259
|
-
getPerQueueStats(): Map<string, statsMgr.PerQueueStats>;
|
|
260
|
-
getPrometheusMetrics(): string;
|
|
261
|
-
/** Attach metrics owned by server components outside the queue state machine. */
|
|
262
|
-
setOperationalMetricsProvider(provider: () => OperationalMetrics): void;
|
|
263
|
-
addCron(input: CronJobInput): CronJob;
|
|
264
|
-
/** Remove an orphaned cron job from the queue by its uniqueKey */
|
|
265
|
-
private removeOrphanedCronJob;
|
|
266
|
-
removeCron(name: string): boolean;
|
|
267
|
-
getCron(name: string): CronJob | undefined;
|
|
268
|
-
listCrons(): CronJob[];
|
|
269
|
-
/** Register dashboard event emitter (for WS pub/sub) */
|
|
270
|
-
setDashboardEmit(fn: (event: string, data: Record<string, unknown>) => void): void;
|
|
271
|
-
/** Emit a dashboard event (callable from handlers) */
|
|
272
|
-
emitDashboardEvent(event: string, data: Record<string, unknown>): void;
|
|
273
|
-
subscribe(callback: (event: JobEvent) => void): () => void;
|
|
274
|
-
waitForJobCompletion(jobId: JobId, timeoutMs: number): Promise<boolean>;
|
|
275
|
-
/** Register worker with dashboard event */
|
|
276
|
-
registerWorker(name: string, queues: string[], concurrency?: number, opts?: CreateWorkerOptions): import("../domain/types/worker").Worker;
|
|
277
|
-
/** Unregister worker with dashboard event */
|
|
278
|
-
unregisterWorker(workerId: string): boolean;
|
|
279
|
-
/** Unregister all workers associated with a TCP client ID */
|
|
280
|
-
unregisterWorkersByClientId(clientId: string): number;
|
|
281
|
-
getJobIndex(): Map<JobId, JobLocation>;
|
|
282
|
-
getCompletedJobs(): SetLike<JobId>;
|
|
283
|
-
getDepCompletions(): SetLike<JobId>;
|
|
284
|
-
getShards(): Shard[];
|
|
285
|
-
private onJobCompleted;
|
|
286
|
-
/** Release failure metadata owned by a parent that reached terminal failure. */
|
|
287
|
-
private onJobFailed;
|
|
288
|
-
/** Check if completing this job completes an entire flow */
|
|
289
|
-
private checkFlowCompleted;
|
|
290
|
-
/**
|
|
291
|
-
* BullMQ v5: failParentOnFailure — when a child terminally fails
|
|
292
|
-
* and has failParentOnFailure: true, also fail the parent job.
|
|
293
|
-
*/
|
|
294
|
-
private failParentOnChildFailure;
|
|
295
|
-
/** Move a parent job to DLQ/failed state because a child failed */
|
|
296
|
-
private moveParentToFailed;
|
|
297
|
-
/**
|
|
298
|
-
* Handle child dependency options: removeDependencyOnFailure, ignoreDependencyOnFailure, continueParentOnFailure
|
|
299
|
-
*/
|
|
300
|
-
private onChildDependencyOption;
|
|
301
|
-
/**
|
|
302
|
-
* continueParentOnFailure: move parent to queue when a child fails.
|
|
303
|
-
* Stores the failure info for getFailedChildrenValues().
|
|
304
|
-
*/
|
|
305
|
-
private continueParentOnChildFailure;
|
|
306
|
-
/**
|
|
307
|
-
* Move a flow parent from its waiting state into the run queue after a child failure
|
|
308
|
-
* (continueParentOnFailure / last-dependency resolution). Deferred to the next tick
|
|
309
|
-
* so the failed child's worker batch drains first — the parent is then picked up on
|
|
310
|
-
* a subsequent poll rather than racing to completion in the same synchronous cascade.
|
|
311
|
-
*/
|
|
312
|
-
private promoteParentAfterChildFailure;
|
|
313
|
-
/**
|
|
314
|
-
* removeDependencyOnFailure / ignoreDependencyOnFailure:
|
|
315
|
-
* Remove child from parent's pending deps. If last dep, promote parent.
|
|
316
|
-
* If ignoreDependencyOnFailure, also store failure reason.
|
|
317
|
-
*/
|
|
318
|
-
private removeChildFromParentDeps;
|
|
319
|
-
/**
|
|
320
|
-
* Get failed children values for a parent job (populated by continueParentOnFailure).
|
|
321
|
-
*/
|
|
322
|
-
getFailedChildrenValues(parentJobId: JobId): Promise<Record<string, string>>;
|
|
323
|
-
/**
|
|
324
|
-
* Get ignored children failures for a parent job (populated by ignoreDependencyOnFailure).
|
|
325
|
-
*/
|
|
326
|
-
getIgnoredChildrenFailures(parentJobId: JobId): Promise<Record<string, string>>;
|
|
327
|
-
/**
|
|
328
|
-
* Remove a child job's dependency from its parent.
|
|
329
|
-
* If this was the last pending child, promotes parent to queue.
|
|
330
|
-
* Throws if the job has no parent.
|
|
331
|
-
*/
|
|
332
|
-
removeChildDependency(childJobId: JobId): Promise<boolean>;
|
|
333
|
-
/**
|
|
334
|
-
* Remove all unprocessed (waiting/delayed) children of a parent job.
|
|
335
|
-
* Active, completed, and failed children are not affected.
|
|
336
|
-
*/
|
|
337
|
-
removeUnprocessedChildren(parentJobId: JobId): Promise<void>;
|
|
338
|
-
private onJobsCompleted;
|
|
339
|
-
/**
|
|
340
|
-
* Schedule dependency flush on next microtask.
|
|
341
|
-
* Coalesces multiple onJobCompleted calls in the same tick.
|
|
342
|
-
*/
|
|
343
|
-
private scheduleDependencyFlush;
|
|
344
|
-
/**
|
|
345
|
-
* Run dependency flush with reentrancy loop.
|
|
346
|
-
* The while-loop handles new completions arriving during async lock waits.
|
|
347
|
-
*/
|
|
348
|
-
private runDependencyFlush;
|
|
349
|
-
private hasPendingDeps;
|
|
350
|
-
getStats(): statsMgr.QueueStats;
|
|
351
|
-
/** Get summary of all queues: name, paused, counts */
|
|
352
|
-
getQueuesSummary(): Array<{
|
|
353
|
-
name: string;
|
|
354
|
-
paused: boolean;
|
|
355
|
-
counts: {
|
|
356
|
-
waiting: number;
|
|
357
|
-
prioritized: number;
|
|
358
|
-
active: number;
|
|
359
|
-
completed: number;
|
|
360
|
-
failed: number;
|
|
361
|
-
delayed: number;
|
|
362
|
-
};
|
|
363
|
-
}>;
|
|
364
|
-
/** Get counts for every registered queue with one global aggregation pass. */
|
|
365
|
-
getAllQueueJobCounts(): Map<string, statsMgr.QueueJobCounts>;
|
|
366
|
-
/** Aggregate a selected group of queues without repeating global scans. */
|
|
367
|
-
getQueueJobCountsBatch(queueNames: Iterable<string>): Map<string, statsMgr.QueueJobCounts>;
|
|
368
|
-
/** Get job counts for a specific queue */
|
|
369
|
-
getQueueJobCounts(queueName: string): statsMgr.QueueJobCounts;
|
|
370
|
-
getMemoryStats(): statsMgr.MemoryStats;
|
|
371
|
-
/** Get storage health status (disk full detection) */
|
|
372
|
-
getStorageStatus(): {
|
|
373
|
-
diskFull: boolean;
|
|
374
|
-
error: string | null;
|
|
375
|
-
since: number | null;
|
|
376
|
-
};
|
|
377
|
-
/** Persist pending buffered writes before an external SQLite snapshot. */
|
|
378
|
-
flushPersistence(): number;
|
|
379
|
-
compactMemory(): void;
|
|
380
|
-
shutdown(): void;
|
|
1
|
+
/** Public QueueManager façade. Implementation lives in queue-manager/. */
|
|
2
|
+
import { QueueManagerLifecycle } from './queue-manager/lifecycle';
|
|
3
|
+
export type { QueueManagerConfig } from './types';
|
|
4
|
+
export declare class QueueManager extends QueueManagerLifecycle {
|
|
381
5
|
}
|