ReProAgent: Tool-Augmented Multi-Stage Agentic Generation of Bug Reproduction Tests from Issue Reports
O ReProAgent é um framework de agente multiestágio e aumentado por ferramentas que supera as abordagens baseadas em prompts existentes ao decompor a geração de testes de reprodução de bugs em estágios localizados de identificação de bugs, análise de causa raiz, planejamento e geração, alcançando taxas de sucesso significativamente maiores em diversos benchmarks.
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 que você é um detetive tentando resolver um mistério, mas a única pista que possui é um bilhete escrito à mão e borrado, de uma testemunha dizendo: "Algo estranho aconteceu na cozinha!". No mundo do software, este bilhete é um relatório de erro (issue report). Geralmente, os desenvolvedores têm que adivinhar o que deu errado, escrever um teste para provar o ocorrido e então tentar consertá-lo. Mas, frequentemente, eles não têm um teste, o que torna todo o processo lento e frustrante.
Por um tempo, programas de computador inteligentes (chamados de Modelos de Linguagem de Grande Escala ou LLMs) tentaram escrever esses testes automaticamente. Eles eram como detetives que apenas liam o bilhete e imediatamente gritavam: "Eu acho que o culpado é a torradeira!". Eles pegavam algumas pistas próximas (texto do código) e chutavam a resposta. Mas o artigo argumenta que essa abordagem é simples demais. É como tentar resolver um complexo mistério de assassinato olhando apenas para a foto da cena do crime sem nunca entrevistar os suspeitos ou verificar seus áries. Esses métodos mais antigos frequentemente perdiam o problema real porque não entendiam como diferentes partes do código (a "cozinha", a "sala de estar" e o "porão") estavam conectadas.
Apresentando o ReProAgent: A Equipe de Superdetetives
Os autores deste artigo construíram um novo sistema chamado ReProAgent. Em vez de um único detetive adivinhando a resposta, o ReProAgent é uma equipe de agentes especializados trabalhando em um processo de investigação rigoroso de quatro etapas. Eles não apenas adivinham; eles investigam, analisam, planejam e depois agem.
Aqui está como o "fluxo de trabalho de detetive" deles funciona:
- A Busca (Localização de Bugs): Primeiro, a equipe não olha para o prédio inteiro. Eles usam ferramentas especiais para vasculhar o código como um bibliotecário encontrando um livro específico. Eles procuram por palavras-chave e seguem as "migalhas de pão" (dependências) para encontrar exatamente qual arquivo e linha de código estão apresentando problemas.
- O Interrogatório (Análise de Causa Raiz): Uma vez encontrado o suspeito, eles não o prendem imediatamente. Eles rastreiam o caminho exato que o bug percorreu. Eles perguntam: "Como o erro viajou da porta da frente até a janela dos fundos?". Eles constroem um mapa do caminho de execução para entender por que o bug aconteceu, não apenas onde.
- O Desenho da Armadilha (Planejamento de Teste): Antes de montar uma armadilha, eles a planejam. Eles descobrem exatamente quais condições precisam ser atendidas para fazer o bug aparecer novamente. É como configurar um cenário específico onde o suspeito deve revelar seu crime.
- A Operação de Flagrante (Geração e Revisão de Teste): Finalmente, eles escrevem o teste (a armadilha) e o executam em um ambiente isolado e seguro (um parquinho digital). Mas a parte legal é esta: se o teste falhar em capturar o bug, ou se capturar a coisa errada, a equipe não desiste. Eles revisam o resultado, perguntam: "Nós pegamos o criminoso certo?" e então refinam seu teste. Eles continuam esse ciclo até que o teste reproduza perfeitamente o bug.
Os Resultados: Funcionou?
A equipe testou o ReProAgent em dois grandes conjuntos de problemas de software do mundo real (chamados SWT-bench-lite e SWT-bench-verified). Os resultados foram impressionantes.
- No conjunto menor (SWT-bench-lite), o ReProAgent conseguiu recriar o bug em 58,43% dos casos.
- No conjunto mais difícil e verificado (SWT-bench-verified), teve sucesso em 70,30% dos casos.
Para colocar em perspectiva, o próximo melhor método (um sistema chamado AssertFlip) conseguiu resolver apenas cerca de 38,0% dos problemas no conjunto menor. O ReProAgent não apenas venceu a competição; ele deixou os concorrentes para trás, resolvendo cerca de 20 pontos percentuais a mais de casos que o próximo melhor sistema ao usar o mesmo "cérebro" (um modelo chamado GPT-5-mini).
O artigo também verificou se essa equipe funcionava com diferentes "cérebros" (outros modelos de IA como Qwen3-Coder e DeepSeek-V3.2). E funcionou! O sistema funcionou bem em todos eles, sugerindo que o processo de ser um detetive é mais importante do que apenas ter o detetive mais inteligente.
O que ele NÃO é
O artigo é muito claro sobre o que o ReProAgent não é. Ele não é uma varinha mágica que conserta os bugs por si só. Seu trabalho é estritamente escrever o teste que prova que o bug existe. No entanto, os autores descobriram que, quando entregavam esses testes para outros sistemas que realmente consertam bugs, esses sistemas melhoravam. Por exemplo, quando os testes do ReProAgent foram usados para ajudar um sistema chamado SWE-agent, o número de problemas corrigidos com sucesso passou de 143 para 153.
O Custo
Ser um superdetetive custa um pouco de dinheiro. O artigo calculou que rodar o ReProAgent custa cerca de US$ 0,14 por caso. É um pouco mais caro do que alguns métodos mais simples (que custam em torno de US$ 0,11), mas o artigo argumenta que vale a pena o gasto extra de alguns centavos porque ele realmente resolve o problema com muito mais frequência. Na maioria das vezes, o sistema precisou rodar sua "operação de flagrante" apenas cerca de 1,29 vez em média antes de acertar.
A Conclusão
O artigo sugere que, para resolver mistérios complexos de software, você não pode confiar apenas em um palpite rápido baseado em algumas palavras. Você precisa de uma investigação estruturada e de múltiplas etapas que olhe para o quadro geral, rastreie o caminho do erro e verifique as evidências. O ReProAgent mostra que, quando você dá aos agentes de IA um fluxo de trabalho adequado para seguir, eles podem se tornar incrivelmente eficazes em encontrar e provar bugs de software, transformando um bilhete de testemunha borrado em um arquivo de caso cristalino.
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.