- replace the Windows-brittle chmod read-error setup with a directory-based failure case
- force the browser installed-copy regression through the non-global WebSocket path
- fall back across globalThis.WebSocket, undici, and ws for installed runtimes
- normalize socket event handling for both WHATWG and ws implementations
- add an installed-copy regression test for missing ws in Bun global layouts