PASSER À L’ÉCHELLE · GUIDE 02 · LECTURE ~6 MIN · WILLIAM LEEMANS
L'IA dans la CI
En chantier Cette section est en cours d'écriture : ce guide est lisible mais pas encore finalisé, son contenu peut évoluer.
Le guide précédent s’est arrêté au sas : la production d’un agent entre dans le circuit de revue commun, jamais directement sur la branche principale. Mais un circuit de revue dimensionné pour des PR humaines ne survit pas à la cadence des agents. La production n’est plus le goulot d’étranglement. L’intégration l’est.
La réponse n’est pas de relire plus vite. C’est de déplacer dans le pipeline tout le jugement qui peut être rendu par une machine, et de savoir précisément lequel peut l’être. Ce guide distingue les deux natures du jugement machine, le verdict et l’avis, et montre où placer chacun.
Verdict et avis : deux jugements qui ne se mélangent pas
Tout ce qu’une CI peut dire d’un diff appartient à l’une de deux familles, et les confondre est l’erreur structurante de l’IA dans le pipeline :
- Le verdict est déterministe : compilation, types, tests, lint. Même entrée, même sortie, toujours. Un verdict peut bloquer un merge, parce qu’un verdict ne se discute pas. Il se corrige.
- L’avis est probabiliste : une revue par un modèle, une analyse de cohérence, un score de risque. Même entrée, sortie variable. Un avis peut orienter l’attention humaine, jamais la remplacer. Et encore moins tenir lieu de condition de merge.
Cette distinction n’est pas une coquetterie de vocabulaire, c’est une règle de placement : dans le pipeline, le déterministe bloque, le probabiliste informe. Une équipe qui fait bloquer ses merges par l’opinion d’un modèle découvre vite les deux issues possibles : soit on apprend à contourner le juge, soit on apprend à lui plaire. Aucune des deux ne produit de la qualité.
Durcir le verdict avant d’ajouter de l’avis
Avant de brancher un modèle dans le pipeline, posez-vous la question honnête : votre CI déterministe mérite-t-elle déjà la confiance qu’on va lui demander de porter ? Parce qu’elle change de rôle. Tant que les auteurs étaient humains, la CI était un filet. Quand l’auteur est un agent, elle devient le mécanisme de correction d’erreur lui-même. C’est contre elle que l’agent itère, c’est elle qui fait foi quand personne ne regarde.
Trois conséquences directes :
- Tout ce que la revue corrigeait par habitude doit devenir une règle. Conventions de nommage, périmètres d’import, motifs interdits : un relecteur humain les faisait respecter à l’oral. Un agent satisfait ce qui est vérifié, et exactement ça. Une convention non encodée dans le lint ou les types n’existe plus. Le guide 01 l’a posé pour les garde-fous : une règle écrite dans le prompt est une probabilité, une règle appliquée par le système est une garantie.
- Un test flaky est une dette qui s’aggrave. Un humain relance le job en soupirant. Un agent, lui, « résout » le flake : en relançant jusqu’à ce que ça passe, en assouplissant l’assertion, ou en supprimant le test. Un verdict qui se contredit perd son autorité, et un verdict sans autorité enseigne à l’agent que l’échec se négocie.
- La sortie de la CI est désormais lue par des machines. Un échec doit être rapide, localisé et lisible : message d’erreur explicite, test en cause identifiable, log exploitable. Chaque minute de pipeline et chaque message cryptique se paient à chaque itération de chaque agent. La boucle de feedback est devenue un coût de production.
La revue automatisée : un relecteur de plus, pas un juge
Une fois le verdict solide, l’avis trouve sa place. Une revue par un modèle sur chaque PR fait bien trois choses. La première passe : repérer l’incohérence avec les conventions du projet, le cas limite non géré, l’écart entre le diff et ce que l’issue demandait. Le tri de l’attention : signaler les zones du diff qui méritent la vigilance humaine, celles que Relire du code qu’on n’a pas écrit apprend à lire en premier. Et la constance : le relecteur machine n’est jamais fatigué un vendredi soir, et la fatigue de revue est précisément ce que la cadence des agents épuise en premier.
Ce qu’elle ne fait pas, par construction : porter la responsabilité. Un avis de modèle est une sortie de modèle. Plausible avant d’être vraie, sensible à la formulation, complaisante envers le code propre. La revue automatisée commente, suggère, alerte ; l’approbation reste un acte humain, parce qu’approuver n’est pas constater, c’est engager.
Le tips Craftomancer
Méfiez-vous du circuit fermé : un agent qui produit, un modèle qui approuve, et personne entre les deux. L’agent producteur itérera jusqu’à satisfaire le relecteur machine. Il optimise alors la vraisemblance d’une bonne PR aux yeux d’un modèle, pas la qualité du code. Deux jugements probabilistes qui se valident l’un l’autre ne font pas une vérification : ils font un écho. La boucle ne se ferme que sur un verdict déterministe ou un humain.
Composer le pipeline : ordonner les jugements
Reste la composition. Le principe d’ordonnancement est économique : le moins cher et le plus sûr d’abord. Format, lint, types en secondes ; tests unitaires en minutes ; intégration et avis du modèle ensuite ; l’attention humaine (la ressource la plus rare du système) en dernier, sur ce que rien d’autre n’a pu trancher. Chaque étage existe pour protéger le suivant. Un avis de modèle sur un code qui ne compile pas est un avis gaspillé. Une revue humaine sur un diff que le lint aurait rejeté est une insulte au relecteur.
Ce classement a un corollaire qui déplaît : si une vérification importante n’existe qu’en revue humaine, la priorité n’est pas d’ajouter de l’IA au pipeline. C’est de descendre cette vérification d’un étage : en faire un test, une règle de lint, un contrat de type. L’IA dans la CI ne crée pas de la rigueur, elle amplifie celle qui existe. Branchée sur un pipeline mou, elle amplifie du mou.
En pratique
- Classez chaque contrôle du pipeline : verdict (déterministe) ou avis (probabiliste). Le verdict bloque, l’avis informe. Jamais l’inverse.
- Encodez en lint, types et tests ce que la revue corrigeait à l’oral : une convention non vérifiée mécaniquement n’existe pas pour un agent.
- Traquez le flake comme un incident : un verdict qui se contredit enseigne à l’agent que l’échec se négocie.
- Branchez la revue par modèle comme première passe et tri d’attention. L’approbation reste humaine, parce qu’elle engage.
- Jamais de circuit fermé agent-producteur / modèle-approbateur : la boucle se ferme sur un verdict déterministe ou un humain.
- Ordonnez par coût croissant et gardez l’attention humaine pour ce que rien d’autre ne tranche.
Un pipeline durci tient la cadence d’un agent ; il reste à le faire tenir à l’échelle d’une équipe. Conventions partagées, responsabilité du code généré, transmission du savoir-faire : c’est l’objet du guide suivant, sur les pratiques d’équipe.