Skip to content

feat: add network slowness detection with configurable thresholds#891

Draft
EhabY wants to merge 2 commits intomainfrom
feat/slowness-detection-887
Draft

feat: add network slowness detection with configurable thresholds#891
EhabY wants to merge 2 commits intomainfrom
feat/slowness-detection-887

Conversation

@EhabY
Copy link
Copy Markdown
Collaborator

@EhabY EhabY commented Apr 15, 2026

  • Add configurable network thresholds (coder.networkThreshold.latencyMs, downloadMbps, uploadMbps) that trigger a warning indicator in the status bar when crossed
  • Extract status bar presentation and threshold logic into src/remote/networkStatus.ts with a NetworkStatusReporter class, keeping SSH process lifecycle in sshProcess.ts
  • Warning state is debounced over 3 consecutive polls to avoid flicker; clicking the warning runs relevant diagnostics (ping, speedtest, or a picker for multiple violations)
  • Tooltip shows live metrics using prettyBytes, codicons for warnings, and a link to configure thresholds

@EhabY EhabY marked this pull request as draft April 15, 2026 09:09
Extract status bar presentation and threshold logic into networkStatus.ts
with a NetworkStatusReporter class. SshProcessMonitor delegates status bar
updates to the reporter.

Warn users when latency, download, or upload cross configurable thresholds
(debounced over 3 consecutive polls). Clicking the warning runs relevant
diagnostics. Tooltip shows live metrics with codicons and a link to
configure thresholds.
@EhabY EhabY force-pushed the feat/slowness-detection-887 branch from 814b25e to 9187650 Compare April 16, 2026 15:36
The download_bytes_sec/upload_bytes_sec fields from the Coder CLI
measure actual tunnel traffic during the poll window, not link
capacity. Idle SSH sessions always dipped below the 5 Mbps default
even on fast networks, producing spurious warnings.

Keep latency as the only slowness signal. Display throughput in the
tooltip as informational data only. Replace the warning-icon-mid-line
layout with a bold header, tight metric rows, and an action row
containing explicit Ping workspace and Configure threshold links.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant