docs: State-Management-Doc korrigiert - MediaCache-Umstellung ist NICHT risikoarm (Chat-Timeline haengt dran), zurueckgestellt
Der erste Befund beruhte auf einem durch head-limit abgeschnittenen grep; message_media.dart (am wenigsten geprueft laut PC_TESTPLAN 3) nutzt den Cache ebenfalls, inkl. statischem Wrapper ohne ref-Zugang. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1427,3 +1427,6 @@
|
|||||||
2026-07-06 17:49 [Write] C:\Users\nordm\pyramid - Kopie\docs\M2_STATE_MANAGEMENT.md
|
2026-07-06 17:49 [Write] C:\Users\nordm\pyramid - Kopie\docs\M2_STATE_MANAGEMENT.md
|
||||||
2026-07-06 17:49 [Edit] C:\Users\nordm\pyramid - Kopie\ROADMAP.md
|
2026-07-06 17:49 [Edit] C:\Users\nordm\pyramid - Kopie\ROADMAP.md
|
||||||
2026-07-06 17:49 [Edit] C:\Users\nordm\pyramid - Kopie\PROGRESS.md
|
2026-07-06 17:49 [Edit] C:\Users\nordm\pyramid - Kopie\PROGRESS.md
|
||||||
|
2026-07-06 17:51 [Edit] C:\Users\nordm\pyramid - Kopie\docs\M2_STATE_MANAGEMENT.md
|
||||||
|
2026-07-06 17:51 [Edit] C:\Users\nordm\pyramid - Kopie\docs\M2_STATE_MANAGEMENT.md
|
||||||
|
2026-07-06 17:51 [Edit] C:\Users\nordm\pyramid - Kopie\ROADMAP.md
|
||||||
|
|||||||
+3
-2
@@ -201,8 +201,9 @@ lassen, ohne dass andere Module angefasst werden müssen.
|
|||||||
(2026-07-06): Riverpod ist schon dominant (~50 Provider); 4
|
(2026-07-06): Riverpod ist schon dominant (~50 Provider); 4
|
||||||
Misch-Patterns identifiziert, Schrittfolge definiert. Schritte 1–2
|
Misch-Patterns identifiziert, Schrittfolge definiert. Schritte 1–2
|
||||||
(Call-Manager-UI-State, Voice-Provider-Umzug) GESPERRT bis Bernds
|
(Call-Manager-UI-State, Voice-Provider-Umzug) GESPERRT bis Bernds
|
||||||
Klick-Test (PC_TESTPLAN Abschnitt 8); frei: MediaCache hinter
|
Klick-Test (PC_TESTPLAN Abschnitt 8); MediaCache-Umstellung
|
||||||
Provider. Push bleibt bewusst wie er ist (Isolate-Zwang). Toter
|
zurückgestellt (hängt an der Chat-Timeline, Korrektur im Doc).
|
||||||
|
Push bleibt bewusst wie er ist (Isolate-Zwang). Toter
|
||||||
`incomingCallProvider` bereits entfernt (41bcaf2).
|
`incomingCallProvider` bereits entfernt (41bcaf2).
|
||||||
- [x] Toten Code & Duplikate entfernen, Ordnerstruktur vereinheitlichen
|
- [x] Toten Code & Duplikate entfernen, Ordnerstruktur vereinheitlichen
|
||||||
(PROGRESS.md 2026-07-03: `message_bubble.dart` tot entfernt, doppelte
|
(PROGRESS.md 2026-07-03: `message_bubble.dart` tot entfernt, doppelte
|
||||||
|
|||||||
@@ -36,9 +36,14 @@ Gefundene Misch-Patterns, nach Gewicht:
|
|||||||
Mini-Call-Widget gesetzt/gelesen und gehören fachlich ins
|
Mini-Call-Widget gesetzt/gelesen und gehören fachlich ins
|
||||||
`voice_channel`-Modul (Join-Zustand + Presence sind Modulsache).
|
`voice_channel`-Modul (Join-Zustand + Presence sind Modulsache).
|
||||||
3. **`MediaCache.instance`** (`core/media_cache.dart:19`): reines
|
3. **`MediaCache.instance`** (`core/media_cache.dart:19`): reines
|
||||||
Singleton, direkt von `widgets/mxc_image.dart` benutzt. Kein
|
Singleton, kein UI-Zustand, nur Cache. Nutzer sind `widgets/mxc_image.dart`
|
||||||
UI-Zustand, nur Cache – geringer Schaden, leicht hinter einen
|
(7 Stellen, Widgets – leicht umstellbar) UND
|
||||||
`Provider<MediaCache>` zu legen.
|
`features/chat/message/message_media.dart` (7 Stellen, darunter der
|
||||||
|
statische Wrapper `_DocBytesCache` für Dokument-Vorschauen, dessen
|
||||||
|
Aufrufer keinen `ref`-Zugang haben). Eine Umstellung müsste `ref`/die
|
||||||
|
Cache-Instanz durch die statischen Helfer der Chat-Timeline fädeln –
|
||||||
|
und genau dieser Code (Download-/Entschlüsselungs-Fehlerpfade) ist
|
||||||
|
laut PC_TESTPLAN Abschnitt 3 der am wenigsten geprüfte Teil der App.
|
||||||
4. **Push/Notifications:** modul-globale Mutable-Zustände in
|
4. **Push/Notifications:** modul-globale Mutable-Zustände in
|
||||||
`core/notification_service.dart` (`_windowsNotifs`-Map, Plugin-Globals)
|
`core/notification_service.dart` (`_windowsNotifs`-Map, Plugin-Globals)
|
||||||
und direkte `SharedPreferences`-Zugriffe in `background_push.dart`/
|
und direkte `SharedPreferences`-Zugriffe in `background_push.dart`/
|
||||||
@@ -75,9 +80,12 @@ Bereits erledigt im Zuge dieser Analyse: der seit dem Call-Piloten tote
|
|||||||
`voiceParticipantsProvider` ins `voice_channel`-Modul umziehen**
|
`voiceParticipantsProvider` ins `voice_channel`-Modul umziehen**
|
||||||
(zusammen mit `kVoicePresenceType`). Mechanisch klein, aber
|
(zusammen mit `kVoicePresenceType`). Mechanisch klein, aber
|
||||||
Call-Pfad-nah – sinnvoll im selben Zug wie Schritt 1.
|
Call-Pfad-nah – sinnvoll im selben Zug wie Schritt 1.
|
||||||
3. **[frei] `MediaCache` hinter `Provider<MediaCache>`** und die
|
3. **[ZURÜCKGESTELLT] `MediaCache` hinter `Provider<MediaCache>`:**
|
||||||
`.instance`-Zugriffe in `mxc_image.dart` auf `ref` umstellen –
|
Erst als „risikoarm, jederzeit" eingestuft – das stimmte NICHT
|
||||||
risikoarm, jederzeit möglich, guter Lückenfüller.
|
(Korrektur 2026-07-06, siehe Ist-Stand Punkt 3: auch die Chat-Timeline
|
||||||
|
hängt dran, inkl. statischer Helfer ohne `ref`). Gehört in den Zug des
|
||||||
|
`chat_timeline`-Moduls (Schnitt-Doc Punkt 9) bzw. frühestens nach dem
|
||||||
|
Klick-Test von PC_TESTPLAN Abschnitt 3 – nicht als Lückenfüller.
|
||||||
4. **[kein Umbau] Push/Notifications:** bleibt wie es ist
|
4. **[kein Umbau] Push/Notifications:** bleibt wie es ist
|
||||||
(Isolate-Zwang); nur bei ohnehin anstehenden Push-Arbeiten die
|
(Isolate-Zwang); nur bei ohnehin anstehenden Push-Arbeiten die
|
||||||
Prefs-Zugriffe auf die `Prefs`-Fassade ziehen (Schnitt-Doc Punkt 6).
|
Prefs-Zugriffe auf die `Prefs`-Fassade ziehen (Schnitt-Doc Punkt 6).
|
||||||
|
|||||||
Reference in New Issue
Block a user