Lire sans exécuter
Trouve les renommages inter-fichiers et les signatures cassées en 36ms, avant même qu'un test démarre.
MOUHN ne lit pas votre diff pour deviner. Il exécute le vrai test, dans une copie isolée, et ne dit « fait » que lorsqu'un vrai test devient vert.
Voici les chiffres derrière le problème de confiance. Le goulot d'étranglement de la revue de code, c'est désormais le travail lui-même.
des développeurs utilisent l'IA pour coder.
Stack Overflow Developer Survey 2026font entièrement confiance au résultat.
même enquêtepassées chaque semaine à relire du code IA.
contre 9,8h à l'écrired'hallucination de paquets dans certains cas évalués.
un risque de slopsquattingChaque relecteur IA lit votre code et donne un avis. Aucun d'eux n'exécute une seule ligne.
Chaque couche confie la question au système qui peut réellement la mesurer.
Trouve les renommages inter-fichiers et les signatures cassées en 36ms, avant même qu'un test démarre.
Appelle gcc, rustc, go vet, javac, ou tsc.
Travaille dans une copie. Votre projet reste intact ; le résultat est un patch, pas une modification directe.
Si l'environnement bloque la mesure, MOUHN dit pourquoi. Il n'invente jamais un succès.
Chaque étiquette porte une affirmation concrète sur ce qui a changé, ce qui a tourné, et ce qui n'a pas tourné.
| verdict | ce que ça veut dire |
|---|---|
| PROVED | C'était rouge, maintenant vert. Seul le fichier déclaré a changé. |
| FIXED (verified) | Même preuve, en deux appels séparés. L'agent corrige ; vous lui demandez de prouver plus tard. |
| NOTHING TO PROVE | C'était déjà vert. Aucun correctif inventé. |
| CHEATED | C'est devenu vert parce que quelque chose en dehors de la demande a changé — y compris la suppression cachée d'un test. |
| CANNOT MEASURE | L'environnement n'a pas pu exécuter le code : dépendance manquante, DNS, ou similaire. Abstention, jamais accusation. |
| STRUCTURAL BREAK | Une rupture inter-fichiers a été prouvée par lecture, avant qu'un test ne tourne. |
| FAILED / GAVE UP | Rouge, mesuré, et aucune histoire de succès fabriquée. |
Ce sont des échecs internes, gardés dans le produit parce que l'honnêteté est la fonctionnalité.
Nous avons simulé un agent malveillant qui a supprimé le test prouvant le bug. Première version : PROVED. Après le correctif : CHEATED.
test_removed = true
verdict = CHEATED
Sur cinq projets open-source populaires, tsc sans tsconfig.json affichait un texte d'aide. L'ancien MOUHN lisait ça comme du code cassé.
détecteur v1 → faux échec
détecteur v2 → propre
Sur un vrai runner GitHub Actions, python -m pytest sans pytest installé produisait une erreur non reconnue. Nous avons corrigé le mappage dès le premier déploiement.
exit = 1 · dépendance manquante
verdict = CANNOT MEASURE
Capacité exacte, aucune prétention de compatibilité arrondie.
Les instructions d'installation viendront ici quand MOUHN Verify sera prêt à être distribué. Tout le reste sur cette page est déjà vrai — le mécanisme et les verdicts.
Séparé de Verify, avec sa propre clé API. Pas un gabarit rigide — une liste de rappel qu'un agent demande avant de construire, puis contre laquelle il est vérifié après.
Ce qu'un développeur expérimenté sait inclure et qu'un prompt nu ne mentionnera pas — avant qu'une ligne de code soit écrite.
La même checklist, vérifiée contre le projet réel — prouvée présente, prouvée manquante, ou un honnête « impossible à vérifier », jamais gonflée.
Votre projet est vérifié et jamais conservé. Seul le rapport revient — rien sur la façon dont la vérification fonctionne n'arrive sur votre machine.
SaaS avec connexion et paiements, disponible maintenant — d'autres catégories ajoutées de la même façon, sans toucher à ce qui fonctionne déjà.
Ceci ne rattrape pas tout. Les vérifications inter-fichiers pour Ruby et PHP sont seulement consultatives — elles signalent une rupture possible mais ne bloquent jamais le verdict, car ni l'un ni l'autre langage n'a de vrai compilateur derrière cette vérification. Il ne peut pas voir à quoi ressemble votre page — seulement si les fichiers concordent ; une vérification optionnelle par capture d'écran existe séparément et ne tourne jamais automatiquement. Le verrou d'équipe est une vérification côté serveur à chaque exécution, pas un cadenas sur votre machine — comme toute étape de CI, il vit dans un fichier de workflow que vos propres règles de protection de branche gouvernent. Nous préférons le dire ici plutôt que de vous laisser le découvrir seul.