Quando colocar um perfil de navegador em quarentena
Um lease de perfil de navegador resolve a concorrência. Ele informa qual worker é o proprietário de um perfil.
Mas, após uma falha de automação, você se depara com uma nova questão.
Este perfil ainda é seguro para reutilização?
Propriedade e integridade são coisas diferentes. Um worker pode liberar um lease deixando o perfil em um estado desconhecido. O perfil pode conter novos cookies, tokens alterados ou formulários inacabados.
Se você entregar esse perfil imediatamente ao próximo worker, ele herdará o dano.
É por isso que você precisa de um estado de quarentena.
A quarentena é um estado pós-falha. Significa que você não confia na conta, na sessão ou no ambiente.
Na automação de navegadores, um perfil é mais do que uma pasta. Ele carrega: • Cookies e armazenamento local • Estados de login e permissões • Configurações de proxy e idioma • Histórico de tarefas recentes
Se uma execução falhar após o login, o risco é alto. Você pode enfrentar redirecionamentos inesperados, solicitações de verificação ou sessões expiradas.
Não coloque todas as falhas em quarentena. Você não precisa disso se:
- O navegador nunca foi iniciado
- O perfil nunca foi aberto
- O worker falhou antes do lease
- A execução apenas acessou páginas públicas
- O navegador foi fechado corretamente
A quarentena é vital quando:
- O worker travou após abrir o perfil
- A execução alcançou uma área autenticada
- O estado da sessão ou os cookies foram alterados
- A falha ocorreu próxima a uma ação não idempotente (como o envio de um formulário)
- O proxy ou a região mudaram durante a execução
- As evidências estão incompletas
Um agendador simples apenas verifica se um perfil está bloqueado ou desbloqueado. Um sistema profissional utiliza mais estados: • Disponível: Pronto para o trabalho • Em lease: Em uso • Cooldown: Precisa de uma breve pausa • Em quarentena: Incerteza criada pela falha • Necessita de revisão: Requer inspeção humana • Aposentado: Não use novamente
Um perfil em quarentena deve gerar uma decisão. Não deve ser uma área de espera esquecida. Use-o para capturar o ID do perfil, a última URL, uma captura de tela e o motivo do erro.
Pare de tratar ambientes de contas que falharam como entradas limpas. Um lease evita colisões. Uma quarentena evita uma cadeia de falhas.
Fonte: https://dev.to/web4browser/when-a-browser-profile-should-be-quarantined-after-automation-failure-gpk