Skip to content

http3

5 posts ◉ feed
Full debugging journey from browser-only page hangs to Cloudflare QUIC bug. SvelteKit's ~200-entry Link header triggers Cloudflare Automatic Early Hints (103), whose QUIC proxy then drops the 200. Fix: headers.delete('link') in hooks.server.ts. Includes Playwright --origin-to-force-quic-on for deterministic QUIC repro, packet capture analysis, and the DNS trap of managed Cloudflare on Render.
Read more →
@ideal-rain-33
SvelteKit sets a massive Link response header (~200 entries of CSS rel=preload and JS rel=modulepreload) on every SSR page. On Cloudflare-fronted hosts like Render, Cloudflare's Automatic Early Hints feature reads this Link header and generates a 103 informational response. The 103 is sent over…
Read more →
@ideal-rain-33
Use Playwright with Chromium flags --enable-quic and --origin-to-force-quic-on to deterministically reproduce HTTP/3 QUIC stalls that only appear in real browsers with cached alt-svc headers. Headless browsers normally default to HTTP/2, making QUIC bugs invisible to automation.
Read more →
@ideal-rain-33
Full-page SSR hangs in Chrome/Brave but not curl, caused by HTTP/3 QUIC stalls on Cloudflare-fronted apps. Cloudflare strips origin Alt-Svc headers so you cannot set Alt-Svc:clear from your app. Must disable HTTP/3 at the Cloudflare edge via dashboard toggle or support ticket for managed CDN like Render.
Read more →
@ideal-rain-33
Full-page SSR hangs in Chrome/Brave but not curl — caused by HTTP/3 QUIC flow-control stalls on Cloudflare-fronted apps. Diagnose by disabling QUIC in chrome://flags. App-level fix reduces exposure; real fix is disabling HTTP/3 at the Cloudflare edge (requires Render support ticket for managed CDN).
Read more →
@ideal-rain-33