CodeClash: Benchmarking per l'Ingegneria del Software Orientata agli Obiettivi
CodeClash: Benchmarking Goal-Oriented Software Engineering
November 2, 2025
Autori: John Yang, Kilian Lieret, Joyce Yang, Carlos E. Jimenez, Ofir Press, Ludwig Schmidt, Diyi Yang
cs.AI
Abstract
Gli attuali benchmark per la codifica valutano i modelli linguistici (LM) su compiti concreti e ben definiti, come correggere bug specifici o scrivere test mirati. Tuttavia, i programmatori umani non passano tutto il giorno ad affrontare incessantemente compiti isolati. Al contrario, lo sviluppo software nel mondo reale si basa sul perseguimento di obiettivi di alto livello, come migliorare la fidelizzazione degli utenti o ridurre i costi. Valutare se gli LM possano anche sviluppare codice in modo iterativo per raggiungere meglio obiettivi aperti, senza alcuna guida esplicita, rimane una sfida aperta. Per affrontare ciò, introduciamo CodeClash, un benchmark in cui gli LM competono in tornei a più round per costruire la codebase migliore per raggiungere un obiettivo competitivo. Ogni round procede in due fasi: gli agenti modificano il proprio codice, poi le loro codebase competono direttamente in un'arena di codice che determina i vincitori in base a obiettivi come la massimizzazione del punteggio, l'acquisizione di risorse o la sopravvivenza. Che si tratti di scrivere appunti, esaminare la documentazione, analizzare i log della competizione o creare suite di test, i modelli devono decidere autonomamente come migliorare le proprie codebase sia in assoluto che rispetto agli avversari. Eseguiamo 1680 tornei (25.200 round totali) per valutare 8 LM in 6 arene. I nostri risultati rivelano che, sebbene i modelli mostrino stili di sviluppo diversi, condividono limitazioni fondamentali nel ragionamento strategico. I modelli hanno anche difficoltà con la manutenzione a lungo termine della codebase, poiché i repository diventano progressivamente disordinati e ridondanti. Queste limitazioni sono nette: i modelli migliori perdono ogni round contro programmatori umani esperti. Rendiamo CodeClash open-source per far avanzare lo studio dello sviluppo di codice autonomo e orientato agli obiettivi.
English
Current benchmarks for coding evaluate language models (LMs) on concrete,
well-specified tasks such as fixing specific bugs or writing targeted tests.
However, human programmers do not spend all day incessantly addressing isolated
tasks. Instead, real-world software development is grounded in the pursuit of
high-level goals, like improving user retention or reducing costs. Evaluating
whether LMs can also iteratively develop code to better accomplish open-ended
objectives without any explicit guidance remains an open challenge. To address
this, we introduce CodeClash, a benchmark where LMs compete in multi-round
tournaments to build the best codebase for achieving a competitive objective.
Each round proceeds in two phases: agents edit their code, then their codebases
compete head-to-head in a code arena that determines winners based on
objectives like score maximization, resource acquisition, or survival. Whether
it's writing notes, scrutinizing documentation, analyzing competition logs, or
creating test suites, models must decide for themselves how to improve their
codebases both absolutely and against their opponents. We run 1680 tournaments
(25,200 rounds total) to evaluate 8 LMs across 6 arenas. Our results reveal
that while models exhibit diverse development styles, they share fundamental
limitations in strategic reasoning. Models also struggle with long-term
codebase maintenance, as repositories become progressively messy and redundant.
These limitations are stark: top models lose every round against expert human
programmers. We open-source CodeClash to advance the study of autonomous,
goal-oriented code development.