- Navios
- 26 de agosto de 2026 às 02:23 UTC
- Autor
- kamo
- Enviar
- 486a456
Três conclusões de revisão contra a Tarefa 21, todas ordenadas pelo plano: - markSmsRead/markAiRead não tinha cerca de leitura: uma atualização ou um empurrão de entrada resolução entre o otimista local claro e o servidor que grava o A leitura pode levar uma contagem pré-leitura e ressuscitar um distintivo limpo. A transmissão não lida do VOIPService envia uma imagem completa do servidor todas as mudanças, então isso era alcançável, não teórico. Fixação por extracção a regra de esgrima em uma aplicação pura, testadaFlatUnreadSnapshot (espelhando unreadState.ts próprio pendenteReads cerca para um id plano -> mapa de contagem), aplicado em refrescaSms, refrescaAi, e o manipulador SMS WS, guardado por pendentesSmsRedsRef / pendenteAiReadsRef realizada exatamente o caminho começarMarkRead/endMarkRead hold A cerca do MarkAsRead. - sameSessions comparou apenas não lidoCount e remetenteId, então uma sessão cuja sessionType mudou entre as sondagens (uma moldura antiga do MediaService, em seguida, um novo) com contagem e remetente inalterado no meio foi tratado como sem alterações — a classificação do chat obsoleto sobreviveria à implantação que introdução do sessionType, sobrevivendo até que a contagem dessa sessão se mova em seguida. Agora compara sessionType também. - Adicionado cobertura de regressão para ambos: uma carga bruta impulsionada através applyUnreadPayload para provar sessionType realmente sobrevive à análise (o o gap original deixou este navio passar por uma verificação de tipo limpa e uma suíte verde uma vez E um caso que falhou. sem a mesma correçãoSessions (verified RED antes de restaurar a correção).