Dev HMR client reconnects forever after prerender activation (visibilitychange while socket is CONNECTING)
In Next.js dev, when a prerendered page is activated while the HMR WebSocket is still in CONNECTING state, the client enters an infinite reconnect loop. This prevents page hydration and floods the server with repeated /_next/hmr upgrade requests.
