Les garde-fous | IdeAs — Augustin B
FR EN ES
Chapitre 6

Les garde-fous

Tests, règles et contraintes pour garder le contrôle.

Introduction : de l’architecture à la méthode

Dans les chapitres précédents (L’odyssée du contexte), j’ai testé plusieurs façons de charger et passer le contexte aux agents. J’ai fini par revenir à quelque chose de plus pragmatique en voyant l’impact direct sur le code.

J’avais une constitution claire et des fichiers d’instructions bien tenus. Sur le papier, tout était carré. Dans le code, c’était autre chose : l’IA génère, et parfois elle se trompe. Il me fallait des garde‑fous, pas des promesses.

Restaient les questions du quotidien : comment travailler avec les agents sans retomber dans l’usine à gaz ? Ce chapitre raconte comment j’ai posé des rails qualité pour que chaque itération renvoie un feedback immédiat.


État des lieux

À cette date, je vis déjà avec ces outils au quotidien. Mon setup contient :

Je jongle entre architecture, pilotage technique et outillage. Je code encore, mais surtout pour solidifier l’écosystème d’automatisations.

Le vrai sujet n’était plus d’empiler des consignes, mais de rendre la qualité vérifiable.


Vers des outils d’assurance qualité et d’orchestration

À partir de là, je cherche un signal simple : l’IA propose, le système répond. Si ça casse, je veux un retour clair, et de quoi corriger tout de suite. L’objectif n’est pas d’éduquer le modèle à coups de prompt, mais de mettre les limites dans le code.

On parle souvent de DX (Developer Experience) pour les humains. Moi, je parle d’AIX : la même idée, mais pour les IA. Quand je configure un linter, un message d’erreur ou un script, je le fais pour qu’une IA comprenne et se corrige seule. Si le retour est clair, elle repart. S’il est vague, elle patine et répète les mêmes erreurs.

Mermaid diagram

La boucle opérationnelle (du prompt aux garde-fous).

  1. Je formule la tâche (souvent en termes simples).
  2. L’IA planifie et explore la codebase, repère les patterns existants, propose une implémentation.
  3. Elle modifie le code et lance les tests locaux (scripts outillés).
  4. Elle sauvegarde et commit via Git.
  5. Mes hooks et pipelines se déclenchent automatiquement : linters, types, règles d’architecture, tests unitaires/intégration.
  6. Le feedback est renvoyé à l’IA (logs, erreurs, diffs), qui corrige et recommence jusqu’à validation.
  7. La CI rejoue la même batterie de contrôles (et quelques vérifications plus lourdes) avant d’autoriser la PR/merge.

Concrètement, voilà ce que j’ai mis en place :

Note (aujourd’hui) : mes workflows ont encore évolué. J’ai maintenant des hooks qui se déclenchent dès qu’un fichier est écrit ou modifié dans Claude Code (lint/typecheck). Le feedback est plus rapide, mais moins complet que les vérifications au commit et en CI.

J’ai épuré et publié le validateur d’architecture en open source : hex-validator. C’est un outil conçu pour mes choix d’architecture spécifiques, mais les règles et patterns peuvent servir d’inspiration.

L’idée est simple : laisser l’IA proposer, mais lui imposer un système qui valide, bloque ou renvoie un retour exploitable.


On verra la suite dans une phase de stabilisation plus longue, où ces garde‑fous sont mis à l’épreuve sur des projets réels.