Follow-up from the lint sweep (PR #5). 21 functions + 89-line afterConnectionEstablished — separate durable-attach, live-attach, and input-handler collaborators with websocket close/error coverage. Goal: remove the localized @Suppress once split, with integration coverage. Requires a live tmux/container test env.
Follow-up from the lint sweep (PR #5). 21 functions + 89-line afterConnectionEstablished — separate durable-attach, live-attach, and input-handler collaborators with websocket close/error coverage. Goal: remove the localized @Suppress once split, with integration coverage. Requires a live tmux/container test env.