87b29b5912
Review-Protokoll in PROGRESS.md nachgeholt (die Vorsession hattef9979e4und891f348gepusht, wurde aber vor dem Protokollieren abgebrochen) und den Review zu Ende geführt: (a) Splits unabhängig per Zeilen-Multiset verifiziert, (b) Soft-Logout-Guard gegen SDK-Quelle gegenverifiziert, (c) Lint-Fixes äquivalent (onReorderItem gegen Flutter-SDK geprüft), (d) ROADMAP-Haken stimmen mit dem Code überein. Nebenbefund: docs/ PROGRESS.md als Archiv markiert (Verwechslungsgefahr mit dem echten Protokoll im Root). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.5 KiB
3.5 KiB
Pyramid – Fortschritt & offene Punkte (ARCHIV, Stand 2026-06-04)
ACHTUNG: Dies ist ein eingefrorener Alt-Stand von vor der neuen Arbeitsstruktur. Das aktuelle Arbeitsprotokoll liegt im Projekt-Root:
PROGRESS.md. Diese Datei nur als historische Referenz lesen, nie pflegen.
Erledigt
Chat / UI
- Reply-Zitat-Karte im Discord/WhatsApp-Stil (kein „In reply to @user" mehr), medien-bewusste Vorschau, getönter Hintergrund bündig mit Akzent-Strich.
- Per-Message-Selektion & -Hover — einzelne Nachrichten statt ganzer Sender-Gruppen werden markiert/hervorgehoben.
- Scroll-Stabilität — Crash durch doppelte Keys behoben, Pagination (kein endloses „Zurückziehen", lädt aber bis zum echten Anfang), Bild-/PDF-Platz wird vorab reserviert (kein Springen beim Laden).
- „Neue Nachrichten"-Divider — korrekte Position, scrollt zuverlässig hin, blendet beim Erreichen des Endes aus; erscheint nur bei echten ungelesenen Nachrichten von anderen.
- Composer-Höhe bündig mit dem Profil-Block; Verbindungs-Statusbanner bei Sync-Verlust; fehlgeschlagene Nachrichten bleiben mit „Wiederholen/Löschen" stehen statt zu verschwinden.
- „Zuletzt online" nutzt echten Presence-Status + Frische statt
currentlyActive(kein falsches „online" mehr). - Members-Panel mobil schließbar + schmaler.
Medien & Dokumente
- Media-Cache (LRU, byte-budgetiert, geteilt) — zuletzt betrachtete Medien sofort da, ältere automatisch verworfen.
- Datei-Vorschau — höhere Auflösung (PNG statt JPEG), viele neue Text/Code/Daten-Formate, immersiver Fullscreen-Viewer (Pan, +/− 20%-Zoom, Ctrl+Mausrad, Seiten-Navigation, mobil-optimiert, Tap blendet UI aus).
- Eingebettete Link-Vorschauen (Open-Graph-Karten) — serverseitig in Continuwuity aktiviert + Client-Karte.
Suche
- Lokale Suche über entschlüsselte Events (server-seitige
/searchfunktioniert nicht für E2EE) — Nachrichten, Medien (mit Thumbnail), Personen/Räume. - Sprung zur Nachricht aus dem Suchergebnis inkl. Cross-Chat, mit sanft ausblendendem Highlight.
Benachrichtigungen (Android)
- Bei gekillter App: Hintergrund-Entschlüsselung (decrypt-first) + verschlüsseltes Antworten ohne App-Öffnen. Details siehe NOTIFICATIONS.md.
Einstellungen
- Mobile Settings im Element-Stil: Kategorie-Liste → Untermenü mit Zurück-Pfeil (statt gedrängtem Icon-Block). Desktop unverändert.
Server (Pi 5, steggi@192.168.178.71)
- rclone-Mount für Pixeldrain-Medien repariert + Boot-Reihenfolge abgesichert; Medien liegen nur auf Pixeldrain.
- URL-Preview-Allowlist in
conduit.tomlaktiviert.
Lesebestätigungen (Element-Stil, mit Haken)
- ✓✓ an der zuletzt gesehenen Nachricht des Gegenübers (auch dessen eigener Antwort), berechnet aus
room.receiptState. Wandert mit, statt an der eigenen letzten Antwort zu kleben. - grauer ✓ nur auf der eigenen neuesten Nachricht, solange sie noch ungelesen ist; verschwindet sobald gelesen (dann nur ✓✓).
Offen / geplant
- Weiterleiten von Nachrichten (Forward) — später.
- Presence-Genauigkeit: Nutzer, die den PC vor ~10 min unsauber heruntergefahren haben, werden teils noch als „online" angezeigt (Server expired Presence nicht zuverlässig). Außerdem: Online-Status im Chat-Header und in der Chat-Liste sind nicht immer konsistent — sollten dieselbe Quelle nutzen.
- PDF-Seiten beim Upload vorrendern — bewusst zurückgestellt (geringer Mehrwert wegen Caches).
- Selection-Menü-Politur (kein Bug, optional).