RepoRescue : Une étude empirique des agents LLM sur le sauvetage de compatibilité de l'ensemble du dépôt
RepoRescue: An Empirical Study of LLM Agents on Whole-Repository Compatibility Rescue
July 1, 2026
Auteurs: Zhihao Lin, Mingyi Zhou, Zhensu Sun, Yizhuo Yang, Renyu Yang, David Lo, Li Li
cs.AI
Résumé
Les bibliothèques et outils open-source sont largement réutilisés, mais la maintenance de la compatibilité est coûteuse. Lorsque les mainteneurs quittent le projet, des dépôts utiles peuvent cesser de fonctionner à mesure que les environnements d'exécution et les dépendances évoluent. Nous étudions si des agents LLM peuvent adapter d'anciens dépôts à des environnements modernes, une tâche que nous appelons le sauvetage de compatibilité. Contrairement à la réparation de bugs, le sauvetage de compatibilité commence à partir d'un dépôt qui fonctionnait dans son environnement d'origine mais qui échoue après une dérive de l'écosystème. RepoRescue donne aux agents uniquement le dépôt et son environnement moderne défaillant ; l'agent doit diagnostiquer la défaillance, localiser le code affecté et produire un correctif source qui restaure la suite de tests historique. Nous construisons RepoRescue à partir de 193 dépôts Python et 122 dépôts Java, chacun vérifié comme fonctionnant historiquement et échouant après modernisation. Nous évaluons cinq systèmes d'agents déployés sur Python et trois sur Java. Au-delà du taux de réussite des correctifs complets, nous réexécutons les correctifs après avoir supprimé les modifications des fichiers de test pour mesurer la réparation uniquement source, ajoutons un régime d'exécution forcée qui bloque les modifications de test, et validons l'utilisation pratique pour les dépôts dont les suites de tests réussissent après le sauvetage. Nous constatons que les systèmes Claude Code modifient parfois les tests défaillants même lorsqu'ils sont invités à ne pas le faire ; avec le blocage à l'exécution, Kimi parvient tout de même à sauver 41,5 % des dépôts. Les systèmes sont complémentaires : leur union atteint 62,7 %, dépassant le meilleur système individuel de 10,9 points. La difficulté se concentre dans la coordination entre fichiers : sur 14 dépôts nécessitant des changements coordonnés sur l'ensemble du code, GPT-5.2 via Codex réussit les 14, tandis que chaque système Claude Code en réussit au plus deux. Enfin, une suite de tests réussie n'est qu'un signal initial : parmi 34 candidats Python non maintenus dont les suites réussissent après le sauvetage, 22 fonctionnent dans des scénarios réalistes et 12 passent une chasse aux bugs avec des correctifs qui résolvent la défaillance de compatibilité. RepoRescue évalue le sauvetage de compatibilité avec un audit source uniquement, une application à l'exécution, une validation pratique et des étiquettes de raisonnement.
English
Open-source libraries and tools are widely reused, but compatibility maintenance is expensive. Once maintainers leave, useful repositories can stop working as runtimes and dependencies evolve. We study whether LLM agents can adapt old repositories to modern environments, a task we call compatibility rescue. Unlike bug repair, compatibility rescue starts from a repository that worked in its original environment but fails after ecosystem drift. RepoRescue gives agents only the repository and its failing modern environment; the agent must diagnose the failure, locate affected code, and produce a source-code rescue that restores the historical test suite. We build RepoRescue from 193 Python and 122 Java repositories, each verified to pass historically and fail after modernization. We evaluate five deployed agent systems on Python and three on Java. Beyond full-patch pass rate, we rerun patches after removing test-file edits to measure source-only repair, add a runtime-enforced regime that blocks test edits, and validate practical use for repositories whose suites pass after rescue. We find that Claude Code systems sometimes edit failing tests even when prompted not to; with runtime blocking, Kimi still rescues 41.5% of repositories. Systems are complementary: their union reaches 62.7%, exceeding the best single system by 10.9 points. Difficulty concentrates in cross-file coordination: on 14 repositories requiring coordinated whole-codebase changes, GPT-5.2 through Codex passes all 14, while every Claude Code system passes at most two. Finally, a passing suite is only an initial signal: among 34 unmaintained Python candidates whose suites pass after rescue, 22 work in realistic scenarios and 12 pass bug-hunt with patches that address the compatibility failure. RepoRescue benchmarks compatibility rescue with source-only auditing, runtime enforcement, practical validation, and reasoning labels.