Read-fence SMS/AI Mark-reads, сворачиваем сессию Тип в те же сессии

Fixkamo-internal
Порезанный
26 августа 2026 г. в 02:23 UTC
Автор
kamo
Обещать
486a456

Три вывода обзора в отношении Задачи 21, все утвержденные планом: - MarkSmsRead/markAiRead не имел забора для чтения: обновление или входящий толчок разрешение между оптимистичным локальным клиром и сервером, записывающим Чтение может нести все еще предварительно прочитанный счет и воскресить только что очищенный значок. Нечитанная трансляция VOIPService отправляет полный вычисленный на сервере снимок Все изменения были достижимы, а не теоретически. фиксируется путем извлечения Правило фехтования в чистом, проверенном приложении FlatUnreadSnapshot (зеркало) unreadState.ts's own pendingReads fence for a flat id -> count map, applied в refreshSms, refreshAi и обработчике SMS WS, охраняемый отложенным SmsReadsRef / в ожиданииAiReadsRef провел точно так же, как начатьMarkRead/endMarkRead провести Забор от MarkAsRead. - те же сессии сравниваются только с непрочитанным счетом и senderId, поэтому сеанс, Сеанс Тип изменился между опросами (старый кадр MediaService, а затем новый) с неизмененным счетчиком и отправителем между ними рассматривается как неизменно — устаревшая классификация чатов переживет развертывание, которое Ввел сессию Тип, дожив до следующего пересчета этой сессии. Также можно сравнить сессию. - Добавлено покрытие регрессии для обоих: необработанная полезная нагрузка, проходящая через примените UnreadPayload, чтобы доказать, что sessionType действительно выживает при парсинге Оригинальный зазор позволил этому кораблю пройти чистую проверку типа и зеленый люкс. ********************************************** без исправления сессий (проверено RED перед восстановлением исправления).

Все изменения

Как вы видите судоходство?

Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.

Начните бесплатно навсегдаПосмотреть цены