MG-8 QA-3: paridade de palpite e sincronização (70%)
304 casos verdes no Firebase. Cobertura com o id em 297 de 420. CC-5, CC-8, PR-1 e
PR-6 fecharam em 100%.
Entrou o que acontece com o palpite quando o mundo muda embaixo dele: adiamento
reabrindo o prazo sem apagar o palpite, antecipação fechando mais cedo, adiamento
para o passado que não reabre, mesmo horário na fonte que não conta como
adiamento, job parado recuperando o atraso e fonte fora do ar que não corrompe o
que está guardado.
Dois testes meus mentiram de formas novas
PP-10-01 acusava o produto de alterar horário que ninguém alterou: o ajudante
gerava Date.now() + deslocamento a cada chamada, então "o mesmo horário" eram
instantes diferentes por alguns milissegundos. Base de tempo fixa por arquivo.
MG-7-45 e os cenários de CV-5 plantavam a classificação à mão e passavam por
acidente — nada recalculava o agregado fora da apuração. Com a correção de
CV-4-01, a entrada de participante passou a recalcular, e a linha plantada virou
zero. MG-7-45 passou a conquistar os pontos (palpite, jogo terminado, apuração),
que é o cenário que o produto alcança; CV-5, que verifica leitura, espera o
recálculo assentar antes de plantar.
A lição é a mesma nas duas: teste que passa por acidente é dívida com juros — ele
cobra no dia em que o produto fica mais correto.
Co-Authored-By:
Claude Opus 5 (1M context) <noreply@anthropic.com>
parent
ec49f639
Please register or sign in to comment