Atribua uma identidade a cada tarefa
Utilize um identificador único e guarde se a tarefa está em fila, em execução, concluída com êxito ou a aguardar revisão. Uma falha não deve apagar o conhecimento de que uma ação externa pode já ter ocorrido. Reconcilie resultados incertos antes de tentar novamente.
Conceda um conjunto reduzido de permissões
Separe a descoberta somente leitura das alterações que afetam contas, dinheiro ou dados de produção. Use credenciais de serviço com escopo restrito e limites de recursos. Mantenha a aprovação humana disponível para ações cujas consequências excedam a autoridade rotineira do worker.
Limite as tentativas
Utilize um número máximo de tentativas, backoff e um caminho de dead-letter ou de revisão. Respeite os limites de taxa do fornecedor. Uma falha temporária não deve transformar-se em milhares de pedidos repetidos ou mensagens duplicadas.
Torne o registo seguro e útil
Registe o identificador da operação, o resultado e os carimbos temporais relevantes. Oculte credenciais e dados pessoais desnecessários. Mantenha uma forma de pausar a fila, revogar um token e recuperar de uma ação parcial sem perder todo o fluxo de trabalho.