bunqueue 2.6.55 → 2.6.57
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/cli/commands/server.d.ts.map +1 -1
- package/dist/cli/commands/server.js +19 -4
- package/dist/cli/commands/server.js.map +1 -1
- package/dist/infrastructure/cloud/cloudAgent.d.ts +7 -5
- package/dist/infrastructure/cloud/cloudAgent.d.ts.map +1 -1
- package/dist/infrastructure/cloud/cloudAgent.js +21 -27
- package/dist/infrastructure/cloud/cloudAgent.js.map +1 -1
- package/dist/infrastructure/cloud/httpSender.d.ts +2 -1
- package/dist/infrastructure/cloud/httpSender.d.ts.map +1 -1
- package/dist/infrastructure/cloud/httpSender.js +9 -5
- package/dist/infrastructure/cloud/httpSender.js.map +1 -1
- package/dist/infrastructure/cloud/snapshotCollector.d.ts +7 -5
- package/dist/infrastructure/cloud/snapshotCollector.d.ts.map +1 -1
- package/dist/infrastructure/cloud/snapshotCollector.js +24 -161
- package/dist/infrastructure/cloud/snapshotCollector.js.map +1 -1
- package/dist/infrastructure/cloud/snapshotHelpers.d.ts +40 -0
- package/dist/infrastructure/cloud/snapshotHelpers.d.ts.map +1 -0
- package/dist/infrastructure/cloud/snapshotHelpers.js +333 -0
- package/dist/infrastructure/cloud/snapshotHelpers.js.map +1 -0
- package/dist/infrastructure/cloud/types.d.ts +63 -1
- package/dist/infrastructure/cloud/types.d.ts.map +1 -1
- package/dist/infrastructure/cloud/wsSender.d.ts +14 -20
- package/dist/infrastructure/cloud/wsSender.d.ts.map +1 -1
- package/dist/infrastructure/cloud/wsSender.js +64 -113
- package/dist/infrastructure/cloud/wsSender.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snapshotHelpers.js","sourceRoot":"","sources":["../../../src/infrastructure/cloud/snapshotHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -134,6 +134,7 @@ export interface CloudSnapshot {
|
|
|
134
134
|
nextRun: number;
|
|
135
135
|
executions: number;
|
|
136
136
|
maxLimit: number | null;
|
|
137
|
+
lastRun: number | null;
|
|
137
138
|
}>;
|
|
138
139
|
storage: {
|
|
139
140
|
diskFull: boolean;
|
|
@@ -224,7 +225,68 @@ export interface CloudSnapshot {
|
|
|
224
225
|
queue: string;
|
|
225
226
|
lastSeen: number;
|
|
226
227
|
}>;
|
|
227
|
-
/**
|
|
228
|
+
/** Per-queue throughput (push/complete/fail per second) */
|
|
229
|
+
queueThroughput: Record<string, {
|
|
230
|
+
pushPerSec: number;
|
|
231
|
+
completePerSec: number;
|
|
232
|
+
failPerSec: number;
|
|
233
|
+
errorRate: number;
|
|
234
|
+
}>;
|
|
235
|
+
/** Job duration histogram buckets (ms thresholds) */
|
|
236
|
+
durationHistogram: {
|
|
237
|
+
lt100ms: number;
|
|
238
|
+
lt1s: number;
|
|
239
|
+
lt10s: number;
|
|
240
|
+
lt60s: number;
|
|
241
|
+
gt60s: number;
|
|
242
|
+
};
|
|
243
|
+
/** Per-worker utilization (activeJobs / concurrency) */
|
|
244
|
+
workerUtilization: Array<{
|
|
245
|
+
id: string;
|
|
246
|
+
name: string;
|
|
247
|
+
utilization: number;
|
|
248
|
+
}>;
|
|
249
|
+
/** SQLite storage stats (null if in-memory mode) */
|
|
250
|
+
sqliteStats: {
|
|
251
|
+
dbSizeBytes: number;
|
|
252
|
+
writeBufferPending: number;
|
|
253
|
+
} | null;
|
|
254
|
+
/** Runtime environment */
|
|
255
|
+
runtime: {
|
|
256
|
+
bunVersion: string;
|
|
257
|
+
os: string;
|
|
258
|
+
arch: string;
|
|
259
|
+
cpus: number;
|
|
260
|
+
};
|
|
261
|
+
/** Per-queue priority distribution */
|
|
262
|
+
queuePriorityDistribution: Record<string, Record<number, number>>;
|
|
263
|
+
/** Per-queue job wait time stats (time in queue before processing) */
|
|
264
|
+
queueWaitTime: Record<string, {
|
|
265
|
+
avgMs: number;
|
|
266
|
+
maxMs: number;
|
|
267
|
+
minMs: number;
|
|
268
|
+
}>;
|
|
269
|
+
/** Per-queue retry rate (% jobs with attempts > 0) */
|
|
270
|
+
queueRetryRate: Record<string, {
|
|
271
|
+
retryRate: number;
|
|
272
|
+
retrying: number;
|
|
273
|
+
total: number;
|
|
274
|
+
}>;
|
|
275
|
+
/** Queue backlog velocity — delta of waiting jobs between snapshots */
|
|
276
|
+
queueBacklogVelocity: Record<string, {
|
|
277
|
+
deltaWaiting: number;
|
|
278
|
+
deltaPerMin: number;
|
|
279
|
+
trend: 'growing' | 'shrinking' | 'stable';
|
|
280
|
+
}>;
|
|
281
|
+
/** Stall details — currently stalled jobs */
|
|
282
|
+
stallDetails: Array<{
|
|
283
|
+
jobId: string;
|
|
284
|
+
queue: string;
|
|
285
|
+
workerId: string | null;
|
|
286
|
+
stalledAt: number;
|
|
287
|
+
stalledForMs: number;
|
|
288
|
+
}>;
|
|
289
|
+
/** Buffered events embedded in snapshot */
|
|
228
290
|
events?: CloudEvent[];
|
|
229
291
|
/** S3 backup status (null if not configured) */
|
|
230
292
|
s3Backup: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cloud/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cloud/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* WebSocket
|
|
3
|
-
*
|
|
2
|
+
* WebSocket Command Channel
|
|
3
|
+
* Persistent WebSocket connection for receiving commands from the dashboard.
|
|
4
4
|
*
|
|
5
5
|
* Features:
|
|
6
6
|
* - Auth via HTTP upgrade headers (Bun-specific) — no handshake message needed
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
9
|
-
* - Local socket ref: pong always replies on the correct socket after reconnect
|
|
7
|
+
* - MessagePack + zstd: binary frames with ~95% compression
|
|
8
|
+
* - Commands only: all data goes via HTTP, WS is for remote commands
|
|
10
9
|
* - Keepalive: server sends ping every 25s, bunqueue responds pong
|
|
11
10
|
*/
|
|
12
|
-
import type { CloudConfig
|
|
11
|
+
import type { CloudConfig } from './types';
|
|
13
12
|
import type { CloudCommand } from './commandHandler';
|
|
14
13
|
export declare class WsSender {
|
|
15
14
|
private readonly config;
|
|
@@ -20,30 +19,25 @@ export declare class WsSender {
|
|
|
20
19
|
private stopped;
|
|
21
20
|
private connected;
|
|
22
21
|
private reconnectTimer;
|
|
23
|
-
/** Ring buffer for events while disconnected */
|
|
24
|
-
private readonly eventBuffer;
|
|
25
22
|
private onCommand;
|
|
26
23
|
constructor(config: CloudConfig, instanceId: string);
|
|
27
24
|
/** Set handler for incoming commands from dashboard */
|
|
28
25
|
setCommandHandler(handler: (cmd: CloudCommand) => void): void;
|
|
29
26
|
/** Open the WebSocket connection */
|
|
30
27
|
connect(): void;
|
|
31
|
-
/** Send
|
|
32
|
-
send(event: CloudEvent): void;
|
|
33
|
-
/** Send any JSON payload on the WebSocket */
|
|
28
|
+
/** Send a command result back to dashboard */
|
|
34
29
|
sendRaw(data: unknown): void;
|
|
35
|
-
/**
|
|
36
|
-
* Drain buffered events for HTTP fallback (dual-channel).
|
|
37
|
-
* Returns and clears all buffered events.
|
|
38
|
-
*/
|
|
39
|
-
drainBufferedEvents(): CloudEvent[];
|
|
40
|
-
/** Number of buffered events */
|
|
41
|
-
getBufferSize(): number;
|
|
42
30
|
/** Graceful shutdown */
|
|
43
31
|
stop(): void;
|
|
44
32
|
isConnected(): boolean;
|
|
45
|
-
/**
|
|
46
|
-
private
|
|
33
|
+
/** Handle incoming WS message (async for zstd decompression) */
|
|
34
|
+
private handleMessage;
|
|
35
|
+
/** Encode and send as zstd(msgpack) binary frame */
|
|
36
|
+
private sendBinary;
|
|
37
|
+
/** Decode incoming message — supports zstd+msgpack, plain msgpack, and JSON (text) */
|
|
38
|
+
private decodeMessage;
|
|
39
|
+
/** Decode binary buffer — auto-detect zstd (magic bytes 28 b5 2f fd) vs plain msgpack */
|
|
40
|
+
private decodeBinary;
|
|
47
41
|
/** Clean up socket handlers and close */
|
|
48
42
|
private cleanup;
|
|
49
43
|
private scheduleReconnect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsSender.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cloud/wsSender.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"wsSender.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cloud/wsSender.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,qBAAa,QAAQ;IAUjB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAV7B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IAC5C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,SAAS,CAA8C;gBAG5C,MAAM,EAAE,WAAW,EACnB,UAAU,EAAE,MAAM;IAGrC,uDAAuD;IACvD,iBAAiB,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAI7D,oCAAoC;IACpC,OAAO,IAAI,IAAI;IAuDf,8CAA8C;IAC9C,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAO5B,wBAAwB;IACxB,IAAI,IAAI,IAAI;IAUZ,WAAW,IAAI,OAAO;IAItB,gEAAgE;YAClD,aAAa;IAwB3B,oDAAoD;YACtC,UAAU;IAIxB,sFAAsF;IACtF,OAAO,CAAC,aAAa;IAarB,yFAAyF;YAC3E,YAAY;IAa1B,yCAAyC;IACzC,OAAO,CAAC,OAAO;IAcf,OAAO,CAAC,iBAAiB;CAc1B"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* WebSocket
|
|
3
|
-
*
|
|
2
|
+
* WebSocket Command Channel
|
|
3
|
+
* Persistent WebSocket connection for receiving commands from the dashboard.
|
|
4
4
|
*
|
|
5
5
|
* Features:
|
|
6
6
|
* - Auth via HTTP upgrade headers (Bun-specific) — no handshake message needed
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
9
|
-
* - Local socket ref: pong always replies on the correct socket after reconnect
|
|
7
|
+
* - MessagePack + zstd: binary frames with ~95% compression
|
|
8
|
+
* - Commands only: all data goes via HTTP, WS is for remote commands
|
|
10
9
|
* - Keepalive: server sends ping every 25s, bunqueue responds pong
|
|
11
10
|
*/
|
|
11
|
+
import { pack, unpack } from 'msgpackr';
|
|
12
12
|
import { cloudLog } from './logger';
|
|
13
|
-
const EVENT_BUFFER_MAX = 1000;
|
|
14
13
|
export class WsSender {
|
|
15
14
|
config;
|
|
16
15
|
instanceId;
|
|
@@ -20,8 +19,6 @@ export class WsSender {
|
|
|
20
19
|
stopped = false;
|
|
21
20
|
connected = false;
|
|
22
21
|
reconnectTimer = null;
|
|
23
|
-
/** Ring buffer for events while disconnected */
|
|
24
|
-
eventBuffer = [];
|
|
25
22
|
onCommand = null;
|
|
26
23
|
constructor(config, instanceId) {
|
|
27
24
|
this.config = config;
|
|
@@ -35,17 +32,17 @@ export class WsSender {
|
|
|
35
32
|
connect() {
|
|
36
33
|
if (this.stopped)
|
|
37
34
|
return;
|
|
38
|
-
// Close previous socket if still lingering
|
|
39
35
|
this.cleanup();
|
|
40
|
-
const wsUrl = this.config.url.replace(/^http/, 'ws').concat('/api/v1/
|
|
36
|
+
const wsUrl = this.config.url.replace(/^http/, 'ws').concat('/api/v1/commands');
|
|
41
37
|
let ws;
|
|
42
38
|
try {
|
|
43
|
-
// Auth via HTTP upgrade headers (Bun-specific extension) — no handshake message needed
|
|
44
39
|
ws = new WebSocket(wsUrl, {
|
|
45
40
|
headers: {
|
|
46
41
|
Authorization: `Bearer ${this.config.apiKey}`,
|
|
47
42
|
'X-Instance-Id': this.instanceId,
|
|
48
43
|
'X-Remote-Commands': this.config.remoteCommands ? '1' : '0',
|
|
44
|
+
'X-Protocol': 'msgpack',
|
|
45
|
+
'X-Encoding': 'zstd',
|
|
49
46
|
},
|
|
50
47
|
});
|
|
51
48
|
}
|
|
@@ -55,65 +52,23 @@ export class WsSender {
|
|
|
55
52
|
return;
|
|
56
53
|
}
|
|
57
54
|
this.ws = ws;
|
|
55
|
+
ws.binaryType = 'arraybuffer';
|
|
58
56
|
ws.onopen = () => {
|
|
59
57
|
this.connected = true;
|
|
60
58
|
this.reconnectDelay = 1000;
|
|
61
|
-
cloudLog.info('
|
|
62
|
-
// Flush buffered events immediately — auth already done via headers
|
|
63
|
-
this.flushBuffer(ws);
|
|
59
|
+
cloudLog.info('Command channel connected (msgpack+zstd)');
|
|
64
60
|
};
|
|
65
|
-
// Handle incoming messages (pings + commands from dashboard)
|
|
66
|
-
// Uses local `ws` ref — NOT `this.ws` — to always reply on the correct socket
|
|
67
61
|
ws.onmessage = (event) => {
|
|
68
|
-
|
|
69
|
-
let raw;
|
|
70
|
-
const d = event.data;
|
|
71
|
-
if (typeof d === 'string') {
|
|
72
|
-
raw = d;
|
|
73
|
-
}
|
|
74
|
-
else if (d instanceof ArrayBuffer) {
|
|
75
|
-
raw = new TextDecoder().decode(d);
|
|
76
|
-
}
|
|
77
|
-
else if (d instanceof Buffer) {
|
|
78
|
-
raw = d.toString('utf-8');
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
raw = String(d);
|
|
82
|
-
}
|
|
83
|
-
const msg = JSON.parse(raw);
|
|
84
|
-
// Server heartbeat — respond immediately on the SAME socket
|
|
85
|
-
if (msg.type === 'ping') {
|
|
86
|
-
ws.send(JSON.stringify({ type: 'pong' }));
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
// Server pong (in case we add client ping back later)
|
|
90
|
-
if (msg.type === 'pong') {
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
if (msg.type === 'handshake_ack') {
|
|
94
|
-
cloudLog.debug('Handshake acknowledged');
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
// Commands
|
|
98
|
-
if (this.onCommand &&
|
|
99
|
-
this.config.remoteCommands &&
|
|
100
|
-
msg.type === 'command' &&
|
|
101
|
-
msg.action &&
|
|
102
|
-
msg.id) {
|
|
103
|
-
this.onCommand(msg);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
catch (err) {
|
|
62
|
+
this.handleMessage(ws, event.data).catch((err) => {
|
|
107
63
|
cloudLog.debug('WS message parse error', {
|
|
108
64
|
dataType: typeof event.data,
|
|
109
65
|
isArrayBuffer: event.data instanceof ArrayBuffer,
|
|
110
|
-
preview: String(event.data).slice(0, 100),
|
|
111
66
|
error: String(err),
|
|
112
67
|
});
|
|
113
|
-
}
|
|
68
|
+
});
|
|
114
69
|
};
|
|
115
70
|
ws.onclose = (ev) => {
|
|
116
|
-
cloudLog.info('
|
|
71
|
+
cloudLog.info('Command channel closed', { code: ev.code, reason: ev.reason });
|
|
117
72
|
this.connected = false;
|
|
118
73
|
if (!this.stopped) {
|
|
119
74
|
this.scheduleReconnect();
|
|
@@ -123,47 +78,13 @@ export class WsSender {
|
|
|
123
78
|
this.connected = false;
|
|
124
79
|
};
|
|
125
80
|
}
|
|
126
|
-
/** Send
|
|
127
|
-
send(event) {
|
|
128
|
-
if (this.connected && this.ws) {
|
|
129
|
-
try {
|
|
130
|
-
this.ws.send(JSON.stringify(event));
|
|
131
|
-
return;
|
|
132
|
-
}
|
|
133
|
-
catch {
|
|
134
|
-
// Fall through to buffer
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
// Buffer when disconnected (ring buffer — drop oldest)
|
|
138
|
-
if (this.eventBuffer.length >= EVENT_BUFFER_MAX) {
|
|
139
|
-
this.eventBuffer.shift();
|
|
140
|
-
}
|
|
141
|
-
this.eventBuffer.push(event);
|
|
142
|
-
}
|
|
143
|
-
/** Send any JSON payload on the WebSocket */
|
|
81
|
+
/** Send a command result back to dashboard */
|
|
144
82
|
sendRaw(data) {
|
|
145
83
|
if (!this.connected || !this.ws)
|
|
146
84
|
return;
|
|
147
|
-
|
|
148
|
-
this.ws.send(JSON.stringify(data));
|
|
149
|
-
}
|
|
150
|
-
catch {
|
|
85
|
+
this.sendBinary(this.ws, data).catch(() => {
|
|
151
86
|
// Best-effort: dropped
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Drain buffered events for HTTP fallback (dual-channel).
|
|
156
|
-
* Returns and clears all buffered events.
|
|
157
|
-
*/
|
|
158
|
-
drainBufferedEvents() {
|
|
159
|
-
if (this.eventBuffer.length === 0)
|
|
160
|
-
return [];
|
|
161
|
-
const events = this.eventBuffer.splice(0);
|
|
162
|
-
return events;
|
|
163
|
-
}
|
|
164
|
-
/** Number of buffered events */
|
|
165
|
-
getBufferSize() {
|
|
166
|
-
return this.eventBuffer.length;
|
|
87
|
+
});
|
|
167
88
|
}
|
|
168
89
|
/** Graceful shutdown */
|
|
169
90
|
stop() {
|
|
@@ -178,25 +99,56 @@ export class WsSender {
|
|
|
178
99
|
isConnected() {
|
|
179
100
|
return this.connected;
|
|
180
101
|
}
|
|
181
|
-
/**
|
|
182
|
-
|
|
183
|
-
|
|
102
|
+
/** Handle incoming WS message (async for zstd decompression) */
|
|
103
|
+
async handleMessage(ws, data) {
|
|
104
|
+
const msg = await this.decodeMessage(data);
|
|
105
|
+
if (!msg)
|
|
184
106
|
return;
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
107
|
+
if (msg.type === 'ping') {
|
|
108
|
+
await this.sendBinary(ws, { type: 'pong' });
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (msg.type === 'pong')
|
|
112
|
+
return;
|
|
113
|
+
if (msg.type === 'handshake_ack') {
|
|
114
|
+
cloudLog.debug('Handshake acknowledged');
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
if (this.onCommand &&
|
|
118
|
+
this.config.remoteCommands &&
|
|
119
|
+
msg.type === 'command' &&
|
|
120
|
+
msg.action &&
|
|
121
|
+
msg.id) {
|
|
122
|
+
this.onCommand(msg);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/** Encode and send as zstd(msgpack) binary frame */
|
|
126
|
+
async sendBinary(ws, data) {
|
|
127
|
+
ws.send(await Bun.zstdCompress(pack(data)));
|
|
128
|
+
}
|
|
129
|
+
/** Decode incoming message — supports zstd+msgpack, plain msgpack, and JSON (text) */
|
|
130
|
+
decodeMessage(data) {
|
|
131
|
+
if (data instanceof ArrayBuffer) {
|
|
132
|
+
return this.decodeBinary(Buffer.from(data));
|
|
133
|
+
}
|
|
134
|
+
if (typeof data === 'string') {
|
|
135
|
+
return Promise.resolve(JSON.parse(data));
|
|
136
|
+
}
|
|
137
|
+
if (data instanceof Buffer) {
|
|
138
|
+
return this.decodeBinary(data);
|
|
139
|
+
}
|
|
140
|
+
return Promise.resolve(null);
|
|
141
|
+
}
|
|
142
|
+
/** Decode binary buffer — auto-detect zstd (magic bytes 28 b5 2f fd) vs plain msgpack */
|
|
143
|
+
async decodeBinary(buf) {
|
|
144
|
+
if (buf.length >= 4 &&
|
|
145
|
+
buf[0] === 0x28 &&
|
|
146
|
+
buf[1] === 0xb5 &&
|
|
147
|
+
buf[2] === 0x2f &&
|
|
148
|
+
buf[3] === 0xfd) {
|
|
149
|
+
return unpack(Buffer.from(await Bun.zstdDecompress(buf)));
|
|
199
150
|
}
|
|
151
|
+
return unpack(buf);
|
|
200
152
|
}
|
|
201
153
|
/** Clean up socket handlers and close */
|
|
202
154
|
cleanup() {
|
|
@@ -216,7 +168,6 @@ export class WsSender {
|
|
|
216
168
|
scheduleReconnect() {
|
|
217
169
|
if (this.stopped)
|
|
218
170
|
return;
|
|
219
|
-
// Prevent duplicate reconnect timers
|
|
220
171
|
if (this.reconnectTimer)
|
|
221
172
|
return;
|
|
222
173
|
const jitter = Math.random() * 1000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsSender.js","sourceRoot":"","sources":["../../../src/infrastructure/cloud/wsSender.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"wsSender.js","sourceRoot":"","sources":["../../../src/infrastructure/cloud/wsSender.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bunqueue",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.57",
|
|
4
4
|
"description": "High-performance job queue for Bun & AI agents. SQLite persistence, cron scheduling, priorities, retries, DLQ, webhooks, native MCP server. Zero external dependencies.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/main.js",
|