bunqueue 2.8.0 → 2.8.2
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/README.md +44 -11
- package/dist/application/backgroundTasks.d.ts +0 -1
- package/dist/application/backgroundTasks.js +83 -1
- package/dist/application/cleanupTasks.d.ts +0 -1
- package/dist/application/cleanupTasks.js +0 -1
- package/dist/application/clientTracking.d.ts +23 -1
- package/dist/application/clientTracking.js +80 -26
- package/dist/application/contextFactory.d.ts +6 -1
- package/dist/application/contextFactory.js +7 -1
- package/dist/application/dependencyProcessor.d.ts +0 -1
- package/dist/application/dependencyProcessor.js +0 -1
- package/dist/application/dlqManager.d.ts +0 -1
- package/dist/application/dlqManager.js +5 -1
- package/dist/application/eventsManager.d.ts +0 -1
- package/dist/application/eventsManager.js +0 -1
- package/dist/application/jobLogsManager.d.ts +0 -1
- package/dist/application/jobLogsManager.js +0 -1
- package/dist/application/latencyTracker.d.ts +0 -1
- package/dist/application/latencyTracker.js +0 -1
- package/dist/application/lockManager.d.ts +1 -2
- package/dist/application/lockManager.js +1 -2
- package/dist/application/lockOperations.d.ts +0 -1
- package/dist/application/lockOperations.js +0 -1
- package/dist/application/metricsExporter.d.ts +0 -1
- package/dist/application/metricsExporter.js +0 -1
- package/dist/application/monitoringChecks.d.ts +0 -1
- package/dist/application/monitoringChecks.js +0 -1
- package/dist/application/operations/ack.d.ts +0 -1
- package/dist/application/operations/ack.js +32 -34
- package/dist/application/operations/ackHelpers.d.ts +0 -1
- package/dist/application/operations/ackHelpers.js +0 -1
- package/dist/application/operations/index.d.ts +0 -1
- package/dist/application/operations/index.js +0 -1
- package/dist/application/operations/jobManagement.d.ts +1 -2
- package/dist/application/operations/jobManagement.js +3 -3
- package/dist/application/operations/jobStateTransitions.d.ts +0 -1
- package/dist/application/operations/jobStateTransitions.js +0 -1
- package/dist/application/operations/pull.d.ts +0 -1
- package/dist/application/operations/pull.js +0 -1
- package/dist/application/operations/push.d.ts +0 -1
- package/dist/application/operations/push.js +0 -1
- package/dist/application/operations/queryOperations.d.ts +0 -1
- package/dist/application/operations/queryOperations.js +37 -4
- package/dist/application/operations/queueControl.d.ts +16 -5
- package/dist/application/operations/queueControl.js +119 -24
- package/dist/application/queueManager.d.ts +17 -4
- package/dist/application/queueManager.js +106 -28
- package/dist/application/stallDetection.d.ts +0 -1
- package/dist/application/stallDetection.js +1 -1
- package/dist/application/statsManager.d.ts +0 -1
- package/dist/application/statsManager.js +0 -1
- package/dist/application/taskErrorTracking.d.ts +0 -1
- package/dist/application/taskErrorTracking.js +0 -1
- package/dist/application/throughputTracker.d.ts +0 -1
- package/dist/application/throughputTracker.js +0 -1
- package/dist/application/types.d.ts +2 -2
- package/dist/application/types.js +0 -1
- package/dist/application/webhookManager.d.ts +0 -1
- package/dist/application/webhookManager.js +0 -1
- package/dist/application/workerManager.d.ts +0 -1
- package/dist/application/workerManager.js +0 -1
- package/dist/cli/client.d.ts +0 -1
- package/dist/cli/client.js +15 -3
- package/dist/cli/commands/backup.d.ts +0 -1
- package/dist/cli/commands/backup.js +0 -1
- package/dist/cli/commands/core.d.ts +0 -1
- package/dist/cli/commands/core.js +0 -1
- package/dist/cli/commands/cron.d.ts +0 -1
- package/dist/cli/commands/cron.js +0 -1
- package/dist/cli/commands/dlq.d.ts +0 -1
- package/dist/cli/commands/dlq.js +0 -1
- package/dist/cli/commands/doctor.d.ts +0 -1
- package/dist/cli/commands/doctor.js +0 -1
- package/dist/cli/commands/job.d.ts +0 -1
- package/dist/cli/commands/job.js +0 -1
- package/dist/cli/commands/monitor.d.ts +0 -1
- package/dist/cli/commands/monitor.js +0 -1
- package/dist/cli/commands/queue.d.ts +0 -1
- package/dist/cli/commands/queue.js +0 -1
- package/dist/cli/commands/rateLimit.d.ts +0 -1
- package/dist/cli/commands/rateLimit.js +0 -1
- package/dist/cli/commands/server.d.ts +0 -1
- package/dist/cli/commands/server.js +0 -1
- package/dist/cli/commands/types.d.ts +0 -1
- package/dist/cli/commands/types.js +0 -1
- package/dist/cli/commands/webhook.d.ts +0 -1
- package/dist/cli/commands/webhook.js +0 -1
- package/dist/cli/commands/worker.d.ts +0 -1
- package/dist/cli/commands/worker.js +0 -1
- package/dist/cli/help.d.ts +0 -1
- package/dist/cli/help.js +0 -1
- package/dist/cli/index.d.ts +0 -1
- package/dist/cli/index.js +31 -3
- package/dist/cli/output.d.ts +1 -2
- package/dist/cli/output.js +71 -10
- package/dist/client/bunqueue/aging.d.ts +0 -1
- package/dist/client/bunqueue/aging.js +0 -1
- package/dist/client/bunqueue/batch.d.ts +0 -1
- package/dist/client/bunqueue/batch.js +2 -3
- package/dist/client/bunqueue/cancellation.d.ts +0 -1
- package/dist/client/bunqueue/cancellation.js +0 -1
- package/dist/client/bunqueue/circuitBreaker.d.ts +0 -1
- package/dist/client/bunqueue/circuitBreaker.js +0 -1
- package/dist/client/bunqueue/dedupDebounce.d.ts +0 -1
- package/dist/client/bunqueue/dedupDebounce.js +0 -1
- package/dist/client/bunqueue/dlqRateLimit.d.ts +0 -1
- package/dist/client/bunqueue/dlqRateLimit.js +0 -1
- package/dist/client/bunqueue/retry.d.ts +0 -1
- package/dist/client/bunqueue/retry.js +0 -1
- package/dist/client/bunqueue/triggers.d.ts +0 -1
- package/dist/client/bunqueue/triggers.js +0 -1
- package/dist/client/bunqueue/ttl.d.ts +0 -1
- package/dist/client/bunqueue/ttl.js +0 -1
- package/dist/client/bunqueue/types.d.ts +0 -1
- package/dist/client/bunqueue/types.js +0 -1
- package/dist/client/bunqueue.d.ts +0 -1
- package/dist/client/bunqueue.js +3 -4
- package/dist/client/errors.d.ts +0 -1
- package/dist/client/errors.js +0 -1
- package/dist/client/events.d.ts +0 -1
- package/dist/client/events.js +0 -1
- package/dist/client/flow.d.ts +0 -1
- package/dist/client/flow.js +3 -2
- package/dist/client/flowJobFactory.d.ts +8 -2
- package/dist/client/flowJobFactory.js +328 -57
- package/dist/client/flowPush.d.ts +0 -1
- package/dist/client/flowPush.js +95 -47
- package/dist/client/flowTypes.d.ts +0 -1
- package/dist/client/flowTypes.js +0 -1
- package/dist/client/index.d.ts +0 -1
- package/dist/client/index.js +0 -1
- package/dist/client/jobConversion.d.ts +0 -1
- package/dist/client/jobConversion.js +12 -5
- package/dist/client/jobConversionHelpers.d.ts +0 -1
- package/dist/client/jobConversionHelpers.js +0 -1
- package/dist/client/jobConversionTypes.d.ts +0 -1
- package/dist/client/jobConversionTypes.js +0 -1
- package/dist/client/jobHelpers.d.ts +0 -1
- package/dist/client/jobHelpers.js +0 -1
- package/dist/client/manager.d.ts +0 -1
- package/dist/client/manager.js +0 -1
- package/dist/client/queue/addBatcher.d.ts +0 -1
- package/dist/client/queue/addBatcher.js +0 -1
- package/dist/client/queue/bullmqCompat.d.ts +1 -1
- package/dist/client/queue/bullmqCompat.js +0 -1
- package/dist/client/queue/deduplication.d.ts +0 -1
- package/dist/client/queue/deduplication.js +0 -1
- package/dist/client/queue/dlq.d.ts +0 -1
- package/dist/client/queue/dlq.js +0 -1
- package/dist/client/queue/dlqOps.d.ts +0 -1
- package/dist/client/queue/dlqOps.js +0 -1
- package/dist/client/queue/helpers.d.ts +0 -1
- package/dist/client/queue/helpers.js +0 -1
- package/dist/client/queue/index.d.ts +0 -1
- package/dist/client/queue/index.js +0 -1
- package/dist/client/queue/jobMove.d.ts +0 -1
- package/dist/client/queue/jobMove.js +0 -1
- package/dist/client/queue/jobProxy.d.ts +22 -4
- package/dist/client/queue/jobProxy.js +347 -67
- package/dist/client/queue/operations/add.d.ts +1 -1
- package/dist/client/queue/operations/add.js +126 -30
- package/dist/client/queue/operations/control.d.ts +0 -1
- package/dist/client/queue/operations/control.js +0 -1
- package/dist/client/queue/operations/counts.d.ts +0 -1
- package/dist/client/queue/operations/counts.js +0 -1
- package/dist/client/queue/operations/index.d.ts +0 -1
- package/dist/client/queue/operations/index.js +0 -1
- package/dist/client/queue/operations/management.d.ts +1 -2
- package/dist/client/queue/operations/management.js +27 -10
- package/dist/client/queue/operations/query.d.ts +12 -1
- package/dist/client/queue/operations/query.js +44 -5
- package/dist/client/queue/queue.d.ts +0 -1
- package/dist/client/queue/queue.js +8 -2
- package/dist/client/queue/queueTypes.d.ts +0 -1
- package/dist/client/queue/queueTypes.js +0 -1
- package/dist/client/queue/rateLimit.d.ts +0 -1
- package/dist/client/queue/rateLimit.js +0 -1
- package/dist/client/queue/scheduler.d.ts +2 -1
- package/dist/client/queue/scheduler.js +28 -1
- package/dist/client/queue/stall.d.ts +0 -1
- package/dist/client/queue/stall.js +0 -1
- package/dist/client/queue/workers.d.ts +0 -1
- package/dist/client/queue/workers.js +0 -1
- package/dist/client/queue.d.ts +0 -1
- package/dist/client/queue.js +0 -1
- package/dist/client/queueGroup.d.ts +0 -1
- package/dist/client/queueGroup.js +0 -1
- package/dist/client/resolveToken.d.ts +0 -1
- package/dist/client/resolveToken.js +0 -1
- package/dist/client/sandboxed/index.d.ts +0 -1
- package/dist/client/sandboxed/index.js +0 -1
- package/dist/client/sandboxed/queueOps.d.ts +0 -1
- package/dist/client/sandboxed/queueOps.js +0 -1
- package/dist/client/sandboxed/types.d.ts +0 -1
- package/dist/client/sandboxed/types.js +0 -1
- package/dist/client/sandboxed/worker.d.ts +0 -1
- package/dist/client/sandboxed/worker.js +57 -16
- package/dist/client/sandboxed/wrapper.d.ts +0 -1
- package/dist/client/sandboxed/wrapper.js +62 -11
- package/dist/client/sandboxedWorker.d.ts +0 -1
- package/dist/client/sandboxedWorker.js +0 -1
- package/dist/client/tcp/client.d.ts +9 -1
- package/dist/client/tcp/client.js +84 -29
- package/dist/client/tcp/connection.d.ts +0 -1
- package/dist/client/tcp/connection.js +6 -2
- package/dist/client/tcp/health.d.ts +0 -1
- package/dist/client/tcp/health.js +0 -1
- package/dist/client/tcp/index.d.ts +0 -1
- package/dist/client/tcp/index.js +0 -1
- package/dist/client/tcp/reconnect.d.ts +0 -1
- package/dist/client/tcp/reconnect.js +0 -1
- package/dist/client/tcp/shared.d.ts +0 -1
- package/dist/client/tcp/shared.js +0 -1
- package/dist/client/tcp/types.d.ts +7 -1
- package/dist/client/tcp/types.js +0 -1
- package/dist/client/tcpClient.d.ts +0 -1
- package/dist/client/tcpClient.js +0 -1
- package/dist/client/tcpPool.d.ts +0 -1
- package/dist/client/tcpPool.js +0 -1
- package/dist/client/types.d.ts +8 -5
- package/dist/client/types.js +0 -1
- package/dist/client/worker/ackBatcher.d.ts +0 -1
- package/dist/client/worker/ackBatcher.js +18 -9
- package/dist/client/worker/groupConcurrency.d.ts +0 -1
- package/dist/client/worker/groupConcurrency.js +0 -1
- package/dist/client/worker/index.d.ts +0 -1
- package/dist/client/worker/index.js +0 -1
- package/dist/client/worker/jobParser.d.ts +0 -1
- package/dist/client/worker/jobParser.js +0 -1
- package/dist/client/worker/processor.d.ts +0 -1
- package/dist/client/worker/processor.js +54 -100
- package/dist/client/worker/processorHandlers.d.ts +54 -0
- package/dist/client/worker/processorHandlers.js +372 -0
- package/dist/client/worker/types.d.ts +0 -1
- package/dist/client/worker/types.js +0 -1
- package/dist/client/worker/worker.d.ts +0 -1
- package/dist/client/worker/worker.js +0 -1
- package/dist/client/worker/workerHeartbeat.d.ts +0 -1
- package/dist/client/worker/workerHeartbeat.js +0 -1
- package/dist/client/worker/workerPull.d.ts +0 -1
- package/dist/client/worker/workerPull.js +0 -1
- package/dist/client/worker/workerRateLimiter.d.ts +0 -1
- package/dist/client/worker/workerRateLimiter.js +0 -1
- package/dist/client/worker.d.ts +0 -1
- package/dist/client/worker.js +0 -1
- package/dist/client/workflow/compensator.d.ts +14 -0
- package/dist/client/workflow/compensator.js +45 -0
- package/dist/client/workflow/emitter.d.ts +0 -1
- package/dist/client/workflow/emitter.js +15 -4
- package/dist/client/workflow/engine.d.ts +8 -2
- package/dist/client/workflow/engine.js +9 -1
- package/dist/client/workflow/executor.d.ts +5 -3
- package/dist/client/workflow/executor.js +43 -61
- package/dist/client/workflow/index.d.ts +1 -2
- package/dist/client/workflow/index.js +0 -1
- package/dist/client/workflow/loops.d.ts +1 -2
- package/dist/client/workflow/loops.js +10 -2
- package/dist/client/workflow/recovery.d.ts +22 -0
- package/dist/client/workflow/recovery.js +73 -0
- package/dist/client/workflow/runner.d.ts +0 -1
- package/dist/client/workflow/runner.js +7 -6
- package/dist/client/workflow/store.d.ts +2 -1
- package/dist/client/workflow/store.js +6 -1
- package/dist/client/workflow/types.d.ts +41 -23
- package/dist/client/workflow/types.js +0 -1
- package/dist/client/workflow/workflow.d.ts +17 -15
- package/dist/client/workflow/workflow.js +30 -21
- package/dist/config/index.d.ts +0 -1
- package/dist/config/index.js +0 -1
- package/dist/config/loader.d.ts +0 -1
- package/dist/config/loader.js +0 -1
- package/dist/config/resolve.d.ts +0 -1
- package/dist/config/resolve.js +0 -1
- package/dist/config/types.d.ts +0 -1
- package/dist/config/types.js +0 -1
- package/dist/domain/queue/dependencyTracker.d.ts +0 -1
- package/dist/domain/queue/dependencyTracker.js +0 -1
- package/dist/domain/queue/dlqShard.d.ts +0 -1
- package/dist/domain/queue/dlqShard.js +6 -1
- package/dist/domain/queue/index.d.ts +0 -1
- package/dist/domain/queue/index.js +0 -1
- package/dist/domain/queue/limiterManager.d.ts +0 -1
- package/dist/domain/queue/limiterManager.js +0 -1
- package/dist/domain/queue/priorityQueue.d.ts +2 -3
- package/dist/domain/queue/priorityQueue.js +5 -4
- package/dist/domain/queue/shard.d.ts +0 -1
- package/dist/domain/queue/shard.js +0 -1
- package/dist/domain/queue/shardCounters.d.ts +0 -1
- package/dist/domain/queue/shardCounters.js +0 -1
- package/dist/domain/queue/temporalManager.d.ts +0 -1
- package/dist/domain/queue/temporalManager.js +0 -1
- package/dist/domain/queue/uniqueKeyManager.d.ts +0 -1
- package/dist/domain/queue/uniqueKeyManager.js +0 -1
- package/dist/domain/queue/waiterManager.d.ts +0 -1
- package/dist/domain/queue/waiterManager.js +0 -1
- package/dist/domain/types/command.d.ts +22 -1
- package/dist/domain/types/command.js +0 -1
- package/dist/domain/types/cron.d.ts +21 -1
- package/dist/domain/types/cron.js +1 -1
- package/dist/domain/types/deduplication.d.ts +0 -1
- package/dist/domain/types/deduplication.js +0 -1
- package/dist/domain/types/dlq.d.ts +0 -1
- package/dist/domain/types/dlq.js +0 -1
- package/dist/domain/types/index.d.ts +0 -1
- package/dist/domain/types/index.js +0 -1
- package/dist/domain/types/job.d.ts +0 -1
- package/dist/domain/types/job.js +9 -3
- package/dist/domain/types/queue.d.ts +0 -1
- package/dist/domain/types/queue.js +0 -1
- package/dist/domain/types/response.d.ts +2 -1
- package/dist/domain/types/response.js +0 -1
- package/dist/domain/types/stall.d.ts +0 -1
- package/dist/domain/types/stall.js +0 -1
- package/dist/domain/types/webhook.d.ts +0 -1
- package/dist/domain/types/webhook.js +0 -1
- package/dist/domain/types/worker.d.ts +0 -1
- package/dist/domain/types/worker.js +0 -1
- package/dist/infrastructure/backup/index.d.ts +0 -1
- package/dist/infrastructure/backup/index.js +0 -1
- package/dist/infrastructure/backup/s3Backup.d.ts +0 -1
- package/dist/infrastructure/backup/s3Backup.js +0 -1
- package/dist/infrastructure/backup/s3BackupConfig.d.ts +0 -1
- package/dist/infrastructure/backup/s3BackupConfig.js +0 -1
- package/dist/infrastructure/backup/s3BackupOperations.d.ts +0 -1
- package/dist/infrastructure/backup/s3BackupOperations.js +44 -7
- package/dist/infrastructure/cloud/buffer.d.ts +0 -1
- package/dist/infrastructure/cloud/buffer.js +0 -1
- package/dist/infrastructure/cloud/circuitBreaker.d.ts +0 -1
- package/dist/infrastructure/cloud/circuitBreaker.js +0 -1
- package/dist/infrastructure/cloud/cloudAgent.d.ts +1 -2
- package/dist/infrastructure/cloud/cloudAgent.js +9 -12
- package/dist/infrastructure/cloud/commandHandler.d.ts +0 -1
- package/dist/infrastructure/cloud/commandHandler.js +0 -1
- package/dist/infrastructure/cloud/commands.d.ts +0 -1
- package/dist/infrastructure/cloud/commands.js +2 -3
- package/dist/infrastructure/cloud/config.d.ts +0 -1
- package/dist/infrastructure/cloud/config.js +0 -1
- package/dist/infrastructure/cloud/httpSender.d.ts +0 -1
- package/dist/infrastructure/cloud/httpSender.js +0 -1
- package/dist/infrastructure/cloud/index.d.ts +0 -1
- package/dist/infrastructure/cloud/index.js +0 -1
- package/dist/infrastructure/cloud/logger.d.ts +0 -1
- package/dist/infrastructure/cloud/logger.js +0 -1
- package/dist/infrastructure/cloud/redact.d.ts +10 -0
- package/dist/infrastructure/cloud/redact.js +21 -0
- package/dist/infrastructure/cloud/snapshotCollector.d.ts +4 -1
- package/dist/infrastructure/cloud/snapshotCollector.js +32 -18
- package/dist/infrastructure/cloud/snapshotHelpers.d.ts +9 -3
- package/dist/infrastructure/cloud/snapshotHelpers.js +10 -9
- package/dist/infrastructure/cloud/statsRefresh.d.ts +0 -1
- package/dist/infrastructure/cloud/statsRefresh.js +0 -1
- package/dist/infrastructure/cloud/statsUpdate.d.ts +0 -1
- package/dist/infrastructure/cloud/statsUpdate.js +0 -1
- package/dist/infrastructure/cloud/types.d.ts +0 -1
- package/dist/infrastructure/cloud/types.js +0 -1
- package/dist/infrastructure/cloud/wsSender.d.ts +0 -1
- package/dist/infrastructure/cloud/wsSender.js +0 -1
- package/dist/infrastructure/persistence/index.d.ts +0 -1
- package/dist/infrastructure/persistence/index.js +0 -1
- package/dist/infrastructure/persistence/schema.d.ts +2 -3
- package/dist/infrastructure/persistence/schema.js +16 -3
- package/dist/infrastructure/persistence/sqlite.d.ts +54 -2
- package/dist/infrastructure/persistence/sqlite.js +174 -3
- package/dist/infrastructure/persistence/sqliteBatch.d.ts +14 -1
- package/dist/infrastructure/persistence/sqliteBatch.js +29 -1
- package/dist/infrastructure/persistence/sqliteSerializer.d.ts +16 -1
- package/dist/infrastructure/persistence/sqliteSerializer.js +73 -9
- package/dist/infrastructure/persistence/statements.d.ts +2 -2
- package/dist/infrastructure/persistence/statements.js +3 -3
- package/dist/infrastructure/scheduler/cronParser.d.ts +0 -1
- package/dist/infrastructure/scheduler/cronParser.js +0 -1
- package/dist/infrastructure/scheduler/cronScheduler.d.ts +0 -1
- package/dist/infrastructure/scheduler/cronScheduler.js +19 -2
- package/dist/infrastructure/scheduler/index.d.ts +0 -1
- package/dist/infrastructure/scheduler/index.js +0 -1
- package/dist/infrastructure/server/handler.d.ts +0 -1
- package/dist/infrastructure/server/handler.js +0 -1
- package/dist/infrastructure/server/handlerRoutes.d.ts +0 -1
- package/dist/infrastructure/server/handlerRoutes.js +0 -1
- package/dist/infrastructure/server/handlers/advanced.d.ts +7 -2
- package/dist/infrastructure/server/handlers/advanced.js +41 -11
- package/dist/infrastructure/server/handlers/core.d.ts +0 -1
- package/dist/infrastructure/server/handlers/core.js +8 -1
- package/dist/infrastructure/server/handlers/cron.d.ts +0 -1
- package/dist/infrastructure/server/handlers/cron.js +1 -1
- package/dist/infrastructure/server/handlers/dashboard.d.ts +0 -1
- package/dist/infrastructure/server/handlers/dashboard.js +1 -1
- package/dist/infrastructure/server/handlers/dlq.d.ts +0 -1
- package/dist/infrastructure/server/handlers/dlq.js +0 -1
- package/dist/infrastructure/server/handlers/index.d.ts +0 -1
- package/dist/infrastructure/server/handlers/index.js +0 -1
- package/dist/infrastructure/server/handlers/management.d.ts +1 -2
- package/dist/infrastructure/server/handlers/management.js +27 -13
- package/dist/infrastructure/server/handlers/monitoring.d.ts +0 -1
- package/dist/infrastructure/server/handlers/monitoring.js +0 -1
- package/dist/infrastructure/server/handlers/query.d.ts +0 -1
- package/dist/infrastructure/server/handlers/query.js +0 -1
- package/dist/infrastructure/server/http.d.ts +0 -1
- package/dist/infrastructure/server/http.js +0 -1
- package/dist/infrastructure/server/httpEndpoints.d.ts +0 -1
- package/dist/infrastructure/server/httpEndpoints.js +0 -1
- package/dist/infrastructure/server/httpRouteJobs.d.ts +0 -1
- package/dist/infrastructure/server/httpRouteJobs.js +0 -1
- package/dist/infrastructure/server/httpRouteQueueConfig.d.ts +0 -1
- package/dist/infrastructure/server/httpRouteQueueConfig.js +0 -1
- package/dist/infrastructure/server/httpRouteQueues.d.ts +0 -1
- package/dist/infrastructure/server/httpRouteQueues.js +0 -1
- package/dist/infrastructure/server/httpRouteResources.d.ts +0 -1
- package/dist/infrastructure/server/httpRouteResources.js +0 -1
- package/dist/infrastructure/server/index.d.ts +0 -1
- package/dist/infrastructure/server/index.js +0 -1
- package/dist/infrastructure/server/protocol.d.ts +4 -1
- package/dist/infrastructure/server/protocol.js +17 -3
- package/dist/infrastructure/server/rateLimiter.d.ts +0 -1
- package/dist/infrastructure/server/rateLimiter.js +0 -1
- package/dist/infrastructure/server/socketWriteQueue.d.ts +66 -0
- package/dist/infrastructure/server/socketWriteQueue.js +126 -0
- package/dist/infrastructure/server/sseHandler.d.ts +0 -1
- package/dist/infrastructure/server/sseHandler.js +0 -1
- package/dist/infrastructure/server/tcp.d.ts +17 -1
- package/dist/infrastructure/server/tcp.js +112 -15
- package/dist/infrastructure/server/types.d.ts +0 -1
- package/dist/infrastructure/server/types.js +0 -1
- package/dist/infrastructure/server/wsHandler.d.ts +0 -1
- package/dist/infrastructure/server/wsHandler.js +0 -1
- package/dist/main.d.ts +0 -1
- package/dist/main.js +48 -44
- package/dist/mcp/adapter.d.ts +3 -4
- package/dist/mcp/adapter.js +48 -16
- package/dist/mcp/httpHandler.d.ts +0 -1
- package/dist/mcp/httpHandler.js +0 -1
- package/dist/mcp/index.d.ts +3 -4
- package/dist/mcp/index.js +26 -90
- package/dist/mcp/prompts.d.ts +0 -1
- package/dist/mcp/prompts.js +0 -1
- package/dist/mcp/resources.d.ts +0 -1
- package/dist/mcp/resources.js +0 -1
- package/dist/mcp/server.d.ts +15 -0
- package/dist/mcp/server.js +100 -0
- package/dist/mcp/tools/consumptionTools.d.ts +0 -1
- package/dist/mcp/tools/consumptionTools.js +0 -1
- package/dist/mcp/tools/cronTools.d.ts +0 -1
- package/dist/mcp/tools/cronTools.js +0 -1
- package/dist/mcp/tools/dlqTools.d.ts +0 -1
- package/dist/mcp/tools/dlqTools.js +0 -1
- package/dist/mcp/tools/flowTools.d.ts +0 -1
- package/dist/mcp/tools/flowTools.js +0 -1
- package/dist/mcp/tools/handlerTools.d.ts +0 -1
- package/dist/mcp/tools/handlerTools.js +0 -1
- package/dist/mcp/tools/jobMgmtTools.d.ts +0 -1
- package/dist/mcp/tools/jobMgmtTools.js +0 -1
- package/dist/mcp/tools/jobTools.d.ts +0 -1
- package/dist/mcp/tools/jobTools.js +0 -1
- package/dist/mcp/tools/mcpTracker.d.ts +0 -1
- package/dist/mcp/tools/mcpTracker.js +0 -1
- package/dist/mcp/tools/monitoringTools.d.ts +0 -1
- package/dist/mcp/tools/monitoringTools.js +0 -1
- package/dist/mcp/tools/queueTools.d.ts +0 -1
- package/dist/mcp/tools/queueTools.js +6 -4
- package/dist/mcp/tools/rateLimitTools.d.ts +0 -1
- package/dist/mcp/tools/rateLimitTools.js +0 -1
- package/dist/mcp/tools/webhookTools.d.ts +0 -1
- package/dist/mcp/tools/webhookTools.js +1 -2
- package/dist/mcp/tools/withErrorHandler.d.ts +0 -1
- package/dist/mcp/tools/withErrorHandler.js +0 -1
- package/dist/mcp/tools/workerMgmtTools.d.ts +0 -1
- package/dist/mcp/tools/workerMgmtTools.js +0 -1
- package/dist/shared/boundedMap.d.ts +0 -1
- package/dist/shared/boundedMap.js +0 -1
- package/dist/shared/boundedSet.d.ts +0 -1
- package/dist/shared/boundedSet.js +0 -1
- package/dist/shared/hash.d.ts +0 -1
- package/dist/shared/hash.js +0 -1
- package/dist/shared/histogram.d.ts +0 -1
- package/dist/shared/histogram.js +0 -1
- package/dist/shared/index.d.ts +0 -1
- package/dist/shared/index.js +0 -1
- package/dist/shared/lock.d.ts +0 -1
- package/dist/shared/lock.js +15 -1
- package/dist/shared/logger.d.ts +0 -1
- package/dist/shared/logger.js +0 -1
- package/dist/shared/lru.d.ts +0 -1
- package/dist/shared/lru.js +0 -1
- package/dist/shared/lruMap.d.ts +0 -1
- package/dist/shared/lruMap.js +0 -1
- package/dist/shared/lruSet.d.ts +0 -1
- package/dist/shared/lruSet.js +0 -1
- package/dist/shared/minHeap.d.ts +0 -1
- package/dist/shared/minHeap.js +0 -1
- package/dist/shared/semaphore.d.ts +0 -1
- package/dist/shared/semaphore.js +0 -1
- package/dist/shared/serialization.d.ts +0 -1
- package/dist/shared/serialization.js +0 -1
- package/dist/shared/skipList.d.ts +0 -1
- package/dist/shared/skipList.js +0 -1
- package/dist/shared/ttlMap.d.ts +0 -1
- package/dist/shared/ttlMap.js +0 -1
- package/dist/shared/version.d.ts +0 -1
- package/dist/shared/version.js +0 -1
- package/dist/shared/webhookValidation.d.ts +0 -1
- package/dist/shared/webhookValidation.js +0 -1
- package/package.json +12 -9
- package/dist/application/backgroundTasks.d.ts.map +0 -1
- package/dist/application/backgroundTasks.js.map +0 -1
- package/dist/application/cleanupTasks.d.ts.map +0 -1
- package/dist/application/cleanupTasks.js.map +0 -1
- package/dist/application/clientTracking.d.ts.map +0 -1
- package/dist/application/clientTracking.js.map +0 -1
- package/dist/application/contextFactory.d.ts.map +0 -1
- package/dist/application/contextFactory.js.map +0 -1
- package/dist/application/dependencyProcessor.d.ts.map +0 -1
- package/dist/application/dependencyProcessor.js.map +0 -1
- package/dist/application/dlqManager.d.ts.map +0 -1
- package/dist/application/dlqManager.js.map +0 -1
- package/dist/application/eventsManager.d.ts.map +0 -1
- package/dist/application/eventsManager.js.map +0 -1
- package/dist/application/jobLogsManager.d.ts.map +0 -1
- package/dist/application/jobLogsManager.js.map +0 -1
- package/dist/application/latencyTracker.d.ts.map +0 -1
- package/dist/application/latencyTracker.js.map +0 -1
- package/dist/application/lockManager.d.ts.map +0 -1
- package/dist/application/lockManager.js.map +0 -1
- package/dist/application/lockOperations.d.ts.map +0 -1
- package/dist/application/lockOperations.js.map +0 -1
- package/dist/application/metricsExporter.d.ts.map +0 -1
- package/dist/application/metricsExporter.js.map +0 -1
- package/dist/application/monitoringChecks.d.ts.map +0 -1
- package/dist/application/monitoringChecks.js.map +0 -1
- package/dist/application/operations/ack.d.ts.map +0 -1
- package/dist/application/operations/ack.js.map +0 -1
- package/dist/application/operations/ackHelpers.d.ts.map +0 -1
- package/dist/application/operations/ackHelpers.js.map +0 -1
- package/dist/application/operations/index.d.ts.map +0 -1
- package/dist/application/operations/index.js.map +0 -1
- package/dist/application/operations/jobManagement.d.ts.map +0 -1
- package/dist/application/operations/jobManagement.js.map +0 -1
- package/dist/application/operations/jobStateTransitions.d.ts.map +0 -1
- package/dist/application/operations/jobStateTransitions.js.map +0 -1
- package/dist/application/operations/pull.d.ts.map +0 -1
- package/dist/application/operations/pull.js.map +0 -1
- package/dist/application/operations/push.d.ts.map +0 -1
- package/dist/application/operations/push.js.map +0 -1
- package/dist/application/operations/queryOperations.d.ts.map +0 -1
- package/dist/application/operations/queryOperations.js.map +0 -1
- package/dist/application/operations/queueControl.d.ts.map +0 -1
- package/dist/application/operations/queueControl.js.map +0 -1
- package/dist/application/queueManager.d.ts.map +0 -1
- package/dist/application/queueManager.js.map +0 -1
- package/dist/application/stallDetection.d.ts.map +0 -1
- package/dist/application/stallDetection.js.map +0 -1
- package/dist/application/statsManager.d.ts.map +0 -1
- package/dist/application/statsManager.js.map +0 -1
- package/dist/application/taskErrorTracking.d.ts.map +0 -1
- package/dist/application/taskErrorTracking.js.map +0 -1
- package/dist/application/throughputTracker.d.ts.map +0 -1
- package/dist/application/throughputTracker.js.map +0 -1
- package/dist/application/types.d.ts.map +0 -1
- package/dist/application/types.js.map +0 -1
- package/dist/application/webhookManager.d.ts.map +0 -1
- package/dist/application/webhookManager.js.map +0 -1
- package/dist/application/workerManager.d.ts.map +0 -1
- package/dist/application/workerManager.js.map +0 -1
- package/dist/cli/client.d.ts.map +0 -1
- package/dist/cli/client.js.map +0 -1
- package/dist/cli/commands/backup.d.ts.map +0 -1
- package/dist/cli/commands/backup.js.map +0 -1
- package/dist/cli/commands/core.d.ts.map +0 -1
- package/dist/cli/commands/core.js.map +0 -1
- package/dist/cli/commands/cron.d.ts.map +0 -1
- package/dist/cli/commands/cron.js.map +0 -1
- package/dist/cli/commands/dlq.d.ts.map +0 -1
- package/dist/cli/commands/dlq.js.map +0 -1
- package/dist/cli/commands/doctor.d.ts.map +0 -1
- package/dist/cli/commands/doctor.js.map +0 -1
- package/dist/cli/commands/job.d.ts.map +0 -1
- package/dist/cli/commands/job.js.map +0 -1
- package/dist/cli/commands/monitor.d.ts.map +0 -1
- package/dist/cli/commands/monitor.js.map +0 -1
- package/dist/cli/commands/queue.d.ts.map +0 -1
- package/dist/cli/commands/queue.js.map +0 -1
- package/dist/cli/commands/rateLimit.d.ts.map +0 -1
- package/dist/cli/commands/rateLimit.js.map +0 -1
- package/dist/cli/commands/server.d.ts.map +0 -1
- package/dist/cli/commands/server.js.map +0 -1
- package/dist/cli/commands/types.d.ts.map +0 -1
- package/dist/cli/commands/types.js.map +0 -1
- package/dist/cli/commands/webhook.d.ts.map +0 -1
- package/dist/cli/commands/webhook.js.map +0 -1
- package/dist/cli/commands/worker.d.ts.map +0 -1
- package/dist/cli/commands/worker.js.map +0 -1
- package/dist/cli/help.d.ts.map +0 -1
- package/dist/cli/help.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/output.d.ts.map +0 -1
- package/dist/cli/output.js.map +0 -1
- package/dist/client/bunqueue/aging.d.ts.map +0 -1
- package/dist/client/bunqueue/aging.js.map +0 -1
- package/dist/client/bunqueue/batch.d.ts.map +0 -1
- package/dist/client/bunqueue/batch.js.map +0 -1
- package/dist/client/bunqueue/cancellation.d.ts.map +0 -1
- package/dist/client/bunqueue/cancellation.js.map +0 -1
- package/dist/client/bunqueue/circuitBreaker.d.ts.map +0 -1
- package/dist/client/bunqueue/circuitBreaker.js.map +0 -1
- package/dist/client/bunqueue/dedupDebounce.d.ts.map +0 -1
- package/dist/client/bunqueue/dedupDebounce.js.map +0 -1
- package/dist/client/bunqueue/dlqRateLimit.d.ts.map +0 -1
- package/dist/client/bunqueue/dlqRateLimit.js.map +0 -1
- package/dist/client/bunqueue/retry.d.ts.map +0 -1
- package/dist/client/bunqueue/retry.js.map +0 -1
- package/dist/client/bunqueue/triggers.d.ts.map +0 -1
- package/dist/client/bunqueue/triggers.js.map +0 -1
- package/dist/client/bunqueue/ttl.d.ts.map +0 -1
- package/dist/client/bunqueue/ttl.js.map +0 -1
- package/dist/client/bunqueue/types.d.ts.map +0 -1
- package/dist/client/bunqueue/types.js.map +0 -1
- package/dist/client/bunqueue.d.ts.map +0 -1
- package/dist/client/bunqueue.js.map +0 -1
- package/dist/client/errors.d.ts.map +0 -1
- package/dist/client/errors.js.map +0 -1
- package/dist/client/events.d.ts.map +0 -1
- package/dist/client/events.js.map +0 -1
- package/dist/client/flow.d.ts.map +0 -1
- package/dist/client/flow.js.map +0 -1
- package/dist/client/flowJobFactory.d.ts.map +0 -1
- package/dist/client/flowJobFactory.js.map +0 -1
- package/dist/client/flowPush.d.ts.map +0 -1
- package/dist/client/flowPush.js.map +0 -1
- package/dist/client/flowTypes.d.ts.map +0 -1
- package/dist/client/flowTypes.js.map +0 -1
- package/dist/client/index.d.ts.map +0 -1
- package/dist/client/index.js.map +0 -1
- package/dist/client/jobConversion.d.ts.map +0 -1
- package/dist/client/jobConversion.js.map +0 -1
- package/dist/client/jobConversionHelpers.d.ts.map +0 -1
- package/dist/client/jobConversionHelpers.js.map +0 -1
- package/dist/client/jobConversionTypes.d.ts.map +0 -1
- package/dist/client/jobConversionTypes.js.map +0 -1
- package/dist/client/jobHelpers.d.ts.map +0 -1
- package/dist/client/jobHelpers.js.map +0 -1
- package/dist/client/manager.d.ts.map +0 -1
- package/dist/client/manager.js.map +0 -1
- package/dist/client/queue/addBatcher.d.ts.map +0 -1
- package/dist/client/queue/addBatcher.js.map +0 -1
- package/dist/client/queue/bullmqCompat.d.ts.map +0 -1
- package/dist/client/queue/bullmqCompat.js.map +0 -1
- package/dist/client/queue/deduplication.d.ts.map +0 -1
- package/dist/client/queue/deduplication.js.map +0 -1
- package/dist/client/queue/dlq.d.ts.map +0 -1
- package/dist/client/queue/dlq.js.map +0 -1
- package/dist/client/queue/dlqOps.d.ts.map +0 -1
- package/dist/client/queue/dlqOps.js.map +0 -1
- package/dist/client/queue/helpers.d.ts.map +0 -1
- package/dist/client/queue/helpers.js.map +0 -1
- package/dist/client/queue/index.d.ts.map +0 -1
- package/dist/client/queue/index.js.map +0 -1
- package/dist/client/queue/jobMove.d.ts.map +0 -1
- package/dist/client/queue/jobMove.js.map +0 -1
- package/dist/client/queue/jobProxy.d.ts.map +0 -1
- package/dist/client/queue/jobProxy.js.map +0 -1
- package/dist/client/queue/operations/add.d.ts.map +0 -1
- package/dist/client/queue/operations/add.js.map +0 -1
- package/dist/client/queue/operations/control.d.ts.map +0 -1
- package/dist/client/queue/operations/control.js.map +0 -1
- package/dist/client/queue/operations/counts.d.ts.map +0 -1
- package/dist/client/queue/operations/counts.js.map +0 -1
- package/dist/client/queue/operations/index.d.ts.map +0 -1
- package/dist/client/queue/operations/index.js.map +0 -1
- package/dist/client/queue/operations/management.d.ts.map +0 -1
- package/dist/client/queue/operations/management.js.map +0 -1
- package/dist/client/queue/operations/query.d.ts.map +0 -1
- package/dist/client/queue/operations/query.js.map +0 -1
- package/dist/client/queue/queue.d.ts.map +0 -1
- package/dist/client/queue/queue.js.map +0 -1
- package/dist/client/queue/queueTypes.d.ts.map +0 -1
- package/dist/client/queue/queueTypes.js.map +0 -1
- package/dist/client/queue/rateLimit.d.ts.map +0 -1
- package/dist/client/queue/rateLimit.js.map +0 -1
- package/dist/client/queue/scheduler.d.ts.map +0 -1
- package/dist/client/queue/scheduler.js.map +0 -1
- package/dist/client/queue/stall.d.ts.map +0 -1
- package/dist/client/queue/stall.js.map +0 -1
- package/dist/client/queue/workers.d.ts.map +0 -1
- package/dist/client/queue/workers.js.map +0 -1
- package/dist/client/queue.d.ts.map +0 -1
- package/dist/client/queue.js.map +0 -1
- package/dist/client/queueGroup.d.ts.map +0 -1
- package/dist/client/queueGroup.js.map +0 -1
- package/dist/client/resolveToken.d.ts.map +0 -1
- package/dist/client/resolveToken.js.map +0 -1
- package/dist/client/sandboxed/index.d.ts.map +0 -1
- package/dist/client/sandboxed/index.js.map +0 -1
- package/dist/client/sandboxed/queueOps.d.ts.map +0 -1
- package/dist/client/sandboxed/queueOps.js.map +0 -1
- package/dist/client/sandboxed/types.d.ts.map +0 -1
- package/dist/client/sandboxed/types.js.map +0 -1
- package/dist/client/sandboxed/worker.d.ts.map +0 -1
- package/dist/client/sandboxed/worker.js.map +0 -1
- package/dist/client/sandboxed/wrapper.d.ts.map +0 -1
- package/dist/client/sandboxed/wrapper.js.map +0 -1
- package/dist/client/sandboxedWorker.d.ts.map +0 -1
- package/dist/client/sandboxedWorker.js.map +0 -1
- package/dist/client/tcp/client.d.ts.map +0 -1
- package/dist/client/tcp/client.js.map +0 -1
- package/dist/client/tcp/connection.d.ts.map +0 -1
- package/dist/client/tcp/connection.js.map +0 -1
- package/dist/client/tcp/health.d.ts.map +0 -1
- package/dist/client/tcp/health.js.map +0 -1
- package/dist/client/tcp/index.d.ts.map +0 -1
- package/dist/client/tcp/index.js.map +0 -1
- package/dist/client/tcp/reconnect.d.ts.map +0 -1
- package/dist/client/tcp/reconnect.js.map +0 -1
- package/dist/client/tcp/shared.d.ts.map +0 -1
- package/dist/client/tcp/shared.js.map +0 -1
- package/dist/client/tcp/types.d.ts.map +0 -1
- package/dist/client/tcp/types.js.map +0 -1
- package/dist/client/tcpClient.d.ts.map +0 -1
- package/dist/client/tcpClient.js.map +0 -1
- package/dist/client/tcpPool.d.ts.map +0 -1
- package/dist/client/tcpPool.js.map +0 -1
- package/dist/client/types.d.ts.map +0 -1
- package/dist/client/types.js.map +0 -1
- package/dist/client/worker/ackBatcher.d.ts.map +0 -1
- package/dist/client/worker/ackBatcher.js.map +0 -1
- package/dist/client/worker/groupConcurrency.d.ts.map +0 -1
- package/dist/client/worker/groupConcurrency.js.map +0 -1
- package/dist/client/worker/index.d.ts.map +0 -1
- package/dist/client/worker/index.js.map +0 -1
- package/dist/client/worker/jobParser.d.ts.map +0 -1
- package/dist/client/worker/jobParser.js.map +0 -1
- package/dist/client/worker/processor.d.ts.map +0 -1
- package/dist/client/worker/processor.js.map +0 -1
- package/dist/client/worker/types.d.ts.map +0 -1
- package/dist/client/worker/types.js.map +0 -1
- package/dist/client/worker/worker.d.ts.map +0 -1
- package/dist/client/worker/worker.js.map +0 -1
- package/dist/client/worker/workerHeartbeat.d.ts.map +0 -1
- package/dist/client/worker/workerHeartbeat.js.map +0 -1
- package/dist/client/worker/workerPull.d.ts.map +0 -1
- package/dist/client/worker/workerPull.js.map +0 -1
- package/dist/client/worker/workerRateLimiter.d.ts.map +0 -1
- package/dist/client/worker/workerRateLimiter.js.map +0 -1
- package/dist/client/worker.d.ts.map +0 -1
- package/dist/client/worker.js.map +0 -1
- package/dist/client/workflow/emitter.d.ts.map +0 -1
- package/dist/client/workflow/emitter.js.map +0 -1
- package/dist/client/workflow/engine.d.ts.map +0 -1
- package/dist/client/workflow/engine.js.map +0 -1
- package/dist/client/workflow/executor.d.ts.map +0 -1
- package/dist/client/workflow/executor.js.map +0 -1
- package/dist/client/workflow/index.d.ts.map +0 -1
- package/dist/client/workflow/index.js.map +0 -1
- package/dist/client/workflow/loops.d.ts.map +0 -1
- package/dist/client/workflow/loops.js.map +0 -1
- package/dist/client/workflow/runner.d.ts.map +0 -1
- package/dist/client/workflow/runner.js.map +0 -1
- package/dist/client/workflow/store.d.ts.map +0 -1
- package/dist/client/workflow/store.js.map +0 -1
- package/dist/client/workflow/types.d.ts.map +0 -1
- package/dist/client/workflow/types.js.map +0 -1
- package/dist/client/workflow/workflow.d.ts.map +0 -1
- package/dist/client/workflow/workflow.js.map +0 -1
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js.map +0 -1
- package/dist/config/loader.d.ts.map +0 -1
- package/dist/config/loader.js.map +0 -1
- package/dist/config/resolve.d.ts.map +0 -1
- package/dist/config/resolve.js.map +0 -1
- package/dist/config/types.d.ts.map +0 -1
- package/dist/config/types.js.map +0 -1
- package/dist/domain/queue/dependencyTracker.d.ts.map +0 -1
- package/dist/domain/queue/dependencyTracker.js.map +0 -1
- package/dist/domain/queue/dlqShard.d.ts.map +0 -1
- package/dist/domain/queue/dlqShard.js.map +0 -1
- package/dist/domain/queue/index.d.ts.map +0 -1
- package/dist/domain/queue/index.js.map +0 -1
- package/dist/domain/queue/limiterManager.d.ts.map +0 -1
- package/dist/domain/queue/limiterManager.js.map +0 -1
- package/dist/domain/queue/priorityQueue.d.ts.map +0 -1
- package/dist/domain/queue/priorityQueue.js.map +0 -1
- package/dist/domain/queue/shard.d.ts.map +0 -1
- package/dist/domain/queue/shard.js.map +0 -1
- package/dist/domain/queue/shardCounters.d.ts.map +0 -1
- package/dist/domain/queue/shardCounters.js.map +0 -1
- package/dist/domain/queue/temporalManager.d.ts.map +0 -1
- package/dist/domain/queue/temporalManager.js.map +0 -1
- package/dist/domain/queue/uniqueKeyManager.d.ts.map +0 -1
- package/dist/domain/queue/uniqueKeyManager.js.map +0 -1
- package/dist/domain/queue/waiterManager.d.ts.map +0 -1
- package/dist/domain/queue/waiterManager.js.map +0 -1
- package/dist/domain/types/command.d.ts.map +0 -1
- package/dist/domain/types/command.js.map +0 -1
- package/dist/domain/types/cron.d.ts.map +0 -1
- package/dist/domain/types/cron.js.map +0 -1
- package/dist/domain/types/deduplication.d.ts.map +0 -1
- package/dist/domain/types/deduplication.js.map +0 -1
- package/dist/domain/types/dlq.d.ts.map +0 -1
- package/dist/domain/types/dlq.js.map +0 -1
- package/dist/domain/types/index.d.ts.map +0 -1
- package/dist/domain/types/index.js.map +0 -1
- package/dist/domain/types/job.d.ts.map +0 -1
- package/dist/domain/types/job.js.map +0 -1
- package/dist/domain/types/queue.d.ts.map +0 -1
- package/dist/domain/types/queue.js.map +0 -1
- package/dist/domain/types/response.d.ts.map +0 -1
- package/dist/domain/types/response.js.map +0 -1
- package/dist/domain/types/stall.d.ts.map +0 -1
- package/dist/domain/types/stall.js.map +0 -1
- package/dist/domain/types/webhook.d.ts.map +0 -1
- package/dist/domain/types/webhook.js.map +0 -1
- package/dist/domain/types/worker.d.ts.map +0 -1
- package/dist/domain/types/worker.js.map +0 -1
- package/dist/infrastructure/backup/index.d.ts.map +0 -1
- package/dist/infrastructure/backup/index.js.map +0 -1
- package/dist/infrastructure/backup/s3Backup.d.ts.map +0 -1
- package/dist/infrastructure/backup/s3Backup.js.map +0 -1
- package/dist/infrastructure/backup/s3BackupConfig.d.ts.map +0 -1
- package/dist/infrastructure/backup/s3BackupConfig.js.map +0 -1
- package/dist/infrastructure/backup/s3BackupOperations.d.ts.map +0 -1
- package/dist/infrastructure/backup/s3BackupOperations.js.map +0 -1
- package/dist/infrastructure/cloud/buffer.d.ts.map +0 -1
- package/dist/infrastructure/cloud/buffer.js.map +0 -1
- package/dist/infrastructure/cloud/circuitBreaker.d.ts.map +0 -1
- package/dist/infrastructure/cloud/circuitBreaker.js.map +0 -1
- package/dist/infrastructure/cloud/cloudAgent 2.d.ts +0 -55
- package/dist/infrastructure/cloud/cloudAgent 2.d.ts.map +0 -1
- package/dist/infrastructure/cloud/cloudAgent 2.js +0 -243
- package/dist/infrastructure/cloud/cloudAgent 2.js.map +0 -1
- package/dist/infrastructure/cloud/cloudAgent.d.ts.map +0 -1
- package/dist/infrastructure/cloud/cloudAgent.js.map +0 -1
- package/dist/infrastructure/cloud/commandHandler 2.d.ts +0 -52
- package/dist/infrastructure/cloud/commandHandler 2.d.ts.map +0 -1
- package/dist/infrastructure/cloud/commandHandler 2.js +0 -84
- package/dist/infrastructure/cloud/commandHandler 2.js.map +0 -1
- package/dist/infrastructure/cloud/commandHandler.d.ts.map +0 -1
- package/dist/infrastructure/cloud/commandHandler.js.map +0 -1
- package/dist/infrastructure/cloud/commands 2.d.ts +0 -11
- package/dist/infrastructure/cloud/commands 2.d.ts.map +0 -1
- package/dist/infrastructure/cloud/commands 2.js +0 -343
- package/dist/infrastructure/cloud/commands 2.js.map +0 -1
- package/dist/infrastructure/cloud/commands.d.ts.map +0 -1
- package/dist/infrastructure/cloud/commands.js.map +0 -1
- package/dist/infrastructure/cloud/config.d.ts.map +0 -1
- package/dist/infrastructure/cloud/config.js.map +0 -1
- package/dist/infrastructure/cloud/httpSender.d.ts.map +0 -1
- package/dist/infrastructure/cloud/httpSender.js.map +0 -1
- package/dist/infrastructure/cloud/index.d.ts.map +0 -1
- package/dist/infrastructure/cloud/index.js.map +0 -1
- package/dist/infrastructure/cloud/instanceId.d.ts +0 -7
- package/dist/infrastructure/cloud/instanceId.d.ts.map +0 -1
- package/dist/infrastructure/cloud/instanceId.js +0 -34
- package/dist/infrastructure/cloud/instanceId.js.map +0 -1
- package/dist/infrastructure/cloud/logger.d.ts.map +0 -1
- package/dist/infrastructure/cloud/logger.js.map +0 -1
- package/dist/infrastructure/cloud/snapshotCollector.d.ts.map +0 -1
- package/dist/infrastructure/cloud/snapshotCollector.js.map +0 -1
- package/dist/infrastructure/cloud/snapshotHelpers.d.ts.map +0 -1
- package/dist/infrastructure/cloud/snapshotHelpers.js.map +0 -1
- package/dist/infrastructure/cloud/statsRefresh.d.ts.map +0 -1
- package/dist/infrastructure/cloud/statsRefresh.js.map +0 -1
- package/dist/infrastructure/cloud/statsUpdate.d.ts.map +0 -1
- package/dist/infrastructure/cloud/statsUpdate.js.map +0 -1
- package/dist/infrastructure/cloud/types.d.ts.map +0 -1
- package/dist/infrastructure/cloud/types.js.map +0 -1
- package/dist/infrastructure/cloud/wsSender.d.ts.map +0 -1
- package/dist/infrastructure/cloud/wsSender.js.map +0 -1
- package/dist/infrastructure/persistence/index.d.ts.map +0 -1
- package/dist/infrastructure/persistence/index.js.map +0 -1
- package/dist/infrastructure/persistence/schema.d.ts.map +0 -1
- package/dist/infrastructure/persistence/schema.js.map +0 -1
- package/dist/infrastructure/persistence/sqlite.d.ts.map +0 -1
- package/dist/infrastructure/persistence/sqlite.js.map +0 -1
- package/dist/infrastructure/persistence/sqliteBatch.d.ts.map +0 -1
- package/dist/infrastructure/persistence/sqliteBatch.js.map +0 -1
- package/dist/infrastructure/persistence/sqliteSerializer.d.ts.map +0 -1
- package/dist/infrastructure/persistence/sqliteSerializer.js.map +0 -1
- package/dist/infrastructure/persistence/statements.d.ts.map +0 -1
- package/dist/infrastructure/persistence/statements.js.map +0 -1
- package/dist/infrastructure/scheduler/cronParser.d.ts.map +0 -1
- package/dist/infrastructure/scheduler/cronParser.js.map +0 -1
- package/dist/infrastructure/scheduler/cronScheduler.d.ts.map +0 -1
- package/dist/infrastructure/scheduler/cronScheduler.js.map +0 -1
- package/dist/infrastructure/scheduler/index.d.ts.map +0 -1
- package/dist/infrastructure/scheduler/index.js.map +0 -1
- package/dist/infrastructure/server/handler.d.ts.map +0 -1
- package/dist/infrastructure/server/handler.js.map +0 -1
- package/dist/infrastructure/server/handlerRoutes.d.ts.map +0 -1
- package/dist/infrastructure/server/handlerRoutes.js.map +0 -1
- package/dist/infrastructure/server/handlers/advanced.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/advanced.js.map +0 -1
- package/dist/infrastructure/server/handlers/core.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/core.js.map +0 -1
- package/dist/infrastructure/server/handlers/cron.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/cron.js.map +0 -1
- package/dist/infrastructure/server/handlers/dashboard.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/dashboard.js.map +0 -1
- package/dist/infrastructure/server/handlers/dlq.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/dlq.js.map +0 -1
- package/dist/infrastructure/server/handlers/index.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/index.js.map +0 -1
- package/dist/infrastructure/server/handlers/management.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/management.js.map +0 -1
- package/dist/infrastructure/server/handlers/monitoring.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/monitoring.js.map +0 -1
- package/dist/infrastructure/server/handlers/query.d.ts.map +0 -1
- package/dist/infrastructure/server/handlers/query.js.map +0 -1
- package/dist/infrastructure/server/http.d.ts.map +0 -1
- package/dist/infrastructure/server/http.js.map +0 -1
- package/dist/infrastructure/server/httpEndpoints.d.ts.map +0 -1
- package/dist/infrastructure/server/httpEndpoints.js.map +0 -1
- package/dist/infrastructure/server/httpRouteJobs.d.ts.map +0 -1
- package/dist/infrastructure/server/httpRouteJobs.js.map +0 -1
- package/dist/infrastructure/server/httpRouteQueueConfig.d.ts.map +0 -1
- package/dist/infrastructure/server/httpRouteQueueConfig.js.map +0 -1
- package/dist/infrastructure/server/httpRouteQueues.d.ts.map +0 -1
- package/dist/infrastructure/server/httpRouteQueues.js.map +0 -1
- package/dist/infrastructure/server/httpRouteResources.d.ts.map +0 -1
- package/dist/infrastructure/server/httpRouteResources.js.map +0 -1
- package/dist/infrastructure/server/index.d.ts.map +0 -1
- package/dist/infrastructure/server/index.js.map +0 -1
- package/dist/infrastructure/server/protocol.d.ts.map +0 -1
- package/dist/infrastructure/server/protocol.js.map +0 -1
- package/dist/infrastructure/server/rateLimiter.d.ts.map +0 -1
- package/dist/infrastructure/server/rateLimiter.js.map +0 -1
- package/dist/infrastructure/server/sseHandler.d.ts.map +0 -1
- package/dist/infrastructure/server/sseHandler.js.map +0 -1
- package/dist/infrastructure/server/tcp.d.ts.map +0 -1
- package/dist/infrastructure/server/tcp.js.map +0 -1
- package/dist/infrastructure/server/types.d.ts.map +0 -1
- package/dist/infrastructure/server/types.js.map +0 -1
- package/dist/infrastructure/server/wsHandler.d.ts.map +0 -1
- package/dist/infrastructure/server/wsHandler.js.map +0 -1
- package/dist/main.d.ts.map +0 -1
- package/dist/main.js.map +0 -1
- package/dist/mcp/adapter.d.ts.map +0 -1
- package/dist/mcp/adapter.js.map +0 -1
- package/dist/mcp/httpHandler.d.ts.map +0 -1
- package/dist/mcp/httpHandler.js.map +0 -1
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/index.js.map +0 -1
- package/dist/mcp/mcpHandlers.d.ts +0 -129
- package/dist/mcp/mcpHandlers.d.ts.map +0 -1
- package/dist/mcp/mcpHandlers.js +0 -204
- package/dist/mcp/mcpHandlers.js.map +0 -1
- package/dist/mcp/mcpTools.d.ts +0 -15
- package/dist/mcp/mcpTools.d.ts.map +0 -1
- package/dist/mcp/mcpTools.js +0 -277
- package/dist/mcp/mcpTools.js.map +0 -1
- package/dist/mcp/prompts.d.ts.map +0 -1
- package/dist/mcp/prompts.js.map +0 -1
- package/dist/mcp/resources.d.ts.map +0 -1
- package/dist/mcp/resources.js.map +0 -1
- package/dist/mcp/tools/consumptionTools.d.ts.map +0 -1
- package/dist/mcp/tools/consumptionTools.js.map +0 -1
- package/dist/mcp/tools/cronTools.d.ts.map +0 -1
- package/dist/mcp/tools/cronTools.js.map +0 -1
- package/dist/mcp/tools/dlqTools.d.ts.map +0 -1
- package/dist/mcp/tools/dlqTools.js.map +0 -1
- package/dist/mcp/tools/flowTools.d.ts.map +0 -1
- package/dist/mcp/tools/flowTools.js.map +0 -1
- package/dist/mcp/tools/handlerTools.d.ts.map +0 -1
- package/dist/mcp/tools/handlerTools.js.map +0 -1
- package/dist/mcp/tools/jobMgmtTools.d.ts.map +0 -1
- package/dist/mcp/tools/jobMgmtTools.js.map +0 -1
- package/dist/mcp/tools/jobTools.d.ts.map +0 -1
- package/dist/mcp/tools/jobTools.js.map +0 -1
- package/dist/mcp/tools/mcpTracker.d.ts.map +0 -1
- package/dist/mcp/tools/mcpTracker.js.map +0 -1
- package/dist/mcp/tools/monitoringTools.d.ts.map +0 -1
- package/dist/mcp/tools/monitoringTools.js.map +0 -1
- package/dist/mcp/tools/queueTools.d.ts.map +0 -1
- package/dist/mcp/tools/queueTools.js.map +0 -1
- package/dist/mcp/tools/rateLimitTools.d.ts.map +0 -1
- package/dist/mcp/tools/rateLimitTools.js.map +0 -1
- package/dist/mcp/tools/webhookTools.d.ts.map +0 -1
- package/dist/mcp/tools/webhookTools.js.map +0 -1
- package/dist/mcp/tools/withErrorHandler.d.ts.map +0 -1
- package/dist/mcp/tools/withErrorHandler.js.map +0 -1
- package/dist/mcp/tools/workerMgmtTools.d.ts.map +0 -1
- package/dist/mcp/tools/workerMgmtTools.js.map +0 -1
- package/dist/shared/boundedMap.d.ts.map +0 -1
- package/dist/shared/boundedMap.js.map +0 -1
- package/dist/shared/boundedSet.d.ts.map +0 -1
- package/dist/shared/boundedSet.js.map +0 -1
- package/dist/shared/hash.d.ts.map +0 -1
- package/dist/shared/hash.js.map +0 -1
- package/dist/shared/histogram.d.ts.map +0 -1
- package/dist/shared/histogram.js.map +0 -1
- package/dist/shared/index.d.ts.map +0 -1
- package/dist/shared/index.js.map +0 -1
- package/dist/shared/lock.d.ts.map +0 -1
- package/dist/shared/lock.js.map +0 -1
- package/dist/shared/logger.d.ts.map +0 -1
- package/dist/shared/logger.js.map +0 -1
- package/dist/shared/lru.d.ts.map +0 -1
- package/dist/shared/lru.js.map +0 -1
- package/dist/shared/lruMap.d.ts.map +0 -1
- package/dist/shared/lruMap.js.map +0 -1
- package/dist/shared/lruSet.d.ts.map +0 -1
- package/dist/shared/lruSet.js.map +0 -1
- package/dist/shared/minHeap.d.ts.map +0 -1
- package/dist/shared/minHeap.js.map +0 -1
- package/dist/shared/semaphore.d.ts.map +0 -1
- package/dist/shared/semaphore.js.map +0 -1
- package/dist/shared/serialization.d.ts.map +0 -1
- package/dist/shared/serialization.js.map +0 -1
- package/dist/shared/skipList.d.ts.map +0 -1
- package/dist/shared/skipList.js.map +0 -1
- package/dist/shared/ttlMap.d.ts.map +0 -1
- package/dist/shared/ttlMap.js.map +0 -1
- package/dist/shared/version.d.ts.map +0 -1
- package/dist/shared/version.js.map +0 -1
- package/dist/shared/webhookValidation.d.ts.map +0 -1
- package/dist/shared/webhookValidation.js.map +0 -1
|
@@ -26,4 +26,3 @@ export declare function getMetrics(ctx: WorkersContext, type: 'completed' | 'fai
|
|
|
26
26
|
/** Trim events (no-op in bunqueue - events are real-time) */
|
|
27
27
|
export declare function trimEvents(_ctx: WorkersContext, _maxLength: number): Promise<number>;
|
|
28
28
|
export {};
|
|
29
|
-
//# sourceMappingURL=workers.d.ts.map
|
package/dist/client/queue.d.ts
CHANGED
package/dist/client/queue.js
CHANGED
|
@@ -5,4 +5,3 @@
|
|
|
5
5
|
export type { SandboxedWorkerOptions, RequiredSandboxedWorkerOptions, WorkerProcess, IPCRequest, IPCResponse, } from './types';
|
|
6
6
|
export { createWrapperScript, cleanupWrapperScript } from './wrapper';
|
|
7
7
|
export { SandboxedWorker } from './worker';
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -22,4 +22,3 @@ export interface QueueOps {
|
|
|
22
22
|
export declare function createEmbeddedOps(manager: SharedManager): QueueOps;
|
|
23
23
|
/** Create TCP mode operations using connection pool */
|
|
24
24
|
export declare function createTcpOps(tcp: TcpConnectionPool): QueueOps;
|
|
25
|
-
//# sourceMappingURL=queueOps.d.ts.map
|
|
@@ -7,6 +7,7 @@ import { getSharedManager } from '../manager';
|
|
|
7
7
|
import { getSharedPool, releaseSharedPool } from '../tcpPool';
|
|
8
8
|
import { createPublicJob } from '../jobConversion';
|
|
9
9
|
import { jobId } from '../../domain/types/job';
|
|
10
|
+
import { createProgressHandler, createLogHandler, createGetStateHandler, createGetChildrenValuesHandler, createGetFailedChildrenValuesHandler, createGetIgnoredChildrenFailuresHandler, createRemoveChildDependencyHandler, createRemoveUnprocessedChildrenHandler, createRemoveHandler, createRetryHandler, createUpdateDataHandler, createPromoteHandler, createChangeDelayHandler, createChangePriorityHandler, createExtendLockHandler, createClearLogsHandler, createMoveToWaitHandler, createMoveToDelayedHandler, createMoveToWaitingChildrenHandler, createWaitUntilFinishedHandler, createDiscardHandler, createGetDependenciesHandler, createGetDependenciesCountHandler, createRemoveDeduplicationKeyHandler, } from '../worker/processorHandlers';
|
|
10
11
|
import { createWrapperScript, cleanupWrapperScript } from './wrapper';
|
|
11
12
|
import { createEmbeddedOps, createTcpOps } from './queueOps';
|
|
12
13
|
const LOG_PREFIX = '[SandboxedWorker]';
|
|
@@ -92,12 +93,17 @@ export class SandboxedWorker extends EventEmitter {
|
|
|
92
93
|
if (this.tcp)
|
|
93
94
|
await this.tcp.connect();
|
|
94
95
|
this.wrapperPath = await createWrapperScript(this.queueName, this.options.processor);
|
|
95
|
-
// Spawn
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
96
|
+
// Spawn the first worker synchronously so Bun's bundler resolves and caches
|
|
97
|
+
// the wrapper entry point before concurrent siblings race for it. Remaining
|
|
98
|
+
// workers can then spawn in parallel without a ModuleNotFound flake.
|
|
99
|
+
await this.spawnWorker(0);
|
|
100
|
+
if (this.options.concurrency > 1) {
|
|
101
|
+
const spawnPromises = [];
|
|
102
|
+
for (let i = 1; i < this.options.concurrency; i++) {
|
|
103
|
+
spawnPromises.push(this.spawnWorker(i));
|
|
104
|
+
}
|
|
105
|
+
await Promise.all(spawnPromises);
|
|
99
106
|
}
|
|
100
|
-
await Promise.all(spawnPromises);
|
|
101
107
|
this.startHeartbeat();
|
|
102
108
|
this.emit('ready');
|
|
103
109
|
this.pullPromise = this.pullLoop();
|
|
@@ -496,20 +502,55 @@ export class SandboxedWorker extends EventEmitter {
|
|
|
496
502
|
/** Create a public Job object from a DomainJob for event payloads */
|
|
497
503
|
createEventJob(domainJob) {
|
|
498
504
|
const data = domainJob.data;
|
|
505
|
+
const embedded = !this.tcp;
|
|
506
|
+
const tcp = this.tcp;
|
|
507
|
+
// Event-context moveToCompleted/moveToFailed: direct ack/fail without manual-move tracking
|
|
508
|
+
const moveToCompleted = async (id, returnValue, _token) => {
|
|
509
|
+
if (embedded) {
|
|
510
|
+
await getSharedManager().ack(jobId(id), returnValue);
|
|
511
|
+
}
|
|
512
|
+
else if (tcp) {
|
|
513
|
+
await tcp.send({ cmd: 'ACK', id, result: returnValue });
|
|
514
|
+
}
|
|
515
|
+
return null;
|
|
516
|
+
};
|
|
517
|
+
const moveToFailed = async (id, error, _token) => {
|
|
518
|
+
if (embedded) {
|
|
519
|
+
await getSharedManager().fail(jobId(id), error.message);
|
|
520
|
+
}
|
|
521
|
+
else if (tcp) {
|
|
522
|
+
await tcp.send({ cmd: 'FAIL', id, error: error.message });
|
|
523
|
+
}
|
|
524
|
+
};
|
|
499
525
|
return createPublicJob({
|
|
500
526
|
job: domainJob,
|
|
501
527
|
name: data?.name ?? 'default',
|
|
502
|
-
updateProgress:
|
|
503
|
-
log:
|
|
504
|
-
getState:
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
528
|
+
updateProgress: createProgressHandler(embedded, tcp, this, { current: null }),
|
|
529
|
+
log: createLogHandler(embedded, tcp, this, { current: null }),
|
|
530
|
+
getState: createGetStateHandler(embedded, tcp),
|
|
531
|
+
getChildrenValues: createGetChildrenValuesHandler(embedded, tcp),
|
|
532
|
+
getFailedChildrenValues: createGetFailedChildrenValuesHandler(embedded, tcp),
|
|
533
|
+
getIgnoredChildrenFailures: createGetIgnoredChildrenFailuresHandler(embedded, tcp),
|
|
534
|
+
removeChildDependency: createRemoveChildDependencyHandler(embedded, tcp),
|
|
535
|
+
removeUnprocessedChildren: createRemoveUnprocessedChildrenHandler(embedded, tcp),
|
|
536
|
+
remove: createRemoveHandler(embedded, tcp),
|
|
537
|
+
retry: createRetryHandler(embedded, tcp, domainJob),
|
|
538
|
+
updateData: createUpdateDataHandler(embedded, tcp),
|
|
539
|
+
promote: createPromoteHandler(embedded, tcp),
|
|
540
|
+
changeDelay: createChangeDelayHandler(embedded, tcp),
|
|
541
|
+
changePriority: createChangePriorityHandler(embedded, tcp),
|
|
542
|
+
extendLock: createExtendLockHandler(embedded, tcp),
|
|
543
|
+
clearLogs: createClearLogsHandler(embedded, tcp),
|
|
544
|
+
moveToWait: createMoveToWaitHandler(embedded, tcp),
|
|
545
|
+
moveToDelayed: createMoveToDelayedHandler(embedded, tcp),
|
|
546
|
+
moveToWaitingChildren: createMoveToWaitingChildrenHandler(embedded, tcp),
|
|
547
|
+
waitUntilFinished: createWaitUntilFinishedHandler(embedded, tcp),
|
|
548
|
+
discard: createDiscardHandler(embedded, tcp),
|
|
549
|
+
getDependencies: createGetDependenciesHandler(embedded, tcp, domainJob),
|
|
550
|
+
getDependenciesCount: createGetDependenciesCountHandler(embedded, tcp, domainJob),
|
|
551
|
+
removeDeduplicationKey: createRemoveDeduplicationKeyHandler(),
|
|
552
|
+
moveToCompleted,
|
|
553
|
+
moveToFailed,
|
|
512
554
|
});
|
|
513
555
|
}
|
|
514
556
|
}
|
|
515
|
-
//# sourceMappingURL=worker.js.map
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
* Worker Wrapper Script Generator
|
|
3
3
|
* Creates the wrapper script that loads processor in worker process
|
|
4
4
|
*/
|
|
5
|
-
import { mkdir, unlink } from 'node:fs/promises';
|
|
5
|
+
import { mkdir, unlink, realpath } from 'node:fs/promises';
|
|
6
|
+
import { closeSync, fsyncSync, openSync, writeSync } from 'node:fs';
|
|
7
|
+
import { join, normalize } from 'node:path';
|
|
6
8
|
/**
|
|
7
9
|
* Escape a string for safe embedding in a template literal
|
|
8
10
|
* Prevents code injection via backticks or backslashes in paths
|
|
@@ -14,9 +16,38 @@ function escapeForTemplateLiteral(str) {
|
|
|
14
16
|
* Create wrapper script file that loads the processor
|
|
15
17
|
*/
|
|
16
18
|
export async function createWrapperScript(queueName, processorPath) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
// Normalize the path so double slashes from callers like
|
|
20
|
+
// `${TMPDIR}/file` (TMPDIR often ends with `/`) don't trip the Worker's
|
|
21
|
+
// import resolver. Then resolve symlinks (e.g. macOS `/var` → `/private/var`)
|
|
22
|
+
// so the import target matches what Bun's module loader will see.
|
|
23
|
+
const normalized = normalize(processorPath.startsWith('/') ? processorPath : `${process.cwd()}/${processorPath}`);
|
|
24
|
+
// Verify the processor file is visible on disk before generating a wrapper
|
|
25
|
+
// that will import it from a Worker thread. On macOS, files written by
|
|
26
|
+
// Bun.write (no fsync) can briefly be invisible to fresh Worker processes,
|
|
27
|
+
// surfacing as ModuleNotFound when the wrapper's top-level await import()
|
|
28
|
+
// runs. Poll briefly with a fast cap to catch the race without slowing
|
|
29
|
+
// the happy path.
|
|
30
|
+
let processorVisible = false;
|
|
31
|
+
for (let i = 0; i < 20; i++) {
|
|
32
|
+
if (await Bun.file(normalized).exists()) {
|
|
33
|
+
processorVisible = true;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
await Bun.sleep(5);
|
|
37
|
+
}
|
|
38
|
+
if (!processorVisible) {
|
|
39
|
+
throw new Error(`Processor file not visible after polling: ${normalized}`);
|
|
40
|
+
}
|
|
41
|
+
// Resolve symlinks AFTER the existence check so a non-existent file fails
|
|
42
|
+
// with a clear error rather than realpath's ENOENT.
|
|
43
|
+
let fullPath;
|
|
44
|
+
try {
|
|
45
|
+
fullPath = await realpath(normalized);
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
// realpath can fail in restricted sandboxes; fall back to normalized.
|
|
49
|
+
fullPath = normalized;
|
|
50
|
+
}
|
|
20
51
|
// Escape the path to prevent code injection via backticks or template expressions
|
|
21
52
|
const escapedPath = escapeForTemplateLiteral(fullPath);
|
|
22
53
|
const wrapperCode = `
|
|
@@ -59,13 +90,34 @@ self.onmessage = async (event) => {
|
|
|
59
90
|
}
|
|
60
91
|
};
|
|
61
92
|
`;
|
|
62
|
-
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
-
|
|
93
|
+
// path.join normalizes double slashes ($TMPDIR often ends in '/').
|
|
94
|
+
const tempDir = join(Bun.env.TMPDIR ?? '/tmp', 'bunqueue-workers');
|
|
95
|
+
await mkdir(tempDir, { recursive: true });
|
|
96
|
+
const wrapperPath = join(tempDir, `worker-${queueName}-${Date.now()}-${Math.random().toString(36).slice(2, 10)}.ts`);
|
|
97
|
+
// Write with explicit fsync so Bun's Worker spawn sees the file on macOS,
|
|
98
|
+
// where fs/promises.writeFile (no fdatasync) has produced ModuleNotFound.
|
|
99
|
+
const fd = openSync(wrapperPath, 'w');
|
|
100
|
+
try {
|
|
101
|
+
writeSync(fd, wrapperCode);
|
|
102
|
+
fsyncSync(fd);
|
|
103
|
+
}
|
|
104
|
+
finally {
|
|
105
|
+
closeSync(fd);
|
|
106
|
+
}
|
|
107
|
+
// Belt-and-braces: some macOS environments still need a moment for the
|
|
108
|
+
// dirent to be visible to a fresh Worker process. Poll, then throw if
|
|
109
|
+
// still missing — swallowing here just moves the failure into Worker spawn.
|
|
110
|
+
let visible = false;
|
|
111
|
+
for (let i = 0; i < 10; i++) {
|
|
112
|
+
if (await Bun.file(wrapperPath).exists()) {
|
|
113
|
+
visible = true;
|
|
114
|
+
break;
|
|
115
|
+
}
|
|
116
|
+
await Bun.sleep(5);
|
|
117
|
+
}
|
|
118
|
+
if (!visible) {
|
|
119
|
+
throw new Error(`Wrapper script not visible after fsync: ${wrapperPath}`);
|
|
66
120
|
}
|
|
67
|
-
const wrapperPath = `${tempDir}/worker-${queueName}-${Date.now()}-${Math.random().toString(36).slice(2, 10)}.ts`;
|
|
68
|
-
await Bun.write(wrapperPath, wrapperCode);
|
|
69
121
|
return wrapperPath;
|
|
70
122
|
}
|
|
71
123
|
/**
|
|
@@ -84,4 +136,3 @@ export async function cleanupWrapperScript(wrapperPath) {
|
|
|
84
136
|
// Ignore cleanup errors
|
|
85
137
|
}
|
|
86
138
|
}
|
|
87
|
-
//# sourceMappingURL=wrapper.js.map
|
|
@@ -5,6 +5,15 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { EventEmitter } from 'events';
|
|
7
7
|
import type { ConnectionOptions, ConnectionHealth } from './types';
|
|
8
|
+
/**
|
|
9
|
+
* Sentinel error class for the synthetic rejection issued by close()/rejectAll().
|
|
10
|
+
* Using a dedicated subclass (instead of matching `error.message`) ensures the
|
|
11
|
+
* process-level filter never collides with user code that happens to throw an
|
|
12
|
+
* Error whose message is "Client closed" (Redis, HTTP, DB pool clients all do).
|
|
13
|
+
*/
|
|
14
|
+
export declare class ClientClosedError extends Error {
|
|
15
|
+
constructor(message?: string);
|
|
16
|
+
}
|
|
8
17
|
/**
|
|
9
18
|
* TCP Client - manages connection to bunqueue server
|
|
10
19
|
* Supports pipelining for high-throughput operations
|
|
@@ -93,4 +102,3 @@ export declare class TcpClient extends EventEmitter {
|
|
|
93
102
|
/** Get number of in-flight commands (for monitoring) */
|
|
94
103
|
getInFlightCount(): number;
|
|
95
104
|
}
|
|
96
|
-
//# sourceMappingURL=client.d.ts.map
|
|
@@ -10,6 +10,46 @@ import { ReconnectManager } from './reconnect';
|
|
|
10
10
|
import { createConnection, CommandQueue } from './connection';
|
|
11
11
|
import { pack, unpack } from 'msgpackr';
|
|
12
12
|
import { FrameParser } from '../../infrastructure/server/protocol';
|
|
13
|
+
/**
|
|
14
|
+
* Sentinel error class for the synthetic rejection issued by close()/rejectAll().
|
|
15
|
+
* Using a dedicated subclass (instead of matching `error.message`) ensures the
|
|
16
|
+
* process-level filter never collides with user code that happens to throw an
|
|
17
|
+
* Error whose message is "Client closed" (Redis, HTTP, DB pool clients all do).
|
|
18
|
+
*/
|
|
19
|
+
export class ClientClosedError extends Error {
|
|
20
|
+
constructor(message = 'Client closed') {
|
|
21
|
+
super(message);
|
|
22
|
+
this.name = 'ClientClosedError';
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* One-time installer of a process-level filter that swallows the synthetic
|
|
27
|
+
* ClientClosedError issued by close()/rejectAll(). Catches the rare chained-
|
|
28
|
+
* Promise leak that `cmd.promise?.catch(() => {})` in rejectAll cannot reach
|
|
29
|
+
* (e.g. await-then-throw patterns where the rejection propagates through the
|
|
30
|
+
* awaiter's own Promise chain).
|
|
31
|
+
*
|
|
32
|
+
* Implementation note: the listener is intentionally a no-op for non-matching
|
|
33
|
+
* rejections. process.on('unhandledRejection', fn) calls all registered
|
|
34
|
+
* listeners independently — so existing handlers (e.g. main.ts shutdown
|
|
35
|
+
* handler) still fire for real rejections. We must NOT re-throw here because
|
|
36
|
+
* a throw inside an unhandledRejection listener becomes an uncaughtException,
|
|
37
|
+
* which would interact badly with main.ts's existing uncaughtException
|
|
38
|
+
* handler and cause double-shutdown attempts.
|
|
39
|
+
*/
|
|
40
|
+
let clientClosedFilterInstalled = false;
|
|
41
|
+
function installClientClosedFilter() {
|
|
42
|
+
if (clientClosedFilterInstalled)
|
|
43
|
+
return;
|
|
44
|
+
clientClosedFilterInstalled = true;
|
|
45
|
+
process.on('unhandledRejection', (reason) => {
|
|
46
|
+
if (reason instanceof ClientClosedError) {
|
|
47
|
+
return; // swallow — other listeners (if any) fire independently
|
|
48
|
+
}
|
|
49
|
+
// Non-matching rejection: no-op here. Other registered listeners (or the
|
|
50
|
+
// runtime default per --unhandled-rejections) handle it independently.
|
|
51
|
+
});
|
|
52
|
+
}
|
|
13
53
|
/**
|
|
14
54
|
* TCP Client - manages connection to bunqueue server
|
|
15
55
|
* Supports pipelining for high-throughput operations
|
|
@@ -158,14 +198,17 @@ export class TcpClient extends EventEmitter {
|
|
|
158
198
|
this.emit('warning', { type: 'unknown_response', reqId });
|
|
159
199
|
}
|
|
160
200
|
catch {
|
|
161
|
-
//
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
201
|
+
// Malformed/unparseable frame: the framed byte stream is now
|
|
202
|
+
// unrecoverable (we cannot trust subsequent frame boundaries), and in
|
|
203
|
+
// pipelining mode the legacy `currentCommand` slot is null — so checking
|
|
204
|
+
// it alone would leave every in-flight command hanging until its
|
|
205
|
+
// per-command timeout. Reject ALL pending + in-flight commands promptly
|
|
206
|
+
// and tear down the socket so reconnection (if enabled) can re-establish
|
|
207
|
+
// a clean stream.
|
|
208
|
+
const err = new Error('Invalid response from server');
|
|
209
|
+
this.emit('warning', { type: 'malformed_frame' });
|
|
210
|
+
this.commands.rejectAll(err);
|
|
211
|
+
this.forceReconnect();
|
|
169
212
|
}
|
|
170
213
|
}
|
|
171
214
|
handleClose() {
|
|
@@ -248,7 +291,9 @@ export class TcpClient extends EventEmitter {
|
|
|
248
291
|
this.health.recordCommandSent();
|
|
249
292
|
const reqId = this.generateReqId();
|
|
250
293
|
const commandWithReqId = { ...command, reqId };
|
|
251
|
-
|
|
294
|
+
// Definite-assignment assertion: assigned synchronously by Promise executor below.
|
|
295
|
+
let pendingRef;
|
|
296
|
+
const promise = new Promise((resolve, reject) => {
|
|
252
297
|
const timeout = setTimeout(() => {
|
|
253
298
|
// Try to remove from in-flight
|
|
254
299
|
const removed = this.commands.removeByReqId(reqId);
|
|
@@ -257,7 +302,7 @@ export class TcpClient extends EventEmitter {
|
|
|
257
302
|
reject(new Error('Command timeout'));
|
|
258
303
|
}
|
|
259
304
|
}, this.options.commandTimeout);
|
|
260
|
-
|
|
305
|
+
pendingRef = {
|
|
261
306
|
id: 0,
|
|
262
307
|
reqId,
|
|
263
308
|
command: commandWithReqId,
|
|
@@ -271,11 +316,13 @@ export class TcpClient extends EventEmitter {
|
|
|
271
316
|
},
|
|
272
317
|
timeout,
|
|
273
318
|
};
|
|
274
|
-
// Add to in-flight tracking
|
|
275
|
-
this.commands.addInFlight(pending);
|
|
276
|
-
// Send immediately
|
|
277
|
-
this.socket?.write(FrameParser.frame(pack(commandWithReqId)));
|
|
278
319
|
});
|
|
320
|
+
// Promise constructor executor is synchronous, so pendingRef is assigned.
|
|
321
|
+
pendingRef.promise = promise;
|
|
322
|
+
this.commands.addInFlight(pendingRef);
|
|
323
|
+
// Send immediately (this.socket null-checked at entry of sendDirect)
|
|
324
|
+
this.socket.write(FrameParser.frame(pack(commandWithReqId)));
|
|
325
|
+
return promise;
|
|
279
326
|
}
|
|
280
327
|
/**
|
|
281
328
|
* Process queued commands
|
|
@@ -313,8 +360,10 @@ export class TcpClient extends EventEmitter {
|
|
|
313
360
|
this.health.recordCommandSent();
|
|
314
361
|
const reqId = this.generateReqId();
|
|
315
362
|
const commandWithReqId = { ...command, reqId };
|
|
316
|
-
|
|
317
|
-
|
|
363
|
+
const id = this.commands.nextId();
|
|
364
|
+
// Definite-assignment assertion: assigned synchronously by Promise executor below.
|
|
365
|
+
let pendingRef;
|
|
366
|
+
const promise = new Promise((resolve, reject) => {
|
|
318
367
|
const timeout = setTimeout(() => {
|
|
319
368
|
// Try to remove from queue first
|
|
320
369
|
if (this.commands.remove(id)) {
|
|
@@ -329,7 +378,7 @@ export class TcpClient extends EventEmitter {
|
|
|
329
378
|
reject(new Error('Command timeout'));
|
|
330
379
|
}
|
|
331
380
|
}, this.options.commandTimeout);
|
|
332
|
-
|
|
381
|
+
pendingRef = {
|
|
333
382
|
id,
|
|
334
383
|
reqId,
|
|
335
384
|
command: commandWithReqId,
|
|
@@ -343,24 +392,31 @@ export class TcpClient extends EventEmitter {
|
|
|
343
392
|
},
|
|
344
393
|
timeout,
|
|
345
394
|
};
|
|
346
|
-
// Add to queue
|
|
347
|
-
this.commands.enqueue(pending);
|
|
348
|
-
// Connect if needed, then process queue
|
|
349
|
-
if (!this.connected && !this.connecting) {
|
|
350
|
-
// Connection errors during send are handled by command timeout/rejection
|
|
351
|
-
this.connect().catch(() => { });
|
|
352
|
-
}
|
|
353
|
-
else if (this.connected) {
|
|
354
|
-
this.processQueue();
|
|
355
|
-
}
|
|
356
395
|
});
|
|
396
|
+
// Promise constructor executor is synchronous, so pendingRef is assigned.
|
|
397
|
+
pendingRef.promise = promise;
|
|
398
|
+
this.commands.enqueue(pendingRef);
|
|
399
|
+
// Connect if needed, then process queue
|
|
400
|
+
if (!this.connected && !this.connecting) {
|
|
401
|
+
// Connection errors during send are handled by command timeout/rejection
|
|
402
|
+
this.connect().catch(() => { });
|
|
403
|
+
}
|
|
404
|
+
else if (this.connected) {
|
|
405
|
+
this.processQueue();
|
|
406
|
+
}
|
|
407
|
+
return promise;
|
|
357
408
|
}
|
|
358
409
|
/** Close connection */
|
|
359
410
|
close() {
|
|
360
411
|
this.reconnect.setClosed(true);
|
|
361
412
|
this.health.stopPing();
|
|
362
413
|
this.reconnect.cancelReconnect();
|
|
363
|
-
|
|
414
|
+
// Install a process-level filter for the synthetic ClientClosedError we
|
|
415
|
+
// are about to issue. Catches the rare case where a caller's .catch() is
|
|
416
|
+
// attached on a chained Promise that our cmd.promise?.catch() cannot
|
|
417
|
+
// reach (await-then-throw patterns).
|
|
418
|
+
installClientClosedFilter();
|
|
419
|
+
this.commands.rejectAll(new ClientClosedError());
|
|
364
420
|
if (this.socket) {
|
|
365
421
|
this.socket.end();
|
|
366
422
|
this.socket = null;
|
|
@@ -386,4 +442,3 @@ export class TcpClient extends EventEmitter {
|
|
|
386
442
|
return this.commands.getInFlightCount();
|
|
387
443
|
}
|
|
388
444
|
}
|
|
389
|
-
//# sourceMappingURL=client.js.map
|
|
@@ -165,9 +165,13 @@ export class CommandQueue {
|
|
|
165
165
|
}
|
|
166
166
|
/** Reject all pending and in-flight commands */
|
|
167
167
|
rejectAll(error) {
|
|
168
|
-
// Reject queued commands
|
|
168
|
+
// Reject queued commands. Attach a silent .catch BEFORE rejecting so that
|
|
169
|
+
// callers without a .catch in place (fire-and-forget heartbeats, polling
|
|
170
|
+
// loops mid-await on intentional close) don't surface as unhandled
|
|
171
|
+
// rejections and force non-zero process exit.
|
|
169
172
|
for (const cmd of this.pendingCommands.values()) {
|
|
170
173
|
clearTimeout(cmd.timeout);
|
|
174
|
+
cmd.promise?.catch(() => { });
|
|
171
175
|
cmd.reject(error);
|
|
172
176
|
}
|
|
173
177
|
this.pendingCommands.clear();
|
|
@@ -175,6 +179,7 @@ export class CommandQueue {
|
|
|
175
179
|
// Reject in-flight commands (pipelining)
|
|
176
180
|
for (const cmd of this.inFlightByReqId.values()) {
|
|
177
181
|
clearTimeout(cmd.timeout);
|
|
182
|
+
cmd.promise?.catch(() => { });
|
|
178
183
|
cmd.reject(error);
|
|
179
184
|
}
|
|
180
185
|
this.inFlightByReqId.clear();
|
|
@@ -196,4 +201,3 @@ export class CommandQueue {
|
|
|
196
201
|
}
|
|
197
202
|
}
|
|
198
203
|
}
|
|
199
|
-
//# sourceMappingURL=connection.js.map
|
|
@@ -9,4 +9,3 @@ export { ReconnectManager, type ReconnectConfig } from './reconnect';
|
|
|
9
9
|
export { createConnection, CommandQueue } from './connection';
|
|
10
10
|
export { TcpClient } from './client';
|
|
11
11
|
export { getSharedTcpClient, closeSharedTcpClient } from './shared';
|
|
12
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/client/tcp/index.js
CHANGED
|
@@ -63,6 +63,13 @@ export interface PendingCommand {
|
|
|
63
63
|
resolve: (value: Record<string, unknown>) => void;
|
|
64
64
|
reject: (error: Error) => void;
|
|
65
65
|
timeout: ReturnType<typeof setTimeout>;
|
|
66
|
+
/**
|
|
67
|
+
* Reference to the Promise returned to the caller. Used by rejectAll() on
|
|
68
|
+
* intentional shutdown to attach a silent .catch — prevents unhandled
|
|
69
|
+
* rejections from leaking when callers (fire-and-forget heartbeats, polling
|
|
70
|
+
* loops mid-await) don't have a .catch in place at the moment we reject.
|
|
71
|
+
*/
|
|
72
|
+
promise?: Promise<Record<string, unknown>>;
|
|
66
73
|
}
|
|
67
74
|
/** Socket wrapper interface */
|
|
68
75
|
export interface SocketWrapper {
|
|
@@ -74,4 +81,3 @@ export interface SocketWrapper {
|
|
|
74
81
|
export interface FrameParser {
|
|
75
82
|
addData(data: Uint8Array): Uint8Array[];
|
|
76
83
|
}
|
|
77
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/client/tcp/types.js
CHANGED
package/dist/client/tcpClient.js
CHANGED
package/dist/client/tcpPool.d.ts
CHANGED
|
@@ -60,4 +60,3 @@ export declare function getSharedPool(options?: PoolOptions): TcpConnectionPool;
|
|
|
60
60
|
export declare function releaseSharedPool(pool: TcpConnectionPool): void;
|
|
61
61
|
/** Close all shared pools */
|
|
62
62
|
export declare function closeAllSharedPools(): void;
|
|
63
|
-
//# sourceMappingURL=tcpPool.d.ts.map
|