bunqueue 1.0.5 → 1.0.8
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 +65 -0
- package/dist/application/operations/jobManagement.d.ts.map +1 -1
- package/dist/application/operations/jobManagement.js +4 -3
- package/dist/application/operations/jobManagement.js.map +1 -1
- package/dist/application/operations/push.d.ts.map +1 -1
- package/dist/application/operations/push.js +4 -5
- package/dist/application/operations/push.js.map +1 -1
- package/dist/application/queueManager.js.map +1 -1
- package/dist/cli/client.d.ts +14 -0
- package/dist/cli/client.d.ts.map +1 -0
- package/dist/cli/client.js +170 -0
- package/dist/cli/client.js.map +1 -0
- package/dist/cli/commands/core.d.ts +7 -0
- package/dist/cli/commands/core.d.ts.map +1 -0
- package/dist/cli/commands/core.js +150 -0
- package/dist/cli/commands/core.js.map +1 -0
- package/dist/cli/commands/cron.d.ts +7 -0
- package/dist/cli/commands/cron.d.ts.map +1 -0
- package/dist/cli/commands/cron.js +69 -0
- package/dist/cli/commands/cron.js.map +1 -0
- package/dist/cli/commands/dlq.d.ts +7 -0
- package/dist/cli/commands/dlq.d.ts.map +1 -0
- package/dist/cli/commands/dlq.js +63 -0
- package/dist/cli/commands/dlq.js.map +1 -0
- package/dist/cli/commands/job.d.ts +7 -0
- package/dist/cli/commands/job.d.ts.map +1 -0
- package/dist/cli/commands/job.js +155 -0
- package/dist/cli/commands/job.js.map +1 -0
- package/dist/cli/commands/monitor.d.ts +7 -0
- package/dist/cli/commands/monitor.d.ts.map +1 -0
- package/dist/cli/commands/monitor.js +19 -0
- package/dist/cli/commands/monitor.js.map +1 -0
- package/dist/cli/commands/queue.d.ts +7 -0
- package/dist/cli/commands/queue.d.ts.map +1 -0
- package/dist/cli/commands/queue.js +122 -0
- package/dist/cli/commands/queue.js.map +1 -0
- package/dist/cli/commands/rateLimit.d.ts +7 -0
- package/dist/cli/commands/rateLimit.d.ts.map +1 -0
- package/dist/cli/commands/rateLimit.js +64 -0
- package/dist/cli/commands/rateLimit.js.map +1 -0
- package/dist/cli/commands/server.d.ts +7 -0
- package/dist/cli/commands/server.d.ts.map +1 -0
- package/dist/cli/commands/server.js +97 -0
- package/dist/cli/commands/server.js.map +1 -0
- package/dist/cli/commands/types.d.ts +17 -0
- package/dist/cli/commands/types.d.ts.map +1 -0
- package/dist/cli/commands/types.js +47 -0
- package/dist/cli/commands/types.js.map +1 -0
- package/dist/cli/commands/webhook.d.ts +7 -0
- package/dist/cli/commands/webhook.d.ts.map +1 -0
- package/dist/cli/commands/webhook.js +78 -0
- package/dist/cli/commands/webhook.js.map +1 -0
- package/dist/cli/commands/worker.d.ts +7 -0
- package/dist/cli/commands/worker.d.ts.map +1 -0
- package/dist/cli/commands/worker.js +49 -0
- package/dist/cli/commands/worker.js.map +1 -0
- package/dist/cli/help.d.ts +14 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +176 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/index.d.ts +8 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +109 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/output.d.ts +9 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +260 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/domain/queue/priorityQueue.d.ts.map +1 -1
- package/dist/domain/queue/priorityQueue.js +11 -7
- package/dist/domain/queue/priorityQueue.js.map +1 -1
- package/dist/domain/types/job.d.ts +6 -4
- package/dist/domain/types/job.d.ts.map +1 -1
- package/dist/domain/types/job.js +5 -1
- package/dist/domain/types/job.js.map +1 -1
- package/dist/domain/types/queue.d.ts +1 -1
- package/dist/domain/types/response.d.ts +2 -2
- package/dist/domain/types/response.d.ts.map +1 -1
- package/dist/domain/types/response.js +5 -15
- package/dist/domain/types/response.js.map +1 -1
- package/dist/infrastructure/persistence/schema.d.ts +2 -2
- package/dist/infrastructure/persistence/schema.d.ts.map +1 -1
- package/dist/infrastructure/persistence/schema.js +6 -15
- package/dist/infrastructure/persistence/schema.js.map +1 -1
- package/dist/infrastructure/persistence/sqlite.d.ts +0 -1
- package/dist/infrastructure/persistence/sqlite.d.ts.map +1 -1
- package/dist/infrastructure/persistence/sqlite.js +14 -18
- package/dist/infrastructure/persistence/sqlite.js.map +1 -1
- package/dist/infrastructure/persistence/statements.d.ts +3 -3
- package/dist/infrastructure/persistence/statements.d.ts.map +1 -1
- package/dist/infrastructure/persistence/statements.js +0 -1
- package/dist/infrastructure/persistence/statements.js.map +1 -1
- package/dist/infrastructure/server/handlers/advanced.js +6 -6
- package/dist/infrastructure/server/handlers/advanced.js.map +1 -1
- package/dist/infrastructure/server/handlers/core.js +4 -4
- package/dist/infrastructure/server/handlers/core.js.map +1 -1
- package/dist/infrastructure/server/handlers/dlq.js +1 -1
- package/dist/infrastructure/server/handlers/dlq.js.map +1 -1
- package/dist/infrastructure/server/handlers/management.d.ts.map +1 -1
- package/dist/infrastructure/server/handlers/management.js +3 -3
- package/dist/infrastructure/server/handlers/management.js.map +1 -1
- package/dist/infrastructure/server/handlers/monitoring.js +5 -4
- package/dist/infrastructure/server/handlers/monitoring.js.map +1 -1
- package/dist/infrastructure/server/handlers/query.js +3 -3
- package/dist/infrastructure/server/handlers/query.js.map +1 -1
- package/dist/main.d.ts +1 -1
- package/dist/main.js +33 -11
- package/dist/main.js.map +1 -1
- package/dist/shared/hash.d.ts +2 -2
- package/dist/shared/hash.js +2 -2
- package/dist/shared/hash.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Output Formatting
|
|
3
|
+
* Formats command responses for terminal display
|
|
4
|
+
*/
|
|
5
|
+
/** Main output formatter */
|
|
6
|
+
export declare function formatOutput(response: Record<string, unknown>, command: string, asJson: boolean): string;
|
|
7
|
+
/** Format error message */
|
|
8
|
+
export declare function formatError(message: string, asJson: boolean): string;
|
|
9
|
+
//# sourceMappingURL=output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/cli/output.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAySH,4BAA4B;AAC5B,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,OAAO,GACd,MAAM,CAUR;AAED,2BAA2B;AAC3B,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,CAKpE"}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Output Formatting
|
|
3
|
+
* Formats command responses for terminal display
|
|
4
|
+
*/
|
|
5
|
+
/** ANSI color codes */
|
|
6
|
+
const colors = {
|
|
7
|
+
reset: '\x1b[0m',
|
|
8
|
+
bold: '\x1b[1m',
|
|
9
|
+
dim: '\x1b[2m',
|
|
10
|
+
red: '\x1b[31m',
|
|
11
|
+
green: '\x1b[32m',
|
|
12
|
+
yellow: '\x1b[33m',
|
|
13
|
+
blue: '\x1b[34m',
|
|
14
|
+
cyan: '\x1b[36m',
|
|
15
|
+
};
|
|
16
|
+
/** Check if colors are supported */
|
|
17
|
+
const supportsColor = process.stdout.isTTY && process.env.NO_COLOR !== '1';
|
|
18
|
+
/** Apply color if supported */
|
|
19
|
+
function color(text, colorCode) {
|
|
20
|
+
return supportsColor ? `${colorCode}${text}${colors.reset}` : text;
|
|
21
|
+
}
|
|
22
|
+
/** Safely convert unknown value to string */
|
|
23
|
+
function str(value, fallback = '') {
|
|
24
|
+
if (value === null || value === undefined)
|
|
25
|
+
return fallback;
|
|
26
|
+
if (typeof value === 'object')
|
|
27
|
+
return JSON.stringify(value);
|
|
28
|
+
return String(value);
|
|
29
|
+
}
|
|
30
|
+
/** Format a job object for display */
|
|
31
|
+
function formatJob(job) {
|
|
32
|
+
const lines = [
|
|
33
|
+
`${color('Job:', colors.bold)} ${str(job.id)}`,
|
|
34
|
+
` Queue: ${str(job.queue)}`,
|
|
35
|
+
` State: ${str(job.state, 'unknown')}`,
|
|
36
|
+
` Priority: ${str(job.priority)}`,
|
|
37
|
+
` Attempts: ${str(job.attempts)}/${str(job.maxAttempts)}`,
|
|
38
|
+
` Data: ${JSON.stringify(job.data)}`,
|
|
39
|
+
];
|
|
40
|
+
if (job.progress !== undefined && job.progress !== 0) {
|
|
41
|
+
lines.push(` Progress: ${str(job.progress)}%`);
|
|
42
|
+
}
|
|
43
|
+
if (job.createdAt) {
|
|
44
|
+
lines.push(` Created: ${new Date(job.createdAt).toISOString()}`);
|
|
45
|
+
}
|
|
46
|
+
if (job.startedAt) {
|
|
47
|
+
lines.push(` Started: ${new Date(job.startedAt).toISOString()}`);
|
|
48
|
+
}
|
|
49
|
+
if (job.error) {
|
|
50
|
+
lines.push(` Error: ${color(str(job.error), colors.red)}`);
|
|
51
|
+
}
|
|
52
|
+
return lines.join('\n');
|
|
53
|
+
}
|
|
54
|
+
/** Format jobs as a table */
|
|
55
|
+
function formatJobsTable(jobs) {
|
|
56
|
+
if (jobs.length === 0) {
|
|
57
|
+
return color('No jobs found', colors.yellow);
|
|
58
|
+
}
|
|
59
|
+
const header = [
|
|
60
|
+
color('ID', colors.bold).padEnd(20 + (supportsColor ? 9 : 0)),
|
|
61
|
+
color('Queue', colors.bold).padEnd(15 + (supportsColor ? 9 : 0)),
|
|
62
|
+
color('State', colors.bold).padEnd(12 + (supportsColor ? 9 : 0)),
|
|
63
|
+
color('Priority', colors.bold).padEnd(10 + (supportsColor ? 9 : 0)),
|
|
64
|
+
color('Attempts', colors.bold),
|
|
65
|
+
].join(' ');
|
|
66
|
+
const rows = jobs.map((job) => [
|
|
67
|
+
str(job.id).padEnd(20),
|
|
68
|
+
str(job.queue).padEnd(15),
|
|
69
|
+
str(job.state, '-').padEnd(12),
|
|
70
|
+
str(job.priority).padEnd(10),
|
|
71
|
+
`${str(job.attempts)}/${str(job.maxAttempts)}`,
|
|
72
|
+
].join(' '));
|
|
73
|
+
return [header, '-'.repeat(75), ...rows].join('\n');
|
|
74
|
+
}
|
|
75
|
+
/** Format stats object */
|
|
76
|
+
function formatStats(stats) {
|
|
77
|
+
const lines = [
|
|
78
|
+
color('Server Statistics:', colors.bold),
|
|
79
|
+
'',
|
|
80
|
+
` ${color('Waiting:', colors.cyan)} ${str(stats.waiting, '0')}`,
|
|
81
|
+
` ${color('Active:', colors.green)} ${str(stats.active, '0')}`,
|
|
82
|
+
` ${color('Delayed:', colors.yellow)} ${str(stats.delayed, '0')}`,
|
|
83
|
+
` ${color('Completed:', colors.dim)} ${str(stats.completed, '0')}`,
|
|
84
|
+
` ${color('Failed:', colors.red)} ${str(stats.failed, '0')}`,
|
|
85
|
+
` ${color('DLQ:', colors.red)} ${str(stats.dlq, '0')}`,
|
|
86
|
+
];
|
|
87
|
+
if (stats.totalPushed !== undefined) {
|
|
88
|
+
lines.push('', ` Total Pushed: ${str(stats.totalPushed)}`);
|
|
89
|
+
lines.push(` Total Pulled: ${str(stats.totalPulled)}`);
|
|
90
|
+
lines.push(` Total Completed: ${str(stats.totalCompleted)}`);
|
|
91
|
+
lines.push(` Total Failed: ${str(stats.totalFailed)}`);
|
|
92
|
+
}
|
|
93
|
+
return lines.join('\n');
|
|
94
|
+
}
|
|
95
|
+
/** Format counts object */
|
|
96
|
+
function formatCounts(counts) {
|
|
97
|
+
return Object.entries(counts)
|
|
98
|
+
.map(([key, value]) => ` ${key}: ${value}`)
|
|
99
|
+
.join('\n');
|
|
100
|
+
}
|
|
101
|
+
/** Format queues list */
|
|
102
|
+
function formatQueues(queues) {
|
|
103
|
+
if (queues.length === 0) {
|
|
104
|
+
return color('No queues found', colors.yellow);
|
|
105
|
+
}
|
|
106
|
+
return queues.map((q) => ` - ${q}`).join('\n');
|
|
107
|
+
}
|
|
108
|
+
/** Format cron jobs */
|
|
109
|
+
function formatCronJobs(jobs) {
|
|
110
|
+
if (jobs.length === 0) {
|
|
111
|
+
return color('No cron jobs found', colors.yellow);
|
|
112
|
+
}
|
|
113
|
+
const lines = jobs.map((job) => {
|
|
114
|
+
const schedule = job.schedule !== null && job.schedule !== undefined
|
|
115
|
+
? str(job.schedule)
|
|
116
|
+
: `every ${str(job.repeatEvery)}ms`;
|
|
117
|
+
return ` ${color(str(job.name), colors.bold)}\n Queue: ${str(job.queue)}\n Schedule: ${schedule}\n Executions: ${str(job.executions)}`;
|
|
118
|
+
});
|
|
119
|
+
return lines.join('\n\n');
|
|
120
|
+
}
|
|
121
|
+
/** Format workers list */
|
|
122
|
+
function formatWorkers(workers) {
|
|
123
|
+
if (workers.length === 0) {
|
|
124
|
+
return color('No workers registered', colors.yellow);
|
|
125
|
+
}
|
|
126
|
+
return workers
|
|
127
|
+
.map((w) => ` ${color(str(w.id), colors.bold)}: ${str(w.name)} (${w.queues.join(', ')})`)
|
|
128
|
+
.join('\n');
|
|
129
|
+
}
|
|
130
|
+
/** Format webhooks list */
|
|
131
|
+
function formatWebhooks(webhooks) {
|
|
132
|
+
if (webhooks.length === 0) {
|
|
133
|
+
return color('No webhooks registered', colors.yellow);
|
|
134
|
+
}
|
|
135
|
+
return webhooks
|
|
136
|
+
.map((w) => ` ${color(str(w.id), colors.bold)}: ${str(w.url)}\n Events: ${w.events.join(', ')}`)
|
|
137
|
+
.join('\n\n');
|
|
138
|
+
}
|
|
139
|
+
/** Format DLQ jobs */
|
|
140
|
+
function formatDlqJobs(jobs) {
|
|
141
|
+
if (jobs.length === 0) {
|
|
142
|
+
return color('DLQ is empty', colors.green);
|
|
143
|
+
}
|
|
144
|
+
return jobs
|
|
145
|
+
.map((job) => ` ${color(str(job.jobId), colors.bold)}\n Queue: ${str(job.queue)}\n Error: ${color(str(job.error, 'Unknown'), colors.red)}\n Failed: ${new Date(job.failedAt).toISOString()}`)
|
|
146
|
+
.join('\n\n');
|
|
147
|
+
}
|
|
148
|
+
/** Format logs */
|
|
149
|
+
function formatLogs(logs) {
|
|
150
|
+
if (logs.length === 0) {
|
|
151
|
+
return color('No logs found', colors.yellow);
|
|
152
|
+
}
|
|
153
|
+
return logs
|
|
154
|
+
.map((log) => {
|
|
155
|
+
const levelColor = log.level === 'error' ? colors.red : log.level === 'warn' ? colors.yellow : colors.dim;
|
|
156
|
+
return ` [${new Date(log.timestamp).toISOString()}] ${color(str(log.level).toUpperCase(), levelColor)}: ${str(log.message)}`;
|
|
157
|
+
})
|
|
158
|
+
.join('\n');
|
|
159
|
+
}
|
|
160
|
+
/** Format a successful response based on its content */
|
|
161
|
+
function formatSuccess(response, command) {
|
|
162
|
+
// Job created
|
|
163
|
+
if ('id' in response && typeof response.id === 'string' && command === 'push') {
|
|
164
|
+
return color(`Job created: ${response.id}`, colors.green);
|
|
165
|
+
}
|
|
166
|
+
// Batch jobs created
|
|
167
|
+
if ('ids' in response && Array.isArray(response.ids)) {
|
|
168
|
+
return color(`Created ${response.ids.length} jobs: ${response.ids.join(', ')}`, colors.green);
|
|
169
|
+
}
|
|
170
|
+
// Single job
|
|
171
|
+
if ('job' in response) {
|
|
172
|
+
if (response.job === null) {
|
|
173
|
+
return color('No job available', colors.yellow);
|
|
174
|
+
}
|
|
175
|
+
return formatJob(response.job);
|
|
176
|
+
}
|
|
177
|
+
// Jobs list
|
|
178
|
+
if ('jobs' in response && Array.isArray(response.jobs)) {
|
|
179
|
+
return formatJobsTable(response.jobs);
|
|
180
|
+
}
|
|
181
|
+
// Stats
|
|
182
|
+
if ('stats' in response) {
|
|
183
|
+
return formatStats(response.stats);
|
|
184
|
+
}
|
|
185
|
+
// Counts
|
|
186
|
+
if ('counts' in response) {
|
|
187
|
+
return formatCounts(response.counts);
|
|
188
|
+
}
|
|
189
|
+
// Queues
|
|
190
|
+
if ('queues' in response && Array.isArray(response.queues)) {
|
|
191
|
+
return formatQueues(response.queues);
|
|
192
|
+
}
|
|
193
|
+
// Cron jobs
|
|
194
|
+
if ('cronJobs' in response && Array.isArray(response.cronJobs)) {
|
|
195
|
+
return formatCronJobs(response.cronJobs);
|
|
196
|
+
}
|
|
197
|
+
// Workers
|
|
198
|
+
if ('workers' in response && Array.isArray(response.workers)) {
|
|
199
|
+
return formatWorkers(response.workers);
|
|
200
|
+
}
|
|
201
|
+
// Webhooks
|
|
202
|
+
if ('webhooks' in response && Array.isArray(response.webhooks)) {
|
|
203
|
+
return formatWebhooks(response.webhooks);
|
|
204
|
+
}
|
|
205
|
+
// DLQ jobs
|
|
206
|
+
if ('dlqJobs' in response && Array.isArray(response.dlqJobs)) {
|
|
207
|
+
return formatDlqJobs(response.dlqJobs);
|
|
208
|
+
}
|
|
209
|
+
// Logs
|
|
210
|
+
if ('logs' in response && Array.isArray(response.logs)) {
|
|
211
|
+
return formatLogs(response.logs);
|
|
212
|
+
}
|
|
213
|
+
// State
|
|
214
|
+
if ('state' in response) {
|
|
215
|
+
return `State: ${str(response.state)}`;
|
|
216
|
+
}
|
|
217
|
+
// Result
|
|
218
|
+
if ('result' in response) {
|
|
219
|
+
return `Result: ${JSON.stringify(response.result, null, 2)}`;
|
|
220
|
+
}
|
|
221
|
+
// Progress
|
|
222
|
+
if ('progress' in response) {
|
|
223
|
+
const msg = response.message ? ` - ${str(response.message)}` : '';
|
|
224
|
+
return `Progress: ${str(response.progress)}%${msg}`;
|
|
225
|
+
}
|
|
226
|
+
// Paused status
|
|
227
|
+
if ('paused' in response) {
|
|
228
|
+
return response.paused
|
|
229
|
+
? color('Queue is paused', colors.yellow)
|
|
230
|
+
: color('Queue is active', colors.green);
|
|
231
|
+
}
|
|
232
|
+
// Count
|
|
233
|
+
if ('count' in response) {
|
|
234
|
+
return `Count: ${str(response.count)}`;
|
|
235
|
+
}
|
|
236
|
+
// Metrics (Prometheus format)
|
|
237
|
+
if ('metrics' in response && typeof response.metrics === 'string') {
|
|
238
|
+
return response.metrics;
|
|
239
|
+
}
|
|
240
|
+
// Generic success
|
|
241
|
+
return color('OK', colors.green);
|
|
242
|
+
}
|
|
243
|
+
/** Main output formatter */
|
|
244
|
+
export function formatOutput(response, command, asJson) {
|
|
245
|
+
if (asJson) {
|
|
246
|
+
return JSON.stringify(response, null, 2);
|
|
247
|
+
}
|
|
248
|
+
if (!response.ok) {
|
|
249
|
+
return formatError(str(response.error, 'Unknown error'), false);
|
|
250
|
+
}
|
|
251
|
+
return formatSuccess(response, command);
|
|
252
|
+
}
|
|
253
|
+
/** Format error message */
|
|
254
|
+
export function formatError(message, asJson) {
|
|
255
|
+
if (asJson) {
|
|
256
|
+
return JSON.stringify({ ok: false, error: message });
|
|
257
|
+
}
|
|
258
|
+
return color(`Error: ${message}`, colors.red);
|
|
259
|
+
}
|
|
260
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/cli/output.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"priorityQueue.d.ts","sourceRoot":"","sources":["../../../src/domain/queue/priorityQueue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"priorityQueue.d.ts","sourceRoot":"","sources":["../../../src/domain/queue/priorityQueue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAsC/C;;;;GAIG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,KAAK,CAA2D;IACxE,OAAO,CAAC,UAAU,CAAM;IAExB,uBAAuB;IACvB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,qBAAqB;IACrB,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,gCAAgC;IAChC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAkBpB,mCAAmC;IACnC,GAAG,IAAI,GAAG,GAAG,IAAI;IAmBjB,wDAAwD;IACxD,IAAI,IAAI,GAAG,GAAG,IAAI;IAgBlB,8BAA8B;IAC9B,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,GAAG,IAAI;IAI9B,iCAAiC;IACjC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAI1B,8DAA8D;IAC9D,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,GAAG,IAAI;IAShC,qCAAqC;IACrC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAyB1D,sDAAsD;IACtD,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAyBpD,mCAAmC;IACnC,MAAM,IAAI,GAAG,EAAE;IAIf,sBAAsB;IACtB,KAAK,IAAI,IAAI;IAQb,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,UAAU;IAoBlB,OAAO,CAAC,IAAI;CAKb"}
|
|
@@ -5,22 +5,26 @@
|
|
|
5
5
|
*/
|
|
6
6
|
/**
|
|
7
7
|
* Compare two heap entries
|
|
8
|
-
* Order: higher priority first,
|
|
8
|
+
* Order: higher priority first, then:
|
|
9
|
+
* - LIFO: newer jobs first (by jobId descending, since UUID7 is time-ordered)
|
|
10
|
+
* - FIFO: earlier runAt first, then older jobs first (by jobId ascending)
|
|
9
11
|
*/
|
|
10
12
|
function compareEntries(a, b) {
|
|
11
13
|
// Higher priority first
|
|
12
14
|
if (a.priority !== b.priority) {
|
|
13
15
|
return b.priority - a.priority;
|
|
14
16
|
}
|
|
15
|
-
//
|
|
17
|
+
// For LIFO: newer jobs (higher UUID7) should come first
|
|
18
|
+
// UUID7 contains timestamp, so lexicographic comparison gives time order
|
|
19
|
+
if (a.lifo && b.lifo) {
|
|
20
|
+
return b.jobId.localeCompare(a.jobId);
|
|
21
|
+
}
|
|
22
|
+
// For FIFO or mixed: earlier runAt first
|
|
16
23
|
if (a.runAt !== b.runAt) {
|
|
17
24
|
return a.runAt - b.runAt;
|
|
18
25
|
}
|
|
19
|
-
//
|
|
20
|
-
|
|
21
|
-
return Number(b.jobId - a.jobId);
|
|
22
|
-
}
|
|
23
|
-
return Number(a.jobId - b.jobId);
|
|
26
|
+
// Then by jobId (older first for FIFO)
|
|
27
|
+
return a.jobId.localeCompare(b.jobId);
|
|
24
28
|
}
|
|
25
29
|
/**
|
|
26
30
|
* Indexed Priority Queue implementation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"priorityQueue.js","sourceRoot":"","sources":["../../../src/domain/queue/priorityQueue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH
|
|
1
|
+
{"version":3,"file":"priorityQueue.js","sourceRoot":"","sources":["../../../src/domain/queue/priorityQueue.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
* Job domain types
|
|
3
3
|
* Core job structure and related types
|
|
4
4
|
*/
|
|
5
|
-
/** Branded type for Job IDs */
|
|
6
|
-
export type JobId =
|
|
5
|
+
/** Branded type for Job IDs (UUIDv7) */
|
|
6
|
+
export type JobId = string & {
|
|
7
7
|
readonly __brand: 'JobId';
|
|
8
8
|
};
|
|
9
|
-
/** Create a JobId from
|
|
10
|
-
export declare function jobId(id:
|
|
9
|
+
/** Create a JobId from string */
|
|
10
|
+
export declare function jobId(id: string): JobId;
|
|
11
|
+
/** Generate a new UUIDv7 JobId */
|
|
12
|
+
export declare function generateJobId(): JobId;
|
|
11
13
|
/** Job state enumeration */
|
|
12
14
|
export declare const enum JobState {
|
|
13
15
|
Waiting = "waiting",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../../src/domain/types/job.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../../src/domain/types/job.ts"],"names":[],"mappings":"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"}
|
package/dist/domain/types/job.js
CHANGED
|
@@ -2,10 +2,14 @@
|
|
|
2
2
|
* Job domain types
|
|
3
3
|
* Core job structure and related types
|
|
4
4
|
*/
|
|
5
|
-
/** Create a JobId from
|
|
5
|
+
/** Create a JobId from string */
|
|
6
6
|
export function jobId(id) {
|
|
7
7
|
return id;
|
|
8
8
|
}
|
|
9
|
+
/** Generate a new UUIDv7 JobId */
|
|
10
|
+
export function generateJobId() {
|
|
11
|
+
return Bun.randomUUIDv7();
|
|
12
|
+
}
|
|
9
13
|
/** Job creation defaults */
|
|
10
14
|
export const JOB_DEFAULTS = {
|
|
11
15
|
priority: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/domain/types/job.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/domain/types/job.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,7 +69,7 @@ export declare const enum EventType {
|
|
|
69
69
|
export interface JobEvent {
|
|
70
70
|
readonly eventType: EventType;
|
|
71
71
|
readonly queue: string;
|
|
72
|
-
readonly jobId:
|
|
72
|
+
readonly jobId: string;
|
|
73
73
|
readonly timestamp: number;
|
|
74
74
|
readonly data?: unknown;
|
|
75
75
|
readonly error?: string;
|
|
@@ -139,8 +139,8 @@ export interface ErrorResponse extends BaseResponse {
|
|
|
139
139
|
}
|
|
140
140
|
/** Union of all responses */
|
|
141
141
|
export type Response = OkResponse | BatchResponse | JobResponse | NullableJobResponse | JobsResponse | StateResponse | ResultResponse | JobCountsResponse | QueuesResponse | ProgressResponse | BoolResponse | CountResponse | StatsResponse | MetricsResponse | CronListResponse | ErrorResponse | DataResponse<unknown>;
|
|
142
|
-
export declare function ok(id?:
|
|
143
|
-
export declare function batch(ids:
|
|
142
|
+
export declare function ok(id?: string, reqId?: string): OkResponse;
|
|
143
|
+
export declare function batch(ids: string[], reqId?: string): BatchResponse;
|
|
144
144
|
export declare function job(j: Job, reqId?: string): JobResponse;
|
|
145
145
|
export declare function nullableJob(j: Job | null, reqId?: string): NullableJobResponse;
|
|
146
146
|
export declare function jobs(list: Job[], reqId?: string): JobsResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/domain/types/response.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/domain/types/response.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,48 +6,38 @@
|
|
|
6
6
|
export function ok(id, reqId) {
|
|
7
7
|
return {
|
|
8
8
|
ok: true,
|
|
9
|
-
id
|
|
9
|
+
id,
|
|
10
10
|
reqId,
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
13
|
export function batch(ids, reqId) {
|
|
14
14
|
return {
|
|
15
15
|
ok: true,
|
|
16
|
-
ids
|
|
16
|
+
ids,
|
|
17
17
|
reqId,
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
20
|
export function job(j, reqId) {
|
|
21
21
|
return {
|
|
22
22
|
ok: true,
|
|
23
|
-
job:
|
|
23
|
+
job: j,
|
|
24
24
|
reqId,
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
export function nullableJob(j, reqId) {
|
|
28
28
|
return {
|
|
29
29
|
ok: true,
|
|
30
|
-
job: j
|
|
30
|
+
job: j,
|
|
31
31
|
reqId,
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
export function jobs(list, reqId) {
|
|
35
35
|
return {
|
|
36
36
|
ok: true,
|
|
37
|
-
jobs: list
|
|
37
|
+
jobs: list,
|
|
38
38
|
reqId,
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
|
-
/** Serialize job for JSON response (convert BigInt to string) */
|
|
42
|
-
function serializeJobForResponse(j) {
|
|
43
|
-
return {
|
|
44
|
-
...j,
|
|
45
|
-
id: j.id.toString(),
|
|
46
|
-
dependsOn: j.dependsOn.map((id) => id.toString()),
|
|
47
|
-
parentId: j.parentId ? j.parentId.toString() : null,
|
|
48
|
-
childrenIds: j.childrenIds.map((id) => id.toString()),
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
41
|
export function error(message, reqId) {
|
|
52
42
|
return {
|
|
53
43
|
ok: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/domain/types/response.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoLH,8CAA8C;AAE9C,MAAM,UAAU,EAAE,CAAC,EAAW,EAAE,KAAc;IAC5C,OAAO;QACL,EAAE,EAAE,IAAI;QACR,EAAE
|
|
1
|
+
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/domain/types/response.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoLH,8CAA8C;AAE9C,MAAM,UAAU,EAAE,CAAC,EAAW,EAAE,KAAc;IAC5C,OAAO;QACL,EAAE,EAAE,IAAI;QACR,EAAE;QACF,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,GAAa,EAAE,KAAc;IACjD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,GAAG;QACH,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAM,EAAE,KAAc;IACxC,OAAO;QACL,EAAE,EAAE,IAAI;QACR,GAAG,EAAE,CAAC;QACN,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,CAAa,EAAE,KAAc;IACvD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,GAAG,EAAE,CAAC;QACN,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,IAAW,EAAE,KAAc;IAC9C,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,IAAI;QACV,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,OAAe,EAAE,KAAc;IACnD,OAAO;QACL,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,OAAO;QACd,KAAK;KACN,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,IAAI,CAAI,OAAU,EAAE,KAAc;IAChD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,OAAO;QACb,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,CAAY,EAAE,KAAc;IACjD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,CAAC;QACT,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,CAAY,EAAE,KAAc;IAChD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,CAAC;QACR,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAc,EAAE,KAAc;IACpD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,CAAC;QACV,KAAK;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
/** SQLite PRAGMA settings for optimal performance */
|
|
5
5
|
export declare const PRAGMA_SETTINGS = "\nPRAGMA journal_mode = WAL;\nPRAGMA synchronous = NORMAL;\nPRAGMA cache_size = -64000;\nPRAGMA temp_store = MEMORY;\nPRAGMA mmap_size = 268435456;\nPRAGMA page_size = 4096;\n";
|
|
6
6
|
/** Main schema creation */
|
|
7
|
-
export declare const SCHEMA = "\n-- Jobs table\nCREATE TABLE IF NOT EXISTS jobs (\n id
|
|
7
|
+
export declare const SCHEMA = "\n-- Jobs table (using UUIDv7 for job IDs)\nCREATE TABLE IF NOT EXISTS jobs (\n id TEXT PRIMARY KEY,\n queue TEXT NOT NULL,\n data TEXT NOT NULL,\n priority INTEGER NOT NULL DEFAULT 0,\n created_at INTEGER NOT NULL,\n run_at INTEGER NOT NULL,\n started_at INTEGER,\n completed_at INTEGER,\n attempts INTEGER NOT NULL DEFAULT 0,\n max_attempts INTEGER NOT NULL DEFAULT 3,\n backoff INTEGER NOT NULL DEFAULT 1000,\n ttl INTEGER,\n timeout INTEGER,\n unique_key TEXT,\n custom_id TEXT,\n depends_on TEXT,\n parent_id TEXT,\n children_ids TEXT,\n tags TEXT,\n state TEXT NOT NULL DEFAULT 'waiting',\n lifo INTEGER NOT NULL DEFAULT 0,\n group_id TEXT,\n progress INTEGER DEFAULT 0,\n progress_msg TEXT,\n remove_on_complete INTEGER DEFAULT 0,\n remove_on_fail INTEGER DEFAULT 0,\n stall_timeout INTEGER,\n last_heartbeat INTEGER\n);\n\n-- Indexes for common queries\nCREATE INDEX IF NOT EXISTS idx_jobs_queue_state\n ON jobs(queue, state);\nCREATE INDEX IF NOT EXISTS idx_jobs_run_at\n ON jobs(run_at) WHERE state IN ('waiting', 'delayed');\nCREATE INDEX IF NOT EXISTS idx_jobs_unique\n ON jobs(queue, unique_key) WHERE unique_key IS NOT NULL;\nCREATE INDEX IF NOT EXISTS idx_jobs_custom_id\n ON jobs(custom_id) WHERE custom_id IS NOT NULL;\nCREATE INDEX IF NOT EXISTS idx_jobs_parent\n ON jobs(parent_id) WHERE parent_id IS NOT NULL;\n\n-- Job results storage\nCREATE TABLE IF NOT EXISTS job_results (\n job_id TEXT PRIMARY KEY,\n result TEXT,\n completed_at INTEGER NOT NULL\n);\n\n-- Dead letter queue\nCREATE TABLE IF NOT EXISTS dlq (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n job_id TEXT NOT NULL,\n queue TEXT NOT NULL,\n data TEXT NOT NULL,\n error TEXT,\n failed_at INTEGER NOT NULL,\n attempts INTEGER NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_dlq_queue ON dlq(queue);\nCREATE INDEX IF NOT EXISTS idx_dlq_job_id ON dlq(job_id);\n\n-- Cron jobs\nCREATE TABLE IF NOT EXISTS cron_jobs (\n name TEXT PRIMARY KEY,\n queue TEXT NOT NULL,\n data TEXT NOT NULL,\n schedule TEXT,\n repeat_every INTEGER,\n priority INTEGER NOT NULL DEFAULT 0,\n next_run INTEGER NOT NULL,\n executions INTEGER NOT NULL DEFAULT 0,\n max_limit INTEGER\n);\n\n-- Queue state persistence (optional)\nCREATE TABLE IF NOT EXISTS queue_state (\n name TEXT PRIMARY KEY,\n paused INTEGER NOT NULL DEFAULT 0,\n rate_limit INTEGER,\n concurrency_limit INTEGER\n);\n";
|
|
8
8
|
/** Migration version table */
|
|
9
9
|
export declare const MIGRATION_TABLE = "\nCREATE TABLE IF NOT EXISTS migrations (\n version INTEGER PRIMARY KEY,\n applied_at INTEGER NOT NULL\n);\n";
|
|
10
10
|
/** Current schema version */
|
|
11
|
-
export declare const SCHEMA_VERSION =
|
|
11
|
+
export declare const SCHEMA_VERSION = 2;
|
|
12
12
|
/** All migrations in order */
|
|
13
13
|
export declare const MIGRATIONS: Record<number, string>;
|
|
14
14
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/persistence/schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qDAAqD;AACrD,eAAO,MAAM,eAAe,oLAO3B,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/persistence/schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qDAAqD;AACrD,eAAO,MAAM,eAAe,oLAO3B,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,MAAM,88EAsFlB,CAAC;AAEF,8BAA8B;AAC9B,eAAO,MAAM,eAAe,uHAK3B,CAAC;AAEF,6BAA6B;AAC7B,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,8BAA8B;AAC9B,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAE7C,CAAC"}
|