3.7 KiB
Codex-Brief — UI-Fixes (aus der Sichtprüfung nach dem Rettungslauf)
Vier Befunde aus dem echten Betrieb mit den migrierten dr-gold-Postfaechern.
1. 🔴 Nachrichtenliste nach DATUM sortieren (neueste zuerst)
Befund: Im Ziel-Postfach purzeln die Daten durcheinander:
13 Jul 2026, 14 Jul 2026, 13 Jul 2026, 29 Jan 2020, 24 Jan 2020, …
Ursache — und die ist wichtig zu verstehen: Die Liste sortiert nach
UID / Sequenznummer (= Ankunftsreihenfolge). fetchHeaders holt das Fenster
start..stop aus NumMessages und dreht es mit reverseHeaders um.
Bei einem normal gewachsenen Postfach ist Ankunftsreihenfolge ≈ Datum. Bei einem
migrierten Postfach nicht: Wir haben per APPEND eingespielt und dabei
das Original-INTERNALDATE erhalten — die Reihenfolge des Einspielens hat
also nichts mehr mit dem Datum der Mail zu tun. Genau das sieht der Nutzer.
Fix:
- Nach Datum sortieren, neueste zuerst. Schluessel:
Envelope.Date, und wenn leer,InternalDate(die Logik inmessageHeaderFromFetchgibt es schon). - Das Fenster (200) muss die neuesten 200 nach Datum sein, nicht die
hoechsten 200 UIDs. Zwei Wege:
- IMAP
SORT(RFC 5256), wenn der Server es kann:UID SORT (REVERSE DATE) UTF-8 ALL→ sortierte UID-Liste, davon die ersten 200 holen. Sauber und serverseitig. - Fallback:
AllHeaders(folder)(existiert schon fuers Dedup, holt nur Envelopes, keine Bodies), clientseitig nach Datum sortieren, dann Fenster schneiden.
- IMAP
- Archiv-Listen (mbox) genauso: aus
mbox_indexnach Datum sortiert lesen (ORDER BY date DESC), nicht in Dateireihenfolge. - Schoen waere: Klick auf die Spalte dreht die Sortierung um (Datum auf/ab).
2. 🟠 Ziel-Postfach: Liste und Vorschau sind vertauscht
Ist: [ Nachrichten-Liste | Vorschau | Ordnerbaum ]
Soll: [ Vorschau | Nachrichten-Liste | Ordnerbaum ]
Der Ordnerbaum steht bereits richtig rechts (spiegelbildlich zur Quell-Ansicht, wo er links steht). Nur Liste und Vorschau muessen die Plaetze tauschen — dann stehen sich Quelle und Ziel sauber gegenueber:
QUELLE: [ Ordnerbaum | Liste | Vorschau ]
ZIEL: [ Vorschau | Liste | Ordnerbaum ] <- gespiegelt
3. 🟡 Falscher Platzhaltertext in der Vorschau
Die Vorschau zeigt „Backup-Postfach links waehlen.", obwohl links laengst eines gewaehlt ist und 678 Mails gelistet werden. Der Text gehoert nur in den Zustand „noch keine Mailbox gewaehlt".
Fix: Ist eine Mailbox + Ordner gewaehlt, aber keine Nachricht → „Nachricht waehlen."
4. 🟡 Ordnernamen im Archiv-Baum sind inkonsistent
Im Baum steht „Posteingang" (678) direkt neben „INBOX.Gesendet" (2) — einmal uebersetzt, einmal der rohe Quell-Ordnername.
Die mbox-Dateien heissen nach dem Quell-Ordner (INBOX.mbox,
INBOX.Gesendet.mbox). Die Anzeige uebersetzt offenbar nur INBOX →
„Posteingang" und laesst den Rest roh.
Fix: Einheitlich. Am besten die Rollen-Erkennung aus 11-folders.go
wiederverwenden: INBOX→Posteingang, *.Gesendet/*.Sent→Gesendet,
*.Drafts/*.Entwuerfe→Entwuerfe, *.Trash→Papierkorb usw., und den
Quell-Praefix (INBOX.) abschneiden. Sonst konsequent gar nicht uebersetzen
und ueberall den Quellnamen zeigen — Hauptsache, es ist nicht gemischt.
Abnahme
- Ziel-Postfach
admin@archiv.dr-gold.comoeffnen → Liste steht nach Datum, neueste oben (nicht mehr 2026/2020/2019 durcheinander). - Archiv
colak@dr-gold.de→ ebenfalls nach Datum, neueste oben. - Ziel-Ansicht ist gespiegelt: Vorschau links, Liste mittig, Baum rechts.
- Vorschau-Platzhalter sagt „Nachricht waehlen.", sobald ein Ordner gewaehlt ist.
- Baum zeigt einheitliche Ordnernamen.