Task: Implement client heartbeat for disconnect detection
This page documents a task in the Session lifecycle follow-up story. It captures the goal, current status, acceptance, and any notes or results.
Goal
Client sends periodic heartbeats so it (and the server) detect dropped connections rather than waiting on a stalled read.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent story | Session lifecycle follow-up |
| Now | Completed 2025-12-04. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2025-12-04 |
Acceptance
- Client heartbeat task running on the cobalt scheduler.
- Missed-heartbeat threshold triggers disconnect.
- Server-side heartbeat ack.
Plan
(Plan was distilled into the parent story's * Decisions and cleared when the task closed.)
Notes
- Removes a class of "disconnected but nobody noticed" bugs that surfaced during the session-cancellation work.
Result
Heartbeat in place; disconnect detection now timely.