7a1d278528
attach() now returns False both when the client dropped mid-replay (session already detached, socket dead) and when the force-redraw write stalled (socket still attached, worth closing with 1013). Only close the socket in the second case; the registry detach stays as the guard for both. Also trims the salvaged tests to two invariants, both red on origin/main: a mid-replay drop leaves the session reap_idle()-reclaimable, and a drain send failure detaches the current socket without touching a replacement that attached during the send (#110849).