diff --git a/PROGRESS.md b/PROGRESS.md index 9260ca6..053a6f9 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -13,6 +13,48 @@ Schritt (und beim Abbruch mitten im Schritt den Zwischenstand). Format: --- +## 2026-07-03 – M0 abgeschlossen: Ordnung, flutter analyze sauber, README + +**Erledigt:** +- Liegen gebliebene Deprecation-Fixes aus einer abgebrochenen Session committet + (`withOpacity`→`withValues`, `activeColor`→`activeThumbColor`, `cacheExtent`→ + `ScrollCacheExtent`, `PublicRoomsChunk`→`PublishedRoomsChunk`) – Commit 057ac1e +- Restliche `flutter analyze`-Hinweise behoben – Commit 401bd6a: + - `document_viewer.dart`: `Matrix4.translate/scale` → `translateByDouble`/ + `scaleByDouble` (PDF-Zoom, gleiches Verhalten) + - `rooms_panel.dart`: `onReorder` → `onReorderItem` (Index-Korrektur jetzt intern, + manuelles `newIdx--` entfernt); `implementation_imports`-Hinweis kommentiert + (SpaceChild wird vom `matrix`-Paket nicht öffentlich exportiert, kein Fix möglich) + - `voip_manager.dart`: `getSources()`-Override kommentiert (Pflicht-Override der + abstrakten `MediaDevices`-Klasse, die die Methode selbst deprecated hat) + - `settings_modal.dart`: zwei `BuildContext`-nach-`await`-Stellen mit + `context.mounted` abgesichert (Geräte umbenennen, Passwortabfrage bei Massenlogout) + - **Bewusst NICHT gefixt:** `chat_provider.dart:42` (`Timeline.onUpdate` deprecated, + Ersatz wäre `client.onSync` + Raum-Filter). Hängt am E2EE-Redecrypt-Pfad + (Re-Entschlüsseln nach Schlüssel-Empfang) – laut CLAUDE.md heiliger Bereich, + Umbau nur mit dediziertem Login→Nachrichten→Logout→Login-Test, nicht nebenbei. +- `lib/features/calls/` (Leiche) geprüft: existiert nicht mehr, nur `lib/features/call/` + mit den echten Dateien – Punkt war bereits erledigt, nur nicht abgehakt. +- README.md durch echte Projektbeschreibung ersetzt (Funktionsumfang, Build, Struktur) – Commit 74d38fd +- ROADMAP.md: M0 komplett abgehakt. + +**Offen/Nächster Schritt:** M1, erster Punkt – Uta-Random-Logout-Bug untersuchen +(Logging an allen Logout-Pfaden einbauen, dann Ursache finden). Direkt danach die +Push-Entschlüsselungs-Regression (`docs/NOTIFICATIONS.md` + Memory „Pyramid Push" +vorher lesen). + +**Stolperfallen:** +- Kein `test/`-Ordner vorhanden → `flutter test` läuft ins Leere, keine automatisierte + Absicherung. `flutter analyze` lief sauber (0 Fehler/Warnungen), aber die Lint-Fixes + in `document_viewer.dart` (PDF-Zoom) und `rooms_panel.dart` (Drag-Reorder der + Raumliste) sind **UNGETESTET** in echter UI – nächster Windows-Lauf sollte kurz + PDF-Zoom und Raum-Umsortieren per Drag prüfen. +- Der `ignore:`-Kommentar für einen deprecated-Aufruf muss auf der Zeile *unmittelbar* + über der betroffenen Codezeile stehen, nicht nur "in der Nähe" – sonst wirkt er nicht + (bei `voip_manager.dart` erst falsch über `@override` gesetzt, dann korrigiert). + +--- + ## 2026-07-03 – Arbeitsstruktur angelegt + Vollbackup (Setup, noch kein Code) **Erledigt:** diff --git a/ROADMAP.md b/ROADMAP.md index d229dfb..e15bfdc 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -8,10 +8,13 @@ Punkte abhaken (`[x]`), wenn erledigt UND in `PROGRESS.md` protokolliert. ## M0 – Backup & Ordnung - [x] Vollbackup vor dem Refactoring (2026-07-03 → `MatrixPi\backups\pyramid-kopie_backup_2026-07-03.tar.gz`) -- [ ] Die ~140 uncommitteten Dateien sichten, in thematische Commits aufteilen, zu Gitea pushen -- [ ] `flutter analyze` komplett sauber bekommen und sauber halten -- [ ] `lib/features/call/` vs. `lib/features/calls/` (leer?) klären – Leiche entfernen -- [ ] README.md durch echte Projektbeschreibung ersetzen (was ist Pyramid, wie baut man es, wo liegt was) +- [x] Die ~140 uncommitteten Dateien sichten, in thematische Commits aufteilen, zu Gitea pushen + (Sicherungs-Commit 25ed765 + Folge-Commits bis 74d38fd; Arbeitsbaum ist jetzt sauber) +- [x] `flutter analyze` komplett sauber bekommen und sauber halten (nur noch 1 bewusst + zurückgestellter Hinweis, siehe PROGRESS.md 2026-07-03) +- [x] `lib/features/call/` vs. `lib/features/calls/` (leer?) klären – Leiche entfernen + (geprüft: `calls/` existiert nicht mehr, nur `call/` mit den echten Dateien) +- [x] README.md durch echte Projektbeschreibung ersetzt (74d38fd) ## M1 – Sicherheit: Nie wieder aussperren / kein Datenverlust