pub(crate) const WEDGE_DEAD: Duration;Expand description
How long a connection may write nothing before a watchdog outside its future ends it.
The keepalive cannot watch its own task. Its beat is a branch in the
connection’s own select!, so a task parked in an await never reaches it:
no ping goes out, no reap happens, and the socket stays open while the
server says nothing. That is the 2026-11-09 freeze, 26.7 minutes of
silence with the process alive and the log’s last line a hook response.
The bound is on completed writes, not loop turns. The longest gap a
healthy connection can leave between two of them is one write waiting out
its whole bound (WRITE_BOUND) plus the snapshot encode this server does
on the loop, which has no bound of its own; an idle connection still writes
its keepalive ping every HEARTBEAT_EVERY. So the wedge bound is four
write bounds: far above the slowest write measured (31.6 s) and above
anything a giant seat’s encode has been seen to take, because a healthy
connection reaped mid-record would redial into the same record for ever.
Chosen, not measured: the number it changes for a person is how fast a
connection wedged behind a stalled subsystem is let go.