Troubleshooting: Sessao conectando/desconectando em loop
Sintoma
Sessao alterna entre CONNECTED e DISCONNECTED a cada 5-6 segundos.
Backend mostra: stream errored out: conflict: replaced
Causa
Dois ou mais workers do cluster (dos 6) tentando autenticar o mesmo numero WhatsApp. Quando Worker A conecta, WhatsApp “desconecta” Worker B enviando conflict:replaced. Worker B tenta reconectar → Worker A recebe conflict → loop infinito.
Fix imediato
# Reload gradual do backend (um worker por vez, sem downtime total)
pm2 reload zpro-backend
# Aguardar 1-2 minutos para os workers se estabilizaremComo isso aconteceu
Provavelmente por ter chamado o botao “Sincronizar Baileys” em sessoes CONNECTED. O botao foi corrigido para NUNCA chamar resetBaileysConnection em sessoes CONNECTED. Agora:
- “Reconectar Baileys” (botao header) → so para DISCONNECTED/TIMEOUT
- “Ressincronizar (fix decrypt)” (menu …) → por sessao, uma por vez, com confirmacao
Prevencao
- Nunca chamar resetBaileysConnection em multiplas sessoes simultaneamente
- Para sync de sessoes CONNECTED: usar menu … individual, uma por vez
- Delay minimo de 30s entre ressincronizacoes de sessoes diferentes