Add WireGuard connection health checker and UI notifications - #610
Merged
Conversation
- add WireGuard tunnel health checker with active probing - surface `IsUnhealthy` in daemon connected responses - ignore unhealthy CONNECTED notifications in service connected flow - add UI unhealthy indicator (status icon + tooltip) and tray unhealthy status - skip geolocation lookup while connection is unhealthy - small WireGuard platform comment/notify cleanups ivpn/desktop-app-shadow#207
…dded architecture file prefixes)
Replace the IsUnhealthy field on ConnectedResp with a dedicated
TunnelHealthResp message, so health changes never touch the
CONNECTED/DISCONNECTED protocol flow.
- add TUNNEL_HEALTH vpn.State; health checker emits it instead of
re-using CONNECTED
- add TunnelHealthResp{IsUnhealthy bool} protocol message
- remove IsUnhealthy from ConnectedResp and StateInfo.CONNECTED semantics
- remove the if-IsUnhealthy-break hack in service_connect.go
- cache _lastTunnelUnhealthy in Protocol so late-connecting UI clients
receive the current health status on Hello
- healthy signal suppressed when tunnel was already healthy
- reset health cache on every new CONNECTED and on DISCONNECTED
- UI: handle TunnelHealthResp as a separate store mutation
(tunnelIsUnhealthy) instead of reading from connectionInfo
- tray: subscribe to vpnState/tunnelIsUnhealthy so icon and status
text update on health change
ivpn/desktop-app-shadow#207
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Introduce a health checker for WireGuard connections that actively probes the tunnel state.
The application now surfaces an "unhealthy" state in the UI, providing users with notifications when the connection is not functioning properly. This includes updates to the daemon responses, UI indicators, and tray status.
ivpn/desktop-app-shadow#207