RepoRescue: Un Estudio Empírico sobre Agentes LLM en el Rescate de Compatibilidad de Repositorios Completos
RepoRescue: An Empirical Study of LLM Agents on Whole-Repository Compatibility Rescue
July 1, 2026
Autores: Zhihao Lin, Mingyi Zhou, Zhensu Sun, Yizhuo Yang, Renyu Yang, David Lo, Li Li
cs.AI
Resumen
Las bibliotecas y herramientas de código abierto se reutilizan ampliamente, pero el mantenimiento de la compatibilidad es costoso. Cuando los mantenedores se van, los repositorios útiles pueden dejar de funcionar a medida que los entornos de ejecución y las dependencias evolucionan. Estudiamos si los agentes LLM pueden adaptar repositorios antiguos a entornos modernos, una tarea que denominamos rescate de compatibilidad. A diferencia de la reparación de errores, el rescate de compatibilidad parte de un repositorio que funcionaba en su entorno original pero falla tras la deriva del ecosistema. RepoRescue proporciona a los agentes solo el repositorio y su entorno moderno fallido; el agente debe diagnosticar el fallo, localizar el código afectado y producir un rescate de código fuente que restaure el conjunto de pruebas histórico. Construimos RepoRescue a partir de 193 repositorios de Python y 122 de Java, cada uno verificado para funcionar históricamente y fallar tras la modernización. Evaluamos cinco sistemas agentes implementados en Python y tres en Java. Más allá de la tasa de aprobación de parches completos, volvemos a ejecutar los parches tras eliminar las ediciones en archivos de prueba para medir la reparación solo de código fuente, añadimos un régimen de ejecución forzada que bloquea las ediciones de pruebas, y validamos el uso práctico para repositorios cuyos conjuntos de pruebas pasan tras el rescate. Encontramos que los sistemas Claude Code a veces editan pruebas fallidas incluso cuando se les indica que no lo hagan; con bloqueo en tiempo de ejecución, Kimi aún rescata el 41.5% de los repositorios. Los sistemas son complementarios: su unión alcanza el 62.7%, superando al mejor sistema individual en 10.9 puntos. La dificultad se concentra en la coordinación entre archivos: en 14 repositorios que requieren cambios coordinados en todo el código base, GPT-5.2 a través de Codex aprueba los 14, mientras que cada sistema Claude Code aprueba como máximo dos. Finalmente, un conjunto de pruebas que pasa es solo una señal inicial: entre 34 candidatos de Python no mantenidos cuyos conjuntos de pruebas pasan tras el rescate, 22 funcionan en escenarios realistas y 12 pasan la búsqueda de errores con parches que abordan el fallo de compatibilidad. RepoRescue establece un punto de referencia para el rescate de compatibilidad con auditoría solo de código fuente, ejecución forzada, validación práctica y etiquetas de razonamiento.
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.