Deuda técnica de IA en repositorios de software
¿El código generado por IA acumula más deuda técnica? Analizamos más de 5.000 repositorios de GitHub para averiguarlo.
Resumen
A medida que los asistentes de codificación con IA se vuelven ubicuos, surge una pregunta crítica para la ingeniería de software: ¿el código generado por IA acumula deuda técnica más rápido que el escrito por humanos? Este estudio empírico extrajo datos de más de 5.000 repositorios públicos de GitHub, clasificó commits asistidos por IA vs. escritos por humanos, y ejecutó análisis estático para comparar métricas de calidad de código a escala.
El problema
Herramientas de codificación con IA como GitHub Copilot están ampliamente adoptadas, pero su impacto a largo plazo en la mantenibilidad del código es desconocido. La evidencia anecdótica sugiere que el código de IA puede pasar tests mientras introduce smells sutiles — lógica duplicada, métodos excesivamente complejos, documentación faltante. Este estudio proporciona la primera medición empírica a gran escala.
Preguntas abordadas
- 01
¿Los repositorios con altas tasas de commits asistidos por IA están asociados con mayor densidad de deuda técnica (issues por KLOC)?
- 02
¿Las categorías específicas de code smells (complejidad, duplicación, documentación) difieren significativamente entre código asistido por IA y escrito por humanos?
- 03
¿Existe un umbral de uso de IA más allá del cual las métricas de calidad se deterioran de forma medible?
Metodología
Recolección de datos
Usé la API de GitHub para identificar más de 5.000 repositorios con huellas de herramientas de IA en mensajes de commit y descripciones de PR (keywords: "Copilot", "ChatGPT", "AI-generated"). Emparejé cada uno con un repositorio control de tamaño, lenguaje y actividad similares. Extraje historiales de commits, conteos de contribuidores e issue trackers.
Análisis estático
Ejecuté análisis con SonarQube en todos los repositorios para medir: complejidad ciclomática, porcentaje de duplicación de código, cobertura de documentación y densidad de bugs. Clasifiqué hallazgos por severidad (blocker, critical, major, minor) y normalicé por KLOC para comparación justa entre tamaños de proyecto.
Análisis estadístico y hallazgos
Apliqué pruebas Mann-Whitney U (no paramétricas, apropiadas para distribuciones no normales) para comparar métricas de deuda entre grupos asistidos por IA y control. Calculé tamaños de efecto con Cohen's d. Construí modelos de regresión para identificar qué niveles de uso de IA correlacionan con degradación de calidad.
Resultados clave
Hallazgos clave
Los repositorios con >40% de commits asistidos por IA muestran tasas de duplicación estadísticamente significativamente más altas (p < 0.01, Cohen's d = 0.42) — un tamaño de efecto medio.
La cobertura de documentación es 23% menor en promedio en repositorios con alto uso de IA, sugiriendo que las herramientas de IA generan código funcional pero omiten docstrings y comentarios.
No se encontró diferencia significativa en densidad de bugs entre grupos, desafiando la suposición de que el código de IA es inherentemente más propenso a bugs.
La relación entre uso de IA y deuda técnica es no lineal: el uso moderado de IA (20–40%) no muestra degradación; solo el uso intensivo (>60%) dispara caídas medibles de calidad.
Conclusión
Los asistentes de codificación con IA no son inherentemente dañinos para la calidad del código — pero un uso intensivo y sin control correlaciona con mayor duplicación y documentación reducida. Los equipos deberían integrar herramientas de IA con políticas de code review que verifiquen específicamente smells de documentación y duplicación. El dataset completo y los scripts de análisis están disponibles para replicación.
Galería
