Bastidores

Inteligência artificial· Como trabalho com IA · parte 9

Outro agente de IA revisou meu código 71 vezes e criou dois defeitos.

O que 71 rodadas de revisão por IA e 448 commits mudaram no Currículo para Vaga, os dois defeitos que entraram e o roteiro de auditoria que ficou.

Uma linha com 71 rodadas de revisão, queda de retorno após a rodada 50 e um defeito marcado na última rodada.

Em 7 e 8 de novembro, o Currículo para Vaga passou por 71 rodadas seguidas de revisão feitas por outro agente de IA, em esforço alto. O ciclo inteiro gerou 448 commits em dois dias.

Quando a fila parou, fiz uma auditoria comparando o produto com o estado anterior às rodadas. Eu precisava conferir se todo aquele trabalho tinha afastado o sistema de o método de SRS, removido o que devia continuar lá ou piorado o uso.

O tamanho de 448 commits e a queda de retorno após a rodada 50

Somando todas as frentes do repositório, os 448 commits mexeram em centenas de arquivos e em dezenas de milhares de linhas. O levantamento por área mostra onde as alterações se concentraram:

  • Código da API: 107 arquivos, com 7.661 linhas a mais e 2.313 a menos.
  • Código do painel: 93 arquivos, com 5.667 linhas a mais e 1.908 a menos.
  • Testes do painel e da API: 144 arquivos, com 27.355 linhas a mais e 378 a menos.
  • SRS: 23 arquivos, com 160 linhas a mais e 140 a menos.
  • Site, admin, extensão, CLI e pacotes: 132 arquivos, com 6.338 linhas a mais e 841 a menos.

Fora dessa lista, as migrações somaram 53.575 linhas, quase tudo snapshot gerado pelo Drizzle. O ganho por rodada, no entanto, caiu bastante no terço final. Da rodada 50 à 71, a maior parte tratou corridas de tempo raras no painel: resposta que chega depois de a pessoa sair da tela, duplo clique, duas gravações do mesmo registro e foco dos diálogos. Esse trecho teve retorno baixo perto do volume mexido.

Como auditar um produto revisado por IA contra o estado anterior

Quem roda revisões automatizadas em sequência precisa auditar o resultado com a mesma disciplina aplicada a código inédito. O roteiro prático compara o produto com o estado anterior às rodadas em cinco frentes:

  1. Preços e textos legais, que exigem estabilidade total.
  2. Texto dos prompts e esquemas de saída da IA.
  3. Migrações de banco, conferindo se todas são aditivas.
  4. Arquivos, procedimentos, rotas e escopo do produto, procurando remoções ou criações indevidas.
  5. Mensagens da interface, separando o que saiu, o que mudou e o que entrou.

No Currículo para Vaga, a auditoria encontrou essa estrutura íntegra. Preços e textos legais continuaram sem mudança, e o texto dos prompts também ficou igual, mudando apenas um esquema de saída. As migrações foram todas aditivas, nenhum procedimento ou rota saiu do ar, nenhum produto novo apareceu fora do escopo e o único arquivo removido foi trocado por outro com o mesmo comportamento.

Nas mensagens em português, 5 saíram, 24 entraram e 1 mudou. As 24 mensagens novas são de erro ou de estado para casos que antes falhavam sem explicação para quem usava o painel.

Os dois estragos reais que entraram durante as rodadas

A auditoria também pegou dois defeitos criados pelas próprias rodadas. O mais grave mexeu na reserva de descontos: uma tentativa de compra não paga passou a reservar o uso do cupom e o desconto de indicação. Quem gerava um PIX, voltava e tentava comprar com outro currículo ou outra vaga perdia o desconto por até 7 dias, prazo em que o pedido abandonado expira.

Na correção, as tentativas não pagas da própria pessoa deixaram de contar contra ela, enquanto a tentativa aberta de outra pessoa ainda segura o último uso de um cupom. A reserva da indicação foi desfeita e o SRS voltou ao que dizia antes das revisões.

O segundo estrago entrou na rodada 71, a última da sequência. Restaurar uma versão anterior do currículo perdia as edições que a gravação automática tinha salvado desde a última versão. Com a correção, essas edições automáticas viram uma versão própria antes da restauração.

A ordem de decisão após a auditoria e o ponto de parada

Para arbitrar cada achado depois da auditoria, segui uma prioridade explícita quando dois objetivos batiam de frente: segurança, usabilidade ou venda, sempre nesta ordem. Essa hierarquia separa proteção real de ajuste cosmético.

A compra em lote e o reajuste mostram essa escolha na prática: os dois continuam reservando no início do pagamento porque isso impede que a mesma cobertura pague duas tentativas, evitando perda direta na cobrança. O atrito de usabilidade aparece só numa combinação rara, e mexer outra vez nas travas do pagamento traria mais risco que ganho.

A regra que ficou encerra o ciclo antes do desgaste: todas as rodadas de revisão passam por triagem, e a rodada em que nada passa pela triagem é a última. Decidir onde a automação para continua entre as decisões que continuo tomando.

Teste local verde até no S23, e o staging ainda achou um defeito.08 nov · DesenvolvimentoOutra IA revisou 4.170 traduções da IA em inglês e corrigiu 307.08 nov · Inteligência artificialA conta live do Stripe estava ativa, mas falhou na minha conferência.08 nov · LançamentoTrês regras de HSTS num só domínio: por que deixei o preload de fora.08 nov · DesenvolvimentoUma palavra a menos derrubou 13 páginas que já estavam no ar.08 nov · DesenvolvimentoOutro agente de IA revisou meu código 71 vezes e criou dois defeitos.08 nov · Inteligência artificialDepois de 20 anos de carreira, publiquei meu primeiro pacote no npm.08 nov · LançamentoSozinho com IA: iPhone, Android, SaaS com MCP e CLI, e já faturando.07 nov · BastidoresCopiei a mecânica dos líderes e recusei a mentira deles.07 nov · BastidoresA pergunta de LGPD que trava a venda: e o backup?07 nov · ProdutoA IA calibrou minha câmera pelos números. Ficou cara de lanterna.07 nov · BastidoresUm usuário não via o dia de ontem. Abri todo o passado do Garfim.07 nov · Produto62% baixavam o Garfim. O problema estava antes da página.07 nov · LançamentoO idioma certo na tela pode virar o errado no servidor.07 nov · DesenvolvimentoO limite de 10 por minuto que deixou passar muito mais.07 nov · DesenvolvimentoUm PR do Dependabot travou meu banco e as rotas voltaram 500.07 nov · DesenvolvimentoMeus produtos novos não começam do zero. Começam de um clone.07 nov · DesenvolvimentoTirei uma trava da minha IA e a resposta caiu de 5,5 s para 3,7 s.07 nov · DesenvolvimentoTroquei velocidade por uma auditora que confere cada frase.07 nov · Inteligência artificialEscrevi o método CERNE lendo seis especificações reais.07 nov · Inteligência artificialComo anunciar na Meta e vender online no CPF sem abrir empresa.05 nov · BastidoresPausei anúncios depois de ignorar o resultado anterior.05 nov · BastidoresComo depurei um erro de API sem log no registro do Garfim.05 nov · DesenvolvimentoComo forçar atualização no React Native antes de um defeito grave.05 nov · DesenvolvimentoComo levei o LCP do ClipLeve de 9,9 s para menos de 1,5 s.05 nov · DesenvolvimentoPubliquei 650 páginas contra a regra do meu método.05 nov · Inteligência artificialUma conta para organizar erros, métricas e IA dos meus produtos.05 nov · BastidoresSeparei o painel do site e pus o Access na porta.05 nov · DesenvolvimentoUma lista de 69 itens encontrou requisitos só no papel.05 nov · BastidoresO antispam esperou tanto que parou o formulário.05 nov · DesenvolvimentoCortei a publicação de 17 minutos para 4 na minha máquina.05 nov · DesenvolvimentoEu gravo. A IA corta, legenda e entrega o vídeo curto.05 nov · Inteligência artificialComo criar anúncios UGC com IA usando o método PROVA.05 nov · Inteligência artificialA IA disse que usou as skills. A página provou o contrário.05 nov · Inteligência artificialNove páginas reprovadas antes de encontrar uma identidade.05 nov · Inteligência artificialEm 48 horas, juntei domínios, e‑mail, sites e medição num padrão só.30 out · BastidoresPor que tirei os três sites do GPT Sites.30 out · DesenvolvimentoComo troquei o luisjunior.ai com cerca de 10 segundos fora do ar.30 out · DesenvolvimentoRefiz o luisjunior.ai do zero: cada afirmação com prova.30 out · LançamentoUm padrão para todos os domínios, inclusive os de produtos futuros.30 out · BastidoresTodo o e‑mail dos meus domínios saiu do VPS num só dia.30 out · DesenvolvimentoDecidi mover o envio do Garfim do Resend para a Cloudflare.30 out · DesenvolvimentoO método FONTE para aparecer no Google e nas respostas de IA.30 out · Inteligência artificialTrês sites, três decisões de busca, e uma delas é não gerar páginas.30 out · Inteligência artificialMedição de vários sites num painel só, com consentimento.30 out · BastidoresComo a IA me apresenta mídias para aprovação29 out · Inteligência artificialO Garfim chegou ao Google Play. Agora tem Android e iPhone.22 out · LançamentoConseguir testadores e esperar 14 dias: a reta final do Garfim no Android.22 out · BastidoresO ClipLeve chegou à App Store. O que aprendi até aqui.20 out · LançamentoO ClipLeve foi rejeitado de novo. Dessa vez, por uma palavra.20 out · ProdutoO Garfim foi aprovado. E já está na App Store.16 out · LançamentoA última negativa do Garfim: câmera, assinatura e o caminho inteiro.16 out · LançamentoClipLeve: o cuidado por trás de um vídeo mais leve.12 out · ProdutoPor que restaurar uma assinatura pode falhar em outra conta.12 out · ProdutoQuando um aplicativo pode dizer que sua conta foi excluída?12 out · ProdutoO que a primeira negativa da App Store me fez explicar.08 out · LançamentoO que quero aprender com o teste fechado do Garfim.08 out · ProdutoO trabalho de uma assinatura continua depois da compra.03 out · DesenvolvimentoPor que o Garfim ganhou um plano gratuito.03 out · ProdutoO login funcionou. Por que a tela do Garfim não saiu do lugar?03 out · LançamentoPagenello: um site começa pelo que o visitante veio fazer.03 out · LançamentoComo uma foto do almoço vira um produto.27 set · ConcepçãoAs decisões que continuo tomando ao desenvolver com IA.27 set · DesenvolvimentoApresentar o Garfim ao público também é um teste do produto.27 set · Lançamento

GET luisjunior.ai/llms.txt

Esta é a versão do site escrita para modelos de linguagem: os mesmos fatos, sem layout, prontos para um assistente de IA ler e citar. Agentes no Chrome também encontram aqui ferramentas WebMCP para consultar produtos, textos e contato.

conectando…0 tokens · 0 tok/s