flashq 0.3.4 → 0.3.5

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.
@@ -0,0 +1,67 @@
1
+ /**
2
+ * SDK Constants
3
+ *
4
+ * Centralized configuration constants to avoid magic numbers
5
+ * and ensure consistency across the codebase.
6
+ */
7
+ /** Maximum allowed job data size in bytes (1MB) */
8
+ export declare const MAX_JOB_DATA_SIZE: number;
9
+ /** Maximum number of jobs per batch operation */
10
+ export declare const MAX_BATCH_SIZE = 1000;
11
+ /** Maximum queue name length */
12
+ export declare const MAX_QUEUE_NAME_LENGTH = 256;
13
+ /** Default connection timeout in ms */
14
+ export declare const DEFAULT_CONNECTION_TIMEOUT = 5000;
15
+ /** Default server-side pull timeout in ms */
16
+ export declare const DEFAULT_PULL_TIMEOUT = 60000;
17
+ /** Additional client timeout buffer over server timeout */
18
+ export declare const CLIENT_TIMEOUT_BUFFER = 5000;
19
+ /** Default job completion wait timeout in ms */
20
+ export declare const DEFAULT_FINISHED_TIMEOUT = 30000;
21
+ /** Default worker concurrency */
22
+ export declare const DEFAULT_WORKER_CONCURRENCY = 10;
23
+ /** Default worker batch size */
24
+ export declare const DEFAULT_WORKER_BATCH_SIZE = 100;
25
+ /** Worker pull timeout for responsive shutdown (ms) */
26
+ export declare const WORKER_PULL_TIMEOUT = 500;
27
+ /** Worker error retry delay (ms) */
28
+ export declare const WORKER_ERROR_RETRY_DELAY = 1000;
29
+ /** Default graceful shutdown timeout (ms) */
30
+ export declare const DEFAULT_CLOSE_TIMEOUT = 30000;
31
+ /** Worker job completion check interval (ms) */
32
+ export declare const WORKER_JOB_CHECK_INTERVAL = 50;
33
+ /** Default initial reconnect delay in ms */
34
+ export declare const DEFAULT_RECONNECT_DELAY = 1000;
35
+ /** Default max reconnect delay in ms */
36
+ export declare const DEFAULT_MAX_RECONNECT_DELAY = 30000;
37
+ /** Default max reconnect attempts (0 = infinite) */
38
+ export declare const DEFAULT_MAX_RECONNECT_ATTEMPTS = 10;
39
+ /** Reconnect jitter factor (0.3 = 30% of base delay) */
40
+ export declare const RECONNECT_JITTER_FACTOR = 0.3;
41
+ /** Default retry max attempts */
42
+ export declare const DEFAULT_RETRY_MAX_ATTEMPTS = 3;
43
+ /** Default retry initial delay in ms */
44
+ export declare const DEFAULT_RETRY_INITIAL_DELAY = 100;
45
+ /** Default retry max delay in ms */
46
+ export declare const DEFAULT_RETRY_MAX_DELAY = 5000;
47
+ /** Default backoff multiplier */
48
+ export declare const DEFAULT_BACKOFF_MULTIPLIER = 2;
49
+ /** Jitter range factor (0.25 = ±25%) */
50
+ export declare const RETRY_JITTER_FACTOR = 0.25;
51
+ /** Default compression enabled state */
52
+ export declare const DEFAULT_COMPRESSION_ENABLED = false;
53
+ /** Default minimum payload size to compress in bytes */
54
+ export declare const DEFAULT_COMPRESSION_THRESHOLD = 1024;
55
+ /** Default max queued requests during disconnect */
56
+ export declare const DEFAULT_MAX_QUEUED_REQUESTS = 100;
57
+ /** Default job priority */
58
+ export declare const DEFAULT_JOB_PRIORITY = 0;
59
+ /** Default stall detection timeout in ms */
60
+ export declare const DEFAULT_STALL_TIMEOUT = 30000;
61
+ /** Default TCP port */
62
+ export declare const DEFAULT_TCP_PORT = 6789;
63
+ /** Default HTTP port */
64
+ export declare const DEFAULT_HTTP_PORT = 6790;
65
+ /** Default host */
66
+ export declare const DEFAULT_HOST = "localhost";
67
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,mDAAmD;AACnD,eAAO,MAAM,iBAAiB,QAAc,CAAC;AAE7C,iDAAiD;AACjD,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC,gCAAgC;AAChC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAIzC,uCAAuC;AACvC,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C,6CAA6C;AAC7C,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAE1C,2DAA2D;AAC3D,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,gDAAgD;AAChD,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAI9C,iCAAiC;AACjC,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,gCAAgC;AAChC,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C,uDAAuD;AACvD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,oCAAoC;AACpC,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C,gDAAgD;AAChD,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAI5C,4CAA4C;AAC5C,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C,wCAAwC;AACxC,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD,oDAAoD;AACpD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD,wDAAwD;AACxD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAI3C,iCAAiC;AACjC,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C,wCAAwC;AACxC,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,oCAAoC;AACpC,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C,iCAAiC;AACjC,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C,wCAAwC;AACxC,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAIxC,wCAAwC;AACxC,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD,wDAAwD;AACxD,eAAO,MAAM,6BAA6B,OAAO,CAAC;AAIlD,oDAAoD;AACpD,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAI/C,2BAA2B;AAC3B,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,4CAA4C;AAC5C,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAI3C,uBAAuB;AACvB,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,wBAAwB;AACxB,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,mBAAmB;AACnB,eAAO,MAAM,YAAY,cAAc,CAAC"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ /**
3
+ * SDK Constants
4
+ *
5
+ * Centralized configuration constants to avoid magic numbers
6
+ * and ensure consistency across the codebase.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.DEFAULT_HOST = exports.DEFAULT_HTTP_PORT = exports.DEFAULT_TCP_PORT = exports.DEFAULT_STALL_TIMEOUT = exports.DEFAULT_JOB_PRIORITY = exports.DEFAULT_MAX_QUEUED_REQUESTS = exports.DEFAULT_COMPRESSION_THRESHOLD = exports.DEFAULT_COMPRESSION_ENABLED = exports.RETRY_JITTER_FACTOR = exports.DEFAULT_BACKOFF_MULTIPLIER = exports.DEFAULT_RETRY_MAX_DELAY = exports.DEFAULT_RETRY_INITIAL_DELAY = exports.DEFAULT_RETRY_MAX_ATTEMPTS = exports.RECONNECT_JITTER_FACTOR = exports.DEFAULT_MAX_RECONNECT_ATTEMPTS = exports.DEFAULT_MAX_RECONNECT_DELAY = exports.DEFAULT_RECONNECT_DELAY = exports.WORKER_JOB_CHECK_INTERVAL = exports.DEFAULT_CLOSE_TIMEOUT = exports.WORKER_ERROR_RETRY_DELAY = exports.WORKER_PULL_TIMEOUT = exports.DEFAULT_WORKER_BATCH_SIZE = exports.DEFAULT_WORKER_CONCURRENCY = exports.DEFAULT_FINISHED_TIMEOUT = exports.CLIENT_TIMEOUT_BUFFER = exports.DEFAULT_PULL_TIMEOUT = exports.DEFAULT_CONNECTION_TIMEOUT = exports.MAX_QUEUE_NAME_LENGTH = exports.MAX_BATCH_SIZE = exports.MAX_JOB_DATA_SIZE = void 0;
10
+ // ============== Validation Limits ==============
11
+ /** Maximum allowed job data size in bytes (1MB) */
12
+ exports.MAX_JOB_DATA_SIZE = 1024 * 1024;
13
+ /** Maximum number of jobs per batch operation */
14
+ exports.MAX_BATCH_SIZE = 1000;
15
+ /** Maximum queue name length */
16
+ exports.MAX_QUEUE_NAME_LENGTH = 256;
17
+ // ============== Timeouts ==============
18
+ /** Default connection timeout in ms */
19
+ exports.DEFAULT_CONNECTION_TIMEOUT = 5000;
20
+ /** Default server-side pull timeout in ms */
21
+ exports.DEFAULT_PULL_TIMEOUT = 60000;
22
+ /** Additional client timeout buffer over server timeout */
23
+ exports.CLIENT_TIMEOUT_BUFFER = 5000;
24
+ /** Default job completion wait timeout in ms */
25
+ exports.DEFAULT_FINISHED_TIMEOUT = 30000;
26
+ // ============== Worker Defaults ==============
27
+ /** Default worker concurrency */
28
+ exports.DEFAULT_WORKER_CONCURRENCY = 10;
29
+ /** Default worker batch size */
30
+ exports.DEFAULT_WORKER_BATCH_SIZE = 100;
31
+ /** Worker pull timeout for responsive shutdown (ms) */
32
+ exports.WORKER_PULL_TIMEOUT = 500;
33
+ /** Worker error retry delay (ms) */
34
+ exports.WORKER_ERROR_RETRY_DELAY = 1000;
35
+ /** Default graceful shutdown timeout (ms) */
36
+ exports.DEFAULT_CLOSE_TIMEOUT = 30000;
37
+ /** Worker job completion check interval (ms) */
38
+ exports.WORKER_JOB_CHECK_INTERVAL = 50;
39
+ // ============== Reconnection ==============
40
+ /** Default initial reconnect delay in ms */
41
+ exports.DEFAULT_RECONNECT_DELAY = 1000;
42
+ /** Default max reconnect delay in ms */
43
+ exports.DEFAULT_MAX_RECONNECT_DELAY = 30000;
44
+ /** Default max reconnect attempts (0 = infinite) */
45
+ exports.DEFAULT_MAX_RECONNECT_ATTEMPTS = 10;
46
+ /** Reconnect jitter factor (0.3 = 30% of base delay) */
47
+ exports.RECONNECT_JITTER_FACTOR = 0.3;
48
+ // ============== Retry ==============
49
+ /** Default retry max attempts */
50
+ exports.DEFAULT_RETRY_MAX_ATTEMPTS = 3;
51
+ /** Default retry initial delay in ms */
52
+ exports.DEFAULT_RETRY_INITIAL_DELAY = 100;
53
+ /** Default retry max delay in ms */
54
+ exports.DEFAULT_RETRY_MAX_DELAY = 5000;
55
+ /** Default backoff multiplier */
56
+ exports.DEFAULT_BACKOFF_MULTIPLIER = 2;
57
+ /** Jitter range factor (0.25 = ±25%) */
58
+ exports.RETRY_JITTER_FACTOR = 0.25;
59
+ // ============== Compression ==============
60
+ /** Default compression enabled state */
61
+ exports.DEFAULT_COMPRESSION_ENABLED = false;
62
+ /** Default minimum payload size to compress in bytes */
63
+ exports.DEFAULT_COMPRESSION_THRESHOLD = 1024;
64
+ // ============== Request Queue ==============
65
+ /** Default max queued requests during disconnect */
66
+ exports.DEFAULT_MAX_QUEUED_REQUESTS = 100;
67
+ // ============== Job Defaults ==============
68
+ /** Default job priority */
69
+ exports.DEFAULT_JOB_PRIORITY = 0;
70
+ /** Default stall detection timeout in ms */
71
+ exports.DEFAULT_STALL_TIMEOUT = 30000;
72
+ // ============== Ports ==============
73
+ /** Default TCP port */
74
+ exports.DEFAULT_TCP_PORT = 6789;
75
+ /** Default HTTP port */
76
+ exports.DEFAULT_HTTP_PORT = 6790;
77
+ /** Default host */
78
+ exports.DEFAULT_HOST = 'localhost';
79
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,kDAAkD;AAElD,mDAAmD;AACtC,QAAA,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,iDAAiD;AACpC,QAAA,cAAc,GAAG,IAAI,CAAC;AAEnC,gCAAgC;AACnB,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAEzC,yCAAyC;AAEzC,uCAAuC;AAC1B,QAAA,0BAA0B,GAAG,IAAI,CAAC;AAE/C,6CAA6C;AAChC,QAAA,oBAAoB,GAAG,KAAK,CAAC;AAE1C,2DAA2D;AAC9C,QAAA,qBAAqB,GAAG,IAAI,CAAC;AAE1C,gDAAgD;AACnC,QAAA,wBAAwB,GAAG,KAAK,CAAC;AAE9C,gDAAgD;AAEhD,iCAAiC;AACpB,QAAA,0BAA0B,GAAG,EAAE,CAAC;AAE7C,gCAAgC;AACnB,QAAA,yBAAyB,GAAG,GAAG,CAAC;AAE7C,uDAAuD;AAC1C,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC,oCAAoC;AACvB,QAAA,wBAAwB,GAAG,IAAI,CAAC;AAE7C,6CAA6C;AAChC,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAE3C,gDAAgD;AACnC,QAAA,yBAAyB,GAAG,EAAE,CAAC;AAE5C,6CAA6C;AAE7C,4CAA4C;AAC/B,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAE5C,wCAAwC;AAC3B,QAAA,2BAA2B,GAAG,KAAK,CAAC;AAEjD,oDAAoD;AACvC,QAAA,8BAA8B,GAAG,EAAE,CAAC;AAEjD,wDAAwD;AAC3C,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,sCAAsC;AAEtC,iCAAiC;AACpB,QAAA,0BAA0B,GAAG,CAAC,CAAC;AAE5C,wCAAwC;AAC3B,QAAA,2BAA2B,GAAG,GAAG,CAAC;AAE/C,oCAAoC;AACvB,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAE5C,iCAAiC;AACpB,QAAA,0BAA0B,GAAG,CAAC,CAAC;AAE5C,wCAAwC;AAC3B,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAExC,4CAA4C;AAE5C,wCAAwC;AAC3B,QAAA,2BAA2B,GAAG,KAAK,CAAC;AAEjD,wDAAwD;AAC3C,QAAA,6BAA6B,GAAG,IAAI,CAAC;AAElD,8CAA8C;AAE9C,oDAAoD;AACvC,QAAA,2BAA2B,GAAG,GAAG,CAAC;AAE/C,6CAA6C;AAE7C,2BAA2B;AACd,QAAA,oBAAoB,GAAG,CAAC,CAAC;AAEtC,4CAA4C;AAC/B,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAE3C,sCAAsC;AAEtC,uBAAuB;AACV,QAAA,gBAAgB,GAAG,IAAI,CAAC;AAErC,wBAAwB;AACX,QAAA,iBAAiB,GAAG,IAAI,CAAC;AAEtC,mBAAmB;AACN,QAAA,YAAY,GAAG,WAAW,CAAC"}
package/dist/index.d.ts CHANGED
@@ -19,12 +19,14 @@
19
19
  * @packageDocumentation
20
20
  */
21
21
  export { Queue } from './queue';
22
- export type { QueueOptions, JobOptions } from './queue';
22
+ export type { QueueOptions, JobOptions, JobReference } from './queue';
23
23
  export { Worker } from './worker';
24
24
  export type { BullMQWorkerOptions } from './worker';
25
25
  export { FlashQ, FlashQ as default } from './client';
26
26
  export { MAX_BATCH_SIZE, MAX_JOB_DATA_SIZE } from './client/methods/core';
27
- export { validateQueueName, validateJobDataSize } from './client/connection';
27
+ export { validateQueueName, validateJobDataSize, mapJobToPayload } from './client/connection';
28
+ export type { JobPayload } from './client/connection';
29
+ export * as Constants from './constants';
28
30
  export { EventSubscriber } from './events';
29
31
  export { FlashQError, ConnectionError, AuthenticationError, TimeoutError, ValidationError, ServerError, JobNotFoundError, QueueNotFoundError, DuplicateJobError, QueuePausedError, RateLimitError, ConcurrencyLimitError, BatchError, Errors, } from './errors';
30
32
  export { withRetry, retryable, isRetryable, RetryPresets } from './utils/retry';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,MAAM,GACP,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClF,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGpF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClF,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,EACf,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,GAAG,EACH,QAAQ,EACR,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEtE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC9F,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,MAAM,GACP,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClF,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGpF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClF,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,EACf,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,GAAG,EACH,QAAQ,EACR,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -19,8 +19,41 @@
19
19
  *
20
20
  * @packageDocumentation
21
21
  */
22
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
23
+ if (k2 === undefined) k2 = k;
24
+ var desc = Object.getOwnPropertyDescriptor(m, k);
25
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
26
+ desc = { enumerable: true, get: function() { return m[k]; } };
27
+ }
28
+ Object.defineProperty(o, k2, desc);
29
+ }) : (function(o, m, k, k2) {
30
+ if (k2 === undefined) k2 = k;
31
+ o[k2] = m[k];
32
+ }));
33
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
34
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
35
+ }) : function(o, v) {
36
+ o["default"] = v;
37
+ });
38
+ var __importStar = (this && this.__importStar) || (function () {
39
+ var ownKeys = function(o) {
40
+ ownKeys = Object.getOwnPropertyNames || function (o) {
41
+ var ar = [];
42
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
43
+ return ar;
44
+ };
45
+ return ownKeys(o);
46
+ };
47
+ return function (mod) {
48
+ if (mod && mod.__esModule) return mod;
49
+ var result = {};
50
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
51
+ __setModuleDefault(result, mod);
52
+ return result;
53
+ };
54
+ })();
22
55
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.getDuration = exports.createHookContext = exports.callErrorHook = exports.callHook = exports.setGlobalLogger = exports.getLogger = exports.createLogger = exports.Logger = exports.RetryPresets = exports.isRetryable = exports.retryable = exports.withRetry = exports.Errors = exports.BatchError = exports.ConcurrencyLimitError = exports.RateLimitError = exports.QueuePausedError = exports.DuplicateJobError = exports.QueueNotFoundError = exports.JobNotFoundError = exports.ServerError = exports.ValidationError = exports.TimeoutError = exports.AuthenticationError = exports.ConnectionError = exports.FlashQError = exports.EventSubscriber = exports.validateJobDataSize = exports.validateQueueName = exports.MAX_JOB_DATA_SIZE = exports.MAX_BATCH_SIZE = exports.default = exports.FlashQ = exports.Worker = exports.Queue = void 0;
56
+ exports.getDuration = exports.createHookContext = exports.callErrorHook = exports.callHook = exports.setGlobalLogger = exports.getLogger = exports.createLogger = exports.Logger = exports.RetryPresets = exports.isRetryable = exports.retryable = exports.withRetry = exports.Errors = exports.BatchError = exports.ConcurrencyLimitError = exports.RateLimitError = exports.QueuePausedError = exports.DuplicateJobError = exports.QueueNotFoundError = exports.JobNotFoundError = exports.ServerError = exports.ValidationError = exports.TimeoutError = exports.AuthenticationError = exports.ConnectionError = exports.FlashQError = exports.EventSubscriber = exports.Constants = exports.mapJobToPayload = exports.validateJobDataSize = exports.validateQueueName = exports.MAX_JOB_DATA_SIZE = exports.MAX_BATCH_SIZE = exports.default = exports.FlashQ = exports.Worker = exports.Queue = void 0;
24
57
  // BullMQ-compatible API
25
58
  var queue_1 = require("./queue");
26
59
  Object.defineProperty(exports, "Queue", { enumerable: true, get: function () { return queue_1.Queue; } });
@@ -37,6 +70,9 @@ Object.defineProperty(exports, "MAX_JOB_DATA_SIZE", { enumerable: true, get: fun
37
70
  var connection_1 = require("./client/connection");
38
71
  Object.defineProperty(exports, "validateQueueName", { enumerable: true, get: function () { return connection_1.validateQueueName; } });
39
72
  Object.defineProperty(exports, "validateJobDataSize", { enumerable: true, get: function () { return connection_1.validateJobDataSize; } });
73
+ Object.defineProperty(exports, "mapJobToPayload", { enumerable: true, get: function () { return connection_1.mapJobToPayload; } });
74
+ // All constants for advanced configuration
75
+ exports.Constants = __importStar(require("./constants"));
40
76
  // Optional: Real-time events
41
77
  var events_1 = require("./events");
42
78
  Object.defineProperty(exports, "EventSubscriber", { enumerable: true, get: function () { return events_1.EventSubscriber; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAEH,wBAAwB;AACxB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AAGf,gBAAgB;AAChB,mCAAqD;AAA5C,gGAAA,MAAM,OAAA;AAAE,iGAAA,MAAM,OAAW;AAElC,qCAAqC;AACrC,8CAA0E;AAAjE,sGAAA,cAAc,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAC1C,kDAA6E;AAApE,+GAAA,iBAAiB,OAAA;AAAE,iHAAA,mBAAmB,OAAA;AAE/C,6BAA6B;AAC7B,mCAA2C;AAAlC,yGAAA,eAAe,OAAA;AAExB,SAAS;AACT,mCAekB;AAdhB,qGAAA,WAAW,OAAA;AACX,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,sGAAA,YAAY,OAAA;AACZ,yGAAA,eAAe,OAAA;AACf,qGAAA,WAAW,OAAA;AACX,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,wGAAA,cAAc,OAAA;AACd,+GAAA,qBAAqB,OAAA;AACrB,oGAAA,UAAU,OAAA;AACV,gGAAA,MAAM,OAAA;AAGR,kBAAkB;AAClB,uCAAgF;AAAvE,kGAAA,SAAS,OAAA;AAAE,kGAAA,SAAS,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,qGAAA,YAAY,OAAA;AAGxD,mBAAmB;AACnB,yCAAkF;AAAzE,gGAAA,MAAM,OAAA;AAAE,sGAAA,YAAY,OAAA;AAAE,mGAAA,SAAS,OAAA;AAAE,yGAAA,eAAe,OAAA;AAGzD,gDAAgD;AAChD,iCAAkF;AAAzE,iGAAA,QAAQ,OAAA;AAAE,sGAAA,aAAa,OAAA;AAAE,0GAAA,iBAAiB,OAAA;AAAE,oGAAA,WAAW,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wBAAwB;AACxB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AAGf,gBAAgB;AAChB,mCAAqD;AAA5C,gGAAA,MAAM,OAAA;AAAE,iGAAA,MAAM,OAAW;AAElC,qCAAqC;AACrC,8CAA0E;AAAjE,sGAAA,cAAc,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAC1C,kDAA8F;AAArF,+GAAA,iBAAiB,OAAA;AAAE,iHAAA,mBAAmB,OAAA;AAAE,6GAAA,eAAe,OAAA;AAGhE,2CAA2C;AAC3C,yDAAyC;AAEzC,6BAA6B;AAC7B,mCAA2C;AAAlC,yGAAA,eAAe,OAAA;AAExB,SAAS;AACT,mCAekB;AAdhB,qGAAA,WAAW,OAAA;AACX,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,sGAAA,YAAY,OAAA;AACZ,yGAAA,eAAe,OAAA;AACf,qGAAA,WAAW,OAAA;AACX,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,wGAAA,cAAc,OAAA;AACd,+GAAA,qBAAqB,OAAA;AACrB,oGAAA,UAAU,OAAA;AACV,gGAAA,MAAM,OAAA;AAGR,kBAAkB;AAClB,uCAAgF;AAAvE,kGAAA,SAAS,OAAA;AAAE,kGAAA,SAAS,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,qGAAA,YAAY,OAAA;AAGxD,mBAAmB;AACnB,yCAAkF;AAAzE,gGAAA,MAAM,OAAA;AAAE,sGAAA,YAAY,OAAA;AAAE,mGAAA,SAAS,OAAA;AAAE,yGAAA,eAAe,OAAA;AAGzD,gDAAgD;AAChD,iCAAkF;AAAzE,iGAAA,QAAQ,OAAA;AAAE,sGAAA,aAAa,OAAA;AAAE,0GAAA,iBAAiB,OAAA;AAAE,oGAAA,WAAW,OAAA"}
package/dist/queue.d.ts CHANGED
@@ -1,4 +1,16 @@
1
1
  import type { Job, ClientOptions } from './types';
2
+ /**
3
+ * Minimal job reference returned from bulk operations.
4
+ * Contains only the essential fields available immediately after creation.
5
+ */
6
+ export interface JobReference<T = unknown> {
7
+ /** Server-assigned job ID */
8
+ id: number;
9
+ /** Queue name */
10
+ queue: string;
11
+ /** Original job data */
12
+ data: T;
13
+ }
2
14
  export interface QueueOptions extends ClientOptions {
3
15
  /** Default job options for all jobs in this queue */
4
16
  defaultJobOptions?: JobOptions;
@@ -58,12 +70,15 @@ export declare class Queue<T = unknown> {
58
70
  add(name: string, data: T, options?: JobOptions): Promise<Job<T>>;
59
71
  /**
60
72
  * Add multiple jobs (BullMQ-compatible)
73
+ *
74
+ * @returns Array of job references with id, queue, and data.
75
+ * Use getJob() if you need full job details.
61
76
  */
62
77
  addBulk(jobs: Array<{
63
78
  name: string;
64
79
  data: T;
65
80
  opts?: JobOptions;
66
- }>): Promise<Job<T>[]>;
81
+ }>): Promise<JobReference<T>[]>;
67
82
  /**
68
83
  * Get a job by ID
69
84
  */
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"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"}
package/dist/queue.js CHANGED
@@ -63,6 +63,9 @@ class Queue {
63
63
  }
64
64
  /**
65
65
  * Add multiple jobs (BullMQ-compatible)
66
+ *
67
+ * @returns Array of job references with id, queue, and data.
68
+ * Use getJob() if you need full job details.
66
69
  */
67
70
  async addBulk(jobs) {
68
71
  const flashqJobs = jobs.map((job) => {
package/dist/queue.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@ export declare function retryable<TArgs extends unknown[], TResult>(fn: (...args
60
60
  export declare const RetryPresets: {
61
61
  /** Quick retries for interactive operations */
62
62
  fast: RetryOptions;
63
- /** Standard retries for most operations */
63
+ /** Standard retries for most operations (uses SDK defaults) */
64
64
  standard: RetryOptions;
65
65
  /** Aggressive retries for critical operations */
66
66
  aggressive: RetryOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,6BAA6B;IAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE;AAUD,qCAAqC;AACrC,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAsBjD;AAED,8DAA8D;AAC9D,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC,GAC3E,MAAM,CAaR;AAOD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAuC/F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,KAAK,SAAS,OAAO,EAAE,EAAE,OAAO,EACxD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,EACxC,OAAO,GAAE,YAAiB,GACzB,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAEtC;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,+CAA+C;UAK1C,YAAY;IAEjB,2CAA2C;cAKtC,YAAY;IAEjB,iDAAiD;gBAK5C,YAAY;IAEjB,iBAAiB;UAGZ,YAAY;CAClB,CAAC"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,6BAA6B;IAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE;AAUD,qCAAqC;AACrC,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAsBjD;AAED,8DAA8D;AAC9D,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC,GAC3E,MAAM,CAaR;AAOD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAuC/F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,KAAK,SAAS,OAAO,EAAE,EAAE,OAAO,EACxD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,EACxC,OAAO,GAAE,YAAiB,GACzB,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAEtC;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,+CAA+C;UAK1C,YAAY;IAEjB,+DAA+D;cAK1D,YAAY;IAEjB,iDAAiD;gBAK5C,YAAY;IAEjB,iBAAiB;UAGZ,YAAY;CAClB,CAAC"}
@@ -9,11 +9,12 @@ exports.retryable = retryable;
9
9
  * Retry utility for automatic retries on transient failures
10
10
  */
11
11
  const errors_1 = require("../errors");
12
+ const constants_1 = require("../constants");
12
13
  const DEFAULT_OPTIONS = {
13
- maxRetries: 3,
14
- initialDelay: 100,
15
- maxDelay: 5000,
16
- backoffMultiplier: 2,
14
+ maxRetries: constants_1.DEFAULT_RETRY_MAX_ATTEMPTS,
15
+ initialDelay: constants_1.DEFAULT_RETRY_INITIAL_DELAY,
16
+ maxDelay: constants_1.DEFAULT_RETRY_MAX_DELAY,
17
+ backoffMultiplier: constants_1.DEFAULT_BACKOFF_MULTIPLIER,
17
18
  jitter: true,
18
19
  };
19
20
  /** Check if an error is retryable */
@@ -42,8 +43,8 @@ function isRetryable(error) {
42
43
  function calculateDelay(attempt, options) {
43
44
  const delay = Math.min(options.initialDelay * Math.pow(options.backoffMultiplier, attempt - 1), options.maxDelay);
44
45
  if (options.jitter) {
45
- // Add ±25% jitter
46
- const jitterRange = delay * 0.25;
46
+ // Add ±RETRY_JITTER_FACTOR jitter (default: ±25%)
47
+ const jitterRange = delay * constants_1.RETRY_JITTER_FACTOR;
47
48
  return delay + (Math.random() * jitterRange * 2 - jitterRange);
48
49
  }
49
50
  return delay;
@@ -129,11 +130,11 @@ exports.RetryPresets = {
129
130
  initialDelay: 50,
130
131
  maxDelay: 500,
131
132
  },
132
- /** Standard retries for most operations */
133
+ /** Standard retries for most operations (uses SDK defaults) */
133
134
  standard: {
134
- maxRetries: 3,
135
- initialDelay: 100,
136
- maxDelay: 5000,
135
+ maxRetries: constants_1.DEFAULT_RETRY_MAX_ATTEMPTS,
136
+ initialDelay: constants_1.DEFAULT_RETRY_INITIAL_DELAY,
137
+ maxDelay: constants_1.DEFAULT_RETRY_MAX_DELAY,
137
138
  },
138
139
  /** Aggressive retries for critical operations */
139
140
  aggressive: {
@@ -1 +1 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"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"}
package/dist/worker.d.ts CHANGED
@@ -48,7 +48,7 @@ export declare class Worker<T = unknown, R = unknown> extends EventEmitter {
48
48
  private stopPromise;
49
49
  private abortController;
50
50
  private workerHooks?;
51
- private log;
51
+ private logger;
52
52
  constructor(queues: string | string[], processor: JobProcessor<T, R>, options?: BullMQWorkerOptions);
53
53
  /**
54
54
  * Start processing jobs
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAO,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAIL,KAAK,WAAW,EAEjB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,aAAa;IACtF,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,KAAK,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,CAAE,SAAQ,YAAY;IAChE,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,OAAO,CAIb;IACF,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,WAAW,CAAC,CAAc;IAElC,OAAO,CAAC,GAAG;gBAYT,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EACzB,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7B,OAAO,GAAE,mBAAwB;IA+BnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAyBd,OAAO;IAoBrB;;;OAGG;IACG,KAAK,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;;;OAGG;IACG,IAAI,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;YA2B1B,MAAM;IAmDpB;;;;OAIG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBrD;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,QAAQ,IAAI,WAAW;IAIvB;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;YACW,eAAe;IAuC7B;;OAEG;YACW,eAAe;YAwEf,UAAU;IAIxB,OAAO,CAAC,KAAK;IAIb;;;;OAIG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAcvF;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAO,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAIL,KAAK,WAAW,EAEjB,MAAM,SAAS,CAAC;AAWjB,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,aAAa;IACtF,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,KAAK,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,CAAE,SAAQ,YAAY;IAChE,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,OAAO,CAIb;IACF,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,MAAM,CAAS;gBAGrB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EACzB,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7B,OAAO,GAAE,mBAAwB;IAwCnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAyBd,OAAO;IAoBrB;;;OAGG;IACG,KAAK,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;;;OAGG;IACG,IAAI,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;YA2B1B,MAAM;IAmDpB;;;;OAIG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBrD;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,QAAQ,IAAI,WAAW;IAIvB;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;YACW,eAAe;IAuC7B;;OAEG;YACW,eAAe;YAwEf,UAAU;IAIxB,OAAO,CAAC,KAAK;IAIb;;;;OAIG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAcvF;AAED,eAAe,MAAM,CAAC"}
package/dist/worker.js CHANGED
@@ -4,6 +4,8 @@ exports.Worker = void 0;
4
4
  const events_1 = require("events");
5
5
  const client_1 = require("./client");
6
6
  const hooks_1 = require("./hooks");
7
+ const logger_1 = require("./utils/logger");
8
+ const constants_1 = require("./constants");
7
9
  /**
8
10
  * FlashQ Worker (BullMQ-compatible)
9
11
  *
@@ -40,31 +42,26 @@ class Worker extends events_1.EventEmitter {
40
42
  stopPromise = null;
41
43
  abortController = null;
42
44
  workerHooks;
43
- log(message, data) {
44
- if (!this.options.debug)
45
- return;
46
- const timestamp = new Date().toISOString();
47
- const prefix = `[flashQ Worker ${this.options.id} ${timestamp}]`;
48
- if (data !== undefined) {
49
- console.log(`${prefix} ${message}`, data);
50
- }
51
- else {
52
- console.log(`${prefix} ${message}`);
53
- }
54
- }
45
+ logger;
55
46
  constructor(queues, processor, options = {}) {
56
47
  super();
57
48
  this.queues = Array.isArray(queues) ? queues : [queues];
58
49
  this.processor = processor;
50
+ const workerId = options.id ?? `worker-${Date.now()}-${Math.random().toString(36).slice(2)}`;
59
51
  this.options = {
60
- id: options.id ?? `worker-${Date.now()}-${Math.random().toString(36).slice(2)}`,
61
- concurrency: options.concurrency ?? 10,
62
- batchSize: options.batchSize ?? 100,
52
+ id: workerId,
53
+ concurrency: options.concurrency ?? constants_1.DEFAULT_WORKER_CONCURRENCY,
54
+ batchSize: options.batchSize ?? constants_1.DEFAULT_WORKER_BATCH_SIZE,
63
55
  autoAck: options.autoAck ?? true,
64
56
  autorun: options.autorun ?? true,
65
57
  debug: options.debug ?? false,
66
- closeTimeout: options.closeTimeout ?? 30000,
58
+ closeTimeout: options.closeTimeout ?? constants_1.DEFAULT_CLOSE_TIMEOUT,
67
59
  };
60
+ // Initialize logger with worker-specific prefix
61
+ this.logger = new logger_1.Logger({
62
+ level: this.options.debug ? 'debug' : 'silent',
63
+ prefix: `flashQ:worker:${workerId}`,
64
+ });
68
65
  this.workerHooks = options.workerHooks;
69
66
  this.clientOptions = {
70
67
  host: options.host,
@@ -103,17 +100,17 @@ class Worker extends events_1.EventEmitter {
103
100
  }
104
101
  }
105
102
  async doStart() {
106
- this.log('Starting worker', { queues: this.queues, concurrency: this.options.concurrency });
103
+ this.logger.info('Starting worker', { queues: this.queues, concurrency: this.options.concurrency });
107
104
  // Create a separate client for each worker (TCP pull is blocking)
108
105
  for (let i = 0; i < this.options.concurrency; i++) {
109
106
  const client = new client_1.FlashQ({ ...this.clientOptions, debug: this.options.debug });
110
107
  await client.connect();
111
108
  this.clients.push(client);
112
- this.log(`Client ${i} connected`);
109
+ this.logger.debug(`Client ${i} connected`);
113
110
  }
114
111
  this.state = 'running';
115
112
  this.emit('ready');
116
- this.log('Worker ready');
113
+ this.logger.info('Worker ready');
117
114
  // Start worker loops (each with its own client)
118
115
  for (let i = 0; i < this.options.concurrency; i++) {
119
116
  this.workers.push(this.batchWorkerLoop(i, this.clients[i]));
@@ -154,7 +151,7 @@ class Worker extends events_1.EventEmitter {
154
151
  }
155
152
  }
156
153
  async doStop(force) {
157
- this.log('Stopping worker', { processing: this.processing, force });
154
+ this.logger.info('Stopping worker', { processing: this.processing, force });
158
155
  if (force) {
159
156
  // Force close - abort immediately
160
157
  this.abortController?.abort();
@@ -170,7 +167,7 @@ class Worker extends events_1.EventEmitter {
170
167
  timeoutPromise,
171
168
  ]);
172
169
  if (result === 'timeout') {
173
- this.log('Graceful shutdown timeout reached', { timeout, processing: this.processing });
170
+ this.logger.warn('Graceful shutdown timeout reached', { timeout, processing: this.processing });
174
171
  this.emit('error', new Error(`Shutdown timeout after ${timeout}ms with ${this.processing} jobs still processing`));
175
172
  }
176
173
  }
@@ -180,16 +177,16 @@ class Worker extends events_1.EventEmitter {
180
177
  }
181
178
  }
182
179
  this.workers = [];
183
- this.log('All worker loops stopped');
180
+ this.logger.debug('All worker loops stopped');
184
181
  // Close all clients
185
182
  const clientsToClose = [...this.clients];
186
183
  this.clients = [];
187
184
  await Promise.all(clientsToClose.map((c) => c.close()));
188
- this.log('All clients closed');
185
+ this.logger.debug('All clients closed');
189
186
  this.state = 'stopped';
190
187
  this.emit('stopped');
191
188
  this.emit('drained');
192
- this.log('Worker stopped', { totalProcessed: this.jobsProcessed });
189
+ this.logger.info('Worker stopped', { totalProcessed: this.jobsProcessed });
193
190
  }
194
191
  /**
195
192
  * Wait for all currently processing jobs to complete
@@ -207,7 +204,7 @@ class Worker extends events_1.EventEmitter {
207
204
  clearTimeout(timer);
208
205
  resolve(true);
209
206
  }
210
- }, 50);
207
+ }, constants_1.WORKER_JOB_CHECK_INTERVAL);
211
208
  const timer = setTimeout(() => {
212
209
  clearInterval(checkInterval);
213
210
  resolve(false);
@@ -249,8 +246,8 @@ class Worker extends events_1.EventEmitter {
249
246
  if (this.state !== 'running')
250
247
  break;
251
248
  try {
252
- // Batch pull with SHORT timeout (500ms) for responsive shutdown
253
- const jobs = await client.pullBatch(queue, batchSize, 500);
249
+ // Batch pull with SHORT timeout for responsive shutdown
250
+ const jobs = await client.pullBatch(queue, batchSize, constants_1.WORKER_PULL_TIMEOUT);
254
251
  // No jobs available - continue polling
255
252
  if (!jobs || jobs.length === 0) {
256
253
  continue;
@@ -269,12 +266,12 @@ class Worker extends events_1.EventEmitter {
269
266
  // Connection error - wait before retry
270
267
  if (this.state === 'running') {
271
268
  this.emit('error', error);
272
- await this.sleep(1000);
269
+ await this.sleep(constants_1.WORKER_ERROR_RETRY_DELAY);
273
270
  }
274
271
  }
275
272
  }
276
273
  }
277
- this.log(`Worker loop ${workerId} exited`, { state: this.state });
274
+ this.logger.debug(`Worker loop ${workerId} exited`, { state: this.state });
278
275
  }
279
276
  /**
280
277
  * Process a batch of jobs - always completes even during shutdown
@@ -350,16 +347,16 @@ class Worker extends events_1.EventEmitter {
350
347
  async updateProgress(jobId, progress, message) {
351
348
  if (this.state !== 'running') {
352
349
  const error = new Error(`Cannot update progress: worker is ${this.state}`);
353
- this.log('updateProgress failed', { jobId, state: this.state });
350
+ this.logger.warn('updateProgress failed', { jobId, state: this.state });
354
351
  throw error;
355
352
  }
356
353
  if (this.clients.length === 0) {
357
354
  const error = new Error('Cannot update progress: no active clients');
358
- this.log('updateProgress failed', { jobId, reason: 'no clients' });
355
+ this.logger.warn('updateProgress failed', { jobId, reason: 'no clients' });
359
356
  throw error;
360
357
  }
361
358
  await this.clients[0].progress(jobId, progress, message);
362
- this.log('Progress updated', { jobId, progress, message });
359
+ this.logger.debug('Progress updated', { jobId, progress, message });
363
360
  }
364
361
  }
365
362
  exports.Worker = Worker;