Skip to content

feat(terminal): configure SSH reconnect interval from 5 to 3600 seconds - #4039

Draft
GOUKI9999 wants to merge 1 commit into
binaricat:mainfrom
GOUKI9999:feat/ssh-reconnect-interval
Draft

GOUKI9999 wants to merge 1 commit into
binaricat:mainfrom
GOUKI9999:feat/ssh-reconnect-interval

Conversation

@GOUKI9999

Copy link
Copy Markdown
Contributor

Summary

SSH auto-reconnect currently retries every five seconds. During long outages this produces repeated connection errors and unnecessary noise. Add a global interval setting of 5–3600 integer seconds, retaining the five-second default and the existing continuous-retry behavior.

Type of Change

  • New feature

Related Issue (optional)

N/A — user-requested small configuration improvement.

Changes Made

  • Add the interval below the SSH auto-reconnect switch in Terminal → Connection, with settings-search support and localized labels/help.
  • Commit edits on blur/Enter, normalize persisted values and supply a backward-compatible default for old settings.
  • Use one normalized value for the timer and retry notice. Existing scheduled waits keep their original deadline; subsequent attempts read the new value.
  • Preserve manual reconnect, cancellation, successful-connection cleanup and intentional-logout exclusions. Retry limits/backoff remain separate work.
  • Record scope and behavior in docs/plans/ssh-reconnect-interval.md.

Screenshots / Demo

Set the interval to 300 seconds and leave the field (or press Enter): the next scheduled reconnect waits 300 seconds and its notice reports 300. Clearing the field restores 5; out-of-range values clamp to 5–3600. Disabling auto-reconnect disables the interval input.

Testing

  • 79 focused tests pass (reconnect rules/delay conversion, persisted settings normalization/round trips, settings UI contracts and settings search).
  • Full npm run lint: zero errors, eight existing warnings; changed-file lint also checked.
  • Production build passed with large-chunk warnings before the final upstream refresh.
  • Full npm test green: attempted, but failed in untouched port-forward/SFTP/platform-dependent tests and left workers waiting. A bounded rerun also hit large-history SFTP failures; these logs are preserved locally. No full-suite pass is claimed.
  • Native desktop UI/SSH outage acceptance (no user SSH connections were disrupted).
  • Final upstream refresh rebased onto 27f26d8e6; focused tests and production build rerun after rebase are being recorded.

Checklist

  • My code follows the existing project style.
  • I have added relevant documentation.
  • Existing installs retain the five-second default.

Opened as draft until CI and remaining acceptance are assessed. Independent PowerShell delivery fix and workspace rearrangement requests are tracked separately (#4036, #4037).

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