Why Agentic-PRs Get Rejected: A Comparative Study of Coding Agents
Este artigo analisa 654 pull requests rejeitados em cinco agentes de codificação e um baseline humano para identificar padrões de rejeição únicos e específicos de cada agente, ao mesmo tempo em que propõe heurísticas para enfrentar o desafio da ausência de feedback do revisor em 67,9% dos casos.
Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo
Imagine o desenvolvimento de software como um canteiro de obras enorme e movimentado. Normalmente, quando um trabalhador (um desenvolvedor humano) termina um novo cômodo ou conserta um vazamento, ele entrega uma "Solicitação de Mudança" (um Pull Request) ao gerente do canteiro. O gerente analisa e diz: "Ótimo, vamos construir isso" ou "Não, isso não vai funcionar".
Recentemente, um novo tipo de trabalhador chegou: Agentes de IA. Estes são robôs que podem planejar, construir e entregar suas próprias Solicitações de Mudança sem que um humano precise segurar sua mão. Este artigo investiga o que acontece quando esses trabalhadores de IA enviam seu trabalho em comparação com os trabalhadores humanos.
Aqui está a divisão do estudo, usando analogias simples:
1. O Grande Problema: A "Rejeição Silenciosa"
Os pesquisadores analisaram 654 Solicitações de Mudança rejeitadas de cinco robôs de IA diferentes (como Devin, Claude Code e GitHub Copilot) e as compararam com solicitações feitas por humanos.
A descoberta mais chocante? Dois de cada três rejeições foram silenciosas.
- A Analogia: Imagine que você envia um desenho para um concurso e ele é jogado no lixo. Você pergunta: "Por quê?" e o juiz apenas dá de ombros e vai embora.
- A Realidade: 67,9% das solicitações de IA rejeitadas não tiveram nenhuma explicação do revisor. A solicitação foi apenas encerrada. Isso torna muito difícil para os pesquisadores saberem por que a IA falhou, porque o "juiz" não escreveu o motivo.
2. Os Erros "Exclusivos da IA"
Quando os pesquisadores realmente encontraram motivos para a rejeição, descobriram que os robôs de IA cometem erros que os humanos quase nunca cometem. Eles encontraram sete razões específicas de rejeição que só aconteceram com a IA:
- A Caixa "Grande Demais": Humanos às vezes enviam projetos grandes, mas os robôs de IA tendem a enviar mudanças massivas e esmagadoras de uma só vez. É como uma IA tentando construir um arranha-céu inteiro em um único dia. Os gerentes rejeitaram essas solicitações porque eram grandes demais para serem revisadas adequadamente.
- O Selo de "Desconfiança": Alguns gerentes simplesmente não confiavam no código porque ele foi feito por um robô. Eles o rejeitaram apenas por ser gerado por IA, temendo que pudesse ser pouco confiável ou "alucinado" (inventado).
- O Rótulo de "Slop": Em um caso, o proprietário de um projeto rejeitou uma solicitação de IA e a rotulou como "SLOP" (um termo informal para conteúdo de baixa qualidade e produzido em massa), essencialmente dizendo: "Isso é lixo gerado por uma máquina".
- A Falha do "Experimento": Algumas solicitações de IA foram enviadas apenas para ver se o robô conseguia fazer, não porque alguém realmente queria o código. Estas foram rejeitadas porque não foram feitas para uso real.
3. As "Peculiaridades do Robô"
Diferentes robôs de IA têm diferentes personalidades e configurações, levando a padrões de rejeição únicos:
- O Efeito "Devin": Um robô específico, chamado Devin, tem uma configuração que encerra automaticamente suas próprias solicitações se elas ficarem ociosas por muito tempo. O estudo descobriu que muitas das rejeições do Devin não foram porque o código era ruim, mas porque o próprio robô disse: "Estou entediado, estou encerrando isso", após 7 dias de silêncio.
- A Armadilha do "Contexto": Alguns robôs de IA foram rejeitados porque não consegiam visualizar arquivos ou dados "privados" de que precisavam para terminar o trabalho. É como um robô tentando consertar uma fechadura, mas sendo trancado fora da sala onde a chave está guardada.
4. A Solução: Um "Filtro de Lixo"
Como tantas rejeições não tinham notas (o problema da "Rejeição Silenciosa"), os pesquisadores perceberam que precisavam de uma maneira de limpar os dados antes de estudá-los. Eles criaram um filtro simples (um conjunto de regras) para adivinhar quais rejeições eram verdadeiramente "silenciosas" e quais poderiam ter pistas ocultas.
- As Regras do Filtro: Eles procuraram por solicitações que foram:
- Encerradas pela pessoa que as escreveu (Auto-encerradas).
- Encerradas muito rapidamente (ex: dentro de 7 dias).
- Encerradas sem que ninguém deixasse um comentário.
- O Resultado: Ao usar essas regras, eles puderam filtrar o "ruído" (as rejeições silenciosas e inúteis) e focar naquelas onde os gerentes realmente explicaram por que disseram "Não". Isso ajuda pesquisadores futuros a obter uma imagem mais clara do que está dando errado.
Resumo
O artigo conclui que, embora os agentes de IA estejam construindo código mais rápido do que nunca, eles estão sendo rejeitados com mais frequência do que os humanos. Isso não acontece apenas porque seu código tem bugs; é porque eles:
- Enviam coisas que são grandes demais ou complexas.
- Provocam uma falta de confiança dos gerentes humanos.
- Possuem "comportamentos robóticos" únicos (como o encerramento automático) que os humanos não têm.
- Frequentemente são rejeitados sem que ninguém explique o motivo, dificultando o aprendizado com os erros.
O estudo fornece um "filtro" para ajudar a limpar esses dados para que possamos entender melhor como tornar esses trabalhadores de IA mais confiáveis no futuro.
Afogado em artigos na sua área?
Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.