devops

Mantenimiento de código abierto en la era de la IA

Fuente: kubernetes.io 6 min de lectura

Compartir

Mantenimiento de código abierto en la era de la IA

Estás leyendo un resumen. El contenido completo está en kubernetes.io.

La IA realmente ha cambiado las reglas del juego en el desarrollo de software. Más personas están aprovechando la IA que nunca para contribuir con parches a los proyectos que utilizan. Para mí, esto es algo bueno, ya que más personas contribuirán con parches en lugar de bifurcarlos o no repararlos. El principal problema es que la IA ha hecho que generar código sea rápido, pero ha habido muy poca mejora en el mantenimiento de las bases de código. En este artículo, destacaremos las formas en que la comunidad de Kubernetes se está adaptando al mundo de la codificación asistida por IA. El primer paso de este camino fue desarrollar una política de IA. Esto puede parecer mundano y burocrático, pero hubo muchos PR que se desviaron hacia discusiones sobre el uso de la IA. La política de IA ayuda a guiar la conversación sobre la postura del proyecto respecto a la IA y proporciona una señal clara a los colaboradores sobre cómo utilizar estas herramientas de manera responsable. Política de IA de Kubernetes El proyecto Kubernetes ha establecido pautas claras para las contribuciones asistidas por IA que equilibran la innovación con la responsabilidad. Estas políticas están diseñadas para mantener la calidad del código y garantizar la supervisión humana, al mismo tiempo que reconocen que las herramientas de IA pueden ser ayudas valiosas en el proceso de desarrollo. Transparencia primero Los colaboradores deben divulgar cuándo se han utilizado herramientas de IA para ayudar con una solicitud de extracción. Una simple declaración en la descripción del PR, como "Este PR fue escrito en parte con la asistencia de IA generativa", es suficiente. Esta transparencia ayuda a los revisores a entender el contexto y aplicar el escrutinio apropiado. Responsabilidad humana Aunque las herramientas de IA pueden ayudar, el colaborador humano sigue siendo completamente responsable de cada cambio. La política prohíbe explícitamente: listar a la IA como coautor en los commits, usar co-firmas de IA en los commits y agregar etiquetas como "asistido por" o "co-desarrollado" que atribuyan el trabajo a la IA. Esto no se trata de disminuir el papel de la IA como herramienta, sino de mantener una clara responsabilidad. Si algo falla, debe haber un humano que entienda por qué y pueda solucionarlo. Aplicación de CLA para coautores La CNCF proporciona una herramienta para verificar los acuerdos de licencia de colaboradores en cada solicitud de extracción. Los agentes de IA no pueden resolver estos acuerdos de licencia de colaboradores, por lo que una de las medidas que tomó el proyecto fue habilitar la verificación de CLA para coautores. Esto proporciona una señal a los revisores de que el PR no está listo para fusionarse. Se requiere participación humana Quizás el aspecto más crítico de la política: los revisores esperan interactuar con humanos, no con IA. Los colaboradores no pueden confiar en que la IA responda a los comentarios de revisión. Si no puedes explicar personalmente los cambios que la IA ayudó a generar, tu PR será cerrado. Este requisito asegura que se produzca una transferencia de conocimiento y que los colaboradores comprendan genuinamente el código que están enviando. Obligaciones de verificación Los colaboradores deben verificar los cambios generados por la IA a través de la revisión del código, pruebas y comprensión personal. No es suficiente que el código funcione; necesitas saber por qué funciona y poder mantenerlo. Estas políticas reflejan un enfoque maduro hacia la IA: acéptala como una herramienta, pero nunca dejes que reemplace el juicio, la comprensión o la responsabilidad humanas. Revisiones automatizadas de IA Existen muchas herramientas para ayudar en la revisión del código. Las herramientas de solicitudes de extracción de IA introducen desafíos de gobernanza, por lo que una de las primeras tareas que asumió la comunidad fue documentar el proceso de lo que se necesita para incorporar nuevas herramientas de IA. Uno de los principales criterios de evaluación para estas herramientas es encontrar mantenedores dispuestos a probarlas en los repositorios de kubernetes-sigs. Kueue, JobSet y Agent-Sandbox han estado experimentando con estas herramientas para brindar más apoyo a los mantenedores. Copilot Una herramienta que muchos mantenedores comenzaron a usar fue GitHub Copilot. La CNCF proporciona acceso para mantenedores, por lo que esta terminó siendo la primera herramienta que muchos comenzaron a utilizar. Ofrece una buena experiencia en la optimización de revisiones, pero hubo algunas dificultades con esta herramienta. El mayor obstáculo para la adopción por parte de la comunidad es depender de que los colaboradores tengan una licencia de copilot. Solo los mantenedores podían solicitar revisiones de copilot y las revisiones automatizadas de solicitudes de extracción estaban fuera del alcance de la comunidad. Uno de los objetivos de las herramientas de revisión de IA es proporcionar una herramienta de revisión automatizada que los mantenedores no necesiten solicitar. Esto demostró la necesidad de control organizativo en lugar de depender de que los colaboradores tuvieran acceso. CodeRabbit A mediados de 2026, la comunidad de Kubernetes ha implementado CodeRabbit en algunos proyectos. Al igual que con copilot, se ha requerido cierta optimización para proporcionar mejores revisiones, pero la retroalimentación general ha sido positiva. Hay mucha configuración disponible para esta herramienta y uno de los usos más interesantes de esta herramienta proviene de agent-sandbox. Las herramientas de solicitudes de extracción de IA pueden ser un filtro de calidad. Los colaboradores pueden al menos obtener una revisión rápida sin esperar por un mantenedor. Agent-sandbox ha agregado una etiqueta en los PR para reflejar que aún es necesario resolver algunos de los comentarios de las herramientas de IA. Próximos pasos La realidad es que aprovechar la IA en proyectos de código abierto es un área de exploración activa. La comunidad podría usar tu ayuda en la optimización de herramientas de revisión, evaluación de herramientas o evaluación de tecnologías emergentes en el área de IA. Algunas áreas que estamos explorando más son: el uso de habilidades de IA para reducir el agotamiento de los mantenedores, la triage asistida por IA de pruebas que fallan y habilidades para ayudar en los aspectos operativos de Kubernetes.

Artículos relacionados