HeadlinesBriefing favicon HeadlinesBriefing.com

Détecter les défaillances silencieuses des agents de codage

Towards Data Science •
×

Vibe coding permet à quiconque de créer une application web avec une invite en langage naturel, promettant que vous ne lirez jamais le code généré. Pourtant, les défaillances silencieuses restent un problème majeur. L'interface utilisateur peut sembler correcte, mais cliquer sur un bouton 'Ajouter au panier' peut afficher un message de réussite et mettre à jour le compteur du panier sans réellement enregistrer les données dans la base de données. Le débogage nécessite d'interagir avec l'interface, de lire les journaux et, en fin de compte, de lire le code généré, ce qui va à l'encontre du but de Vibe coding.

Une étude d'applications réelles codées par Vibe coding a révélé que même les modèles de pointe introduisent fréquemment des défaillances silencieuses au fil des itérations. Celles-ci incluent des échecs dans le suivi des mises à jour d'état, des déconnexions d'état entre gestionnaires et des retours d'interface déconnectés—où un message de réussite apparaît mais les données ne sont pas enregistrées. Par exemple, l'ajout d'une fonctionnalité de code promotionnel pourrait afficher 'Remise appliquée !' sans persister ni afficher le nouveau total.

Les méthodes de vérification actuelles sont inadéquates. Les LLM en tant que juges ne sont pas fiables, produisant souvent des hallucinations ou manquant des bugs. Les tests unitaires nécessitent l'écriture de plus de code, manquent de couverture d'intégration de l'interface au backend, et sont inaccessibles aux non-programmeurs. L'analyse statique est précise mais a une courbe d'apprentissage abrupte.

Flow Check, développé par un doctorant au DAP Lab de Columbia, est un langage de contraintes et un pipeline d'analyse statique qui permet aux utilisateurs de spécifier comment une application doit se comporter directement depuis l'interface. Les utilisateurs sélectionnent des composants d'interface, des API et du stockage via une superposition, exprimant des contraintes comme 'Lorsque j'effectue [action], ceux-ci se mettent à jour : [composant]', puis les vérifie par rapport au code réel sans lire une seule ligne.

Entités clés : Entreprises : Towards Data Science, Claude, Deep Seek, Gemini | Personnes : Tim Cook, Elon Musk | Lieux : Columbia