Zig interdit les contributions de code généré par l'IA, car elles sont « systématiquement de mauvaise qualité »le projet affirme qu'il veut préserver le temps précieux des réviseurs humains
Le président de la fondation Zig a instauré une interdiction stricte concernant l'usage de l'IA pour les contributions au code source du langage. Andrew Kelley qualifie ces soumissions automatisées de déchets numériques dépourvus de valeur, car elles surchargent inutilement les réviseurs humains déjà très sollicités. Contrairement aux Big Tech, ce projet open source privilégie le mentorat et le développement des compétences personnelles plutôt que la productivité pure. Cette politique radicale vise à protéger la qualité logicielle tout en évitant le temps perdu à corriger des erreurs générées par des machines. Zig n'est pas le premier à emprunter ce chemin.
Zig est un langage de programmation système conçu pour apporter des améliorations polyvalentes au langage de programmation C. Il s'agit d'un logiciel libre et open source, publié sous licence MIT. Les différences avec le langage C concernent le flux de contrôle, les appels de fonction, l'importation de bibliothèques, la déclaration de variables et la prise en charge de l'Unicode. De plus, le langage Zig n'utilise ni macros ni instructions de préprocesseur.
Parmi les fonctionnalités empruntées aux langages modernes, on trouve l'ajout de types de données de programmation générique à la compilation, et un petit ensemble de nouvelles directives de compilation permettant d'accéder aux informations sur ces types à l'aide de la réflexion.
Perte de temps critique pour les mainteneurs très sollicités
Zig est géré par une association à but non lucratif de type 501(c)(3) et un réseau de contributeurs. Tout développeur peut soumettre du code à son référentiel, à condition de respecter un code de conduite. Zig vient d'ajouter une nouvelle règle interdisant la soumission de code généré par l'IA. La politique prévient : aucun contenu généré par une IA, aucune paraphrase issue d'une IA, aucun élément édité, issu d'une réflexion ou débogué par une IA.
Andrew Kelley, le président de la fondation Zig, justifie cette décision en qualifiant les contributions faites par l'IA de déchets systématiques n'ayant aucune valeur. Selon lui, ces soumissions ont en réalité une valeur négative, car elles gaspillent le temps de la petite équipe chargée d'examiner le code. Le processus de révision constitue le principal goulot d'étranglement du projet, l'équipe étant déjà débordée par le nombre élevé de requêtes en attente.
Ces ajouts générés par l'IA ralentissent considérablement le groupe et proviennent généralement de contributeurs de passage qui ne s'investiront pas durablement dans le projet. « Les gens nous envoient des contributions qui n'ont absolument aucune valeur. Elles ont même une valeur négative, car elles font perdre du temps à l'équipe en révision », a déclaré Andrew Kelley dans un récent épisode du podcast de la société de logiciels JetBrains.
Au moment de l'enregistrement, Andrew Kelley a indiqué que Zig comptait 200 pulls requests en attente. « Nous avons fait perdre du temps à tout le monde », a-t-il déclaré. Bien que Zig soit relativement modeste comme langage de programmation, son impact a été considérable. Ce langage a notamment servi à créer Bun, qui a ensuite été racheté par Anthropic. L'interdiction de l'IA a par la suite provoqué de vives tensions entre Bun et Zig.
Priorité à l'apprentissage plutôt qu'à la productivité intense
Le code généré par l'IA fait fureur dans la Silicon Valley, porté par des outils comme Claude Code d'Anthropic ou Codex d'OpenAI. Certain l'utilisent pour éditer leur code, d'autres pour le rédiger entièrement. Les Big Tech se sont fixé des objectifs ambitieux quant à la part de code produite par l'IA. Mais contrairement aux géants de la tech qui cherchent à maximiser leur efficacité grâce à l'IA, la mission fondamentale de Zig repose sur le mentorat.
Zig n'a pas pour mission d'atteindre une efficacité maximale. « Nous essayons tous de nous améliorer en programmation. Les personnes qui envoient des pulls requests générées par l'IA ne contribuent pas à cet objectif », a déclaré le président Andrew Kelley. Ces développeurs IA sont des « contributeurs occasionnels », c'est-à-dire ceux qui peuvent soumettre une ou deux demandes de fusion, mais qui ne rejoindront jamais l'équipe principale.
Bref, l'IA est banni. Andrew Kelley a expliqué que s'il avait déclaré que seules les pulls requests de « bonne qualité » générées par l'IA seraient acceptées, les réviseurs auraient dû les évaluer une par une. « Si je dis qu'aucune ne sera acceptée, alors c'est une politique très facile à appliquer », a-t-il déclaré.
Plusieurs projets ont interdit les rapports générés par l'IA
L'adoption des outils d'IA par les plateformes telles que HackerOne pose un problème majeur à la communauté des logiciels libres : la multiplication de rapports de vulnérabilités générés par des outils d'IA, souvent erronés ou trompeurs, qui submergent les mainteneurs. Les fabricants de modèles d'IA s'attendent à ce que l'IA aide les développeurs à détecter les bogues beaucoup plus rapidement afin de jouir de plus de temps pour innover.
Mais il s'avère que ces rapports sont en majorité le résultat des hallucinations de l'IA, et donc inutiles. Seth Larson, développeur de sécurité en résidence à la Python Software Foundation, a soulevé la question dans un billet de blogue en décembre 2024. Il a exhorté les personnes qui signalent des bogues à ne pas utiliser de systèmes d'IA pour la chasse aux bogues. Selon lui, les systèmes d'IA actuels ne sont pas fiables dans ce contexte.
« J'ai remarqué une augmentation des rapports de sécurité de qualité extrêmement médiocre, spammés et hallucinés par les LLM dans les projets open source. À première vue, ces rapports de bogue semblent potentiellement légitimes et nécessitent donc du temps pour être réfutés », écrivait-il, rappelant les résultats similaires obtenus par le projet cURL en janvier 2024. Début 2025, c'est le créateur du projet cURL qui a exprimé son ras-le-bol.
Dans certains cas, les auteurs des signalements erronés sont des personnes novices qui testent des IA sur du code. Ou pire, elles utilisent les rapports générés par l'IA pour tenter d'obtenir des récompenses financières via des programmes de primes aux bogues sans fournir de véritables contributions.
Par exemple, quatre rapports de vulnérabilité malavisés ont été publiés par une personne apparemment à la recherche d'une réputation ou d'une prime de détection de bogues. « L'une des façons de s'en rendre compte, c'est que le rapport est toujours très agréable. Formulé de manière agréable, en anglais parfait, poli, avec de jolis points... un humain ordinaire ne le ferait jamais de cette manière dans son premier rapport », a déclaré Daniel Stenberg.
Vouch : un système de gestion de la confiance communautaire
Ces dernières années, le nombre de personnes utilisant les outils d'IA pour générer du code au lieu de l'écrire eux-mêmes a augmenté. Cependant, une grande partie du code généré par l'IA est de mauvaise qualité. En conséquence, le coût croissant de l'élimination du code de mauvaise qualité généré par l'IA est devenu un problème épineux pour les projets open source disposant déjà de peu de ressources et reposant sur la coopération communautaire.
Pour remédier à ce problème, le développeur de logiciels Mitchell Hashimoto a lancé un système appelé « Vouch » qui élimine les personnes soumettant du code de mauvaise qualité et maintient la qualité des projets open source. Il se dit lasser de jouer au chat et à la souris avec les rapports de mauvaise qualité.
Vouch introduit un modèle de confiance explicite. Un contributeur ne peut soumettre une pull request que s’il a été préalablement approuvé par un contributeur déjà reconnu comme fiable. « La légitimité n’est plus implicite, mais formalisée, ce qui inverse la logique par défaut de l’ouverture totale ». Vouch repose sur des actions GitHub. Une action vérifie automatiquement si l’auteur d’une pull request figure dans la liste des contributeurs approuvés.
D’autres actions GitHub permettent d’ajouter ou de retirer des contributeurs, en s’appuyant sur des décisions humaines documentées dans le dépôt. Les informations de confiance sont stockées dans un fichier texte unique, versionné avec le projet. Ce choix favorise la transparence, l’auditabilité et l’automatisation.
Vouch permet de réutiliser ces listes entre projets, ouvrant la voie à des réseaux de confiance partagés entre dépôts ayant des exigences similaires. La mise en œuvre est générique et peut être utilisée par n'importe quel projet sur n'importe quelle forge de code, mais le développeur fournit une intégration GitHub prête à l'emploi via les actions GitHub et l'interface CLI. Le projet Vouch vise à faire face à l'afflux de pulls requests de mauvaise qualité.
Source : Andrew Kelley, président de la fondation Zig
Et vous ?
Quel est votre avis sur le sujet ?
Que pensez-vous de l'interdiction de l'IA par le projet open source Zig ?Voir aussi
Vouch : un système visant à maintenir la qualité de l'open source face à l'afflux de pulls requests de mauvaise qualité générées par l'IA, il permet de gérer la confiance dans les contributeurs à un projet
Le projet open source cURL interdit les rapports de bogue inutiles générés par l'IA : « nous n'avons toujours pas vu un seul rapport de sécurité valide rédigé avec l'aide de l'IA »
Les mainteneurs de logiciels libres sont noyés dans des rapports de bogues inutiles rédigés par l'IA. « Ces systèmes ne sont pas encore capable de comprendre le code », estime un développeur
Vous avez lu gratuitement 2 861 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
