SWE Refactor Bench: Can Coding Agents Complete a Long-Horizon, Whole-Repository Stack Migration?
El artículo presenta SWE Refactor Bench, un riguroso benchmark que cuenta con 20 migraciones de repositorios completos y un protocolo de evaluación de tres etapas para exponer las limitaciones actuales de los agentes de codificación, los cuales logran solo una tasa de éxito del 5,4% al completar de forma autónoma migraciones de stack complejas y de largo alcance sin depender de trucos de comportamiento.
Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo
Los sistemas de software modernos son como ciudades antiguas, con capas de décadas de construcción. Con el tiempo, los materiales y métodos originales se vuelven obsoletos, costosos de mantener o simplemente incompatibles con las nuevas herramientas. Cuando un equipo decide reconstruir una parte de esta ciudad —tal vez cambiando de un lenguaje de construcción a otro, o cambiando todo el cimiento— se enfrenta a una tarea masiva y manual. El objetivo es reemplazar la estructura antigua con una nueva mientras se asegura que el edificio siga funcionando exactamente como lo hacía antes. Durante años, investigadores han estado desarrollando agentes de inteligencia artificial capaces de reparar pequeños errores en el código, actuando como equipos de reparación digitales. Surgió una pregunta natural: si estos agentes pueden reparar una ventana rota, ¿pueden también reconstruir un rascacielos entero, reemplazando su estructura de acero con un nuevo material sin que el edificio colapse?
Esta pregunta parecía sencilla, pero probarla resultó ser sorprendentemente difícil. Las pruebas tradicionales para estos agentes de IA funcionan como un examen simple de aprobado o suspendido: comprueban si un programa produce la salida correcta después de un cambio. Si la salida es correcta, el agente obtiene una puntuación perfecta. Sin embargo, este método tiene un fallo fatal cuando se aplica a remodelaciones totales de sistemas. Si se le pide a un agente que reescriba un programa desde cero pero este simplemente devuelve el código original, sin alteraciones, las pruebas seguirán aprobándose porque el código original ya funcionaba. La prueba ve un resultado correcto y asume que el trabajo se realizó, sin notar que el agente no hizo nada en absoluto. Este punto ciego significa que se podría otorgar una puntuación "perfecta" a un agente que no realizó ningún cambio alguno.
Para resolver esto, investigadores de Naver Labs y la Universidad de Tsinghua crearon una nueva prueba, mucho más estricta, llamada SWE Refactor Bench. Reunieron veinte proyectos de software del mundo real, incluyendo infraestructuras críticas como la base de datos SQLite y la biblioteca de compresión zlib, y encomendaron a los agentes de IA la tarea de migrarlos enteramente a diferentes pilas tecnológicas. Estas tareas implicaban cuatro tipos distintos de trabajo difícil: reescribir el propio lenguaje de programación, cambiar las estructuras de software (frameworks) que organizan el código, mover el software a un entorno operativo diferente o cambiar las herramientas utilizadas para construir el producto final. Los investigadores dieron a los agentes entre seis y treinta horas para completar cada tarea, trabajando de forma autónoma sin ayuda humana.
Los investigadores diseñaron un proceso de evaluación de tres etapas para asegurar que los agentes realmente hicieran el trabajo y lo hicieran correctamente. Primero, una auditoría estricta comprobó si la tecnología antigua había desaparecido realmente del código. Si el agente simplemente había copiado los archivos originales o añadido una capa externa delgada alrededor de ellos sin reescribir la lógica central, el intento era rechazado inmediatamente. Segundo, el sistema ejecutó más de 130,000 comprobaciones específicas para asegurar que el software se comportara exactamente como lo hacía antes del cambio. Finalmente, un equipo de seis agentes de IA independientes actuó como auditores, dedicando una hora cada uno para buscar cualquier diferencia sutil que las pruebas automatizadas pudieran haber pasado por alto. Estos auditores tenían que producir un ejemplo de fallo funcional para demostrar que la migración era imperfecta.
Los resultados fueron contundentes. A través de 520 intentos de ocho de los modelos más avanzados disponibles, solo 28 ejecuciones, o el 5.4 por ciento, pasaron todas las tres etapas. De hecho, trece de las veinte tareas nunca fueron completadas con éxito por ningún modelo. El modelo con mejor desempeño, Claude Opus 5, logró una puntuación de 47 sobre 100. Los fallos revelaron un patrón claro: la capacidad de mantener el software funcionando y la capacidad de realizar realmente la migración eran dos habilidades separadas que los agentes tenían dificultades para combinar. Treinta intentos preservaron el comportamiento del software perfectamente pero fallaron porque los agentes omitieron la migración por completo, devolviendo el código original. Por el contrario, 252 intentos reescribieron el código con éxito pero rompieron el comportamiento en el proceso. Incluso entre los pocos intentos que pasaron las comprobaciones iniciales, los agentes tuvieron dificultades para alcanzar la perfección; mientras que el 58 por ciento de las reescrituras exitosas pasaron el 99 por ciento de las comprobaciones de comportamiento, solo el 26 por ciento pasó absolutamente todas.
La dificultad varió significamente dependiendo del tipo de migración. Los agentes fueron relativamente exitosos al reescribir cadenas de herramientas de construcción (build toolchains), que implican cambiar cómo se empaqueta el software, obteniendo una puntuación de 31.4 sobre 100 en esas tareas. Sin embargo, tuvieron un desempeño pésimo en las reescrituras de lenguaje, donde la lógica central debe ser traducida de un lenguaje de programación a otro, obteniendo solo un 5.6. El estudio concluyó que los agentes de IA actuales aún no son lo suficientemente fiables para realizar migraciones autónomas de repositorios completos a largo plazo. Si bien pueden manejar correcciones localizadas, la compleja tarea de reconstruir un sistema desde cero preservando su comportamiento exacto sigue siendo un desafío significativo. La investigación establece que, para que estos agentes sean verdaderamente útiles en el mantenimiento de sistemas, deben aprender a realizar tanto el trabajo pesado de la reescritura como la precisión de preservar la función, una combinación que aún no han dominado.
¿Ahogado en artículos de tu campo?
Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.