Faixa 01 · Concluído · Python e Selenium

Auditoria de preços

Uma mudança de API deixou preços divergentes nas variações do e-commerce: cor por cor, tamanho por tamanho.

101 de 245referências corrigidas, cada uma conferida depois de gravar

A história

Cada produto da loja tem uma grade de variações, e cada variação tem o próprio preço. Depois da mudança, parte dessas grades ficou errada, e conferir célula por célula, à mão, não era uma opção.

Escrevi uma automação em Python e Selenium que audita cada variação, cruza com o estoque e corrige só o que diverge, pela mesma tela que uma pessoa usaria. Depois de cada correção, ela recarrega a página e confere de novo.

A parte delicada era outra: o navegador pode cair no meio, e uma correção repetida ou pela metade é pior do que nenhuma. Por isso cada escrita é registrada antes de acontecer.

Terminal com a execução da automação: 245 referências conferidas, 101 divergentes, e a correção das variações com cada passo registrado.
A execução da automação, na reconstrução pública com dados sintéticos.

Nenhuma escrita sem registrar a intenção antes, e nenhuma sem conferir o resultado depois.

Rode a auditoria e interrompa no meio. Ao retomar, ela continua de onde parou, sem refazer nada.

Rode a auditoria e, no meio, experimente interromper e retomar.
0auditadas
0divergentes
0corrigidas e conferidas
lendo
divergente
corrigida e conferida
ok
Por dentrorestrições, passos e detalhes

O que não podia acontecer

  • Um preço certo numa variação esconder o erro na variação ao lado.
  • O estoque de uma variação validar outra.
  • Uma lista de divergências virar aprovação sozinha.
  • Uma escrita repetida ou pela metade depois de uma queda.

Cada correção, passo a passo

  1. Ler o estado atual e validar a grade.
  2. Montar o alvo só para referências aprovadas.
  3. Registrar a intenção num diário local (SQLite).
  4. Salvar pela tela.
  5. Recarregar e comparar preços, grades e estoque.
  6. Marcar como verificada.

São quatro peças independentes: conferir preços, conferir grades, cruzar com estoque e corrigir. Se a execução cai antes de salvar, a intenção pendente é retomada. Se cai depois, a gravação é confirmada relendo a tela, sem salvar de novo. Se o estado não bate nem com o antes nem com o alvo, a rotina para.

Dinheiro em Decimal, nunca em ponto flutuante, com o valor esperado e o valor lido guardados separados.