ChatPaper.aiChatPaper

RepoRescue: Eine empirische Studie über LLM-Agenten zur Rettung der Kompatibilität des gesamten Repositorys

RepoRescue: An Empirical Study of LLM Agents on Whole-Repository Compatibility Rescue

July 1, 2026
Autoren: Zhihao Lin, Mingyi Zhou, Zhensu Sun, Yizhuo Yang, Renyu Yang, David Lo, Li Li
cs.AI

Zusammenfassung

Open-Source-Bibliotheken und -Werkzeuge werden häufig wiederverwendet, doch die Aufrechterhaltung der Kompatibilität ist teuer. Wenn Betreuer das Projekt verlassen, können nützliche Repositorys aufhören zu funktionieren, da Laufzeitumgebungen und Abhängigkeiten sich weiterentwickeln. Wir untersuchen, ob LLM-Agenten alte Repositorys an moderne Umgebungen anpassen können – eine Aufgabe, die wir als Kompatibilitätsrettung bezeichnen. Im Gegensatz zur Fehlerbehebung beginnt die Kompatibilitätsrettung mit einem Repository, das in seiner ursprünglichen Umgebung funktionierte, nach einer Veränderung des Ökosystems jedoch versagt. RepoRescue gibt den Agenten nur das Repository und seine fehlschlagende moderne Umgebung vor; der Agent muss den Fehler diagnostizieren, den betroffenen Code lokalisieren und eine Quellcode-Rettung durchführen, die die historische Testsuite wiederherstellt. Wir erstellen RepoRescue aus 193 Python- und 122 Java-Repositorys, von denen jedes nachweislich historisch funktioniert und nach der Modernisierung fehlschlägt. Wir evaluieren fünf eingesetzte Agentensysteme auf Python und drei auf Java. Über die Bestehensrate vollständiger Patches hinaus führen wir Patches erneut aus, nachdem wir Änderungen an Testdateien entfernt haben, um eine reine Quellcode-Reparatur zu messen, fügen ein laufzeitdurchgesetztes Regime hinzu, das Änderungen an Tests blockiert, und validieren den praktischen Nutzen für Repositorys, deren Testsuites nach der Rettung bestehen. Wir stellen fest, dass Claude-Code-Systeme manchmal fehlschlagende Tests bearbeiten, selbst wenn sie aufgefordert werden, dies nicht zu tun; mit Laufzeitblockierung rettet Kimi dennoch 41,5% der Repositorys. Die Systeme ergänzen sich: Ihre Vereinigungsmenge erreicht 62,7% und übertrifft das beste Einzelsystem um 10,9 Prozentpunkte. Die Schwierigkeit liegt in der systemübergreifenden Koordination: Bei 14 Repositorys, die koordinierte Änderungen am gesamten Codebestand erfordern, besteht GPT-5.2 durch Codex alle 14, während jedes Claude-Code-System höchstens zwei besteht. Schließlich ist eine bestehende Testsuite nur ein erstes Signal: Von 34 ungewarteten Python-Kandidaten, deren Testsuites nach der Rettung bestehen, funktionieren 22 in realistischen Szenarien und 12 bestehen eine Fehlersuche mit Patches, die den Kompatibilitätsfehler beheben. RepoRescue benchmarkt die Kompatibilitätsrettung mit reiner Quellcode-Prüfung, Laufzeiterzwingung, praktischer Validierung und Begründungsbeschriftungen.
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.