Rework the admin Overview tab into a full-width vertical list of per-section summary cards (System, Crawler, Analysis, Mangas, Users, Settings), each linking to its tab. Crawler and Analysis cards update live over the existing SSE streams; System/Mangas/Users poll; the Settings strip reflects daemon state. The disk/memory/CPU boxes move into the System card. Add a composed GET /admin/overview endpoint returning Users, Mangas and Analysis aggregates (user counts + newest, manga sync-state counts + chapter/page totals + newest, library analysis coverage), reusing the existing MANGA_SYNC_STATE_CASE and the storage handler's try_join fan-out. Extend the System tab with hardware sensors: CPU load average and per-core usage (sysinfo), plus temperatures via sysinfo's Components API (enabled the `component` feature). Sensors degrade to an "unavailable" state when not exposed (e.g. inside containers without /sys access), and a temperature at/above its critical threshold raises a warning alert. Tests: integration tests for /admin/overview and the extended /admin/system shape; vitest coverage for the new client types and getOverviewStats. Bump to 0.85.0 (minor) in lockstep. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4.3 KiB
4.3 KiB