Pular para o conteúdo

Review de código com IA: o que ela pega e o que deixa passar

Pedro Cunha
Pedro Cunha
CTO da Epicora

Publicado em
atualizado em · 16 min de leitura

Escritório da Epicora: integrantes da equipe trabalham concentrados nos notebooks ao longo da mesa comprida, com a parede azul à direita.
Em resumo

A revisão de código com IA pega bem erro de lógica, efeito colateral em outra parte do sistema e falha de segurança evidente, e não pega regra de negócio que ninguém escreveu, decisão de arquitetura nem o que só o time sabe sobre a produção. Em 26 pull requests dos nossos projetos, entre agosto e setembro de 2026, ela apontou 51 problemas antes do merge, e o maior grupo foi de resultado errado em tela e relatório. Ela só funciona quando revisa contra o padrão escrito da casa, e quem aprova o merge é sempre uma pessoa do time.

O que é a revisão de código com IA num pull request#

A revisão de código com IA é um modelo de linguagem lendo uma mudança no sistema antes de ela entrar no código principal e deixando comentários sobre o que pode dar errado. Ela vem antes da leitura de uma pessoa do time, para que essa pessoa gaste o tempo dela no que exige julgamento.

O pull request é o pedido que o desenvolvedor abre para juntar a mudança dele ao sistema. Antes de aceitar, alguém lê o que mudou, e essa leitura é o code review. Quando o volume de código cresce, a revisão vira o gargalo, e é aí que entra a IA.

Na Epicora, ela aparece em dois momentos. O desenvolvedor roda uma checagem no próprio computador antes de abrir o pull request e conserta o que ela aponta. Depois, o revisor roda a revisão no pull request aberto, lê o que a IA levantou, apaga o que não se sustenta e posta o restante para o autor. As duas rodam no Claude Code, com um plugin que escrevemos para os nossos projetos, e nenhuma delas aprova nada no GitHub. É o mesmo desenho que usamos quando levamos IA para os processos de uma empresa: a IA faz a primeira passada, e a decisão fica com quem responde por ela.

O que a IA apontou em 26 pull requests reais#

Entre 20 de agosto e 28 de setembro de 2026, separamos os 26 pull requests dos nossos projetos em que a revisão com IA foi postada como mensagem para o autor, a maior parte de backend. Lemos cada mensagem e contamos o que ela apontava. Foram 51 problemas, todos encontrados antes do merge, sem contar as perguntas e as sugestões opcionais.

Barras com os 51 problemas que a revisão com IA apontou em 26 pull requests, por tipo: resultado errado em tela, relatório ou PDF (13), concorrência e falha silenciosa (11), contrato com o aplicativo (5), efeito em outra parte do sistema (5), o que a tarefa pedia e o código não fez (5), segurança (4), desempenho (4) e organização do repositório (4).
O maior grupo foi o de resultado errado na tela
O que a revisão apontouPontosExemplo
Resultado errado em tela, relatório ou PDF13um indicador que contava duas vezes o mesmo item quando dois usuários usavam a mesma configuração
Concorrência, tarefa repetida e falha silenciosa11duas mensagens chegando ao mesmo tempo geravam dois avisos separados, justamente o que a mudança queria agrupar
Contrato com o aplicativo e dado que já está no banco5a sincronização deixava de mandar um dado que o aplicativo usava sem sinal
Efeito em outra parte do sistema5um conserto de fuso horário corrigia a tela do pull request e atrasava em um dia outra tela, fora do trecho alterado
O que a tarefa pedia e o código não fez5o campo preenchido no formulário não chegava ao registro final
Segurança e dado pessoal4permissão mais ampla do que a tarefa pedia
Desempenho4uma consulta sem índice que leria a coleção inteira a cada acesso
Organização do repositório4arquivos de outro gerenciador de pacotes que entraram sem necessidade
Total51

Além desses 51, as mensagens traziam 12 perguntas sobre a regra ou sobre a tarefa, 5 avisos do que precisava acontecer antes ou depois de publicar, como ajustar dados que já estavam gravados, e 8 sugestões menores, marcadas como opcionais.

O maior grupo é o de resultado errado: um número que conta em dobro, uma legenda de relatório que diz o contrário do valor ao lado, um campo que se perde no caminho até o PDF. É o tipo de erro que passa num teste rápido, porque a tela abre e mostra alguma coisa.

Cinco pontos estavam fora das linhas que o pull request alterou. A revisão só encontra esse tipo de problema porque lê o repositório e segue quem usa a função alterada, em vez de olhar só o trecho que mudou.

A contagem tem um viés que vale dizer. Pull request em que a revisão não encontrou nada costuma terminar numa aprovação simples, sem mensagem, e fica fora dessa conta. Os 51 pontos descrevem o que ela acha quando acha, e não a proporção de pull requests com problema.

O que a IA pega bem, o que pega mal e o que não pega#

A IA pega bem o que está no código e pode ser seguido de ponta a ponta: lógica, efeito colateral, concorrência e segurança evidente. Pega mal a gravidade e o estilo, porque tende a comentar demais. E não pega o que não está escrito em lugar nenhum que ela leia.

Três colunas: a IA pega bem erro de lógica, efeito em outra parte do sistema, concorrência e segurança evidente; pega mal a gravidade, o estilo e a falta de teste; e não pega regra de negócio que ninguém escreveu, decisão de arquitetura e contexto da produção.
A IA não pega o que não está escrito em lugar nenhum
Tipo de problemaComo a IA se saiPor quê
Erro de lógica e resultado erradopega bemela segue o dado do banco até a tela e confere a conta
Efeito em outra parte do sistemapega bem, se lê o repositórioprecisa abrir quem usa a função alterada, e não só o diff
Concorrência e tarefa repetidapega bem, se o padrão lista o sinalo padrão da casa diz o que procurar, como repetição sem proteção
Segurança evidentepega bemrota sem verificação de permissão e dado pessoal exposto aparecem no próprio código
Critério de aceite da tarefapega, se a tarefa está escrita e ligada ao PRsem a tarefa, ela não tem com o que comparar
Gravidade do problemapega mal sem régua escritatende a marcar tudo como grave
Estilo e preferênciapega demaisvira ruído, e o formatador automático já resolve
Teste ausentepega malcobra teste até em projeto que não tem testes
Regra de negócio que ninguém escreveunão pegavira pergunta para quem define a regra
Decisão de arquiteturanão pegadepende de custo, prazo e futuro do produto
Contexto do cliente e da produçãonão pegao que o time já testou e o estado dos dados não estão no código

A folha de revisão de código seguro da OWASP, escrita pensando nas ferramentas automáticas de análise, chega a uma lista parecida. Ela aponta as falhas de lógica de negócio, que exigem conhecer o domínio, e as vulnerabilidades que dependem das regras da aplicação como o lugar em que a análise humana mais rende. E recomenda julgamento humano para filtrar o falso positivo das ferramentas.

Um exemplo do nosso próprio painel de gestão mostra a fronteira. A revisão percebeu que um colaborador recontratado aparecia com o tempo de casa contando o período em que esteve fora. Em vez de marcar como erro, ela escreveu que a dúvida era de regra, e não de código, e deixou a pergunta para quem define a regra. Contar ou não o vínculo anterior é uma decisão da empresa.

Por que a revisão por IA genérica vira ruído#

A revisão por IA vira ruído quando comenta tudo com o mesmo peso. O time aprende a ignorar os comentários, inclusive no dia em que um deles é sério. O que resolve é revisar contra um padrão escrito, com uma régua clara do que é grave.

Aprendemos isso com a primeira versão do nosso plugin. O registro de calibragem de 9 de setembro de 2026 descreve o sintoma: quase todo pull request revisado terminava em pedido de mudança. A gravidade vinha inflada, e o caso mais comum era cobrar teste em projeto sem suíte de testes. Nenhum ponto era verificado antes de ser escrito, então o falso positivo chegava ao autor com a mesma cara de defeito real. Na época, eram dois revisores para cinco a seis desenvolvedores, e a fila de revisão consumia manhãs inteiras.

A calibragem mudou três coisas.

  1. Uma régua escrita para o que bloqueia. Um ponto só segura o merge com três condições ao mesmo tempo: um caminho real que chega no erro, um dano de uma lista fechada (sistema quebrado, dado perdido, permissão, aplicativo publicado, migração destrutiva) e um conserto caro de desfazer.
  2. O que dá para medir sai das mãos do modelo. Um programa confere antes se o projeto tem testes e formatador automático. Sem suíte de testes, a IA não pode cobrar teste. Estilo nunca vira ponto.
  3. Uma segunda leitura tenta derrubar cada ponto. Antes do relatório, outra instância procura uma proteção que já exista, um fluxo que torne o comportamento intencional ou alguém que o conserto quebraria. Ponto derrubado sai do relatório.

Desde o fim de setembro, cada rodada da revisão deixa um registro no pull request, e isso permite medir o que a IA achou e o que o revisor aproveitou. Na primeira semana medida, de 24 de setembro a 1º de outubro, a revisão levantou 13 pontos em 10 pull requests. O revisor postou 6 e descartou 7, entre eles as 3 sugestões menores. Das 11 rodadas registradas, nenhuma recomendou pedido de mudança.

É a mesma lógica de fazer a IA seguir o método da sua empresa: o critério mora num documento que a IA lê na hora de trabalhar, e o que pode ser medido é medido por código.

Por que a IA não aprova o pull request#

A IA não aprova pull request porque o que decide o merge muitas vezes está fora do código. Nos nossos projetos, a revisão comenta e uma pessoa do time aprova. O plugin não aprova nem pede mudança no GitHub: essa ação é sempre do revisor.

Fluxo da revisão em quatro etapas: o desenvolvedor roda uma checagem antes de abrir o pull request, a IA lê a mudança e levanta pontos, o revisor apaga o que não se sustenta e posta o resto, e uma pessoa do time aprova o merge. Na semana medida, dos 13 pontos levantados, 6 foram postados e 7 descartados pelo revisor.
Quem aprova o merge é sempre uma pessoa do time

O mercado está indo em outra direção. Segundo a documentação do GitHub, a aprovação do Copilot pode ser configurada para contar como a aprovação de um colega na regra de aprovação obrigatória do repositório, num recurso em prévia pública. A mesma página diz que o Copilot não garante encontrar todos os problemas, que às vezes erra, e recomenda completar a revisão dele com uma revisão humana.

Na nossa amostra, três respostas de autores mostram por quê. Numa revisão, a IA perguntou se a ordenação de um ranking era feita no servidor ou na tela, e o autor respondeu que a tela já ordenava. Em outra, ela avisou que uma regra nova de valor único ia falhar por causa de registros duplicados no banco, e as duplicatas já tinham sido limpas em homologação e produção. Numa terceira, ela apontou que a sincronização deixava de mandar dois campos para o aplicativo; o autor ajustou e confirmou que tinha testado o aplicativo sem sinal. Nos três casos, quem tinha a informação que decidia era o time.

O plugin também tem uma porta que deixa o pull request seguir para o QA sem esperar o revisor, quando a checagem do autor sai limpa e nenhum gatilho de risco fecha. Na semana medida, 21 pull requests passaram por essa checagem e nenhum saiu liberado sem revisor. Os gatilhos que mais seguraram foram o QA pendente e a conferência com a tarefa, presentes nos 21.

Por que o código escrito com IA pede mais revisão#

O código escrito com IA pede mais revisão porque ela ficou muito boa em escrever código que funciona e não melhorou na mesma medida em escrever código seguro. Segundo a atualização de março de 2026 do relatório de segurança de código da Veracode, que já avaliou mais de 150 modelos, só 55% das tarefas de geração resultam em código seguro, praticamente o mesmo índice de dois anos antes. No mesmo estudo, o código gerado compila em mais de 95% dos casos.

Na prática, isso quer dizer que o código passa no teste de "abre e funciona" e carrega o problema para a produção. No Sistema Forja, um produto construído inteiro pelos fundadores conversando com uma IA, o diagnóstico encontrou os oito endpoints de servidor aceitando requisição sem autenticação, inclusive os de pagamento. Ninguém tinha revisado o que foi para o ar.

Quando mais código é escrito por IA, a revisão passa a ser o lugar em que alguém confere quem pode chamar o quê e se o número está certo. Por isso ela precisa ser rápida e não pode afogar o time em comentário. O que fazer com um produto que já nasceu assim está em o que dá para salvar de um código gerado por IA.

O que perguntar a quem desenvolve o seu sistema#

Quem contrata desenvolvimento não precisa ler código para saber se a revisão existe. Basta pedir para ver três ou quatro pull requests recentes e fazer quatro perguntas.

  1. Todo pull request é lido por uma pessoa antes do merge? A aprovação tem que ter nome. Se a resposta é "a IA revisa", pergunte quem aprova.
  2. A revisão segue um padrão escrito do projeto? Pode ser um arquivo de convenções no repositório ou um documento interno. Sem um padrão, a IA revisa por critérios genéricos, que não são os do seu projeto.
  3. A tarefa fica ligada ao pull request? Com o critério de aceite escrito, a revisão confere se o código faz o que foi pedido. Na nossa amostra, 5 pontos eram exatamente isso.
  4. O que acontece com o comentário da IA? O comentário bom tem o arquivo, a linha, o que acontece e em que condição. O autor responde, e alguém decide.

Uma empresa que revisa de verdade responde às quatro mostrando pull requests reais. Quando ela não consegue mostrar, o próximo passo é uma auditoria do código antes de o produto crescer.

Perguntas frequentes#

A IA pode substituir o revisor de código?#

Não. Ela faz bem a primeira leitura: acha erro de lógica, efeito em outra parte do sistema e falha de segurança evidente, e faz isso em todo pull request, sem cansar. O que ela não tem é o contexto que decide o merge: a regra de negócio que não foi escrita, a decisão de arquitetura e o que o time sabe sobre a produção. Nos nossos projetos, a IA levanta os pontos, o revisor descarta o que não se sustenta e quem aprova é sempre uma pessoa.

Quanto do que a IA aponta numa revisão é útil?#

Depende de quanto ela foi calibrada. Na primeira versão da nossa revisão, quase todo pull request terminava em pedido de mudança, com gravidade inflada e cobrança de teste em projeto sem testes. Depois de escrever o padrão da casa e fazer a revisão obedecer a ele, a primeira semana medida teve 13 pontos levantados em 10 pull requests, e o revisor aproveitou 6.

A revisão com IA pega falha de segurança?#

Pega as evidentes: rota sem verificação de permissão, dado pessoal que passaria a aparecer para quem não devia, entrada pública sem validação. Nos nossos 26 pull requests, foram 4 pontos desse tipo, todos antes do merge. O que ela não decide sozinha é a permissão que depende da regra do negócio, como quem pode ver o quê em cada situação. Para isso, a regra precisa estar escrita e uma pessoa precisa conferir.

Basta ligar uma ferramenta pronta de revisão no GitHub?#

Ligar é fácil, e a ferramenta vai comentar. O que define se o comentário ajuda é o padrão que ela lê. A própria documentação do GitHub orienta a ensinar o padrão do projeto por arquivos de instrução no repositório, como o copilot-instructions.md e o AGENTS.md. Sem um padrão escrito e sem uma régua do que é grave, a revisão comenta demais e o time para de ler.

Como sei se a empresa que desenvolve o meu sistema revisa o código?#

Peça para ver alguns pull requests recentes. Um processo saudável mostra a tarefa ligada ao pull request, comentários de revisão com o arquivo e a linha do problema, a resposta de quem escreveu o código e a aprovação de uma pessoa antes do merge. Se a revisão é feita por IA, pergunte qual padrão ela segue e quem decide o que vai para o ar.

Fontes#

Próximo passo#

Se o seu sistema foi construído com IA e ninguém revisou o que foi para o ar, comece pelo diagnóstico de código feito com IA, que olha código, banco e infraestrutura e corrige o que é crítico. Se o seu time já desenvolve e quer revisão com IA seguindo um padrão escrito da casa, isso é parte do nosso trabalho em IA e automação.

Compartilhar
Pedro Cunha
Quem escreve
Pedro Cunha
CTO da Epicora

Pedro Cunha lidera a engenharia da Epicora, em Chapecó (SC). Escreve aqui sobre as decisões técnicas dos sistemas que a equipe coloca em produção — arquitetura, escopo, estimativa e IA aplicada.

Artigos de Pedro Cunha

Contato

Vamos conversar sobre o seu projeto

Conte o que você precisa resolver. Retornamos rápido, com gente que entende de tecnologia e de negócio.

Prefere falar direto?

Escolha o canal que preferir. Respondemos rápido, no horário comercial.

Da primeira conversa ao go-live: eficiência, segurança e inovação.