Les benchmarks de code IA mesurent la memorisation, pas la comprehension¶
Resume¶
Trois etudes convergentes : (1) Les LLM scorent 84-89% sur benchmarks synthetiques mais 25-34% sur du vrai code production (heritage, frameworks, dependances). (2) Des changements cosmetiques (renommer une variable, reordonner des fonctions) cassent la capacite de debug dans 78% des cas. Le shuffling seul reduit la precision de 83%. (3) L'obfuscation (symboles changes, structure modifiee, logique identique) fait chuter les pass rates de 62.5%. Diagnostic : les LLM font du pattern matching sur la forme, pas du raisonnement sur la semantique ("Specialist in Familiarity").
Analyse critique¶
Recherche importante qui devrait refroidir les "vibe coders". Les donnees sont solides (3 papiers, 3 methodologies, 600k experiences de debugging). Le chiffre 25-34% est le vrai taux de reussite sur du code reel sans gouvernance. La question interessante : quel est ce taux avec specs formelles, contracts, tests et boucle de correction ? L'intuition dit qu'il remonte significativement — car on reduit l'espace de recherche du LLM et on donne des signaux deterministes (tests qui passent/echouent).
Lien direct avec le learning des branded types : si le LLM fait du pattern matching, findOrCreate(projectId: string) c'est juste "des strings" pour lui. Les types nominaux sont le filet de securite que le LLM ne peut pas fournir.
Pertinence ProbatioVault¶
Impact modere. Justifie l'approche specs + invariants + contracts + gates. Le taux de Gate 8 GO en v1 vs v2 vs v3 est un proxy direct de la "vraie" capacite des LLM sur du code production ProbatioVault.