@parhelia/core 0.2.12771 → 0.2.12773

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 (49) hide show
  1. package/dist/editor/Editor.js +28 -3
  2. package/dist/editor/Editor.js.map +1 -1
  3. package/dist/editor/ai/InlineAiDialog.d.ts +13 -0
  4. package/dist/editor/ai/InlineAiDialog.js +42 -4
  5. package/dist/editor/ai/InlineAiDialog.js.map +1 -1
  6. package/dist/editor/bridge/protocol.d.ts +3 -0
  7. package/dist/editor/bridge/protocol.js.map +1 -1
  8. package/dist/editor/client/hooks/useEditorWebSocket.d.ts +3 -3
  9. package/dist/editor/client/hooks/useEditorWebSocket.js +264 -64
  10. package/dist/editor/client/hooks/useEditorWebSocket.js.map +1 -1
  11. package/dist/editor/client/hooks/useSocketMessageHandler.js +6 -1
  12. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  13. package/dist/editor/client/sessionIdClaim.d.ts +22 -0
  14. package/dist/editor/client/sessionIdClaim.js +77 -0
  15. package/dist/editor/client/sessionIdClaim.js.map +1 -0
  16. package/dist/editor/menubar/ActiveUsers.js +17 -15
  17. package/dist/editor/menubar/ActiveUsers.js.map +1 -1
  18. package/dist/editor/menubar/activeUserSessions.d.ts +9 -0
  19. package/dist/editor/menubar/activeUserSessions.js +30 -0
  20. package/dist/editor/menubar/activeUserSessions.js.map +1 -0
  21. package/dist/editor/page-viewer/PageViewerFrame.js +45 -2
  22. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  23. package/dist/editor/page-viewer/bridgeFieldPatch.d.ts +23 -0
  24. package/dist/editor/page-viewer/bridgeFieldPatch.js +43 -0
  25. package/dist/editor/page-viewer/bridgeFieldPatch.js.map +1 -1
  26. package/dist/editor/settings/IndexOverview.js +1 -1
  27. package/dist/editor/settings/IndexOverview.js.map +1 -1
  28. package/dist/editor/settings/index/EmbeddingProviderInfo.js +2 -2
  29. package/dist/editor/settings/index/EmbeddingProviderInfo.js.map +1 -1
  30. package/dist/editor/settings/index/QueueErrorsDisplay.d.ts +1 -1
  31. package/dist/editor/settings/index/QueueErrorsDisplay.js +7 -3
  32. package/dist/editor/settings/index/QueueErrorsDisplay.js.map +1 -1
  33. package/dist/editor/settings/index/embeddingErrors.d.ts +7 -0
  34. package/dist/editor/settings/index/embeddingErrors.js +105 -0
  35. package/dist/editor/settings/index/embeddingErrors.js.map +1 -0
  36. package/dist/editor/settings/index/types.d.ts +1 -0
  37. package/dist/editor/settings/index/useIndexStatus.js +2 -2
  38. package/dist/editor/settings/index/useIndexStatus.js.map +1 -1
  39. package/dist/editor/sidebar/Sessions.js +6 -3
  40. package/dist/editor/sidebar/Sessions.js.map +1 -1
  41. package/dist/editor/ui/SimpleTable.d.ts +2 -1
  42. package/dist/editor/ui/SimpleTable.js +2 -2
  43. package/dist/editor/ui/SimpleTable.js.map +1 -1
  44. package/dist/editor/utils.js +6 -0
  45. package/dist/editor/utils.js.map +1 -1
  46. package/dist/revision.d.ts +2 -2
  47. package/dist/revision.js +2 -2
  48. package/dist/types.d.ts +1 -0
  49. package/package.json +1 -1
@@ -2,16 +2,30 @@ import { useEffect, useRef } from "react";
2
2
  import { checkConnectionAvailability, } from "../../services/editService";
3
3
  import { createEditorSocketDiagnostics, getEditorSocketReadyStateLabel, } from "../socketDiagnostics";
4
4
  import { createSseTransport, createWebSocketAdapter, ensureEditorRealtimeHandle, getEditorRealtime, setActiveTransport, setReconnectHandler, } from "../realtime/realtimeTransport";
5
+ // Availability recheck cadence while the concurrent-user-limit latch is set. Deliberately slow:
6
+ // the ConcurrentUserLimitDialog polls at 7.5s while open, so this timer only has to cover tabs
7
+ // where the dialog was dismissed.
8
+ const CONCURRENT_LIMIT_RECHECK_MS = 60_000;
9
+ // While on the SSE fallback, how often to probe whether a WebSocket can be opened again. At
10
+ // fallback time an app-pool recycle looks identical to a missing IIS WebSocket feature, so SSE
11
+ // mode must not be permanent — but one probe per interval keeps genuinely WS-less environments
12
+ // free of retry storms.
13
+ const WS_REPROBE_INTERVAL_MS = 5 * 60_000;
14
+ // A probe socket that has not reached OPEN within this window counts as failed.
15
+ const WS_PROBE_TIMEOUT_MS = 5_000;
16
+ // Used when the server rejects the connection without complete limit metadata; the dialog must
17
+ // still appear or the tab has no recovery path besides a reload.
18
+ const CONCURRENT_LIMIT_FALLBACK_MESSAGE = "The concurrent user limit for this license has been reached. Editing becomes available again once another user disconnects.";
5
19
  /**
6
20
  * Closes the active editor websocket so the hook's own reconnect machinery picks it back
7
21
  * up. Used by recovery code that wants the freshly opened socket to re-issue agent
8
22
  * subscriptions via the existing onOpen callback chain — not for routine close handling.
9
23
  *
10
- * Returns whether a close was actually issued. The hook's close handler does NOT null
24
+ * Returns whether a reconnect was actually initiated. The hook's close handler does NOT null
11
25
  * `globalThis.editorSocket`; the next `connect()` call detects `readyState === CLOSED`
12
26
  * and overwrites the global, so we must not delete it from this helper. When the socket
13
- * is already CLOSING/CLOSED there is nothing to do the hook will replace it on its next
14
- * scheduleReconnect tick.
27
+ * is missing or already CLOSING/CLOSED there is no close event to drive recovery, so we route
28
+ * through the hook's reconnect handler, which re-enters the connect path directly.
15
29
  */
16
30
  export function forceEditorSocketReconnect(reason) {
17
31
  // In SSE fallback mode there is no globalThis.editorSocket; route through the transport handle,
@@ -22,10 +36,9 @@ export function forceEditorSocketReconnect(reason) {
22
36
  return true;
23
37
  }
24
38
  const socket = globalThis.editorSocket;
25
- if (!socket)
26
- return false;
27
- if (socket.readyState === WebSocket.OPEN ||
28
- socket.readyState === WebSocket.CONNECTING) {
39
+ if (socket &&
40
+ (socket.readyState === WebSocket.OPEN ||
41
+ socket.readyState === WebSocket.CONNECTING)) {
29
42
  try {
30
43
  socket.close(4000, reason);
31
44
  return true;
@@ -34,7 +47,8 @@ export function forceEditorSocketReconnect(reason) {
34
47
  return false;
35
48
  }
36
49
  }
37
- return false;
50
+ realtime.reconnect(reason);
51
+ return true;
38
52
  }
39
53
  export function useEditorWebSocket(params) {
40
54
  const { sessionId, onMessage, onOpen, onError, onConcurrentUserLimit, onSessionRevoked, connectSocket, requestQuota, sendClientInfo, setSocketDiagnostics, enableWebSocketTransport = true, enableSseFallback = true, transportSettingsReady = true, } = params;
@@ -48,6 +62,12 @@ export function useEditorWebSocket(params) {
48
62
  const sseTransportRef = useRef(null);
49
63
  const hadOpenedRef = useRef(false);
50
64
  const fallbackTimerRef = useRef(null);
65
+ const limitRecheckTimerRef = useRef(null);
66
+ const sseReconnectTimeoutRef = useRef(null);
67
+ const sseReconnectAttemptsRef = useRef(0);
68
+ const wsReprobeTimerRef = useRef(null);
69
+ // Tears down an in-flight WebSocket probe (its socket and timeout); null when none is running.
70
+ const wsProbeCleanupRef = useRef(null);
51
71
  // Stable refs for callbacks to avoid re-connecting on every render
52
72
  const onMessageRef = useRef(onMessage);
53
73
  const onOpenRef = useRef(onOpen);
@@ -154,6 +174,177 @@ export function useEditorWebSocket(params) {
154
174
  connect();
155
175
  }, delay);
156
176
  };
177
+ const startConnect = () => {
178
+ connect().catch((error) => {
179
+ console.error("Error in WebSocket connection:", error);
180
+ onErrorRef.current?.(new Event("error"));
181
+ });
182
+ };
183
+ const clearLimitRecheckTimer = () => {
184
+ if (limitRecheckTimerRef.current) {
185
+ clearTimeout(limitRecheckTimerRef.current);
186
+ limitRecheckTimerRef.current = null;
187
+ }
188
+ };
189
+ // While the concurrent-user-limit latch is set no close event will ever fire again, so this
190
+ // chained timeout (at most one check in flight) is the only automatic way back in once a
191
+ // seat frees up.
192
+ const scheduleLimitRecheck = () => {
193
+ if (disposed || limitRecheckTimerRef.current) {
194
+ return;
195
+ }
196
+ limitRecheckTimerRef.current = setTimeout(() => {
197
+ limitRecheckTimerRef.current = null;
198
+ if (disposed || !isConcurrentUserLimitRef.current) {
199
+ return;
200
+ }
201
+ checkConnectionAvailability(sessionId)
202
+ .then((availability) => {
203
+ if (disposed || !isConcurrentUserLimitRef.current) {
204
+ return;
205
+ }
206
+ if (availability.allowed) {
207
+ isConcurrentUserLimitRef.current = false;
208
+ reconnectAttemptsRef.current = 0;
209
+ if (modeRef.current === "sse") {
210
+ connectSse();
211
+ }
212
+ else {
213
+ startConnect();
214
+ }
215
+ return;
216
+ }
217
+ scheduleLimitRecheck();
218
+ })
219
+ .catch(() => {
220
+ // Availability unknown (server restarting?) — keep polling.
221
+ if (!disposed && isConcurrentUserLimitRef.current) {
222
+ scheduleLimitRecheck();
223
+ }
224
+ });
225
+ }, CONCURRENT_LIMIT_RECHECK_MS);
226
+ };
227
+ // The dialog (with its Retry button) must appear even when the availability response carries
228
+ // partial metadata — a latched limit without a visible dialog leaves no recovery path short
229
+ // of a reload.
230
+ const notifyConcurrentUserLimit = (availability) => {
231
+ isConcurrentUserLimitRef.current = true;
232
+ onConcurrentUserLimitRef.current?.({
233
+ currentUsers: availability.currentUsers ?? 0,
234
+ maxUsers: availability.maxUsers ?? 0,
235
+ message: availability.message ?? CONCURRENT_LIMIT_FALLBACK_MESSAGE,
236
+ });
237
+ scheduleLimitRecheck();
238
+ };
239
+ const clearSseReconnectTimer = () => {
240
+ if (sseReconnectTimeoutRef.current) {
241
+ clearTimeout(sseReconnectTimeoutRef.current);
242
+ sseReconnectTimeoutRef.current = null;
243
+ }
244
+ };
245
+ // EventSource retries transient drops on its own, but a hard failure (connection refused,
246
+ // non-200 while the server restarts) closes it permanently — the stream must be re-created
247
+ // by us, reusing the WebSocket backoff curve.
248
+ const scheduleSseReconnect = () => {
249
+ if (disposed ||
250
+ sseReconnectTimeoutRef.current ||
251
+ modeRef.current !== "sse") {
252
+ return;
253
+ }
254
+ const attempts = sseReconnectAttemptsRef.current;
255
+ const delay = Math.min(1000 * Math.pow(2, Math.min(attempts, 5)), 30000);
256
+ reconnectCountRef.current += 1;
257
+ markSocketEvent("reconnect-scheduled", null, {
258
+ reconnectCount: reconnectCountRef.current,
259
+ });
260
+ sseReconnectTimeoutRef.current = setTimeout(() => {
261
+ sseReconnectTimeoutRef.current = null;
262
+ sseReconnectAttemptsRef.current = attempts + 1;
263
+ connectSse();
264
+ }, delay);
265
+ };
266
+ const clearWsReprobeTimer = () => {
267
+ if (wsReprobeTimerRef.current) {
268
+ clearTimeout(wsReprobeTimerRef.current);
269
+ wsReprobeTimerRef.current = null;
270
+ }
271
+ };
272
+ // SSE mode is sticky by design (a missing IIS WebSocket feature never heals), but the same
273
+ // fallback also triggers on transient failures like an app-pool recycle — probe occasionally
274
+ // so those tabs find their way back to the preferred transport.
275
+ const startWsReprobeTimer = () => {
276
+ if (disposed || wsReprobeTimerRef.current || !wsEnabledRef.current) {
277
+ return;
278
+ }
279
+ wsReprobeTimerRef.current = setTimeout(() => {
280
+ wsReprobeTimerRef.current = null;
281
+ if (disposed || modeRef.current !== "sse") {
282
+ return;
283
+ }
284
+ if (!isConcurrentUserLimitRef.current) {
285
+ probeWebSocket();
286
+ }
287
+ startWsReprobeTimer();
288
+ }, WS_REPROBE_INTERVAL_MS);
289
+ };
290
+ // Opens a single throwaway WebSocket. Reaching OPEN proves the transport works again, so the
291
+ // editor switches back; anything else leaves SSE untouched. The probe carries none of the
292
+ // hook's listeners, so it must never be adopted as the real socket.
293
+ const probeWebSocket = () => {
294
+ if (disposed ||
295
+ modeRef.current !== "sse" ||
296
+ !wsEnabledRef.current ||
297
+ wsProbeCleanupRef.current) {
298
+ return;
299
+ }
300
+ let probe;
301
+ try {
302
+ probe = connectSocket(sessionId);
303
+ }
304
+ catch {
305
+ return;
306
+ }
307
+ let settled = false;
308
+ const settle = (opened) => {
309
+ if (settled) {
310
+ return;
311
+ }
312
+ settled = true;
313
+ wsProbeCleanupRef.current = null;
314
+ clearTimeout(probeTimer);
315
+ try {
316
+ probe.close();
317
+ }
318
+ catch {
319
+ /* ignore */
320
+ }
321
+ if (opened && !disposed && modeRef.current === "sse") {
322
+ switchBackToWebSocket();
323
+ }
324
+ };
325
+ const probeTimer = setTimeout(() => settle(false), WS_PROBE_TIMEOUT_MS);
326
+ wsProbeCleanupRef.current = () => settle(false);
327
+ probe.addEventListener("open", () => settle(true));
328
+ probe.addEventListener("close", () => settle(false));
329
+ probe.addEventListener("error", () => settle(false));
330
+ };
331
+ const switchBackToWebSocket = () => {
332
+ if (disposed) {
333
+ return;
334
+ }
335
+ clearWsReprobeTimer();
336
+ clearSseReconnectTimer();
337
+ sseTransportRef.current?.close();
338
+ sseTransportRef.current = null;
339
+ setActiveTransport(null);
340
+ modeRef.current = null;
341
+ // The probe reached OPEN, so this environment provably supports WebSockets; a later
342
+ // close-before-open must go through the retry path, not straight back to SSE.
343
+ hadOpenedRef.current = true;
344
+ reconnectAttemptsRef.current = 0;
345
+ sseReconnectAttemptsRef.current = 0;
346
+ startConnect();
347
+ };
157
348
  const attach = (socket, handler, reusedExistingSocket) => {
158
349
  if (disposed) {
159
350
  return;
@@ -193,12 +384,13 @@ export function useEditorWebSocket(params) {
193
384
  }
194
385
  }, 5000);
195
386
  };
196
- // Establishes (or re-establishes) the SSE fallback transport for the rest of the page lifetime.
387
+ // Establishes (or re-establishes) the SSE fallback transport.
197
388
  const connectSse = () => {
198
389
  if (disposed)
199
390
  return;
200
391
  modeRef.current = "sse";
201
392
  clearFallbackTimer();
393
+ clearSseReconnectTimer();
202
394
  if (reconnectTimeoutRef.current) {
203
395
  clearTimeout(reconnectTimeoutRef.current);
204
396
  reconnectTimeoutRef.current = null;
@@ -218,6 +410,8 @@ export function useEditorWebSocket(params) {
218
410
  if (disposed)
219
411
  return;
220
412
  isConcurrentUserLimitRef.current = false;
413
+ clearLimitRecheckTimer();
414
+ sseReconnectAttemptsRef.current = 0;
221
415
  markSocketEvent("open", null, {
222
416
  lastOpenAt: new Date().toISOString(),
223
417
  lastCloseCode: null,
@@ -239,24 +433,31 @@ export function useEditorWebSocket(params) {
239
433
  lastErrorAt: new Date().toISOString(),
240
434
  });
241
435
  onErrorRef.current?.(event);
242
- // EventSource auto-reconnects on transient drops. Disambiguate a concurrent-user-limit
243
- // rejection (surface it) from a transient failure (let EventSource retry).
436
+ // EventSource auto-reconnects on transient drops but stays CLOSED after a hard failure
437
+ // (connection refused, non-200 while the server restarts). Capture the state before the
438
+ // availability round-trip so a late response cannot mask it.
439
+ const closedHard = sseTransportRef.current?.eventSource.readyState ===
440
+ EventSource.CLOSED;
441
+ // Disambiguate a concurrent-user-limit rejection (surface it) from a plain failure
442
+ // (let EventSource retry transient drops; re-create the stream on hard closes).
244
443
  checkConnectionAvailability(sessionId)
245
444
  .then((availability) => {
246
- if (disposed || availability.allowed)
445
+ if (disposed)
247
446
  return;
248
- isConcurrentUserLimitRef.current = true;
249
- if (availability.currentUsers !== undefined &&
250
- availability.maxUsers !== undefined &&
251
- availability.message) {
252
- onConcurrentUserLimitRef.current?.({
253
- currentUsers: availability.currentUsers,
254
- maxUsers: availability.maxUsers,
255
- message: availability.message,
256
- });
447
+ if (!availability.allowed) {
448
+ notifyConcurrentUserLimit(availability);
449
+ return;
450
+ }
451
+ if (closedHard) {
452
+ scheduleSseReconnect();
257
453
  }
258
454
  })
259
- .catch(() => { });
455
+ .catch(() => {
456
+ // Availability unknown — a permanently closed stream still must be replaced.
457
+ if (!disposed && closedHard) {
458
+ scheduleSseReconnect();
459
+ }
460
+ });
260
461
  },
261
462
  onSessionRevoked: () => {
262
463
  if (disposed)
@@ -269,12 +470,17 @@ export function useEditorWebSocket(params) {
269
470
  });
270
471
  sseTransportRef.current = sse;
271
472
  setActiveTransport(sse);
473
+ startWsReprobeTimer();
272
474
  };
273
475
  function fallbackToSse() {
274
476
  if (disposed || modeRef.current === "sse")
275
477
  return;
276
- if (!sseEnabledRef.current)
277
- return; // SSE fallback disabled in settings.
478
+ if (!sseEnabledRef.current) {
479
+ // SSE fallback disabled in settings — keep retrying the WebSocket with backoff instead
480
+ // of leaving the tab without any transport.
481
+ scheduleReconnect(socketInstanceRef.current);
482
+ return;
483
+ }
278
484
  connectSse();
279
485
  }
280
486
  ensureEditorRealtimeHandle();
@@ -282,17 +488,32 @@ export function useEditorWebSocket(params) {
282
488
  if (disposed)
283
489
  return;
284
490
  if (modeRef.current === "sse") {
491
+ // Re-establish the stream for recovery callers, and treat the explicit request as an
492
+ // opportunity to leave SSE mode if WebSockets have come back in the meantime.
285
493
  connectSse();
494
+ probeWebSocket();
495
+ return;
286
496
  }
287
- else {
288
- const ws = globalThis.editorSocket;
497
+ const ws = globalThis.editorSocket;
498
+ if (ws &&
499
+ (ws.readyState === WebSocket.OPEN ||
500
+ ws.readyState === WebSocket.CONNECTING)) {
289
501
  try {
290
- ws?.close(4000, reason);
502
+ ws.close(4000, reason);
291
503
  }
292
504
  catch {
293
505
  /* ignore */
294
506
  }
507
+ return;
295
508
  }
509
+ // No live socket to close (already CLOSED, or never created because a connect attempt
510
+ // latched) — no close event can drive recovery, so re-enter the connect path directly.
511
+ if (reconnectTimeoutRef.current) {
512
+ clearTimeout(reconnectTimeoutRef.current);
513
+ reconnectTimeoutRef.current = null;
514
+ }
515
+ reconnectAttemptsRef.current = 0;
516
+ startConnect();
296
517
  });
297
518
  const connect = async () => {
298
519
  if (disposed || modeRef.current === "sse")
@@ -309,18 +530,9 @@ export function useEditorWebSocket(params) {
309
530
  if (disposed)
310
531
  return;
311
532
  if (!availability.allowed) {
312
- // Connection not allowed - likely concurrent user limit
313
- isConcurrentUserLimitRef.current = true;
314
- if (availability.currentUsers !== undefined &&
315
- availability.maxUsers !== undefined &&
316
- availability.message) {
317
- onConcurrentUserLimitRef.current?.({
318
- currentUsers: availability.currentUsers,
319
- maxUsers: availability.maxUsers,
320
- message: availability.message,
321
- });
322
- }
323
- // Don't attempt connection or retry for concurrent user limit
533
+ // Concurrent user limit don't attempt or retry the connection; the limit recheck
534
+ // timer (and the dialog's Retry button) drive recovery from here.
535
+ notifyConcurrentUserLimit(availability);
324
536
  return;
325
537
  }
326
538
  // Reset the flag if connection is allowed
@@ -355,6 +567,7 @@ export function useEditorWebSocket(params) {
355
567
  }
356
568
  reconnectAttemptsRef.current = 0;
357
569
  isConcurrentUserLimitRef.current = false;
570
+ clearLimitRecheckTimer();
358
571
  hadOpenedRef.current = true;
359
572
  modeRef.current = "websocket";
360
573
  clearFallbackTimer();
@@ -403,16 +616,7 @@ export function useEditorWebSocket(params) {
403
616
  if (disposed)
404
617
  return;
405
618
  if (!availability.allowed) {
406
- isConcurrentUserLimitRef.current = true;
407
- if (availability.currentUsers !== undefined &&
408
- availability.maxUsers !== undefined &&
409
- availability.message) {
410
- onConcurrentUserLimitRef.current?.({
411
- currentUsers: availability.currentUsers,
412
- maxUsers: availability.maxUsers,
413
- message: availability.message,
414
- });
415
- }
619
+ notifyConcurrentUserLimit(availability);
416
620
  return;
417
621
  }
418
622
  fallbackToSse();
@@ -423,18 +627,12 @@ export function useEditorWebSocket(params) {
423
627
  if (shouldCheckAvailability) {
424
628
  checkConnectionAvailability(sessionId)
425
629
  .then((availability) => {
630
+ if (disposed)
631
+ return;
426
632
  if (!availability.allowed) {
427
- isConcurrentUserLimitRef.current = true;
428
- if (availability.currentUsers !== undefined &&
429
- availability.maxUsers !== undefined &&
430
- availability.message) {
431
- onConcurrentUserLimitRef.current?.({
432
- currentUsers: availability.currentUsers,
433
- maxUsers: availability.maxUsers,
434
- message: availability.message,
435
- });
436
- }
437
- return; // Don't retry
633
+ // Don't retry — the limit recheck timer takes over.
634
+ notifyConcurrentUserLimit(availability);
635
+ return;
438
636
  }
439
637
  // Not a concurrent user limit issue, proceed with retry.
440
638
  scheduleReconnect(socket);
@@ -480,10 +678,7 @@ export function useEditorWebSocket(params) {
480
678
  }
481
679
  };
482
680
  // Call async connect function
483
- connect().catch((error) => {
484
- console.error("Error in WebSocket connection:", error);
485
- onErrorRef.current?.(new Event("error"));
486
- });
681
+ startConnect();
487
682
  return () => {
488
683
  disposed = true;
489
684
  if (reconnectTimeoutRef.current) {
@@ -491,6 +686,11 @@ export function useEditorWebSocket(params) {
491
686
  reconnectTimeoutRef.current = null;
492
687
  }
493
688
  clearFallbackTimer();
689
+ clearLimitRecheckTimer();
690
+ clearSseReconnectTimer();
691
+ clearWsReprobeTimer();
692
+ // Settles (and closes) any in-flight WebSocket probe together with its timeout.
693
+ wsProbeCleanupRef.current?.();
494
694
  setReconnectHandler(null);
495
695
  if (sseTransportRef.current) {
496
696
  sseTransportRef.current.close();
@@ -1 +1 @@
1
- {"version":3,"file":"useEditorWebSocket.js","sourceRoot":"","sources":["../../../../src/editor/client/hooks/useEditorWebSocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useEditorWebSocket.js","sourceRoot":"","sources":["../../../../src/editor/client/hooks/useEditorWebSocket.ts"],"names":[],"mappings":"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"}
@@ -491,7 +491,12 @@ export function useSocketMessageHandler(deps) {
491
491
  // refresh is normally skipped — but a MultiComponentEditor strip
492
492
  // re-renders its slides from the app's layout data on every
493
493
  // switch, which would revert an edit the app never refetched.
494
- requestRefresh("immediate");
494
+ // One refresh per quiet period, not per autosave echo: an
495
+ // immediate refresh here pipelines full host re-renders into the
496
+ // very typing that produced the saves (with slow RSC renders this
497
+ // clobbers the field mid-edit), while the strip only needs the
498
+ // app data to be fresh by the time the user switches slides.
499
+ requestRefresh("waitForQuietPeriod");
495
500
  }
496
501
  }
497
502
  }