fix: NaN-Metriken, Chart-Zeitachse und erweiterte Gerätedetails
Backend:
- AgentGrpcService: JSONB-Serialisierung auf camelCase umgestellt
(JsonSerializer.SerializeToElement mit CamelCase-Options)
→ behebt NaN bei CPU, RAM, Disk-Anzeige in der Detailseite
- AgentGrpcService: Result-JSONB explizit camelCase (exitCode, stdout, stderr, success)
→ behebt fehlende Befehlsergebnisse im Frontend
- AgentGrpcService: SignalR-Payload enthält nun Disks und NetworkInterfaces
- Program.cs: SignalR JsonProtocol auf CamelCase konfiguriert
Agent (Go):
- Heartbeat sendet nun NetworkInterfaces aus dem Collector
→ Netzwerkschnittstellen werden im Frontend angezeigt
Frontend:
- useAgentSignalR: onLiveMetrics-Callback für direktes Live-Update
(kein API-Roundtrip mehr, < 50ms Latenz)
- AgentDetailPage komplett überarbeitet:
- Geräteinformationen-Karte (IP, MAC, OS, Version, Enrolled-At, Last-Seen)
- Live-Indikator auf MetricCards (grüner Puls-Punkt bei SignalR-Verbindung)
- NaN-Schutz für alle berechneten Werte (safePercent, memPercent)
- Chart-Reihenfolge umgekehrt: älteste links, neueste rechts
- X-Achse: adaptives Intervall verhindert Label-Überlappung
- Netzwerkschnittstellen-Tabelle mit Traffic (RX/TX)
- Festplatten mit Fortschrittsbalken + Filesystem-Typ
- Strg+Enter für schnelle Befehlsausführung
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>