O que a tela de acompanhamento mostrava para 205 domínios gerenciados pelos clientes
Na manhã em que o segundo e-mail de lembrete foi enviado aos 205 domínios gerenciados pelos clientes que ainda não tinham migrado, descobrimos que a verificação por trás da nossa tela de acompanhamento nunca tinha olhado cerca de um terço deles.
Um domínio é o endereço web onde o site de um cliente fica. Esses 205 eram domínios que nossos clientes gerenciam por conta própria e que ainda apontavam para a configuração antiga. Uma verificação noturna visita cada um e registra se já migrou. A tela mostra os resultados. Líamos aquela tela como se fosse a lista inteira, porque nada nela dizia o contrário.
A verificação que parava sem avisar
A verificação noturna tem um limite de uma hora. Ela batia nesse limite e parava, sem erro, sem aviso e sem nenhum registro de que tinha encerrado antes da hora. Todo site que ela alcançou tinha uma linha na tela, e essas linhas pareciam prova de cobertura. Elas só mostravam que uma parte do trabalho foi feita antes de o tempo acabar.
Publicar os avisos reescritos, enviar o e-mail e encontrar esse problema couberam em uma única sessão de 39 minutos que terminou às 8:56. Registramos o achado junto com outros três itens de acompanhamento e encerramos a sessão.
Um espaço em branco, três significados
Um site sem nenhum problema aparecendo podia significar que foi verificado e está bem. Podia significar que foi verificado e ainda precisa migrar. Ou podia significar que a verificação nunca chegou nele. A tela conseguia separar os dois primeiros casos. Não conseguia separar o terceiro de nenhum deles.
Para uma campanha cujo objetivo inteiro é saber quem ainda precisa migrar, esse terceiro caso é a pergunta toda.
Por que um limite maior era a correção errada
A correção óbvia é um limite de tempo maior. Isso só muda a linha de lugar. Um limite maior ainda corta a verificação antes de a lista ser coberta, e agora isso acontece numa noite mais cheia, quando ninguém está olhando.
O que a verificação precisa registrar são três coisas: quantos sites ela esperava cobrir, quantos alcançou e se terminou. Só quando as três batem a lista conta como cobertura. O log de commits daquele dia também mostra uma mudança para que a varredura dispare um alerta quando for interrompida. Esse silêncio foi o que começou tudo isso.
O que o Claude consegue e não consegue pegar aqui
O Claude é rápido para ler resultados armazenados e contá-los em relação a uma lista. Essa é a pergunta que expõe esse tipo de lacuna: se cada um dos 205 está contabilizado por uma execução que terminou. Ele só responde isso se alguém pedir para contar o esperado contra o real. Se pedissem para resumir o que a tela mostrava, ele teria resumido um terço da lista como se fosse a lista inteira.
Quem recebe uma mensagem é uma decisão sobre pessoas, então uma pessoa precisa decidir se a lista por trás dela está completa. Um assistente pode redigir o e-mail e organizar a lista. Ele não tem como saber que a lista foi cortada se a verificação não disser.
O que uma verificação deve a você antes do envio
Uma verificação que um relógio pode interromper precisa dizer até onde chegou: esperados 205, alcançados tantos, terminou ou não. Até que ela diga isso, as linhas que deixou para trás provam que houve trabalho e nada além disso. Antes de enviar qualquer coisa para uma lista, descubra se a verificação por trás dela registra quantos esperava, quantos alcançou e se terminou.