Uma execução bem-sucedida de um agente de programação com IA ainda pode esconder muito esforço desperdiçado. Em um exemplo, um agente passou nos testes no turno 4, mas continuou trabalhando até o turno 10, e seis das suas oito linhas alteradas eram desnecessárias em comparação com a correção de referência. Uma verificação padrão de aprovação/reprovação atribui a essa execução a mesma pontuação de uma execução limpa e eficiente.
O autor observa que o agente deste experimento é simulado. Em vez de executar um agente de programação real, como Claude Code ou Codex, o estudo usou uma política Python com semente fixa para tomar decisões, enquanto os repositórios, edições, diffs, execuções de testes e falhas são reais. O objetivo foi medir quantos turnos extras um agente leva para chegar a um patch que passa nos testes, quanto desse trabalho era necessário e se um fluxo de trabalho ao redor pode reduzir o esforço desnecessário.
A análise se baseia em cerca de 50.000 execuções simuladas, incluindo uma varredura de conformidade, testes de regras individuais e um conjunto de validação separado. Ela se apoia no SWE-bench, um benchmark com 2.294 issues reais do GitHub de 12 repositórios Python, que avalia apenas o patch final. Duas execuções podem ter sucesso nele enquanto uma delas consome muito mais turnos, tempo e tokens e deixa mais alterações para trás.
O artigo separa o tamanho do patch final do trabalho total, que inclui execuções de testes que falharam, comandos repetidos, edições no arquivo errado e alterações revertidas. As taxas de aprovação ignoram completamente esse esforço. O estudo pretende mostrar o custo desse trabalho oculto e como as regras do harness poderiam reduzi-lo.
Fonte: Towards Data Science · Resumido por HeadlinesBriefing