Why Agentic-PRs Get Rejected: A Comparative Study of Coding Agents
Cet article analyse 654 pull requests rejetées à travers cinq agents de codage et une base de référence humaine afin d'identifier des modèles de rejet uniques et spécifiques aux agents, tout en proposant des heuristiques pour répondre au défi de l'absence de commentaires des réviseurs dans 67,9 % des cas.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez le développement de logiciels comme un immense chantier de construction en pleine effervescence. Habituellement, lorsqu'un travailleur (un développeur humain) termine une nouvelle pièce ou répare une fuite, il remet une « Demande de Changement » (une Pull Request) au chef de chantier. Le chef examine alors le travail et dit : « Super, construisons cela », ou « Non, cela ne fonctionnera pas ».
Récemment, un nouveau type de travailleur est arrivé : les Agents IA. Ce sont des robots capables de planifier, de construire et de soumettre leurs propres Demandes de Changement sans qu'un humain ne les tienne par la main. Cet article étudie ce qui se passe lorsque ces travailleurs IA soumettent leur travail par rapport aux travailleurs humains.
Voici la décomposition de l'étude, en utilisant des analogies simples :
1. Le gros problème : Le « Rejet Silencieux »
Les chercheurs ont examiné 654 Demandes de Changement rejetées provenant de cinq robots IA différents (comme Devin, Claude Code et GitHub Copilot) et les ont comparées aux demandes faites par des humains.
La découverte la plus choquante ? Deux rejets sur trois étaient silencieux.
- L'analogie : Imaginez que vous soumettiez un dessin à un concours, et qu'il soit jeté à la poubelle. Vous demandez : « Pourquoi ? », et le juge se contente de hausser les épaules et de s'en aller.
- La réalité : 67,9 % des demandes IA rejetées n'avaient aucune explication de la part du réviseur. La demande était simplement clôturée. Cela rend la tâche très difficile pour les chercheurs car ils ne savent pas pourquoi l'IA a échoué, puisque le « juge » n'a pas noté la raison.
2. Les erreurs « Spécifiques à l'IA »
Lorsque les chercheurs ont réellement trouvé des raisons de rejet, ils ont découvert que les robots IA commettent des erreurs que les humains ne font presque jamais. Ils ont identifié sept raisons de rejet spécifiques qui n'arrivaient qu'avec l'IA :
- La boîte « Trop Grande » : Les humains soumettent parfois de gros projets, mais les robots IA ont tendance à soumettre des changements massifs et écrasants d'un seul coup. C'est comme si une IA essayait de construire un gratte-ciel entier en une seule journée. Les gestionnaires les ont rejetés parce qu'ils étaient trop volumineux pour être examinés correctement.
- Le badge de « Méfiance » : Certains gestionnaires ne faisaient simplement pas confiance au code parce qu'il était fabriqué par un robot. Ils le rejetaient juste parce qu'il était généré par l'IA, craignant qu'il ne soit pas fiable ou qu'il ne soit « halluciné » (inventé).
- L'étiquette « Slop » : Dans un cas, le propriétaire d'un projet a rejeté une demande d'IA et l'a étiquetée « SLOP » (un terme d'argot pour désigner un contenu de faible qualité produit en masse), signifiant essentiellement : « C'est de la camelote générée par une machine ».
- L'échec de l'« Expérience » : Certaines demandes d'IA ont été soumises juste pour voir si le robot pouvait le faire, et non parce que quelqu'un voulait réellement ce code. Elles ont été rejetées car elles n'étaient pas destinées à un usage réel.
3. Les particularités « Propres aux Robots »
Différents robots IA ont des personnalités et des paramètres différents, ce qui entraîne des modèles de rejet uniques :
- L'effet « Devin » : Un robot spécifique, nommé Devin, possède un paramètre qui clôture automatiquement ses propres demandes si elles restent inactives trop longtemps. L'étude a révélé que beaucoup des rejets de Devin n'étaient pas dus à un mauvais code, mais parce que le robot lui-même disait : « Je m'ennuie, je ferme ceci », après 7 jours de silence.
- Le piège du « Contexte » : Certains robots IA ont été rejetés parce qu'ils ne pouvaient pas voir les fichiers ou les données « privés » dont ils avaient besoin pour terminer le travail. C'est comme un robot essayant de réparer une serrure, mais qui se retrouve bloqué à l'extérieur de la pièce où se trouve la clé.
4. La solution : Un « Filtre à Déchets »
Puisque tant de rejets n'avaient pas de notes (le problème du « Rejet Silencieux »), les chercheurs ont réalisé qu'ils avaient besoin d'un moyen de nettoyer les données avant de les étudier. Ils ont créé un filtre simple (un ensemble de règles) pour deviner quels rejets étaient réellement « silencieux » et lesquels pourraient contenir des indices cachés.
- Les règles du filtre : Ils ont recherché des demandes qui étaient :
- Clôturées par la personne qui les a écrites (Auto-clôturées).
- Clôturées très rapidement (par exemple, en moins de 7 jours).
- Clôturées sans qu'aucun commentaire ne soit laissé.
- Le résultat : En utilisant ces règles, ils ont pu filtrer le « bruit » (les rejets silencieux et inutiles) et se concentrer sur ceux où les gestionnaires avaient réellement expliqué pourquoi ils avaient dit « Non ». Cela aide les futurs chercheurs à obtenir une image plus claire de ce qui ne va pas.
Résumé
L'article conclut que bien que les agents d'IA construisent du code plus rapidement que jamais, ils sont rejetés plus souvent que les humains. Ce n'est pas seulement parce que leur code est buggé ; c'est parce qu'ils :
- Soumettent des choses trop grandes ou complexes.
- Provoquent un manque de confiance de la part des gestionnaires humains.
- Présentent des « comportements de robot » uniques (comme l'auto-clôture) que les humains n'ont pas.
- Sont souvent rejetés sans que personne n'explique pourquoi, ce qui rend difficile l'apprentissage des erreurs.
L'étude fournit un « filtre » pour aider à nettoyer ces données afin que nous puissions mieux comprendre comment rendre ces travailleurs d'IA plus fiables à l'avenir.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.