fix(dashboard): nie kontrollierte Objekte gelten nicht mehr als einsatzbereit
CI / backend-tests (push) Failing after 1m54s
CI / frontend-build (push) Successful in 16s

Nutzer-Fund (Readiness-Backlog-Review): einsatzbereitschaft() zählte ein
Objekt ohne jede Kontrolle bisher als "einsatzbereit", weil keine Kriterien
verletzt waren - fachlich falsch, "nie geprüft" ist nicht dasselbe wie
"geprüft und in Ordnung".

Neuer vierter Zustand "unbekannt": Objekte ohne abgeschlossene Kontrolle UND
ohne sonstige Blocker fallen jetzt hierunter statt unter "einsatzbereit".
Objekte mit anderen Gründen (Fehlbestand/Mangel/Prüfung/...) bleiben davon
unberührt, die zählten schon vorher korrekt.

Tests angepasst: zwei bestehende Tests nutzten ungeprüfte Objekte und
erwarteten fälschlich "einsatzbereit" - jetzt entweder explizit kontrolliert
(Ist=Soll) oder auf "unbekannt" korrigiert, plus neuer Test für den Kernfall.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KC8HYvv6UkCVYheYiTw9DD
This commit is contained in:
2026-09-05 15:47:39 +02:00
co-authored by Claude Sonnet 5
parent f158cb87bb
commit fab3a06073
6 changed files with 92 additions and 6 deletions
+7
View File
@@ -34,6 +34,7 @@ interface ObjektMangel {
interface Einsatzbereitschaft {
einsatzbereit: number;
eingeschraenkt_einsatzbereit: number;
unbekannt: number;
nicht_einsatzbereit: number;
gesamt: number;
details: ObjektMangel[];
@@ -64,6 +65,7 @@ const GRUND_TEXT: Record<string, string> = {
mangel_kritisch_offen: "Kritischer Mangel offen",
in_wartung: "In Wartung",
hu_uvv_ueberfaellig: "HU/UVV überfällig",
noch_nie_kontrolliert: "Noch nie kontrolliert",
mindermenge_genehmigt: "Mindermenge genehmigt",
};
@@ -126,6 +128,11 @@ export function DashboardPage() {
Mindermengen-Genehmigung)
</p>
)}
{bereitschaft.unbekannt > 0 && (
<p className="text-muted">
{bereitschaft.unbekannt} noch nie kontrolliert (Status unbekannt)
</p>
)}
{bereitschaft.nicht_einsatzbereit > 0 && (
<p className="text-muted" style={{ color: "var(--color-danger)" }}>
{bereitschaft.nicht_einsatzbereit} nicht einsatzbereit