Ce que montre cet exemple. Un reviewer, humain ou agent, a souvent besoin d’une porte rapide avant un merge : quel est le risque de ce diff, et met-il les données en danger ? Cet exemple pose les deux en une requête. risk est un score à quatre niveaux (Aucun risque, Faible, Élevé, Bloquer le merge) et security une question oui/non : « Ce changement affecte-t-il la sécurité ou la sûreté des données ? »
Entrée et résultat d’exemple (données d’exemple, pas une exécution live).
Le diff modifie scripts/clean.sh, remplaçant rm -rf ./build/cache par un chemin lu depuis la config : DIR="$(read_config cache_dir)" puis rm -rf "$DIR/". Le contexte note que cache_dir peut être absent ; alors read_config renvoie une chaîne vide et la commande devient rm -rf "/".
Résultat : Bloquer le merge, 68 % (Élevé 27 %). Probabilité sécurité : 0,86.
Ajoutez une ligne : "${DIR:?cache_dir is not set}" pour qu’une valeur absente fasse échouer le script au lieu de supprimer la racine. Résultat : Faible, 63 % (Élevé 22 %, Aucun risque 12 %). Probabilité sécurité : 0,31.
Comment l’utiliser. La sortie est un score et une probabilité, pas un commentaire de review — branchable en CI ou boucle d’agent : bloquer si « Bloquer le merge » est élevé, envoyer les scores moyens à un humain, laisser passer le reste. Fixez les seuils avec l’historique du dépôt. La requête d’exemple utilise Decider (decider-v1.1).