Les projets open source sont submergés par des rapports de bogues et des pulls requests de mauvaise qualité rédigés par l'IA. Pour faire face à ce problème, le développeur Mitchell Hashimoto a mis au point un outil appelé Vouch. Il s'agit d'un système de gestion de la confiance communautaire. Il fonctionne en exigeant que les nouveaux contributeurs soient cautionnés par des contributeurs existants avant de pouvoir contribuer, et permet de dénoncer et de bloquer les contributeurs problématiques. L'intégration est simple via GitHub Actions, et le système est indépendant de la forge, laissant les critères de cautionnement à la discrétion de chaque projet.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é.
Mitchell Hashimoto est un développeur et entrepreneur américain, connu pour être le cofondateur de HashiCorp, une entreprise spécialisée dans les outils d’infrastructure et de cloud computing. Il est l’auteur principal de projets open source très utilisés comme Vagrant, Terraform, Consul et Vault. Son travail se concentre notamment sur l’automatisation de l’infrastructure, la gestion des environnements de développement et la sécurité des systèmes distribués.
Vouch : un système de gestion de la confiance communautaire
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.
Check-pr
La première s’appelle « check-pr ». Elle s’exécute à chaque ouverture de pull request et vérifie automatiquement si l’auteur de la demande figure dans la liste des contributeurs approuvés (ou cautionnés). Si ce n’est pas le cas, la pull request est bloquée ou signalée comme non conforme.
Manage-by-discussion
La deuxième action est « manage-by-discussion ». Elle permet d’ajouter ou de retirer un contributeur de la liste de confiance à partir d’une discussion GitHub. Les décisions sont prises explicitement par les mainteneurs ou contributeurs autorisés et sont ensuite appliquées par l’action.
[SIZE=...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.