- Navios
- 2 de setembro de 2026 às 08:48 UTC
- Autor
- Kamo
- Enviar
- 83e30bc
Um membro começou uma conversa sobre artigos KB, minimizou-o para o seu hexhead, foi ao seu correio e trouxe a janela de volta para uma conversa em branco — "ter de recomeçar". Nada se perdeu: ambas as perguntas e ambas as respostas estavam em ai chat mensages o tempo todo, e nenhuma nova sessão foi sempre criado, que é o sinal. A janela voltou a apontar para a direita conversar e não consegui lê-lo. AiChatController.getMensagens respostas com um envelope — {mensagens, total, hasMore } — older-first, holding the newest `limit` Filas. Isto o leu como um AiChatMensage nu[]. «data.comprimento» num objecto é indefinido, `data.reverse()` não é uma função, e a captura engoliu o TipoError: a lista permaneceu vazia, `inicialLoaded` nunca virou, e o painel não renderizou nada — nenhuma transcrição, nenhuma conversa vazia painel, sem erro. Uma janela em branco sobre uma transcrição que era perfeitamente segura. Escondeu-se durante tanto tempo, porque uma janela ao vivo nunca faz esta chamada. Todas as mensagens no ecrã chegam lá através do eco local AiChatWebSocketContext, anexado diretamente à lista mantida viva. A ler somente importa quando a transcrição tem que voltar do servidor: após uma carga completa do documento — o instantâneo da janela restaura a janela COM seu guid de sessão, portanto nenhuma nova linha de sessão — ou uma reabertura passado o Cinco minutos vivos. Exatamente as duas maneiras que um membro atinge uma janela de IA Eles já estavam a usar. Então leia o envelope, mantenha a ordem do serviço em vez de reverter o que já inverteu, e tomar `hasMais` da resposta em vez de Inferindo-o de um comprimento que nunca esteve lá. Chamar vai com ele. getMessages declara um parâmetro `antes' e nunca lê-lo — cada chamada é PageRequest.of(0, limite) — assim o rolagem-to-top Uma segunda cópia deles. Nunca disparou antes (precisa de 'inicialloaded', que nunca se tornou verdade), então consertar a leitura teria ligado. História mais antiga é agora uma página BIGGER, que é o pedido o serviço Na verdade serve. Não enquanto um envio estiver em voo: uma página substitui a lista, e a mensagem do próprio membro é um eco local até que a resposta chegue. E uma leitura falhada agora diz isso, com uma repetição, em vez de renderizar o vazio que fez isto parecer uma conversa apagada. Nunca comeces uma conversa. sobre uma que está na base de dados — uma transcrição já na tela é deixado sozinho quando uma re- leitura falha. Ambos os textos já existiam em todos 22 locais. O guarda de bordo passa do estado de carga para um árbitro. Estava no useCallback deps enquanto o efeito de carga inicial é chaveado na sessão Só, então o efeito manteve qualquer cópia que existisse quando o guid chegou.