crewly 1.4.55 → 1.4.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/backend/backend/src/constants.d.ts +36 -13
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +37 -13
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts +187 -0
- package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/browser/browser.controller.js +269 -0
- package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts +17 -0
- package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/browser/browser.routes.js +65 -0
- package/dist/backend/backend/src/controllers/browser/browser.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.js +31 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.js +23 -0
- package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +12 -0
- package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +51 -0
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +3 -0
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts +134 -0
- package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/browser/browser-bridge.service.js +254 -0
- package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-client.service.js +15 -0
- package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts +16 -2
- package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-sync.service.js +155 -44
- package/dist/backend/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +1 -1
- package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts +52 -0
- package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/relay-client.service.js +117 -12
- package/dist/backend/backend/src/services/cloud/relay-client.service.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/relay.types.d.ts +2 -0
- package/dist/backend/backend/src/services/cloud/relay.types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/relay.types.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/message-replay.service.d.ts +103 -0
- package/dist/backend/backend/src/services/messaging/message-replay.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/messaging/message-replay.service.js +247 -0
- package/dist/backend/backend/src/services/messaging/message-replay.service.js.map +1 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +40 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack.service.js +2 -2
- package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
- package/dist/cli/backend/src/constants.d.ts +36 -13
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +37 -13
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/cli/src/commands/service.d.ts +9 -0
- package/dist/cli/cli/src/commands/service.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/service.js +76 -15
- package/dist/cli/cli/src/commands/service.js.map +1 -1
- package/frontend/dist/assets/{index-d4b7d883.js → index-1b67fa33.js} +187 -187
- package/frontend/dist/index.html +1 -1
- package/package.json +1 -1
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
* - End-to-end encryption (E2EE) — relay never sees plaintext
|
|
12
12
|
* - Exponential backoff on registration failures
|
|
13
13
|
* - Automatic message acknowledgement after processing
|
|
14
|
+
* - Token auto-refresh via CloudClientService integration
|
|
15
|
+
* - Consecutive failure tracking with error state escalation
|
|
14
16
|
*
|
|
15
17
|
* @module services/cloud/relay-client.service
|
|
16
18
|
*/
|
|
@@ -20,6 +22,9 @@ import { LoggerService } from '../core/logger.service.js';
|
|
|
20
22
|
import { CLOUD_CONSTANTS } from '../../constants.js';
|
|
21
23
|
import { deriveKey, generateSalt, encrypt, decrypt, serializeEnvelope, deserializeEnvelope, } from './relay-crypto.service.js';
|
|
22
24
|
const RELAY = CLOUD_CONSTANTS.RELAY;
|
|
25
|
+
const RELAY_ENDPOINTS = CLOUD_CONSTANTS.RELAY_ENDPOINTS;
|
|
26
|
+
/** Maximum consecutive poll failures before emitting an error event */
|
|
27
|
+
const MAX_CONSECUTIVE_POLL_FAILURES = 5;
|
|
23
28
|
// ---------------------------------------------------------------------------
|
|
24
29
|
// Service
|
|
25
30
|
// ---------------------------------------------------------------------------
|
|
@@ -54,6 +59,10 @@ export class RelayClientService extends EventEmitter {
|
|
|
54
59
|
intentionalDisconnect = false;
|
|
55
60
|
/** Timestamp of last seen message for pagination */
|
|
56
61
|
lastSeenTimestamp = null;
|
|
62
|
+
/** Consecutive poll failure count for error escalation */
|
|
63
|
+
consecutivePollFailures = 0;
|
|
64
|
+
/** Total poll cycles executed (for observability) */
|
|
65
|
+
pollCount = 0;
|
|
57
66
|
constructor() {
|
|
58
67
|
super();
|
|
59
68
|
this.logger = LoggerService.getInstance().createComponentLogger('RelayClientService');
|
|
@@ -176,6 +185,10 @@ export class RelayClientService extends EventEmitter {
|
|
|
176
185
|
// -------------------------------------------------------------------------
|
|
177
186
|
/**
|
|
178
187
|
* Register with the Cloud Message Queue via HTTP POST.
|
|
188
|
+
*
|
|
189
|
+
* Uses CLOUD_CONSTANTS.RELAY_ENDPOINTS.QUEUE_REGISTER for the endpoint URL.
|
|
190
|
+
* On success, transitions to 'registered' or 'paired' state and starts polling.
|
|
191
|
+
* On failure, enters 'error' state and schedules reconnection with backoff.
|
|
179
192
|
*/
|
|
180
193
|
async doRegister() {
|
|
181
194
|
if (!this.config)
|
|
@@ -183,11 +196,13 @@ export class RelayClientService extends EventEmitter {
|
|
|
183
196
|
this.setState('connecting');
|
|
184
197
|
this.logger.info('Registering with Cloud Message Queue', { apiUrl: this.config.apiUrl });
|
|
185
198
|
try {
|
|
186
|
-
const
|
|
199
|
+
const token = this.getAuthToken();
|
|
200
|
+
const url = `${this.config.apiUrl}${RELAY_ENDPOINTS.QUEUE_REGISTER}`;
|
|
201
|
+
const response = await fetch(url, {
|
|
187
202
|
method: 'POST',
|
|
188
203
|
headers: {
|
|
189
204
|
'Content-Type': 'application/json',
|
|
190
|
-
'Authorization': `Bearer ${
|
|
205
|
+
'Authorization': `Bearer ${token}`,
|
|
191
206
|
},
|
|
192
207
|
body: JSON.stringify({
|
|
193
208
|
role: this.config.role,
|
|
@@ -205,6 +220,7 @@ export class RelayClientService extends EventEmitter {
|
|
|
205
220
|
}
|
|
206
221
|
this.sessionId = data.queueId;
|
|
207
222
|
this.reconnectAttempts = 0;
|
|
223
|
+
this.consecutivePollFailures = 0;
|
|
208
224
|
this.logger.info('Registered with Cloud Queue', { queueId: data.queueId });
|
|
209
225
|
if (data.peerQueueId) {
|
|
210
226
|
// Already paired
|
|
@@ -250,27 +266,45 @@ export class RelayClientService extends EventEmitter {
|
|
|
250
266
|
}
|
|
251
267
|
/**
|
|
252
268
|
* Poll the queue for new messages and process them.
|
|
269
|
+
*
|
|
270
|
+
* Uses CLOUD_CONSTANTS.RELAY_ENDPOINTS.QUEUE_POLL for the endpoint URL.
|
|
271
|
+
* Handles pairing detection when the poll response includes a peerQueueId
|
|
272
|
+
* (transition from 'registered' → 'paired'). Tracks consecutive failures
|
|
273
|
+
* and emits an error event after MAX_CONSECUTIVE_POLL_FAILURES.
|
|
253
274
|
*/
|
|
254
275
|
async poll() {
|
|
255
276
|
if (!this.config || !this.sessionId)
|
|
256
277
|
return;
|
|
278
|
+
this.pollCount++;
|
|
257
279
|
try {
|
|
258
|
-
|
|
280
|
+
const token = this.getAuthToken();
|
|
281
|
+
let url = `${this.config.apiUrl}${RELAY_ENDPOINTS.QUEUE_POLL}?queueId=${this.sessionId}`;
|
|
259
282
|
if (this.lastSeenTimestamp) {
|
|
260
283
|
url += `&since=${encodeURIComponent(this.lastSeenTimestamp)}`;
|
|
261
284
|
}
|
|
262
285
|
const response = await fetch(url, {
|
|
263
286
|
method: 'GET',
|
|
264
287
|
headers: {
|
|
265
|
-
'Authorization': `Bearer ${
|
|
288
|
+
'Authorization': `Bearer ${token}`,
|
|
266
289
|
},
|
|
267
290
|
signal: AbortSignal.timeout(RELAY.REQUEST_TIMEOUT_MS),
|
|
268
291
|
});
|
|
269
292
|
if (!response.ok) {
|
|
270
|
-
this.
|
|
293
|
+
this.handlePollFailure(`Poll request failed with HTTP ${response.status}`);
|
|
271
294
|
return;
|
|
272
295
|
}
|
|
296
|
+
// Reset failure counter on successful response
|
|
297
|
+
this.consecutivePollFailures = 0;
|
|
273
298
|
const data = await response.json();
|
|
299
|
+
// Detect pairing during poll — server may return peerQueueId once peer registers
|
|
300
|
+
if (data.peerQueueId && !this.peerQueueId) {
|
|
301
|
+
this.peerQueueId = data.peerQueueId;
|
|
302
|
+
if (this.state === 'registered') {
|
|
303
|
+
this.setState('paired');
|
|
304
|
+
this.emit('paired', this.peerQueueId, 'peer');
|
|
305
|
+
this.logger.info('Paired with peer during poll', { peerQueueId: this.peerQueueId });
|
|
306
|
+
}
|
|
307
|
+
}
|
|
274
308
|
if (!data.messages || data.messages.length === 0)
|
|
275
309
|
return;
|
|
276
310
|
const messageIds = [];
|
|
@@ -289,9 +323,24 @@ export class RelayClientService extends EventEmitter {
|
|
|
289
323
|
}
|
|
290
324
|
}
|
|
291
325
|
catch (err) {
|
|
292
|
-
this.
|
|
293
|
-
|
|
294
|
-
|
|
326
|
+
this.handlePollFailure(err instanceof Error ? err.message : String(err));
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Handle a poll failure by incrementing the failure counter and
|
|
331
|
+
* emitting an error event if the threshold is exceeded.
|
|
332
|
+
*
|
|
333
|
+
* @param reason - Human-readable failure reason for logging
|
|
334
|
+
*/
|
|
335
|
+
handlePollFailure(reason) {
|
|
336
|
+
this.consecutivePollFailures++;
|
|
337
|
+
this.logger.error('Poll cycle failed', {
|
|
338
|
+
reason,
|
|
339
|
+
consecutiveFailures: this.consecutivePollFailures,
|
|
340
|
+
});
|
|
341
|
+
if (this.consecutivePollFailures >= MAX_CONSECUTIVE_POLL_FAILURES) {
|
|
342
|
+
this.logger.error('Too many consecutive poll failures — emitting error');
|
|
343
|
+
this.emit('error', new Error(`Relay poll failed ${this.consecutivePollFailures} times consecutively`));
|
|
295
344
|
}
|
|
296
345
|
}
|
|
297
346
|
/**
|
|
@@ -318,17 +367,23 @@ export class RelayClientService extends EventEmitter {
|
|
|
318
367
|
/**
|
|
319
368
|
* Acknowledge processed messages so they are not re-delivered.
|
|
320
369
|
*
|
|
370
|
+
* Uses CLOUD_CONSTANTS.RELAY_ENDPOINTS.QUEUE_ACK for the endpoint URL.
|
|
371
|
+
* Fire-and-forget — ack failures are logged but do not affect state.
|
|
372
|
+
* Unacked messages may be re-delivered on the next poll cycle.
|
|
373
|
+
*
|
|
321
374
|
* @param messageIds - Array of message IDs to acknowledge
|
|
322
375
|
*/
|
|
323
376
|
async ackMessages(messageIds) {
|
|
324
377
|
if (!this.config || !this.sessionId)
|
|
325
378
|
return;
|
|
326
379
|
try {
|
|
327
|
-
|
|
380
|
+
const token = this.getAuthToken();
|
|
381
|
+
const url = `${this.config.apiUrl}${RELAY_ENDPOINTS.QUEUE_ACK}`;
|
|
382
|
+
await fetch(url, {
|
|
328
383
|
method: 'POST',
|
|
329
384
|
headers: {
|
|
330
385
|
'Content-Type': 'application/json',
|
|
331
|
-
'Authorization': `Bearer ${
|
|
386
|
+
'Authorization': `Bearer ${token}`,
|
|
332
387
|
},
|
|
333
388
|
body: JSON.stringify({
|
|
334
389
|
queueId: this.sessionId,
|
|
@@ -349,17 +404,21 @@ export class RelayClientService extends EventEmitter {
|
|
|
349
404
|
/**
|
|
350
405
|
* Send an encrypted payload to the peer via HTTP POST.
|
|
351
406
|
*
|
|
407
|
+
* Uses CLOUD_CONSTANTS.RELAY_ENDPOINTS.QUEUE_SEND for the endpoint URL.
|
|
408
|
+
*
|
|
352
409
|
* @param payload - Serialized encrypted envelope
|
|
353
410
|
*/
|
|
354
411
|
async sendViaHttp(payload) {
|
|
355
412
|
if (!this.config || !this.peerQueueId)
|
|
356
413
|
return;
|
|
357
414
|
try {
|
|
358
|
-
const
|
|
415
|
+
const token = this.getAuthToken();
|
|
416
|
+
const url = `${this.config.apiUrl}${RELAY_ENDPOINTS.QUEUE_SEND}`;
|
|
417
|
+
const response = await fetch(url, {
|
|
359
418
|
method: 'POST',
|
|
360
419
|
headers: {
|
|
361
420
|
'Content-Type': 'application/json',
|
|
362
|
-
'Authorization': `Bearer ${
|
|
421
|
+
'Authorization': `Bearer ${token}`,
|
|
363
422
|
},
|
|
364
423
|
body: JSON.stringify({
|
|
365
424
|
peerQueueId: this.peerQueueId,
|
|
@@ -417,6 +476,50 @@ export class RelayClientService extends EventEmitter {
|
|
|
417
476
|
this.emit('stateChange', newState);
|
|
418
477
|
}
|
|
419
478
|
}
|
|
479
|
+
/**
|
|
480
|
+
* Get the total number of poll cycles executed since last connect.
|
|
481
|
+
*
|
|
482
|
+
* Useful for monitoring and debugging relay health.
|
|
483
|
+
*
|
|
484
|
+
* @returns Number of poll cycles
|
|
485
|
+
*/
|
|
486
|
+
getPollCount() {
|
|
487
|
+
return this.pollCount;
|
|
488
|
+
}
|
|
489
|
+
/**
|
|
490
|
+
* Get the current number of consecutive poll failures.
|
|
491
|
+
*
|
|
492
|
+
* @returns Consecutive failure count (resets on success)
|
|
493
|
+
*/
|
|
494
|
+
getConsecutivePollFailures() {
|
|
495
|
+
return this.consecutivePollFailures;
|
|
496
|
+
}
|
|
497
|
+
/**
|
|
498
|
+
* Get the best available auth token for Cloud API calls.
|
|
499
|
+
*
|
|
500
|
+
* Attempts to read a fresh token from CloudClientService (which handles
|
|
501
|
+
* auto-refresh). Falls back to the token stored in config if CloudClientService
|
|
502
|
+
* is not connected or unavailable.
|
|
503
|
+
*
|
|
504
|
+
* @returns Bearer token string
|
|
505
|
+
*/
|
|
506
|
+
getAuthToken() {
|
|
507
|
+
try {
|
|
508
|
+
// Dynamically import to avoid circular dependency at module load time
|
|
509
|
+
// CloudClientService.getToken() returns the latest (possibly refreshed) token
|
|
510
|
+
const { CloudClientService } = require('./cloud-client.service.js');
|
|
511
|
+
const cloudClient = CloudClientService.getInstance();
|
|
512
|
+
if (cloudClient.isConnected()) {
|
|
513
|
+
const freshToken = cloudClient.getToken();
|
|
514
|
+
if (freshToken)
|
|
515
|
+
return freshToken;
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
catch {
|
|
519
|
+
// CloudClientService not available — use config token
|
|
520
|
+
}
|
|
521
|
+
return this.config?.token ?? '';
|
|
522
|
+
}
|
|
420
523
|
/**
|
|
421
524
|
* Clean up timers and reset connection state.
|
|
422
525
|
*/
|
|
@@ -428,6 +531,8 @@ export class RelayClientService extends EventEmitter {
|
|
|
428
531
|
}
|
|
429
532
|
this.sessionId = null;
|
|
430
533
|
this.peerQueueId = null;
|
|
534
|
+
this.consecutivePollFailures = 0;
|
|
535
|
+
this.pollCount = 0;
|
|
431
536
|
}
|
|
432
537
|
}
|
|
433
538
|
//# sourceMappingURL=relay-client.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-client.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/relay-client.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"relay-client.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/relay-client.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -140,6 +140,8 @@ export interface RelayQueueMessage {
|
|
|
140
140
|
export interface RelayQueuePollResponse {
|
|
141
141
|
/** Array of unread messages */
|
|
142
142
|
messages: RelayQueueMessage[];
|
|
143
|
+
/** Peer's queue ID (included when peer registers after caller — enables pairing detection during poll) */
|
|
144
|
+
peerQueueId?: string;
|
|
143
145
|
}
|
|
144
146
|
/** Response from POST /api/v1/relay/queue/register. */
|
|
145
147
|
export interface RelayQueueRegisterResponse {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/relay.types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"relay.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/relay.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/relay.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"relay.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/relay.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAyOH,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC;QAC/C,UAAU;QACV,YAAY;QACZ,MAAM;QACN,QAAQ;QACR,OAAO;QACP,WAAW;QACX,eAAe;QACf,OAAO;QACP,mBAAmB;KACpB,CAAC,CAAC;IACH,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAa;IAC1C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5D,MAAM,GAAG,GAAG,IAA+B,CAAC;IAC5C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAEnD,QAAQ,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACpB,KAAK,UAAU;YACb,OAAO,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,aAAa,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;QACvH,KAAK,YAAY;YACf,OAAO,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC;QAC9C,KAAK,QAAQ;YACX,OAAO,OAAO,GAAG,CAAC,eAAe,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC;QACzF,KAAK,OAAO;YACV,OAAO,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC;QAC5C,KAAK,WAAW,CAAC;QACjB,KAAK,eAAe;YAClB,OAAO,IAAI,CAAC;QACd,KAAK,OAAO;YACV,OAAO,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC;QAC/E,KAAK,mBAAmB;YACtB,OAAO,OAAO,GAAG,CAAC,eAAe,CAAC,KAAK,QAAQ,CAAC;QAClD;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Message Replay Service
|
|
3
|
+
*
|
|
4
|
+
* Replays pending user messages after orchestrator restarts (#247).
|
|
5
|
+
* When the orchestrator goes offline (backend restart, session crash, etc.),
|
|
6
|
+
* user messages sent via Slack or Chat UI may be silently lost. This service
|
|
7
|
+
* scans chat conversation history on startup for unreplied user messages
|
|
8
|
+
* that arrived after the last queue persistence timestamp and re-enqueues
|
|
9
|
+
* them so the orchestrator can process them.
|
|
10
|
+
*
|
|
11
|
+
* Flow:
|
|
12
|
+
* 1. On startup, read `savedAt` from persisted queue state to determine
|
|
13
|
+
* when the backend last persisted state (proxy for "last alive" time).
|
|
14
|
+
* 2. Scan all active chat conversations for user messages sent after `savedAt`.
|
|
15
|
+
* 3. Filter out messages that already have an orchestrator/system reply after them.
|
|
16
|
+
* 4. Filter out messages already pending in the restored queue (by conversationId+content).
|
|
17
|
+
* 5. Enqueue surviving messages with a [REPLAYED] prefix.
|
|
18
|
+
*
|
|
19
|
+
* @module services/messaging/message-replay
|
|
20
|
+
*/
|
|
21
|
+
import type { MessageQueueService } from './message-queue.service.js';
|
|
22
|
+
import type { ChatService } from '../chat/chat.service.js';
|
|
23
|
+
import type { ChatMessage } from '../../types/chat.types.js';
|
|
24
|
+
/**
|
|
25
|
+
* Result of a replay scan, containing details about what was found and replayed.
|
|
26
|
+
*/
|
|
27
|
+
export interface ReplayResult {
|
|
28
|
+
/** Number of unreplied messages found */
|
|
29
|
+
foundCount: number;
|
|
30
|
+
/** Number of messages actually replayed (after filtering duplicates) */
|
|
31
|
+
replayedCount: number;
|
|
32
|
+
/** Number skipped because they were already in the queue */
|
|
33
|
+
skippedDuplicate: number;
|
|
34
|
+
/** The savedAt timestamp used to determine offline start */
|
|
35
|
+
offlineSince: string;
|
|
36
|
+
/** Duration the backend was offline (ms) */
|
|
37
|
+
offlineDurationMs: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* MessageReplayService scans chat history on startup and replays
|
|
41
|
+
* unreplied user messages that arrived while the orchestrator was offline.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const replayService = new MessageReplayService(
|
|
46
|
+
* messageQueueService,
|
|
47
|
+
* chatService,
|
|
48
|
+
* '~/.crewly'
|
|
49
|
+
* );
|
|
50
|
+
* const result = await replayService.replayPendingMessages();
|
|
51
|
+
* if (result.replayedCount > 0) {
|
|
52
|
+
* logger.info(`Replayed ${result.replayedCount} missed messages`);
|
|
53
|
+
* }
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export declare class MessageReplayService {
|
|
57
|
+
private logger;
|
|
58
|
+
private messageQueueService;
|
|
59
|
+
private chatService;
|
|
60
|
+
private crewlyHome;
|
|
61
|
+
/**
|
|
62
|
+
* Create a new MessageReplayService.
|
|
63
|
+
*
|
|
64
|
+
* @param messageQueueService - The message queue to enqueue replayed messages into
|
|
65
|
+
* @param chatService - The chat service to scan for unreplied messages
|
|
66
|
+
* @param crewlyHome - Path to the crewly home directory (e.g. ~/.crewly)
|
|
67
|
+
*/
|
|
68
|
+
constructor(messageQueueService: MessageQueueService, chatService: ChatService, crewlyHome: string);
|
|
69
|
+
/**
|
|
70
|
+
* Scan chat history for unreplied user messages and replay them into the queue.
|
|
71
|
+
*
|
|
72
|
+
* This method should be called once during startup, after the queue has been
|
|
73
|
+
* restored from persisted state but before the orchestrator starts processing.
|
|
74
|
+
*
|
|
75
|
+
* @returns Result containing counts of found, replayed, and skipped messages
|
|
76
|
+
*/
|
|
77
|
+
replayPendingMessages(): Promise<ReplayResult>;
|
|
78
|
+
/**
|
|
79
|
+
* Read the `savedAt` timestamp from the persisted queue state file.
|
|
80
|
+
* This is the proxy for "when the backend was last alive."
|
|
81
|
+
*
|
|
82
|
+
* @returns ISO timestamp string or null if no persisted state exists
|
|
83
|
+
*/
|
|
84
|
+
getLastPersistedTimestamp(): Promise<string | null>;
|
|
85
|
+
/**
|
|
86
|
+
* Find user messages in a sorted message list that have no orchestrator/system
|
|
87
|
+
* reply after them. A message is considered "replied" if any message from the
|
|
88
|
+
* orchestrator or system appears after it in the conversation.
|
|
89
|
+
*
|
|
90
|
+
* @param messages - Sorted messages (oldest first) from a single conversation
|
|
91
|
+
* @returns Array of user messages with no subsequent reply
|
|
92
|
+
*/
|
|
93
|
+
findUnrepliedUserMessages(messages: ChatMessage[]): ChatMessage[];
|
|
94
|
+
/**
|
|
95
|
+
* Infer the message source from the chat message metadata or content.
|
|
96
|
+
* Falls back to 'web_chat' if the source cannot be determined.
|
|
97
|
+
*
|
|
98
|
+
* @param message - The chat message to analyze
|
|
99
|
+
* @returns The message source string for queue enqueuing
|
|
100
|
+
*/
|
|
101
|
+
private inferMessageSource;
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=message-replay.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-replay.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/messaging/message-replay.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAK7D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,aAAa,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,gBAAgB,EAAE,MAAM,CAAC;IACzB,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;;;OAMG;gBAED,mBAAmB,EAAE,mBAAmB,EACxC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM;IAQpB;;;;;;;OAOG;IACG,qBAAqB,IAAI,OAAO,CAAC,YAAY,CAAC;IAkJpD;;;;;OAKG;IACG,yBAAyB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAWzD;;;;;;;OAOG;IACH,yBAAyB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE;IAqBjE;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;CAiB3B"}
|