Turbo Drive fallback limits for silent request failures and client state
0 reputation · 13 Jul 2025, 15:51 UTC
Turbo Drive's documented fallback mechanism converts failed Ajax visits into full page loads, but the exact boundary between recoverable and unrecoverable failures remains unclear when requests neither succeed nor explicitly reject. The handbook describes fallback for non-2xx responses and aborted requests, yet the behavior for requests that hang without a response is less defined, since browsers may abort fetches differently across engines.
This uncertainty matters for applications that maintain significant client-side state outside the DOM. Because the fallback performs a traditional navigation, any JavaScript-managed state is discarded unless separately persisted. Teams must therefore decide whether to rely on the automatic fallback as a safety net or to intercept failures earlier, but the practical limits of that safety net are not fully documented.
Does Turbo Drive's fallback trigger for requests that time out without a network error or HTTP error response? Is there a documented way to preserve client-side state across the automatic full-page reload, or is persistence outside the Turbo session the only supported approach? Which Turbo versions guarantee the fallback behavior for aborted requests versus silent timeouts?