Auto-reconnect after wake exhausts after 3 attempts (~6s), no further retry
Observed behavior: After a sleep/wake cycle on the client machine, the Desktop App detects the transport as dead (2 missed heartbeats) as soon as the network interface isn't back up yet after wake. The app then automatically makes exactly 3 reconnect attempts within ~6 seconds. All 3 fail with "host is offline" because WLAN/Tailscale aren't ready yet. After that, the app gives up ("Auto-reconnect exhausted") and makes no further automatic attempt. The session stays disconnected until the user manually triggers an action (e.g. focusing the window / "warm_up" trigger). The underlying server process keeps running unaffected the whole time.
Expected behavior: Reconnect attempts should either continue with a longer backoff over an extended period, or a detected network-interface change should trigger a fresh retry cycle instead of the app giving up entirely after 3 quick failures.
Example log excerpt (IDs/hosts redacted):
[warn] [RemoteRPCClient] heartbeat tick gap 27510ms (>2× interval); likely resumed from sleep, arming for immediate close on next miss
[warn] [RemoteRPCClient] heartbeat miss 2/2: RPC call to server.ping timed out
[error] [RemoteRPCClient] heartbeat failed 2 times; declaring transport dead and forcing close
[info] [RemoteServerController] Auto-reconnect attempt 1 in 1182ms (liveProcesses=0, elapsed=0s)
[info] [RemoteServerController] Auto-reconnect attempt 1 skipped: host is offline
[info] [remote] network-interface change detected; probing SSH controllers
[info] [RemoteServerController] Auto-reconnect attempt 3 in 5838ms (liveProcesses=0, elapsed=3s)
[warn] [RemoteServerController] Auto-reconnect exhausted after 3 attempt(s); emitting disconnect
[error] [SSH2Connection] Connection error: read EADDRNOTAVAIL / ETIMEDOUT (x2)
[info] [RemoteServerController] Ensuring server is ready on [user]@[host] (trigger: warm_up)
[info] [RemoteServerController] Connected to remote server (12845ms, trigger: warm_up, reused: true)
(Recurring pattern: 90+ comparable "exhausted" events since mid-June in local logs, each after sleep/wake, some with multi-minute manual recovery delay.)
Environment: macOS, Claude Desktop App, SSH/Tailscale connection to a remote server process. Currently installed version: 1.21459.0 (as of now; exact version at the time of the logged incident on 10.07 no longer reliably reconstructable).