TcpConnection.shutdownWrite
void shutdownWrite() @trusted nothrowShut the write direction down (graceful half-close, SHUT_WR).
Idempotent. Queued sends still flush, then FIN is sent; subsequent send() calls fail with SendErrorReason.CLOSED and isWritable reports false. Reads and onData continue until the peer closes. Does not fire onClose by itself.