--- status: partial phase: 07-dkv-fleet-module source: [07-01-SUMMARY.md, 07-02-SUMMARY.md, 07-03-SUMMARY.md, 07-04-SUMMARY.md, 07-05-SUMMARY.md, 07-06-SUMMARY.md] started: 2026-06-27T15:20:00Z updated: 2026-06-27T15:20:00Z --- ## Current Test [testing paused — 8 tests pending, 1 issue found] next: Test 2 — Settings-Sidebar Allgemein-Kategorie ## Tests ### 1. Cold Start Smoke Test expected: Kill any running services. Start fresh via docker compose up. API-Container startet ohne Fehler, Prisma-Verbindung gelingt, /api/health oder ein einfacher API-Call liefert eine Antwort zurück. Keine Crash-Logs in docker compose logs tessera-ctl-api-1. result: issue reported: "DB-Container nach Start nicht in docker compose ps sichtbar. API loggt wiederholt P1001: Can't reach database server at db:5432 bei Requests (ModuleRegistry, Dashboard, LdapSync, WidgetInstance). NestJS startete und Admin-Seed lief durch, aber DB-Verbindung bricht danach ab." severity: major ### 2. Settings-Sidebar: Allgemein-Kategorie expected: In der Settings-Seitenleiste (z.B. unter /settings/general/smtp) erscheint eine neue Kategorie "Allgemein" mit einem Link "SMTP" — platziert oberhalb der bestehenden "Dashboard"-Kategorie. result: [pending] ### 3. SMTP-Einstellungen-Seite aufrufen expected: /settings/general/smtp öffnet eine Seite mit einem Formular, das 6 Felder enthält: Host, Port, Verschlüsselung (Dropdown), Benutzername, Passwort (mit Show/Hide-Toggle), Absenderadresse. Das Passwort-Feld ist leer (niemals vorausgefüllt). result: [pending] ### 4. SMTP-Konfiguration speichern expected: Formularfelder ausfüllen und "Speichern" klicken → kurze Erfolgs-Meldung erscheint ("Gespeichert" o.ä.). Beim nächsten Laden der Seite sind Host, Port, Benutzername, Absenderadresse wieder befüllt — Passwort bleibt leer (nur hasPassword-Indikator). result: [pending] ### 5. SMTP-Verbindungstest expected: "Verbindung testen"-Button anklicken → inline Feedback erscheint (grün bei Erfolg, rot bei Fehler). Die Meldung verschwindet automatisch nach ca. 6 Sekunden. result: [pending] ### 6. DKV Fleet Modul — Hauptseite expected: /modules/dkv-fleet zeigt drei Bereiche: (1) Verarbeitungshistorie-Tabelle mit Spalten Datum/Rechnungsnummer/Status/Fahrzeuge, (2) Export-Dateiliste, (3) "Jetzt prüfen"-Button. Bei leerem System zeigt die Tabelle einen leeren Zustand (kein Crash). result: [pending] ### 7. DKV Einstellungen — Posteingang-Konfiguration expected: /modules/dkv-fleet/settings zeigt einen Tab "Posteingang" mit Formular für IMAP- oder Exchange-Zugangsdaten (Host, Port, Benutzername, Passwort). Formular kann ausgefüllt und gespeichert werden. result: [pending] ### 8. DKV Einstellungen — Fahrzeuge-Tabelle expected: Klick auf "Fahrzeuge"-Tab navigiert zu /modules/dkv-fleet/vehicles. Die Seite zeigt eine Tabelle mit Spalten: Kennzeichen, Fahrer, Marke, Modell. Bei leerem System: leerer Zustand ohne Fehler. "Neues Fahrzeug"-Button o.ä. ist sichtbar. result: [pending] ### 9. CSV-Import expected: In der Fahrzeuge-Ansicht gibt es einen CSV-Import-Button. Nach Dateiauswahl erscheint ein Bestätigungs-Dialog für den Ersetzen-Modus ("Alle bestehenden Fahrzeuge werden überschrieben"). Nach Bestätigung erscheint eine Erfolgs-Meldung mit der Anzahl importierter Fahrzeuge. result: [pending] ## Summary total: 9 passed: 0 issues: 1 pending: 8 skipped: 0 blocked: 0 ## Gaps - truth: "API-Container startet clean, DB-Verbindung stabil nach compose up" status: failed reason: "User reported: DB-Container nicht in docker compose ps, API loggt P1001 Can't reach db:5432 bei Requests nach Start" severity: major test: 1 root_cause: "" artifacts: [] missing: [] debug_session: ""