# NousResearch/hermes-agent · Kanban WebSocket idle heartbeat bug and fixes

## Open now

- 1 issue, 3 PRs open on GitHub.
- #118147: \[Bug\]: Kanban board silently freezes on a quiet board — the \`/events\` WebSocket never sends anything while idle, so a half-open connection is undetectable
- PR #118226: fix(kanban): heartbeat the idle /events stream so silence is never ambiguous
- PR #118232: fix(kanban): send heartbeats on the /events WebSocket when the board is idle
- PR #118255: fix(kanban): heartbeat the board event stream while it is idle

A bug was identified where the Kanban board's /events WebSocket sends nothing while idle, making half-open connections undetectable. The remaining members are fixes that add heartbeats to the idle event stream to distinguish silence from connection failure.

## TL;DR

- 4 member(s): 1 open issue(s), 0 closed issue(s), 3 open PR(s), 0 merged PR(s), 0 PR(s) closed without merging.
- No fix has been merged to main; one or more PRs were attempted (see below).
- **Recommended:** review the prior/competing PR(s) below. A fix was attempted but not merged; your case may extend or revive that work.

## Maintainer resolution verdict

- Internal-tracker verdict over this cluster's issue members: `unresolved`. This is distinct from the fix status above. Weigh it yourself.

## How this cluster was grouped

- Link evidence (`STRUCTURAL_SPANNING`): every member is connected by structural evidence: shared changed files, or a closing/superseded reference.
- Pairwise link density `0.50`: the share of member pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. `1.00` means every pair is linked.

## Open related issues

- #118147: \[Bug\]: Kanban board silently freezes on a quiet board — the \`/events\` WebSocket never sends anything while idle, so a half-open connection is undetectable

## Prior & competing PRs

- **#118226: fix(kanban): heartbeat the idle /events stream so silence is never ambiguous**. open
  - maintainer direction: category `silent_close`; implication `active`
  - files: `plugins/kanban/dashboard/plugin_api.py`, `tests/plugins/test_kanban_ws_idle_disconnect.py`
- **#118232: fix(kanban): send heartbeats on the /events WebSocket when the board is idle**. open
  - maintainer direction: category `silent_close`; implication `active`
  - files: `plugins/kanban/dashboard/dist/index.js`, `plugins/kanban/dashboard/plugin_api.py`, `tests/plugins/test_kanban_events_heartbeat.py`, `website/docs/user-guide/features/kanban.md`
- **#118255: fix(kanban): heartbeat the board event stream while it is idle**. open
  - maintainer direction: category `silent_close`; implication `active`
  - files: `plugins/kanban/dashboard/plugin_api.py`, `tests/plugins/test_kanban_ws_heartbeat.py`

## Fix status

- No merged fix on record.
- Subsystem: `dashboard`
