QGIS vote l'interdiction du code écrit par IA

Le logiciel libre d'information géographique QGIS a changé sa politique sur l'IA en « interdit ». La proposition numérotée QEP 428 a été marquée Accepted et fusionnée le 7 octobre dans le dépôt des propositions d'amélioration de QGIS, avec un titre d'une seule phrase : No AI contributions permitted.

Elle a été lancée le 24 septembre par Nyall Dawson, développeur principal de QGIS, puis soumise au vote le 5 octobre. Dans son message de vote, il cite quatre membres ayant voté pour, et plusieurs autres ont exprimé clairement un +1 pendant la discussion ; le message d'ouverture a recueilli 25 pouces levés et 3 pouces baissés, et une quinzaine de personnes ont pris part aux échanges. QGIS est l'un des logiciels SIG de bureau open source les plus utilisés au monde ; après ce scrutin, le projet n'accepte plus de contributions de code écrites par une IA.

De l'« humain dans la boucle » à l'interdiction totale

QGIS appliquait jusqu'ici la QEP 408, dont le principe central s'appelle « human in the loop » : les outils d'IA étaient autorisés, à condition qu'une personne réponde de ce qui est soumis. Sur la liste de diffusion des développeurs, en juin, Dawson avait déjà jugé ces règles « plutôt souples » et évoqué les conflits que la communauté PostGIS avait connus à l'époque à cause de soumissions faites avec l'IA.

La proposition avance deux raisons principales. La première : les mainteneurs n'arrivent plus à suivre. Le volume de commits générés par l'IA dépasse la capacité de relecture humaine ; relire de force revient à relire sans soin, laisser passer nuit à la qualité du code. La seconde : la communauté open source repose sur les relations entre humains, et il faut préserver une place pour les contributeurs humains.

L'application de l'ancienne politique a aussi été discutée. L'étiquette « extractive » qui devait être créée n'a jamais vu le jour ; le membre uclaros a indiqué dans la discussion qu'environ 50 PR avaient été étiquetées « AI Assisted », dont une quarantaine ont finalement été fermées sans être fusionnées. Ce chiffre vient du fil de discussion, la page ne fournit pas de liste détaillée et il est pour l'instant impossible de le vérifier de façon indépendante.

Dawson présente la nouvelle règle comme une façon de « d'abord fermer la porte », pour la rouvrir ensuite progressivement au cas par cas, par exemple en utilisant l'IA à la place de l'autocomplétion de l'IDE ou pour traduire les textes de l'interface, à condition d'en avoir d'abord débattu en profondeur.

Comparaison avec GDAL et Godot

Dans le même milieu, GDAL a pris de l'avance. Ses règles disent noir sur blanc "Submission of vibe-coded contributions is banned" : un humain doit être l'auteur principal de la contribution ; les grands modèles ne peuvent servir que d'autocomplétion améliorée ou à des refactorisations mécaniques qui pourraient aussi être faites par des algorithmes déterministes ; les soumissions d'agents sans supervision sont refusées d'office ; et partout où un grand modèle est utilisé, il faut l'indiquer dans le ticket, le commentaire ou le message de commit.

Le moteur de jeu Godot penche davantage vers la responsabilisation, avec cette phrase centrale : "Contribute only what you understand". Le contributeur doit pouvoir expliquer son code aux mainteneurs et, s'il a utilisé l'IA, copié le code de quelqu'un d'autre ou mis en œuvre l'idée d'autrui, préciser quelles parties ne sont pas de lui.

Quand il a publié en juin, Dawson proposait de s'inspirer de l'association GDAL plus Godot. La QEP 428 finalement adoptée est plus dure que les deux : GDAL laisse au moins une porte entrouverte pour l'autocomplétion et la refactorisation mécanique, tandis que QGIS renvoie même ces cas à une discussion séparée ultérieure.

Comment l'appliquer, ce n'est pas encore dit

Côté application, il n'y a pour l'instant que des principes. Le membre timlinux a déclaré dans la discussion que le critère est de savoir si « vous avez écrit ce code vous-même, en votre âme et conscience », et que le projet n'ira inspecter l'ordinateur de personne. Autrement dit, la règle repose surtout sur l'autodiscipline des contributeurs, complétée par le jugement des mainteneurs lors de la relecture.

Aux frontières, plusieurs zones restent floues. vpicavet et adamjstewart ont demandé l'un après l'autre si les contenus autres que le code, comme les issues, les commentaires, les descriptions de PR et la documentation, étaient soumis à la même règle ; la ligne de partage entre « écrire du code avec l'IA » et « se servir de l'IA pour aider à chercher des bogues et relire » a elle aussi divisé les participants. À la fusion de la proposition, la page ne montrait aucune réponse formelle.

Pour les développeurs chinois qui participent à l'open source, l'effet direct de cette règle est qu'avant d'envoyer une PR au dépôt principal de QGIS, le code généré par des outils comme Copilot ou Cursor ne peut plus être apporté tel quel. De nombreux projets chinois d'information géographique, de topographie et de SIG administratif sont développés à partir de QGIS ; l'usage de l'IA dans leurs propres dépôts n'est pas encadré, mais lorsqu'ils renverront des correctifs vers le projet amont, ils devront se plier à la nouvelle règle.

Sources : page de discussion de la QEP 428 dans le dépôt des propositions d'amélioration de QGIS, liste de diffusion des développeurs QGIS, CocoLoop, politique d'IA du projet GDAL ; ont été vérifiés le numéro de la proposition, le nombre de votes favorables et la base du chiffre d'environ 50 PR AI Assisted.