A stall reported as zero received bytes is two different failures wearing
one face: an answer that never arrived, and an answer that arrived and was
never handed to this process. Nothing in the report told them apart, so
every round of this has ended in argument rather than measurement. The
relay side is now excluded by experiment - the client's own hello bytes,
rebuilt from client_hello_rules.cpp and sent from two networks, come back
with a verified ServerHello in twenty milliseconds while the client on the
same machine at the same moment gets nothing - so the next question is
strictly local, and these are the three facts that answer it.
sock_state is the socket's own state at the deadline, sock_avail its unread
backlog, rx_notify how many times it announced something to read. All three
appear only for the case in question: hello written, nothing received.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>