
Você pede para excluir uma conta e recebe uma mensagem de confirmação. Ela confirmou o pedido ou avisou que os dados já foram apagados?
A diferença muda o que você pode esperar a partir dali. No Garfim, existe um período de sete dias em que a conta ainda pode ser recuperada. A exclusão definitiva acontece depois.
Em 8 de outubro, acrescentei à implementação um e-mail para esse segundo momento. Ele só deve ser preparado quando a remoção foi concluída. Essa pequena mensagem exigiu pensar na ordem das operações e no que fazer quando o envio falha.
O aviso precisa vir depois do fato
Excluir uma conta envolve refeições, fotos, peso e água associados a ela. Se uma etapa necessária falha, o sistema não pode anunciar que terminou.
Um dos testes adicionados ao Garfim simula justamente uma falha ao apagar as fotos. A confirmação final não é preparada nesse caso. Pedidos cancelados e exclusões que ainda não chegaram ao prazo também ficam fora do envio.
É um princípio que aplico a outras mensagens do produto: “concluído” precisa corresponder ao resultado que a pessoa entende por essa palavra. O sistema ter recebido uma solicitação é uma informação diferente.
E se a conta for apagada, mas o e-mail falhar?
A exclusão e a entrega da mensagem dependem de operações distintas. Pode dar certo apagar a conta e dar errado contatar o serviço de e-mail logo depois.
Para lidar com isso, o Garfim registra a confirmação pendente junto com a remoção. O envio acontece a partir desse registro. Se houver uma interrupção, a próxima tentativa sabe que ainda existe uma pessoa a avisar.
Essa organização evita depender de duas operações terminarem no mesmo instante. Também permite repetir o envio com controle para reduzir o risco de duplicar a confirmação.
É uma solução útil sempre que uma mudança importante precisa gerar uma comunicação: primeiro preservar a informação de que o aviso é necessário, depois acompanhar sua entrega.
Até a fila de envio precisa ter um limite
Surge então outra pergunta: por quanto tempo manter o endereço de alguém que acabou de excluir a conta?
Na fila de confirmação do Garfim, defini um limite de 24 horas. O endereço sai dela depois do envio ou quando esse prazo termina. Se a entrega não acontece a tempo, a falha fica registrada para acompanhamento.
Esse limite vale para essa fila específica. O ponto da decisão é evitar que uma tentativa de comunicação conserve indefinidamente o contato que usou.
Os testes também verificam que repetir a tarefa de exclusão não cria outra confirmação para a mesma conta. Falhas e repetições fazem parte da operação de um sistema; é melhor projetar o comportamento esperado do que presumir que tudo ocorrerá uma única vez.
Excluir a conta e cancelar a assinatura são ações distintas
O novo e-mail orienta que a exclusão não cancela automaticamente assinaturas na App Store ou no Google Play. Se houver uma assinatura ativa, a pessoa precisa administrá-la na loja.
Vale colocar essa informação onde ela faz diferença. Quem está encerrando a conta precisa entender se ainda existe algo a fazer para interromper a renovação.
Em 12 de outubro: a atualização estava no código e nos testes. A entrega da confirmação em produção ainda precisava ser acompanhada.
Quem decide sair também merece saber em que ponto está e quando o pedido terminou. Uma confirmação útil precisa corresponder ao que o sistema de fato concluiu.
Pensar nessa experiência me obriga a olhar o produto inteiro, inclusive o momento em que alguém deixa de usá-lo.
