shutdown, broadcaster: never close a socket another fiber is parked on master
lalinsky/zio requires outstanding socket ops to be cancelled or awaited before the fd is closed. its epoll and kqueue backends assert it (a panic in ReleaseSafe); under io_uring the parked fiber is simply never woken. zlay did this in two places: - shutdown closed the websocket and metrics listeners to unblock accept. now the accept task is cancelled first, then the listener closed. - a consumer's writeLoop closed the connection to unblock its readLoop (slow-consumer eviction). it now sends the close frame and half-closes via util.net.interrupt; the reader wakes with EOF and owns the close. both orderings are also valid under Io.Threaded. the regression test runs on whichever backend the suite is built with. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>