Files
pyramid/PROGRESS.md
T
Bernd Steckmeister 13512064a3 docs: M0 in PROGRESS/ROADMAP abschließen
Alle M0-Punkte abgehakt (Commits, flutter analyze, call/calls-Leiche,
README). Nächster Schritt laut ROADMAP: M1 Uta-Logout-Bug.
2026-07-03 09:46:27 +02:00

4.2 KiB
Raw Blame History

Pyramid Arbeitsprotokoll

Neueste Einträge OBEN. Jede Claude-Session schreibt hier nach jedem abgeschlossenen Schritt (und beim Abbruch mitten im Schritt den Zwischenstand). Format:

## JJJJ-MM-TT  Kurztitel
**Erledigt:** was fertig ist (mit Commit-Hash)
**Offen/Nächster Schritt:** der konkrete nächste Handgriff
**Stolperfallen:** was schiefging und wie es gelöst wurde (damit es nie zweimal passiert)
**Fragen an Bernd:** (optional) gesammelte Richtungsfragen, die nicht blockieren

2026-07-03 M0 abgeschlossen: Ordnung, flutter analyze sauber, README

Erledigt:

  • Liegen gebliebene Deprecation-Fixes aus einer abgebrochenen Session committet (withOpacitywithValues, activeColoractiveThumbColor, cacheExtentScrollCacheExtent, PublicRoomsChunkPublishedRoomsChunk) Commit 057ac1e
  • Restliche flutter analyze-Hinweise behoben Commit 401bd6a:
    • document_viewer.dart: Matrix4.translate/scaletranslateByDouble/ scaleByDouble (PDF-Zoom, gleiches Verhalten)
    • rooms_panel.dart: onReorderonReorderItem (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:

  • Vollbackup inkl. Git-Historie: MatrixPi\backups\pyramid-kopie_backup_2026-07-03.tar.gz (510 MB)
  • CLAUDE.md (Arbeitsregeln), ROADMAP.md (M0M7 nach Bernds Prioritäten), dieses Protokoll
  • Klargestellt: C:\Users\nordm\pyramid - Kopie ist das EINZIGE aktuelle Repo; C:\Users\nordm\pyramid und MatrixPi\pyramid sind veraltete April-Stände (Commit c9af913)

Offen/Nächster Schritt: M0, Punkt 2 die ~140 uncommitteten Dateien mit git status sichten und in thematische Commits aufteilen (diese drei neuen Dateien mit committen), dann git push origin master.

Stolperfallen:

  • Letzter Commit ist vom 2026-04-28 (d706ace), gearbeitet wurde aber bis mindestens 2026-06-12 → zwischen Commits und Realität liegen 6 Wochen. Genau deshalb: ab jetzt kleine Commits nach jedem Schritt.
  • Git-Remote (Gitea auf dem Pi) enthält Zugangsdaten in der URL funktioniert, aber nur erreichbar, wenn der Pi läuft (unterwegs: WireGuard nötig).