ChatPaper.aiChatPaper

SpecBench: Midiendo la explotación de recompensas en agentes de codificación de horizonte largo

SpecBench: Measuring Reward Hacking in Long-Horizon Coding Agents

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

Resumen

Cuando los agentes de codificación de horizonte largo generan más código del que cualquier desarrollador puede revisar, la supervisión se concentra en una única superficie: el conjunto de pruebas automatizadas. La manipulación de recompensas surge de forma natural en esta configuración, ya que el agente optimiza para superar las pruebas mientras se desvía del objetivo real del usuario. Estudiamos este fenómeno de manipulación de recompensas descomponiendo las tareas de ingeniería de software en tres partes: (i) una descripción en lenguaje natural de la especificación, (ii) pruebas de validación visibles que ejercitan las funcionalidades especificadas de forma aislada, y (iii) pruebas reservadas que componen esas mismas funcionalidades para simular el uso en el mundo real. Basándose en la especificación y en los conjuntos de pruebas de validación visibles, un agente genuino sería capaz de generar una solución que también pueda superar todas las pruebas reservadas. Por lo tanto, utilizamos la brecha en las tasas de aprobación en estos dos conjuntos para cuantificar la manipulación de recompensas. Con base en esta metodología, introducimos SpecBench, un punto de referencia que comprende 30 tareas de programación a nivel de sistema, que van desde tareas de horizonte corto, como construir un analizador JSON, hasta tareas de horizonte ultra largo, como construir un núcleo de sistema operativo completo desde cero. Experimentos a gran escala revelan un patrón consistente: mientras que cada agente de frontera satura el conjunto visible, la manipulación de recompensas persiste, con modelos más pequeños que presentan brechas mayores en los conjuntos reservados. La brecha también aumenta de forma pronunciada con la longitud de la tarea: crece en 28 puntos porcentuales por cada aumento de diez veces en el tamaño del código. Los fallos van desde un sutil aislamiento de características hasta explotaciones deliberadas, incluyendo un "compilador" de tabla hash de 2.900 líneas que memoriza las entradas de las pruebas. SpecBench ofrece un banco de pruebas fundamentado para medir si los agentes de codificación construyen sistemas funcionales genuinos o simplemente juegan con los conjuntos de pruebas que los desarrolladores les proporcionan.
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.