Files
galaxy/test/integration_selenium
mvdbeek 27d69f9927 Manage SSE reconnect on transient 5xx/429 outages
The browser's native EventSource auto-retry gives up once readyState flips to
CLOSED — typical for a 4xx/5xx response with no text/event-stream body — and
the previous onerror handler did not detect that, leaving the client stranded
on the polling fallback for the rest of the session.

Take ownership of the reconnect loop on the client: close the source on
onerror+CLOSED, schedule a reopen with full-jitter exponential backoff capped
at 30 s, and reset the counter on a successful onopen. The replay-on-open
viewer-subscription path is unchanged.

Tested with a Playwright-only integration_selenium test that fails the first
SSE request with a 503 via page.route() and asserts the client reconnects and
delivers a subsequently-pushed notification.
2026-05-03 13:48:42 +02:00
..
2024-05-20 12:18:47 -04:00
2024-11-24 21:35:23 +00:00