- Enable disconnect button immediately when connect is clicked, so the
user can cancel without waiting for the StateConnecting IPC event.
- Disable disconnect button on all error paths in the connect goroutine
to restore the default disconnected button state.
- Capture ipcClient once at eventLoop start instead of re-reading every
iteration, preventing a second onConnect call from making the old
event loop jump to the new client and consume events concurrently.
- In eventLoop recv error recovery, only reset button states if the
current ipcClient still matches the captured one, so a stale
disconnection does not clobber the state of a newer session.
- Disable connect button in StateReconnecting case (was missing).
- Remove WriteOK from daemon startSession: the StateConnecting event
already serves as the implicit acknowledgment; the OK response was
being read by eventLoop as a no-op event, adding unnecessary noise.