Pattern
TLS-Termination Breaks WebSockets
tls-termination-websocket-upgrade-mismatch
WebSocket connections fail over wss on port 443 because TLS termination/proxying (e.g., tailscale serve ACME path or mismatched listener routes) rejects or drops Upgrade/hop-by-hop semantics, causing ERR_SSL_PROTOCOL_ERROR and immediate close instead of a successful handshake.