Pourquoi le Fail-closed l'emporte
« Fail-closed » signifie : lorsqu'un système n'est pas sûr, il refuse — au lieu de laisser passer dans le doute. Pour les agents IA autonomes, c'est la différence entre une attaque déjouée et une attaque réussie.
Fail-open vs. Fail-closed
Tout système de protection doit décider quoi faire lorsqu'il n'est pas sûr. Il existe deux postures :
- Fail-open : dans le doute, laisser passer. Confortable, jamais gênant — mais chaque faille de jugement devient une porte ouverte.
- Fail-closed : dans le doute, bloquer ou demander. Parfois gênant — mais un cas ambigu ne devient jamais silencieusement un dommage.
Pour une serrure, le choix est évident : un système de verrouillage qui s'ouvre simplement en cas de coupure de courant n'est pas une sécurité. Avec les agents IA, on oublie souvent cette même logique.
Pourquoi les agents en particulier ont besoin du Fail-closed
- Persistance : ce qui entre une fois dans les Memory Files y reste. Une erreur fail-open n'est pas fugace, elle se sédimente.
- Autonomie : personne ne surveille chaque action. Le défaut sûr doit être intégré, et non dépendre de la vigilance humaine.
- Ambiguïté : les entrées malveillantes ressemblent aux entrées légitimes. Un modèle sera souvent « plutôt incertain » — et c'est précisément alors qu'il ne faut rien laisser passer.
Comment PoisonZero met en œuvre le Fail-closed
PoisonZero évalue chaque modification avec un seul chiffre : un niveau de danger (0–1). Il en découle une logique claire et conservatrice :
# Logique de décision (simplifiée) Danger ≥ seuil de blocage → revert Danger ≤ seuil de sûreté → allow sinon (tout l'ambigu entre les deux) → quarantine
Le point décisif est la dernière ligne : ce qui n'est pas jugé clairement inoffensif ne passe pas. C'est mis en quarantaine : l'état sain est restauré sur le disque immédiatement et la version suspecte est mise de côté pour que vous l'examiniez plus tard, de façon asynchrone. Rien n'attend un humain et personne n'est interrogé en temps réel ; le cas est simplement là, prêt pour vous. Vous fixez vous-même les seuils par agent — expliqués clairement, avec des curseurs plutôt que des fichiers de configuration.
Le prix, et pourquoi il en vaut la peine
Le Fail-closed implique parfois une demande qui s'avère a posteriori inutile. C'est le prix. En face, il y a une entrée empoisonnée qui fausse en silence chaque décision future. Cette asymétrie — un petit désagrément visible contre un grand dommage invisible — est la raison même pour laquelle le Fail-closed l'emporte.
Sûr par défaut.
Dans le doute, PoisonZero choisit le côté sûr — et vous laisse tracer la limite vous-même.
Sign me upÀ lire aussi : Qu'est-ce que le Memory Poisoning ? · Les agents IA dans la pipeline CI/CD · Le moteur qui ne sait que lire et répondre