2a4c07ae5e
QuicConnection.alpnList → TlsClient.offeredAlpns was captured but never threaded into buildQuicClientHello. The builder accepted only an "additionalAlpn" parameter and hardcoded "h3" first, so our wire ClientHello always carried just [h3] regardless of caller intent. quic-go enforces strictly with TLS alert 120 (no_application_protocol, CRYPTO_ERROR 376) when none of the offered ALPNs match its server config — handshake failed at the very first server response against quic-go's hq-interop testcases. Replaced the awkward additionalAlpn shape with `alpns: List<ByteArray>` (default [h3] for backward-compat) and threaded TlsClient.offeredAlpns through. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>