v0.32.6_fix2

This commit is contained in:
Mateusz Gruszczyński committed 2026-10-14 11:51:37 +02:00
1 parent e1ac899ec0
commit fc8711d4d8
39 files changed
+695 -232

No files matched your search

+19 -3
View File
@@ -9,12 +9,28 @@ streaming HTTP/TLS/WebSocket forwarding, raw TCP/UDP stream hosts, IP-bound vhos
## What changed in 0.32.6
- **Rate-chart pause recovery (0.32.6 development branch):** share one
counter continuity policy across Cache HIT/MISS/BYPASS, Transform, HTTP
Overview/protocols, optional wide/small charts, backend and Stream/Vhost
traffic charts. After tab hide/pagehide (including BFCache) or a delayed
refresh, keep plotted history, use the first reading as a new baseline,
and resume rate points on the next normal interval. A genuine measured
zero still appears as 0/s. Cache and Transform intervals and the separate
System information interval remain configurable; no additional polling.
- **Development fixes (same 0.32.6 version):** keep Network diagnostics
chart DOM stable across live refreshes, preventing repeated row/SVG replacement
during scrolling. Network-interface chart history advances at the Overview
live-status cadence using the latest sampled rates; fetching system data still
follows the independent System information interval in Settings. Repair CSS
descendant selector transformation and protect admin responses with
follows the independent System information interval in Settings. Current
CPU/RSS and per-interface RX/TX chart points now come from the existing
background OS sampler through compact SSE/fallback data, every **3 s** by
default (saved **2 s** settings remain valid), while Process details still
follow the configured System information refresh. On mobile the Network
interface chart list no longer traps touch scrolling in a nested scroll area.
Origin protocol badges use exactly the same rounding as adjacent pills for
all corner presets, without changing their color. Repair CSS descendant
selector transformation and protect admin responses with
`Cache-Control: no-transform`. Real iOS 27 scrolling remains unverified.
- **Mobile Overview:** display two metric tiles per row on phone-width canvases,
@@ -230,7 +246,7 @@ Named HTTP/HTTPS listener bind addresses use the same chip-style editor as vhost
- Improved mobile panel loading behind reverse proxies: one ordered JavaScript resource, versioned assets and retry of temporary configuration errors.
- **Panel startup/mobile follow-up:** replace the former white loading state with a RustProxy spinner, an automatic delayed reload suggestion and an error screen with reload link. Paint the shell before waiting for preferences/configuration/initial status; the header's **Refresh now** action sits beside the Overview title without adding a row. Negotiate Zstd/Brotli/gzip for fixed panel HTML and assets, with one-time encoding per resource; preserve public login and identity clients.
- Refresh Overview through a shared, authenticated SSE channel with per-administrator live pacing (1, 2, 5 or 10 seconds); fallback status/log polling is active only after SSE failure. Full configuration and system diagnostics are not serialized on every live event.
- Refresh Overview through a shared, authenticated SSE channel with per-administrator live pacing (1, 2, 3, 5 or 10 seconds; default 3); fallback status/log polling is active only after SSE failure. Detailed system diagnostics remain in the separately scheduled API; live status carries a small cached CPU/RSS/network chart snapshot.
- **Settings → Appearance → Data refresh** now stores per-account Live enable/disable and independent Traffic, Cache and System information intervals. Manual mode (`0`) and the global Live switch disable automatic requests while preserving manual refresh, charts, filters and pagination.
- Poll only the current Traffic/Cache view, and fetch system diagnostics independently from `/api/system-info` when Overview or the relevant Settings section needs them. The previous full `/api/status` response remains supported, while `?view=live` provides compact fallback.
- Centralize dashboard polling with cancellation/in-flight guards, hidden-tab pause and logout cleanup; retain SQLite schema 9, previous preferences, proxy traffic and the existing authentication model.