- Verschifft
- 26. August 2026 um 02:23 UTC
- Autor
- kamo
- Ausschuss
- 486a456
Drei Überprüfungsergebnisse gegen Task 21, alle planpflichtig: - markSmsRead/markAiRead hatte keinen Lesezaun: eine Auffrischung oder ein eingehender Push Auflösung zwischen der optimistischen lokalen Clear und dem Server-Aufzeichnung Lesen könnte eine noch vorgelesene Zählung tragen und ein gerade geklärtes Abzeichen wiederbeleben. Die ungelesene Übertragung von VOIPService sendet einen vollständigen server-computed Schnappschuss auf jede Änderung, so war dies erreichbar, nicht theoretisch. Befestigt durch Extrahieren die Fencing-Regel in eine reine, getestet AnwendungFlatUnreadSnapshot (mirroring ungeleseneState.ts's eigene pendingRead Zaun für eine flache ID --Zykluskarte), angewendet in refreshSms, refreshAi und dem SMS WS-Handler, bewacht von pendingSmsReadsRef / pendingAiReadsRef hielt genau die Art und Weise beginnenMarkRead/endMarkRead halten markierenAsRead Zaun. - sameSessions verglichen nur ungelesene Graf und senderId, so eine Sitzung, deren sessionType wechselte zwischen den Umfragen (ein alter MediaService-Pod-Frame, dann new one's) mit Zählung und Absender unverändert dazwischen wurde als behandelt unverändert - die altmodische Chat-Klassifizierung würde den Einsatz überleben, dass Einführung sessionType, überleben, bis die Zählung dieser Sitzung nächste verschoben. vergleicht nun auch sessionType. - Zusätzliche Regressionsabdeckung für beide: eine rohe Nutzlast durchgetrieben geltenUnreadPayload zu beweisen sessionType tatsächlich überlebt Parsing (die Original-Gap lassen Sie dieses Schiff vorbei an einem sauberen Typcheck und eine grüne Suite einmal schon), und ein ************-Fall, der scheitert ohne die gleicheSessions-Fire (verifizierte RED vor der Wiederherstellung der Korrektur).