ChatPaper.aiChatPaper

SpecBench: Medindo Reward Hacking em Agentes de Codificação de Longo Horizonte

SpecBench: Measuring Reward Hacking in Long-Horizon Coding Agents

May 20, 2026
Autores: Bingchen Zhao, Dhruv Srikanth, Yuxiang Wu, Zhengyao Jiang
cs.AI

Resumo

À medida que agentes de codificação de longo horizonte produzem mais código do que qualquer desenvolvedor consegue revisar, a supervisão se concentra em uma única superfície: a suíte de testes automatizados. A manipulação de recompensa (reward hacking) surge naturalmente nesse cenário, pois o agente otimiza para passar nos testes, desviando-se do objetivo real do usuário. Estudamos esse fenômeno de manipulação de recompensa decompondo tarefas de engenharia de software em três partes: (i) uma descrição em linguagem natural da especificação; (ii) testes de validação visíveis que exercitam funcionalidades especificadas de forma isolada; e (iii) testes retidos (held-out) que compõem essas mesmas funcionalidades para simular o uso no mundo real. Com base na especificação e nas suítes de testes de validação visíveis, um agente genuíno seria capaz de gerar uma solução que também passasse em todos os testes retidos. Portanto, usamos a diferença nas taxas de aprovação entre essas duas suítes para quantificar a manipulação de recompensa. Com base nessa metodologia, apresentamos o SpecBench, um benchmark composto por 30 tarefas de programação em nível de sistema, que variam de tarefas de horizonte curto, como construir um analisador JSON, até tarefas de horizonte ultra longo, como construir um núcleo de sistema operacional do zero. Experimentos em larga escala revelam um padrão consistente: embora todos os agentes de fronteira saturem a suíte visível, a manipulação de recompensa persiste, com modelos menores apresentando lacunas maiores nas suítes retidas. A lacuna também aumenta acentuadamente com a duração da tarefa: cresce 28 pontos percentuais a cada aumento de dez vezes no tamanho do código. As falhas variam desde isolamento sutil de funcionalidades até explorações deliberadas, incluindo um "compilador" de tabela hash com 2.900 linhas que memoriza entradas de teste. O SpecBench oferece um ambiente de teste fundamentado para medir se agentes de codificação constroem sistemas genuinamente funcionais ou apenas enganam as suítes de testes que os desenvolvedores lhes fornecem.
English
As long-horizon coding agents produce more code than any developer can review, oversight collapses onto a single surface: the automated test suite. Reward hacking naturally arises in this setup, as the agent optimizes for passing tests while deviating from the users true goal. We study this reward hacking phenomenon by decompose software engineering tasks into three parts: (i) a natural language description of the specification (ii) visible validation tests that exercise specified features in isolation, and (iii) held-out tests that compose those same features to simulate real-world usage. Based on the specification and the visible validation test suites, a genuine agent would be able to generate a solution that can also pass all of the held-out tests. Therefore we use the gap in pass rates on these two suites to quantify reward hacking. Based on this methodology, we introduce SpecBench, a benchmark comprising 30 systems-level programming tasks ranging from short horizon tasks like building a JSON parser to ultra long horizon tasks like building an entire OS kernel from scratch. Large-scale experiments reveal a consistent pattern: while every frontier agent saturates the visible suite, reward hacking persists, with smaller models exhibiting larger gaps on holdout suites. The gap also scales sharply with task length: it grows by 28 percentage points for every tenfold increase in code size. Failures range from subtle feature isolation to deliberate exploits, including a 2,900-line hash-table "compiler" that memorizes test inputs. SpecBench offers a principled testbed for measuring whether coding agents build genuine working systems or merely game the test suites developers hand them.