Catch ConnectionClosed in User.send() and handler_recv() so that an unclean client disconnect no longer produces "Task exception was never retrieved" / "connection handler failed" log noise. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SH2D4LRuCnhLSzoYerAfJX