- SMTP: add test-to field, send real email via sendMail() instead of verify() - SMTP: fix no_auth warning shown as error for open-relay servers - DKV: register dkv-fleet in MODULE_REGISTRY (fixes "Modul nicht gefunden") - DKV: add dynamic [category]/[moduleSlug]/settings + vehicles sub-routes - DKV: settings/vehicles links use useParams for consistent URLs - DKV: add gear icon settings link to module main page - DKV: rename module to "DKV-Rechnung" in seed + translations - DKV: add optional domain field for Exchange (WebCredentials 3rd arg) - DKV: hide IMAP-only fields (Port/Verschlüsselung/Ordner) when Exchange selected - DKV: hide Exchange-only field (Domain) when IMAP selected - Prisma: add domain column to DkvModuleConfig Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3.6 KiB
status, phase, source, started, updated
| status | phase | source | started | updated | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| partial | 07-dkv-fleet-module |
|
2026-06-27T15:20:00Z | 2026-06-27T15:20:00Z |
Current Test
number: 7 name: 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. awaiting: user response
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: pass note: "docker compose down && docker compose up -d: DB healthy → API healthy → Web up. Früheres P1001 war externaler SIGKILL auf DB-Container, kein Code-Defekt."
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: pass
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: pass
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: pass
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: pass note: "Feld 'Test-E-Mail an' ergänzt. Echter Versand via sendMail(). Grüne Bestätigung erscheint korrekt."
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: pass note: "MODULE_REGISTRY-Eintrag für dkv-fleet ergänzt. URL: /modules/fleet/dkv-fleet"
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: 5 issues: 0 pending: 4 skipped: 0 blocked: 0
Gaps
[none yet]