crewly 1.20.148 → 1.20.150

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.
Files changed (168) hide show
  1. package/config/constants.ts +43 -0
  2. package/dist/backend/backend/src/constants.d.ts +95 -0
  3. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  4. package/dist/backend/backend/src/constants.js +79 -1
  5. package/dist/backend/backend/src/constants.js.map +1 -1
  6. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts +1 -0
  7. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts.map +1 -1
  8. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js +22 -0
  9. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js.map +1 -1
  10. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.d.ts +1 -0
  11. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.d.ts.map +1 -1
  12. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.js +2 -0
  13. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.js.map +1 -1
  14. package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts.map +1 -1
  15. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js +42 -1
  16. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js.map +1 -1
  17. package/dist/backend/backend/src/index.d.ts +19 -0
  18. package/dist/backend/backend/src/index.d.ts.map +1 -1
  19. package/dist/backend/backend/src/index.js +119 -1
  20. package/dist/backend/backend/src/index.js.map +1 -1
  21. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.d.ts.map +1 -1
  22. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.js +3 -0
  23. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.js.map +1 -1
  24. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts +94 -2
  25. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  26. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js +183 -2
  27. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  28. package/dist/backend/backend/src/services/chat-v2/owner-inbound.utils.d.ts +70 -0
  29. package/dist/backend/backend/src/services/chat-v2/owner-inbound.utils.d.ts.map +1 -1
  30. package/dist/backend/backend/src/services/chat-v2/owner-inbound.utils.js +78 -0
  31. package/dist/backend/backend/src/services/chat-v2/owner-inbound.utils.js.map +1 -1
  32. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.d.ts.map +1 -1
  33. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.js +9 -0
  34. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.js.map +1 -1
  35. package/dist/backend/backend/src/services/chat-v2/sqlite/cloud-outbox.store.d.ts +136 -0
  36. package/dist/backend/backend/src/services/chat-v2/sqlite/cloud-outbox.store.d.ts.map +1 -0
  37. package/dist/backend/backend/src/services/chat-v2/sqlite/cloud-outbox.store.js +207 -0
  38. package/dist/backend/backend/src/services/chat-v2/sqlite/cloud-outbox.store.js.map +1 -0
  39. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +62 -1
  40. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  41. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +111 -4
  42. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  43. package/dist/backend/backend/src/services/chat-v2/sqlite/unified-log.d.ts +206 -0
  44. package/dist/backend/backend/src/services/chat-v2/sqlite/unified-log.d.ts.map +1 -0
  45. package/dist/backend/backend/src/services/chat-v2/sqlite/unified-log.js +442 -0
  46. package/dist/backend/backend/src/services/chat-v2/sqlite/unified-log.js.map +1 -0
  47. package/dist/backend/backend/src/services/chat-v2/types.d.ts +29 -0
  48. package/dist/backend/backend/src/services/chat-v2/types.d.ts.map +1 -1
  49. package/dist/backend/backend/src/services/chat-v2/types.js.map +1 -1
  50. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.d.ts +200 -0
  51. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.d.ts.map +1 -0
  52. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.js +485 -0
  53. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.js.map +1 -0
  54. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.d.ts +163 -0
  55. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.d.ts.map +1 -0
  56. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.js +176 -0
  57. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.js.map +1 -0
  58. package/dist/backend/backend/src/services/cloud/cloud-login-runner.d.ts +106 -0
  59. package/dist/backend/backend/src/services/cloud/cloud-login-runner.d.ts.map +1 -0
  60. package/dist/backend/backend/src/services/cloud/cloud-login-runner.js +238 -0
  61. package/dist/backend/backend/src/services/cloud/cloud-login-runner.js.map +1 -0
  62. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts +16 -1
  63. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  64. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js +38 -0
  65. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  66. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +14 -0
  67. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  68. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  69. package/dist/backend/backend/src/services/cloud/conversation-cloud-sync.service.d.ts +209 -0
  70. package/dist/backend/backend/src/services/cloud/conversation-cloud-sync.service.d.ts.map +1 -0
  71. package/dist/backend/backend/src/services/cloud/conversation-cloud-sync.service.js +607 -0
  72. package/dist/backend/backend/src/services/cloud/conversation-cloud-sync.service.js.map +1 -0
  73. package/dist/backend/backend/src/services/cloud/conversation-ingest.contract.d.ts +167 -0
  74. package/dist/backend/backend/src/services/cloud/conversation-ingest.contract.d.ts.map +1 -0
  75. package/dist/backend/backend/src/services/cloud/conversation-ingest.contract.js +127 -0
  76. package/dist/backend/backend/src/services/cloud/conversation-ingest.contract.js.map +1 -0
  77. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.d.ts.map +1 -1
  78. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js +4 -0
  79. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js.map +1 -1
  80. package/dist/backend/backend/src/services/messaging/google-chat-initializer.d.ts.map +1 -1
  81. package/dist/backend/backend/src/services/messaging/google-chat-initializer.js +11 -1
  82. package/dist/backend/backend/src/services/messaging/google-chat-initializer.js.map +1 -1
  83. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.d.ts +1 -1
  84. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.d.ts.map +1 -1
  85. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js +13 -0
  86. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
  87. package/dist/backend/backend/src/services/slack/slack-initializer.d.ts.map +1 -1
  88. package/dist/backend/backend/src/services/slack/slack-initializer.js +13 -0
  89. package/dist/backend/backend/src/services/slack/slack-initializer.js.map +1 -1
  90. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +14 -1
  91. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  92. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +34 -2
  93. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  94. package/dist/backend/backend/src/services/slack/slack-owner-direct-dm.d.ts +55 -0
  95. package/dist/backend/backend/src/services/slack/slack-owner-direct-dm.d.ts.map +1 -0
  96. package/dist/backend/backend/src/services/slack/slack-owner-direct-dm.js +114 -0
  97. package/dist/backend/backend/src/services/slack/slack-owner-direct-dm.js.map +1 -0
  98. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  99. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +1 -0
  100. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  101. package/dist/backend/backend/src/services/telegram/telegram-orchestrator-bridge.d.ts +10 -0
  102. package/dist/backend/backend/src/services/telegram/telegram-orchestrator-bridge.d.ts.map +1 -1
  103. package/dist/backend/backend/src/services/telegram/telegram-orchestrator-bridge.js +27 -2
  104. package/dist/backend/backend/src/services/telegram/telegram-orchestrator-bridge.js.map +1 -1
  105. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts +10 -0
  106. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts.map +1 -1
  107. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js +27 -4
  108. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js.map +1 -1
  109. package/dist/backend/backend/src/types/slack.types.d.ts +12 -0
  110. package/dist/backend/backend/src/types/slack.types.d.ts.map +1 -1
  111. package/dist/backend/backend/src/types/slack.types.js.map +1 -1
  112. package/dist/backend/build-info.json +2 -2
  113. package/dist/backend/config/constants.d.ts +42 -0
  114. package/dist/backend/config/constants.d.ts.map +1 -1
  115. package/dist/backend/config/constants.js +42 -0
  116. package/dist/backend/config/constants.js.map +1 -1
  117. package/dist/cli/backend/src/constants.d.ts +95 -0
  118. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  119. package/dist/cli/backend/src/constants.js +79 -1
  120. package/dist/cli/backend/src/constants.js.map +1 -1
  121. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts +94 -2
  122. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  123. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js +183 -2
  124. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  125. package/dist/cli/backend/src/services/chat-v2/sqlite/chat-db.d.ts.map +1 -1
  126. package/dist/cli/backend/src/services/chat-v2/sqlite/chat-db.js +9 -0
  127. package/dist/cli/backend/src/services/chat-v2/sqlite/chat-db.js.map +1 -1
  128. package/dist/cli/backend/src/services/chat-v2/sqlite/cloud-outbox.store.d.ts +136 -0
  129. package/dist/cli/backend/src/services/chat-v2/sqlite/cloud-outbox.store.d.ts.map +1 -0
  130. package/dist/cli/backend/src/services/chat-v2/sqlite/cloud-outbox.store.js +207 -0
  131. package/dist/cli/backend/src/services/chat-v2/sqlite/cloud-outbox.store.js.map +1 -0
  132. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts +62 -1
  133. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  134. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js +111 -4
  135. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  136. package/dist/cli/backend/src/services/chat-v2/sqlite/unified-log.d.ts +206 -0
  137. package/dist/cli/backend/src/services/chat-v2/sqlite/unified-log.d.ts.map +1 -0
  138. package/dist/cli/backend/src/services/chat-v2/sqlite/unified-log.js +442 -0
  139. package/dist/cli/backend/src/services/chat-v2/sqlite/unified-log.js.map +1 -0
  140. package/dist/cli/backend/src/services/chat-v2/types.d.ts +29 -0
  141. package/dist/cli/backend/src/services/chat-v2/types.d.ts.map +1 -1
  142. package/dist/cli/backend/src/services/chat-v2/types.js.map +1 -1
  143. package/dist/cli/backend/src/services/cloud/cloud-sync.service.d.ts +16 -1
  144. package/dist/cli/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  145. package/dist/cli/backend/src/services/cloud/cloud-sync.service.js +38 -0
  146. package/dist/cli/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  147. package/dist/cli/backend/src/services/cloud/cloud-sync.types.d.ts +14 -0
  148. package/dist/cli/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  149. package/dist/cli/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  150. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.d.ts +1 -1
  151. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.d.ts.map +1 -1
  152. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js +13 -0
  153. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
  154. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts +14 -1
  155. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  156. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js +34 -2
  157. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  158. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  159. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +1 -0
  160. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  161. package/dist/cli/backend/src/types/slack.types.d.ts +12 -0
  162. package/dist/cli/backend/src/types/slack.types.d.ts.map +1 -1
  163. package/dist/cli/backend/src/types/slack.types.js.map +1 -1
  164. package/dist/cli/config/constants.d.ts +42 -0
  165. package/dist/cli/config/constants.d.ts.map +1 -1
  166. package/dist/cli/config/constants.js +42 -0
  167. package/dist/cli/config/constants.js.map +1 -1
  168. package/package.json +1 -1
@@ -146,6 +146,12 @@ export class CloudSyncService extends EventEmitter {
146
146
  * Keeps the last 500 IDs; pruned on overflow.
147
147
  */
148
148
  processedMessageIds = new Set();
149
+ /** Epoch ms of the last request Cloud answered successfully (0 = never) */
150
+ lastContactAt = 0;
151
+ /** Epoch ms of the last start() (0 = never started) */
152
+ startedAt = 0;
153
+ /** True when Cloud's last answer was 401/403 and the token refresh failed */
154
+ authRejected = false;
149
155
  /** Maximum size of the processedMessageIds dedup set */
150
156
  static MAX_DEDUP_IDS = 500;
151
157
  constructor() {
@@ -188,8 +194,16 @@ export class CloudSyncService extends EventEmitter {
188
194
  this.logger.warn('CloudSyncService already running, ignoring start()');
189
195
  return;
190
196
  }
197
+ // A re-login while in `error` / `auth_expired` (Settings, `crewly cloud
198
+ // login`, the disconnect notice): the error state keeps its heartbeat and
199
+ // poll timers, so starting on top of it would run two sets. Reset first.
200
+ if (this.state === 'error' || this.state === 'auth_expired') {
201
+ this.stop();
202
+ }
191
203
  this.config = config;
192
204
  this.state = 'syncing';
205
+ this.startedAt = Date.now();
206
+ this.authRejected = false;
193
207
  this.heartbeatFailures = 0;
194
208
  this.devicePollFailures = 0;
195
209
  this.messagePollFailures = 0;
@@ -292,6 +306,25 @@ export class CloudSyncService extends EventEmitter {
292
306
  getState() {
293
307
  return this.state;
294
308
  }
309
+ /**
310
+ * Connection health for the disconnect monitor: the state, when Cloud last
311
+ * answered, when sync was started and whether Cloud refused the sign-in.
312
+ *
313
+ * @returns Health snapshot (times are epoch ms, null when never)
314
+ */
315
+ getHealth() {
316
+ return {
317
+ state: this.state,
318
+ lastContactAt: this.lastContactAt || null,
319
+ startedAt: this.startedAt || null,
320
+ authRejected: this.authRejected,
321
+ };
322
+ }
323
+ /** Record a request Cloud answered successfully. */
324
+ markContact() {
325
+ this.lastContactAt = Date.now();
326
+ this.authRejected = false;
327
+ }
295
328
  /**
296
329
  * Get all cached devices for this Cloud account.
297
330
  *
@@ -648,6 +681,7 @@ export class CloudSyncService extends EventEmitter {
648
681
  throw new Error(`Heartbeat failed: ${response.status}`);
649
682
  }
650
683
  this.heartbeatFailures = 0;
684
+ this.markContact();
651
685
  }
652
686
  catch (error) {
653
687
  this.heartbeatFailures++;
@@ -854,6 +888,7 @@ export class CloudSyncService extends EventEmitter {
854
888
  const rawMessages = data.messages || data.data;
855
889
  if (!rawMessages || rawMessages.length === 0) {
856
890
  this.messagePollFailures = 0;
891
+ this.markContact();
857
892
  return 0;
858
893
  }
859
894
  // Normalize Cloud Relay message format to IncomingMessage shape.
@@ -913,6 +948,7 @@ export class CloudSyncService extends EventEmitter {
913
948
  // Acknowledge processed messages
914
949
  await this.ackMessages(messageIds);
915
950
  this.messagePollFailures = 0;
951
+ this.markContact();
916
952
  this.logger.debug('Polled and processed messages', { count: rawMessages.length });
917
953
  return rawMessages.length;
918
954
  }
@@ -1129,6 +1165,7 @@ export class CloudSyncService extends EventEmitter {
1129
1165
  this.messagePollFailures = 0;
1130
1166
  this.errorRecoveryAttempts = 0;
1131
1167
  this.state = 'syncing';
1168
+ this.markContact();
1132
1169
  if (this.errorRecoveryTimer) {
1133
1170
  clearInterval(this.errorRecoveryTimer);
1134
1171
  this.errorRecoveryTimer = null;
@@ -1223,6 +1260,7 @@ export class CloudSyncService extends EventEmitter {
1223
1260
  return true;
1224
1261
  }
1225
1262
  this.logger.warn('CloudSyncService token refresh failed — API returned auth error', { status });
1263
+ this.authRejected = true;
1226
1264
  return false;
1227
1265
  }
1228
1266
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-sync.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-sync.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-sync.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-sync.service.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,20 @@
12
12
  export type CloudSyncState = 'stopped' | 'syncing' | 'error' | 'auth_expired';
13
13
  /** Valid cloud sync state values for runtime validation. */
14
14
  export declare const CLOUD_SYNC_STATES: readonly ["stopped", "syncing", "error", "auth_expired"];
15
+ /**
16
+ * Connection health reported by `CloudSyncService.getHealth()` — what the
17
+ * Cloud disconnect notice decides from.
18
+ */
19
+ export interface CloudSyncHealth {
20
+ /** Current service state */
21
+ state: CloudSyncState;
22
+ /** Epoch ms of the last request Cloud answered successfully (null = never) */
23
+ lastContactAt: number | null;
24
+ /** Epoch ms of the last start() (null = never started) */
25
+ startedAt: number | null;
26
+ /** True when Cloud's last answer was 401/403 and the token refresh failed */
27
+ authRejected: boolean;
28
+ }
15
29
  /**
16
30
  * Configuration required to start the CloudSyncService.
17
31
  * Obtained from CloudClientService credentials and DeviceIdentityService.
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-sync.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-sync.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-sync.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-sync.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-sync.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-sync.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-sync.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-sync.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,209 @@
1
+ /**
2
+ * ConversationCloudSyncService — uploads this machine's conversation log to
3
+ * Crewly Cloud (specs/unified-conversations-cloud-store.md §B).
4
+ *
5
+ * - **Live:** drains `cloud_outbox` (filled by triggers on `chat_messages`)
6
+ * in `seq` order, one request in flight, batches of ≤ 50 messages /
7
+ * 256 KB, gzip. Wakes on every new chat message (after a 2 s gather) and
8
+ * on a 10 s tick. Rows leave the outbox only once Cloud acknowledged them.
9
+ * - **Backfill:** after first sign-in (or an account switch, or a plan
10
+ * upgrade that widens the window) it re-sends the history inside the
11
+ * plan's retention window, oldest first, at most one request a second,
12
+ * after the live queue.
13
+ * - **Disconnected / signed out:** the outbox stays on disk; it is only
14
+ * trimmed (older than 90 days, more than 200k rows — a history gap).
15
+ * - **Failures:** exponential backoff 1 s → 5 min. A 404 (Cloud has no
16
+ * conversation store yet), `403 sync_disabled`, `503` key missing or a
17
+ * `400` batch Cloud refuses pause sync for an hour, logged once.
18
+ * - **O1:** on by default for a signed-in machine; the owner gets one Slack
19
+ * DM the first time history reaches Cloud. `CREWLY_CONVERSATION_SYNC=0`
20
+ * (or `CREWLY_CLOUD_CONVERSATIONS=off`) turns uploading off; the outbox
21
+ * still fills.
22
+ * - **O4:** text only — attachments go as name / size / mime.
23
+ *
24
+ * The wire contract lives in `conversation-ingest.contract.ts`.
25
+ *
26
+ * @module services/cloud/conversation-cloud-sync.service
27
+ */
28
+ import { type ComponentLogger } from '../core/logger.service.js';
29
+ import type { BackfillCursor, OutboxEntry, UploadMessageRow } from '../chat-v2/sqlite/cloud-outbox.store.js';
30
+ import { type IngestUpsert } from './conversation-ingest.contract.js';
31
+ /** The outbox operations the uploader needs (see `CloudOutboxStore`). */
32
+ export interface ConversationOutbox {
33
+ peek(limit: number): OutboxEntry[];
34
+ ackThrough(seq: number): number;
35
+ count(): number;
36
+ clear(): void;
37
+ trim(options: {
38
+ maxRows: number;
39
+ olderThanMs: number;
40
+ }): number;
41
+ getMessages(ids: readonly string[]): Map<string, UploadMessageRow>;
42
+ backfillPage(sinceMs: number, after: BackfillCursor | null, limit: number): UploadMessageRow[];
43
+ getState(key: string): string | null;
44
+ setState(key: string, value: string | null): void;
45
+ clearState(keep?: readonly string[]): void;
46
+ }
47
+ /** The Cloud session the uploader rides on (see `CloudClientService`). */
48
+ export interface ConversationSyncCloud {
49
+ getToken(): string | null;
50
+ getCloudUrl(): string | null;
51
+ /** Refresh an expired access token; resolves true when a new one is in place. */
52
+ tryRefreshToken?(): Promise<boolean>;
53
+ }
54
+ /** `fetch` signature (injectable for tests). */
55
+ export type SyncFetch = (input: string, init: RequestInit) => Promise<Response>;
56
+ /** Constructor dependencies. */
57
+ export interface ConversationCloudSyncDeps {
58
+ outbox: ConversationOutbox;
59
+ cloud: ConversationSyncCloud;
60
+ /** Machine id (= device id = relay queue id = Slack instance id) and display name. */
61
+ identity: () => Promise<{
62
+ instanceId: string;
63
+ deviceName?: string;
64
+ }>;
65
+ /** Short id of the Crewly home (`getCrewlyHomeId`). */
66
+ homeId?: string;
67
+ /** Crewly version reported with each batch. */
68
+ crewlyVersion?: () => Promise<string>;
69
+ /** Subscribe to new chat messages (wake-up); returns an unsubscribe function. */
70
+ onNewMessage?: (listener: () => void) => () => void;
71
+ /** Upgrade rows written before the owner's Slack id was known (run before a backfill). */
72
+ reclassifyOwnerRows?: () => void;
73
+ /** O1: tell the owner once that history now syncs. Resolves true when the DM was posted. */
74
+ notifyOwner?: (text: string) => Promise<boolean>;
75
+ /** Environment (kill switch). Defaults to `process.env`. */
76
+ env?: NodeJS.ProcessEnv;
77
+ fetchImpl?: SyncFetch;
78
+ now?: () => number;
79
+ setTimeout?: (fn: () => void, ms: number) => ReturnType<typeof setTimeout>;
80
+ clearTimeout?: (handle: ReturnType<typeof setTimeout>) => void;
81
+ logger?: ComponentLogger;
82
+ }
83
+ /**
84
+ * Whether the kill switch is set.
85
+ *
86
+ * @param env - Environment
87
+ * @returns True when uploading is switched off
88
+ */
89
+ export declare function isConversationSyncDisabled(env: NodeJS.ProcessEnv): boolean;
90
+ /**
91
+ * The account a Cloud access token belongs to — the JWT `sub`, read without
92
+ * verifying. An opaque token yields a constant, so token refreshes are never
93
+ * mistaken for an account switch.
94
+ *
95
+ * @param token - Access token
96
+ * @returns The account id
97
+ */
98
+ export declare function accountIdOfToken(token: string): string;
99
+ /**
100
+ * Map one stored message to the wire shape.
101
+ *
102
+ * @param row - Message row with its channel and attachment metadata
103
+ * @param localSeq - Outbox seq (live) or 0 (backfill)
104
+ * @returns The upsert, or null when the row must not leave the machine
105
+ */
106
+ export declare function toIngestUpsert(row: UploadMessageRow, localSeq: number): IngestUpsert | null;
107
+ /** Uploads the machine's conversation log to Crewly Cloud. */
108
+ export declare class ConversationCloudSyncService {
109
+ private readonly deps;
110
+ private readonly logger;
111
+ private readonly fetchImpl;
112
+ private readonly now;
113
+ private readonly setTimer;
114
+ private readonly clearTimer;
115
+ private started;
116
+ private running;
117
+ private rerun;
118
+ private tickTimer;
119
+ private wakeTimer;
120
+ private unsubscribe;
121
+ /** Consecutive failures; drives the exponential backoff. */
122
+ private failures;
123
+ /** No request before this time (backoff or an hour-long pause). */
124
+ private pausedUntil;
125
+ /** Reasons already logged, so a long pause logs once. */
126
+ private readonly loggedPauses;
127
+ /** Current live batch cap; halved on 413. */
128
+ private batchLimit;
129
+ private lastBackfillAt;
130
+ private lastNoticeAttemptAt;
131
+ private gapLogged;
132
+ constructor(deps: ConversationCloudSyncDeps);
133
+ /** Start the tick and the new-message wake-up. Idempotent; never throws. */
134
+ start(): void;
135
+ /** Stop timers and the wake-up subscription. */
136
+ stop(): void;
137
+ /**
138
+ * Run one sync pass now (tests, and the timers). Never throws; a pass
139
+ * already in flight makes this one run again right after it.
140
+ */
141
+ syncNow(): Promise<void>;
142
+ /**
143
+ * Schedule a pass after a new message: immediately once a full batch is
144
+ * waiting, otherwise after the gather delay.
145
+ *
146
+ * @param delayMs - Override the delay
147
+ */
148
+ private wake;
149
+ /** Keep the periodic tick going. */
150
+ private scheduleTick;
151
+ /** One pass: trim, check the session, drain live, then one backfill step. */
152
+ private pass;
153
+ /**
154
+ * Upload every waiting outbox row, oldest first.
155
+ *
156
+ * @returns False when a request failed (the pass stops)
157
+ */
158
+ private drainLive;
159
+ /**
160
+ * Send one page of history when a backfill is owed (first sign-in, account
161
+ * switch, or a wider window after an upgrade). At most one request per
162
+ * second; live rows always go first.
163
+ */
164
+ private backfillStep;
165
+ /**
166
+ * POST one batch (gzip). Never throws.
167
+ *
168
+ * @returns The parsed outcome
169
+ */
170
+ private send;
171
+ /**
172
+ * Book the result of a request: remember the retention window, reset or
173
+ * advance the backoff, pause on the hour-long conditions.
174
+ *
175
+ * @returns True on success
176
+ */
177
+ private settle;
178
+ /**
179
+ * Pause for an hour, logging the reason once.
180
+ *
181
+ * @param reason - Why
182
+ * @param message - Log line
183
+ */
184
+ private pause;
185
+ /**
186
+ * On an account switch, start over: the new account gets this machine's
187
+ * history through a fresh backfill, never the old account's queue.
188
+ *
189
+ * @param token - Current access token
190
+ */
191
+ private checkAccount;
192
+ /** Keep the outbox bounded; log a history gap once. */
193
+ private trimOutbox;
194
+ /** O1: one DM to the owner the first time history reaches Cloud. */
195
+ private maybeNotifyOwner;
196
+ }
197
+ /**
198
+ * Install the process-wide instance (composition root).
199
+ *
200
+ * @param service - The service, or null
201
+ */
202
+ export declare function setConversationCloudSyncService(service: ConversationCloudSyncService | null): void;
203
+ /**
204
+ * The process-wide instance, or null before wiring.
205
+ *
206
+ * @returns The service or null
207
+ */
208
+ export declare function getConversationCloudSyncService(): ConversationCloudSyncService | null;
209
+ //# sourceMappingURL=conversation-cloud-sync.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-cloud-sync.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/conversation-cloud-sync.service.ts"],"names":[],"mappings":"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"}