You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Fala do turno em curso duplica no history depois do loadOlder #140
Relato do MP (Infusion, alpha), sdk-core 0.3.4, tarefa ecdf5e92-accb-4bc6-8314-558f1e61dfa2: a fala dfa3f96e... (20:37:49 UTC de 27/10) abriu um turno longo e, por volta das 20:48, apareceu de novo no fim do history, no meio do trabalho. No servidor ela existe uma vez só.
No banco do copilot alpha a tarefa tinha 121 linhas depois da fala até 20:48, então a página mais nova de 100 não a contém.
Causa
Toda conexão com a box traz de novo o stepStart do turno que roda (o sendState do sidecar, com a sequência original e o clientMessageId da fala). Uma sessão que carrega o history enquanto esse turno roda (F5, outra aba, ou o app reabrindo a sessão depois de o canal cair de vez) recebe uma página que começa depois da fala. O liveQuestion não acha a fala pelo clientMessageId e cria live:user:<id> no fim. Quando o loadOlder traz a linha original, a fala fica duas vezes.
O caminho do reconcilePersistedTurn sozinho não duplica: com o turno em curso na sessão, o stepStart repetido cai em repeatsTheRunningTurn antes do liveQuestion. O que duplica é a sessão que carrega o history com o turno já rodando. O bug existe na 0.3.5.
Correção
O liveQuestion não cria a fala cuja sequência fica antes da linha mais antiga que o history tem, quando o servidor ainda tem linhas mais antigas: ela é uma dessas linhas, e o loadOlder a traz no lugar dela. Fala desta sessão e box cujo log recomeçou (hello com log menor que o fim do history) seguem como antes.
Prova
Teste: sessão aberta por taskId com página que começa depois da fala, stepStart repetido do turno, depois loadOlder. Espera a fala uma vez, no lugar dela; sem a correção, ela aparece no fim e depois duas vezes. Prova na dev por tarball contra a box viva.
Activity
fix(agent): fala antes da pagina so fica de fora quando o canal esta …
fix(agent): sdk-core 0.3.6, fala do turno em curso nao duplica no his…
JoaoLuisQuirino commentedon Oct 27, 2026
Corrigido no #141 (squash a17cbc6), publicado na sdk-core 0.3.6, que é a latest no npm. A platform-sdk 1.8.5 e a functions-sdk 0.3.6 já dependem dela.