CuraLoc localiza bugs en el código con un 59,3% más de precisión que sus rivales y usa 10 veces menos tokens

Un equipo de investigadores presentó CuraLoc, un sistema que, a partir de la descripción de un bug, localiza la función o clase exacta que hay que corregir en un repositorio de código grande. Antes, los modelos de lenguaje tenían que "deambular" por el código paso a paso: abrir un archivo, revisar su contenido, decidir a dónde ir después, y repetir esto decenas de veces, un proceso lento y costoso. CuraLoc reemplaza eso con un único plan elaborado de antemano. El sistema primero selecciona los archivos adecuados y luego, a partir de breves descripciones de las funciones (sin el código en sí), decide con qué símbolos empezar y qué relaciones comprobar: quién las llama, a quién llaman ellas, qué sobrescrituras existen. Solo después de esto se carga realmente el fragmento de código necesario, y en la decisión final el modelo clasifica los posibles lugares a corregir. En la prueba SWE-bench Verified con GPT-5.2, la precisión para localizar exactamente el lugar del bug subió del 53,8% (método LocAgent) al 59,3% de CuraLoc, mientras que el consumo de tokens se redujo un 90,3%. • En SWE-bench Lite, la precisión del top-5 de predicciones alcanzó el 83,8%, frente al 78,3% de su rival RepoSearcher • CuraLoc también superó a Agentless (39,6%) y RepoSearcher (56,2%) en precisión del top-1 • El método funciona tanto con GPT-5.2 como con el nuevo GPT-6 Astra

Procesado por IA desde arXiv cs.LG; editado por Hamidun News
CuraLoc localiza bugs en el código con un 59,3% más de precisión que sus rivales y usa 10 veces menos tokens
Fuente: arXiv cs.LG. Collage: Hamidun News.
Escuchar artículo
Ficha técnica y cifras clave
ParámetroDatos
Fuente originalarXiv cs.LG ↗
Editor jefe
Dato clave #1En SWE-bench Lite, la precisión del top-5 de predicciones alcanzó el 83,8%, frente al 78,3% de su rival RepoSearcher
Dato clave #2CuraLoc también superó a Agentless (39,6%) y RepoSearcher (56,2%) en precisión del top-1
Dato clave #3El método funciona tanto con GPT-5.2 como con el nuevo GPT-6 Astra

Cuando llega un reporte de bug, lo difícil no es arreglarlo, sino encontrarlo

Cuando llega una queja sobre un bug en el código, el primer problema no es corregir el error, sino entender exactamente dónde se esconde dentro del repositorio. El reporte del bug describe un síntoma ("al introducir X, el sistema devuelve un Y incorrecto"), pero no indica el archivo ni la función que hay que modificar. Los autores de un nuevo trabajo proponen una forma de localizar estos puntos de manera automática, más precisa y más barata que las herramientas existentes.

Por qué los enfoques anteriores eran costosos

La mayoría de los sistemas de localización de bugs funcionan como agentes: el modelo observa el código, decide hacia dónde "ir" a continuación —a la función que lo llama, a la clase padre, a un método vecino— y así va reduciendo gradualmente el círculo de sospechosos. Esto es flexible, pero cada paso es una consulta independiente al modelo, lo que implica decenas de llamadas y un gasto enorme de tokens para una sola tarea.

CuraLoc pone a prueba otra idea: ¿qué pasa si se planifica toda la ruta de inspección del código de antemano, en una sola decisión, en lugar de volver a decidirla en cada paso?

Cómo funciona CuraLoc

El sistema actúa en tres etapas, profundizando cada vez más en el código:

  • Selección de archivos. El modelo observa la estructura del repositorio y, desde tres ángulos distintos —quién posee la lógica, quién la ejecuta, quién la verifica— propone una lista de archivos candidatos, con un máximo de 15.
  • Selección de símbolos y acciones. De los archivos seleccionados, el modelo recibe no el código en sí, sino descripciones compactas de funciones y clases: la firma, el rol en la estructura, un resumen breve del comportamiento (extraído de la documentación o generado por un modelo auxiliar más pequeño). Con esto, el modelo decide en un solo paso con qué funciones empezar a inspeccionar, qué relación comprobar en cada una (llamadas, herencia, sobrescrituras) y formula hipótesis sobre dónde podría estar el error.
  • Obtención del código y clasificación. Solo ahora el sistema carga automáticamente —sin intervención del modelo— el código fuente real de los fragmentos necesarios, y en una consulta final el modelo clasifica hasta diez candidatos para la corrección, usando tanto el código como las hipótesis previas.

El ahorro clave está en que el modelo toma la decisión de "qué inspeccionar" una sola vez, de forma compacta, en lugar de hacerlo paso a paso después de cada nuevo fragmento de código.

Qué mostraron las pruebas

El método se probó en dos conjuntos de bugs reales de proyectos de código abierto —SWE-bench Lite (274 tareas) y SWE-bench Verified (454 tareas)—, comparándolo con tres métodos existentes: LocAgent, RepoSearcher y Agentless, usando el modelo GPT-5.2.

  • En SWE-bench Verified, la precisión para acertar el lugar exacto de la corrección (métrica Func@1) subió del 53,8% de LocAgent al 59,3% de CuraLoc, con un gasto de tokens 90,3% menor.
  • CuraLoc también superó a RepoSearcher (56,2%) y Agentless (39,6%) en la misma métrica.
  • En SWE-bench Lite, CuraLoc logró un 83,8% de precisión en el top-5 de predicciones, un 15% más (en términos relativos) que Agentless.
  • El método también se probó con el nuevo modelo GPT-6 Astra, y los resultados se mantuvieron consistentemente altos, lo que indica que el enfoque no depende de un modelo en particular.

Los autores también analizaron por separado qué es exactamente lo que genera esta ganancia de precisión. Resultó que simplemente encontrar los archivos correctos no es lo decisivo: incluso cuando el sistema elegía bien los archivos, si los símbolos dentro de ellos se clasificaban en un orden formal (y no según el significado del bug), la precisión caía del 67,2% al 42,3%. Esto significa que la ventaja principal de CuraLoc está en la selección razonada de qué relaciones de código comprobar, no en abarcar más archivos.

Qué significa esto en la práctica

Para los equipos que trabajan en la reparación automática de código o que construyen agentes de IA para desarrollo, CuraLoc demuestra una alternativa viable a los costosos agentes paso a paso: se pueden reemplazar decenas de consultas iterativas con un único plan de inspección bien pensado y obtener una precisión igual o superior, con un gasto de tokens varias veces menor. Esto es especialmente relevante para las empresas que quieren integrar la búsqueda automática de bugs en pipelines de CI/CD, donde el costo y la velocidad de cada consulta son críticos.

Preguntas frecuentes sobre la noticia

¿Qué se sabe sobre Cuando llega un reporte de bug, lo difícil no es arreglarlo, sino encontrarlo?

Cuando llega una queja sobre un bug en el código, el primer problema no es corregir el error, sino entender exactamente dónde se esconde dentro del repositorio. El reporte del bug describe un síntoma ("al introducir X, el sistema devuelve un Y incorrecto"), pero no indica el archivo ni la función que hay que modificar. Los autores de un nuevo trabajo proponen una forma de localizar estos puntos de manera automática, más precisa y más barata que las herramientas existentes.

¿Qué se sabe sobre Por qué los enfoques anteriores eran costosos?

La mayoría de los sistemas de localización de bugs funcionan como agentes: el modelo observa el código, decide hacia dónde "ir" a continuación —a la función que lo llama, a la clase padre, a un método vecino— y así va reduciendo gradualmente el círculo de sospechosos. Esto es flexible, pero cada paso es una consulta independiente al modelo, lo que implica decenas de llamadas y un gasto enorme de tokens para una sola tarea. CuraLoc pone a prueba otra idea: ¿qué pasa si se planifica toda la ruta de inspección del código de antemano, en una sola decisión, en lugar de volver a

Cómo funciona CuraLoc?

El sistema actúa en tres etapas, profundizando cada vez más en el código: Selección de archivos. El modelo observa la estructura del repositorio y, desde tres ángulos distintos —quién posee la lógica, quién la ejecuta, quién la verifica— propone una lista de archivos candidatos, con un máximo de 15. Selección de símbolos y acciones. De los archivos seleccionados, el modelo recibe no el código en sí, sino descripciones compactas de funciones y clases: la firma, el rol en la estructura, un resumen breve del comportamiento (extraído de la documentación o generado por un modelo

ZK
Zhemal Khamidun — CPO de Alpina Digital, product manager de AlpinaGPT. Crea productos de IA desde 2019. Hamidun News es un proyecto personal que creció hasta ser un agregador en producción con más de 6.000 lectores.
✦ Autonomous AI Execution · Nomad Agent

Delegate Deep Research, Coding & Multi-Step Workflows to Nomad Agent

Deploy autonomous task execution with Nomad Agent (agent.nomadnet.ai) — automated web research, data synthesis, code generation, and MCP tool orchestration.

Launch Nomad Agent →Nomad AI Workspace
¿Qué te parece?
Cargando comentarios…