‹ Cultura 3.14 · O que nos perguntamos
Pergunta · Operações
O que significa que um bot terminou uma tarefa?
Terminar a execução e produzir o efeito esperado são dois factos distintos, e só um deles costuma ser registado.
Porque importa
Um processo pode concluir todos os seus passos, devolver um estado correto e não ter mudado nada no sistema de destino. A API respondeu, o registo existe, e o efeito de negócio não aconteceu.
Esta diferença paga-se sempre mais tarde e sempre mais cara, porque nessa altura há dezenas de execuções marcadas como corretas.
O que sabemos até agora
Distinguir três estados — executado, confirmado e observado — revelou-se mais útil do que afinar as novas tentativas. A confirmação precisa de uma leitura posterior contra a fonte, e a observação precisa de um sinal que muitas vezes é preciso criar de propósito.
Quando esse sinal não existe, preferimos dizê-lo no rasto em vez de marcar a tarefa como terminada.
O que continua em aberto
Fica em aberto o que fazer quando o sinal de observação chega dias depois, com o processo já fechado e quem o lançou a pensar noutra coisa.
E como representar uma tarefa parcialmente eficaz sem transformar cada estado numa exceção.