ttyd --max-clients 8 is easily exhausted by sidebar polling #8

Closed
opened 2026-10-07 20:04:27 -04:00 by jared · 0 comments
Owner

Source: engineering review, 2026-10-07.

Every sidebar call is a ttyd client with its own PTY:

  • Repo calls take up to ~8s and alerts up to ~6s when Gitea or Grafana is slow; uploads hold a slot for minutes.
  • With 3 or more tabs, terminal reconnects get refused and the sidebar fails silently.

Fix: raise the limit to ~32, have one tab poll on behalf of the others via BroadcastChannel, and run requests through a client-side queue (concurrency 2).

_Source: engineering review, 2026-10-07._ Every sidebar call is a ttyd client with its own PTY: - Repo calls take up to ~8s and alerts up to ~6s when Gitea or Grafana is slow; uploads hold a slot for minutes. - With 3 or more tabs, terminal reconnects get refused and the sidebar fails silently. **Fix:** raise the limit to ~32, have one tab poll on behalf of the others via BroadcastChannel, and run requests through a client-side queue (concurrency 2).
jared added this to the v0.5.0 hardening + header/phone milestone 2026-10-07 20:04:27 -04:00
jared added the bugperformance labels 2026-10-07 20:04:27 -04:00
jared closed this issue 2026-10-07 23:35:02 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LotusGuild/devdesk#8