From 3e3016f2bd80f6a8b0b8e518b876e80d4e26f895 Mon Sep 17 00:00:00 2001 From: archipelago Date: Wed, 24 Jun 2026 04:58:54 -0400 Subject: [PATCH] fix(ui): debounce connection-lost banner so transient ws blips don't flash The reconnect banner showed 'Connection lost'/'Reconnecting' instantly on every socket close, even ones that recover in 100ms-2s (load spikes, Tailscale/relay TCP resets). On a healthy node the drops are brief and self-healing, but each one flashed a jarring banner, reading as constant instability. Debounce the transient banner by 2.5s: only surface after the connection issue persists past the grace window; hide immediately on recovery. Deliberate server lifecycle transitions (restart/shutdown) bypass the debounce and still show at once. A genuine persistent outage keeps isOffline true and surfaces after 2.5s. Co-Authored-By: Claude Opus 4.8 (1M context) --- .../src/views/dashboard/ConnectionBanner.vue | 65 +++++++++++++++++-- 1 file changed, 60 insertions(+), 5 deletions(-) diff --git a/neode-ui/src/views/dashboard/ConnectionBanner.vue b/neode-ui/src/views/dashboard/ConnectionBanner.vue index 22fade02..c1197898 100644 --- a/neode-ui/src/views/dashboard/ConnectionBanner.vue +++ b/neode-ui/src/views/dashboard/ConnectionBanner.vue @@ -1,9 +1,12 @@