@monque/core 1.3.0 → 1.5.0

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/index.d.mts CHANGED
@@ -578,16 +578,16 @@ interface MonqueEventMap {
578
578
  };
579
579
  /**
580
580
  * Emitted when multiple jobs are cancelled in bulk.
581
+ * Contains only the count of affected jobs (no individual IDs for O(1) performance).
581
582
  */
582
583
  'jobs:cancelled': {
583
- jobIds: string[];
584
584
  count: number;
585
585
  };
586
586
  /**
587
587
  * Emitted when multiple jobs are retried in bulk.
588
+ * Contains only the count of affected jobs (no individual IDs for O(1) performance).
588
589
  */
589
590
  'jobs:retried': {
590
- jobIds: string[];
591
591
  count: number;
592
592
  };
593
593
  /**
@@ -770,6 +770,37 @@ interface MonqueOptions {
770
770
  * @deprecated Use `instanceConcurrency` instead. Will be removed in a future major version.
771
771
  */
772
772
  maxConcurrency?: number | undefined;
773
+ /**
774
+ * Skip automatic index creation during initialization.
775
+ *
776
+ * When `true`, `initialize()` will not create MongoDB indexes. Use this in production
777
+ * environments where indexes are managed externally (e.g., via migration scripts or DBA
778
+ * tooling). See the production checklist for the full list of required indexes.
779
+ *
780
+ * @default false
781
+ */
782
+ skipIndexCreation?: boolean;
783
+ /**
784
+ * Maximum allowed BSON byte size for job data payloads.
785
+ *
786
+ * When set, `enqueue()`, `now()`, and `schedule()` validate the payload size
787
+ * using `BSON.calculateObjectSize()` before insertion. Jobs exceeding this limit
788
+ * throw `PayloadTooLargeError`.
789
+ *
790
+ * When undefined, no size validation occurs.
791
+ */
792
+ maxPayloadSize?: number | undefined;
793
+ /**
794
+ * TTL in milliseconds for getQueueStats() result caching.
795
+ *
796
+ * When set to a positive value, repeated getQueueStats() calls with the same
797
+ * filter return cached results instead of re-executing the aggregation pipeline.
798
+ * Each unique filter (job name) maintains its own cache entry.
799
+ *
800
+ * Set to 0 to disable caching entirely.
801
+ * @default 5000
802
+ */
803
+ statsCacheTtlMs?: number;
773
804
  }
774
805
  //#endregion
775
806
  //#region src/scheduler/monque.d.ts
@@ -842,9 +873,6 @@ declare class Monque extends EventEmitter {
842
873
  private readonly options;
843
874
  private collection;
844
875
  private workers;
845
- private pollIntervalId;
846
- private heartbeatIntervalId;
847
- private cleanupIntervalId;
848
876
  private isRunning;
849
877
  private isInitialized;
850
878
  private _scheduler;
@@ -852,6 +880,7 @@ declare class Monque extends EventEmitter {
852
880
  private _query;
853
881
  private _processor;
854
882
  private _changeStreamHandler;
883
+ private _lifecycleManager;
855
884
  constructor(db: Db, options?: MonqueOptions);
856
885
  /**
857
886
  * Initialize the scheduler by setting up the MongoDB collection and indexes.
@@ -870,6 +899,8 @@ declare class Monque extends EventEmitter {
870
899
  private get processor();
871
900
  /** @throws {ConnectionError} if not initialized */
872
901
  private get changeStreamHandler();
902
+ /** @throws {ConnectionError} if not initialized */
903
+ private get lifecycleManager();
873
904
  /**
874
905
  * Build the shared context for internal services.
875
906
  */
@@ -894,16 +925,15 @@ declare class Monque extends EventEmitter {
894
925
  */
895
926
  private recoverStaleJobs;
896
927
  /**
897
- * Clean up old completed and failed jobs based on retention policy.
898
- *
899
- * - Removes completed jobs older than `jobRetention.completed`
900
- * - Removes failed jobs older than `jobRetention.failed`
928
+ * Check if another active instance is using the same schedulerInstanceId.
929
+ * Uses heartbeat staleness to distinguish active instances from crashed ones.
901
930
  *
902
- * The cleanup runs concurrently for both statuses if configured.
931
+ * Called after stale recovery to avoid false positives: stale recovery resets
932
+ * jobs with old `lockedAt`, so only jobs with recent heartbeats remain.
903
933
  *
904
- * @returns Promise resolving when all deletion operations complete
934
+ * @throws {ConnectionError} If an active instance with the same ID is detected
905
935
  */
906
- private cleanupJobs;
936
+ private checkInstanceCollision;
907
937
  /**
908
938
  * Enqueue a job for processing.
909
939
  *
@@ -922,6 +952,7 @@ declare class Monque extends EventEmitter {
922
952
  * @param options - Scheduling and deduplication options
923
953
  * @returns Promise resolving to the created or existing job document
924
954
  * @throws {ConnectionError} If database operation fails or scheduler not initialized
955
+ * @throws {PayloadTooLargeError} If payload exceeds configured `maxPayloadSize`
925
956
  *
926
957
  * @example Basic job enqueueing
927
958
  * ```typescript
@@ -947,6 +978,8 @@ declare class Monque extends EventEmitter {
947
978
  * });
948
979
  * // Subsequent enqueues with same uniqueKey return existing pending/processing job
949
980
  * ```
981
+ *
982
+ * @see {@link JobScheduler.enqueue}
950
983
  */
951
984
  enqueue<T>(name: string, data: T, options?: EnqueueOptions): Promise<PersistedJob<T>>;
952
985
  /**
@@ -976,6 +1009,8 @@ declare class Monque extends EventEmitter {
976
1009
  * await monque.now('process-order', { orderId: order.id });
977
1010
  * return order; // Return immediately, processing happens async
978
1011
  * ```
1012
+ *
1013
+ * @see {@link JobScheduler.now}
979
1014
  */
980
1015
  now<T>(name: string, data: T): Promise<PersistedJob<T>>;
981
1016
  /**
@@ -998,6 +1033,7 @@ declare class Monque extends EventEmitter {
998
1033
  * @returns Promise resolving to the created job document with `repeatInterval` set
999
1034
  * @throws {InvalidCronError} If cron expression is invalid
1000
1035
  * @throws {ConnectionError} If database operation fails or scheduler not initialized
1036
+ * @throws {PayloadTooLargeError} If payload exceeds configured `maxPayloadSize`
1001
1037
  *
1002
1038
  * @example Hourly cleanup job
1003
1039
  * ```typescript
@@ -1021,6 +1057,8 @@ declare class Monque extends EventEmitter {
1021
1057
  * recipients: ['analytics@example.com']
1022
1058
  * });
1023
1059
  * ```
1060
+ *
1061
+ * @see {@link JobScheduler.schedule}
1024
1062
  */
1025
1063
  schedule<T>(cron: string, name: string, data: T, options?: ScheduleOptions): Promise<PersistedJob<T>>;
1026
1064
  /**
@@ -1039,6 +1077,8 @@ declare class Monque extends EventEmitter {
1039
1077
  * const job = await monque.enqueue('report', { type: 'daily' });
1040
1078
  * await monque.cancelJob(job._id.toString());
1041
1079
  * ```
1080
+ *
1081
+ * @see {@link JobManager.cancelJob}
1042
1082
  */
1043
1083
  cancelJob(jobId: string): Promise<PersistedJob<unknown> | null>;
1044
1084
  /**
@@ -1058,6 +1098,8 @@ declare class Monque extends EventEmitter {
1058
1098
  * await monque.retryJob(job._id.toString());
1059
1099
  * });
1060
1100
  * ```
1101
+ *
1102
+ * @see {@link JobManager.retryJob}
1061
1103
  */
1062
1104
  retryJob(jobId: string): Promise<PersistedJob<unknown> | null>;
1063
1105
  /**
@@ -1075,6 +1117,8 @@ declare class Monque extends EventEmitter {
1075
1117
  * const nextHour = new Date(Date.now() + 60 * 60 * 1000);
1076
1118
  * await monque.rescheduleJob(jobId, nextHour);
1077
1119
  * ```
1120
+ *
1121
+ * @see {@link JobManager.rescheduleJob}
1078
1122
  */
1079
1123
  rescheduleJob(jobId: string, runAt: Date): Promise<PersistedJob<unknown> | null>;
1080
1124
  /**
@@ -1093,17 +1137,20 @@ declare class Monque extends EventEmitter {
1093
1137
  * console.log('Job permanently removed');
1094
1138
  * }
1095
1139
  * ```
1140
+ *
1141
+ * @see {@link JobManager.deleteJob}
1096
1142
  */
1097
1143
  deleteJob(jobId: string): Promise<boolean>;
1098
1144
  /**
1099
- * Cancel multiple jobs matching the given filter.
1145
+ * Cancel multiple jobs matching the given filter via a single updateMany call.
1100
1146
  *
1101
- * Only cancels jobs in 'pending' status. Jobs in other states are collected
1102
- * as errors in the result. Emits a 'jobs:cancelled' event with the IDs of
1147
+ * Only cancels jobs in 'pending' status the status guard is applied regardless
1148
+ * of what the filter specifies. Jobs in other states are silently skipped (not
1149
+ * matched by the query). Emits a 'jobs:cancelled' event with the count of
1103
1150
  * successfully cancelled jobs.
1104
1151
  *
1105
1152
  * @param filter - Selector for which jobs to cancel (name, status, date range)
1106
- * @returns Result with count of cancelled jobs and any errors encountered
1153
+ * @returns Result with count of cancelled jobs (errors array always empty for bulk ops)
1107
1154
  *
1108
1155
  * @example Cancel all pending jobs for a queue
1109
1156
  * ```typescript
@@ -1113,17 +1160,20 @@ declare class Monque extends EventEmitter {
1113
1160
  * });
1114
1161
  * console.log(`Cancelled ${result.count} jobs`);
1115
1162
  * ```
1163
+ *
1164
+ * @see {@link JobManager.cancelJobs}
1116
1165
  */
1117
1166
  cancelJobs(filter: JobSelector): Promise<BulkOperationResult>;
1118
1167
  /**
1119
- * Retry multiple jobs matching the given filter.
1168
+ * Retry multiple jobs matching the given filter via a single pipeline-style updateMany call.
1120
1169
  *
1121
- * Only retries jobs in 'failed' or 'cancelled' status. Jobs in other states
1122
- * are collected as errors in the result. Emits a 'jobs:retried' event with
1123
- * the IDs of successfully retried jobs.
1170
+ * Only retries jobs in 'failed' or 'cancelled' status the status guard is applied
1171
+ * regardless of what the filter specifies. Jobs in other states are silently skipped.
1172
+ * Uses `$rand` for per-document staggered `nextRunAt` to avoid thundering herd on retry.
1173
+ * Emits a 'jobs:retried' event with the count of successfully retried jobs.
1124
1174
  *
1125
1175
  * @param filter - Selector for which jobs to retry (name, status, date range)
1126
- * @returns Result with count of retried jobs and any errors encountered
1176
+ * @returns Result with count of retried jobs (errors array always empty for bulk ops)
1127
1177
  *
1128
1178
  * @example Retry all failed jobs
1129
1179
  * ```typescript
@@ -1132,12 +1182,15 @@ declare class Monque extends EventEmitter {
1132
1182
  * });
1133
1183
  * console.log(`Retried ${result.count} jobs`);
1134
1184
  * ```
1185
+ *
1186
+ * @see {@link JobManager.retryJobs}
1135
1187
  */
1136
1188
  retryJobs(filter: JobSelector): Promise<BulkOperationResult>;
1137
1189
  /**
1138
1190
  * Delete multiple jobs matching the given filter.
1139
1191
  *
1140
1192
  * Deletes jobs in any status. Uses a batch delete for efficiency.
1193
+ * Emits a 'jobs:deleted' event with the count of deleted jobs.
1141
1194
  * Does not emit individual 'job:deleted' events to avoid noise.
1142
1195
  *
1143
1196
  * @param filter - Selector for which jobs to delete (name, status, date range)
@@ -1152,6 +1205,8 @@ declare class Monque extends EventEmitter {
1152
1205
  * });
1153
1206
  * console.log(`Deleted ${result.count} jobs`);
1154
1207
  * ```
1208
+ *
1209
+ * @see {@link JobManager.deleteJobs}
1155
1210
  */
1156
1211
  deleteJobs(filter: JobSelector): Promise<BulkOperationResult>;
1157
1212
  /**
@@ -1184,6 +1239,8 @@ declare class Monque extends EventEmitter {
1184
1239
  * res.json(job);
1185
1240
  * });
1186
1241
  * ```
1242
+ *
1243
+ * @see {@link JobQueryService.getJob}
1187
1244
  */
1188
1245
  getJob<T = unknown>(id: ObjectId): Promise<PersistedJob<T> | null>;
1189
1246
  /**
@@ -1227,6 +1284,8 @@ declare class Monque extends EventEmitter {
1227
1284
  * const jobs = await monque.getJobs();
1228
1285
  * const pendingRecurring = jobs.filter(job => isPendingJob(job) && isRecurringJob(job));
1229
1286
  * ```
1287
+ *
1288
+ * @see {@link JobQueryService.getJobs}
1230
1289
  */
1231
1290
  getJobs<T = unknown>(filter?: GetJobsFilter): Promise<PersistedJob<T>[]>;
1232
1291
  /**
@@ -1257,6 +1316,8 @@ declare class Monque extends EventEmitter {
1257
1316
  * });
1258
1317
  * }
1259
1318
  * ```
1319
+ *
1320
+ * @see {@link JobQueryService.getJobsWithCursor}
1260
1321
  */
1261
1322
  getJobsWithCursor<T = unknown>(options?: CursorOptions): Promise<CursorPage<T>>;
1262
1323
  /**
@@ -1265,6 +1326,9 @@ declare class Monque extends EventEmitter {
1265
1326
  * Uses MongoDB aggregation pipeline for efficient server-side calculation.
1266
1327
  * Returns counts per status and optional average processing duration for completed jobs.
1267
1328
  *
1329
+ * Results are cached per unique filter with a configurable TTL (default 5s).
1330
+ * Set `statsCacheTtlMs: 0` to disable caching.
1331
+ *
1268
1332
  * @param filter - Optional filter to scope statistics by job name
1269
1333
  * @returns Promise resolving to queue statistics
1270
1334
  * @throws {AggregationTimeoutError} If aggregation exceeds 30 second timeout
@@ -1281,6 +1345,8 @@ declare class Monque extends EventEmitter {
1281
1345
  * const emailStats = await monque.getQueueStats({ name: 'send-email' });
1282
1346
  * console.log(`${emailStats.total} email jobs in queue`);
1283
1347
  * ```
1348
+ *
1349
+ * @see {@link JobQueryService.getQueueStats}
1284
1350
  */
1285
1351
  getQueueStats(filter?: Pick<JobSelector, 'name'>): Promise<QueueStats>;
1286
1352
  /**
@@ -1494,18 +1560,6 @@ declare class Monque extends EventEmitter {
1494
1560
  * @returns Array of active Job objects
1495
1561
  */
1496
1562
  private getActiveJobsList;
1497
- /**
1498
- * Convert a MongoDB document to a typed PersistedJob object.
1499
- *
1500
- * Maps raw MongoDB document fields to the strongly-typed `PersistedJob<T>` interface,
1501
- * ensuring type safety and handling optional fields (`lockedAt`, `failReason`, etc.).
1502
- *
1503
- * @private
1504
- * @template T - The job data payload type
1505
- * @param doc - The raw MongoDB document with `_id`
1506
- * @returns A strongly-typed PersistedJob object with guaranteed `_id`
1507
- */
1508
- private documentToPersistedJob;
1509
1563
  /**
1510
1564
  * Type-safe event emitter methods
1511
1565
  */
@@ -1666,6 +1720,27 @@ declare class InvalidCursorError extends MonqueError {
1666
1720
  declare class AggregationTimeoutError extends MonqueError {
1667
1721
  constructor(message?: string);
1668
1722
  }
1723
+ /**
1724
+ * Error thrown when a job payload exceeds the configured maximum BSON byte size.
1725
+ *
1726
+ * @example
1727
+ * ```typescript
1728
+ * const monque = new Monque(db, { maxPayloadSize: 1_000_000 }); // 1 MB
1729
+ *
1730
+ * try {
1731
+ * await monque.enqueue('job', hugePayload);
1732
+ * } catch (error) {
1733
+ * if (error instanceof PayloadTooLargeError) {
1734
+ * console.error(`Payload ${error.actualSize} bytes exceeds limit ${error.maxSize} bytes`);
1735
+ * }
1736
+ * }
1737
+ * ```
1738
+ */
1739
+ declare class PayloadTooLargeError extends MonqueError {
1740
+ readonly actualSize: number;
1741
+ readonly maxSize: number;
1742
+ constructor(message: string, actualSize: number, maxSize: number);
1743
+ }
1669
1744
  //#endregion
1670
1745
  //#region src/shared/utils/backoff.d.ts
1671
1746
  /**
@@ -1755,5 +1830,5 @@ declare function getNextCronDate(expression: string, currentDate?: Date): Date;
1755
1830
  */
1756
1831
  declare function validateCronExpression(expression: string): void;
1757
1832
  //#endregion
1758
- export { AggregationTimeoutError, type BulkOperationResult, ConnectionError, CursorDirection, type CursorOptions, type CursorPage, DEFAULT_BASE_INTERVAL, DEFAULT_MAX_BACKOFF_DELAY, type EnqueueOptions, type GetJobsFilter, InvalidCronError, InvalidCursorError, type Job, type JobHandler, type JobSelector, JobStateError, JobStatus, type JobStatusType, Monque, MonqueError, type MonqueEventMap, type MonqueOptions, type PersistedJob, type QueueStats, type ScheduleOptions, ShutdownTimeoutError, type WorkerOptions, WorkerRegistrationError, calculateBackoff, calculateBackoffDelay, getNextCronDate, isCancelledJob, isCompletedJob, isFailedJob, isPendingJob, isPersistedJob, isProcessingJob, isRecurringJob, isValidJobStatus, validateCronExpression };
1833
+ export { AggregationTimeoutError, type BulkOperationResult, ConnectionError, CursorDirection, type CursorOptions, type CursorPage, DEFAULT_BASE_INTERVAL, DEFAULT_MAX_BACKOFF_DELAY, type EnqueueOptions, type GetJobsFilter, InvalidCronError, InvalidCursorError, type Job, type JobHandler, type JobSelector, JobStateError, JobStatus, type JobStatusType, Monque, MonqueError, type MonqueEventMap, type MonqueOptions, PayloadTooLargeError, type PersistedJob, type QueueStats, type ScheduleOptions, ShutdownTimeoutError, type WorkerOptions, WorkerRegistrationError, calculateBackoff, calculateBackoffDelay, getNextCronDate, isCancelledJob, isCompletedJob, isFailedJob, isPendingJob, isPersistedJob, isProcessingJob, isRecurringJob, isValidJobStatus, validateCronExpression };
1759
1834
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/jobs/types.ts","../src/jobs/guards.ts","../src/events/types.ts","../src/workers/types.ts","../src/scheduler/types.ts","../src/scheduler/monque.ts","../src/shared/errors.ts","../src/shared/utils/backoff.ts","../src/shared/utils/cron.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/jobs/types.ts","../src/jobs/guards.ts","../src/events/types.ts","../src/workers/types.ts","../src/scheduler/types.ts","../src/scheduler/monque.ts","../src/shared/errors.ts","../src/shared/utils/backoff.ts","../src/shared/utils/cron.ts"],"mappings":"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"}