
Modelos são piores em revisar o próprio código do que o dos outros
Modelos são piores em revisar o próprio código do que o dos outros
Rodrigo Caridad, da equipe de pesquisa da Greptile (agente de code review com IA), investigou se modelos de linguagem conseguem encontrar bugs no código que eles mesmos escrevem. A resposta curta: não tão bem quanto no código de outros modelos.
Metodologia
Foram curados dois datasets de 500 PRs cada - um escrito por Claude Code e outro por Codex. A autoria foi identificada por commit trails, prefixos de branch e títulos de PR. Com análise de sentimento, proporção de upvotes/downvotes e arqueologia de git, construiu-se um ground truth de ~1.500 comentários verificados. Cada modelo rodou seu recurso de review 3 vezes por PR, e a recall foi medida apenas para bugs de alta severidade (P0/P1).
Principais achados
1. Recall cruzada é maior. GPT 5.5 encontra 62% dos bugs de alta severidade em PRs escritos por Claude, mas apenas 53,7% nos seus próprios. Opus 4.7 encontra 60% nos PRs do Codex, mas só 50,5% nos seus.
2. Os bugs que um modelo mais produz são os que ele mais deixa passar. Claude gera mais bugs de "comportamento ausente" (35,1% dos seus bugs), e é justamente nessa categoria que GPT o supera como revisor. Codex gera mais bugs semânticos e de tratamento de erro, categorias onde Claude tem recall superior.
3. Claude vai largo, GPT vai fundo. Opus dedica 59,4% do contexto à fase de escopo (ler o diff) e produz 7-8 comentários por review. GPT dedica 82,5% à fase de investigação e produz apenas 1-2 comentários. Opus adota postura preventiva; GPT prioriza verificação rigorosa antes de reportar.
4. GPT abandona bugs que já identificou. Nos traces de raciocínio, GPT frequentemente menciona bugs que depois não publica no review final. A causa parece ser conflito entre instruções de sistema ("aponte só o que o autor corrigiria") e o desejo de ser exaustivo. Instruções explícitas para produzir mais comentários recuperaram a recall, mas o autor descreve a experiência como "tentar fazer jailbreak do modelo".
5. Opus quer que você tenha cuidado. Opus produz comentários condicionais ("isso é bug ou escolha deliberada?"), elogios estruturais e alertas de risco futuro. O estilo holístico gera falsos positivos, que custam atenção do engenheiro e compute em workflows agênticos.
Model Inversion
Com base nesses achados, a Greptile lançou uma feature experimental chamada Model Inversion: detecta qual agente escreveu o PR e roteia a revisão para o modelo oposto. Se Claude escreveu, GPT revisa - e vice-versa.
Reflexão final
O autor destaca a tensão entre alinhamento e utilidade: GPT não era desobediente, estava fazendo exatamente o que foi treinado para fazer. Ele compara o cenário atual de modelos à Grécia Antiga - em vez de deuses oniscientes, temos "um deus de race conditions, um deus de SQL injections e um deus de UX". Enquanto essa especialização persistir, rotear PRs para o revisor mais adequado continuará sendo vantajoso.