Blogue

Corriger avec l'IA : un clic quand une publication échoue

Quand une publication échoue sur Mythex, la boîte de dialogue vous explique maintenant ce qui s'est réellement passé et vous offre deux boutons à chaque échec : Fix with AI et Try again. Fix with AI transmet à l'agent l'échec et ce que votre app a affiché, pour qu'il corrige le projet et publie à nouveau. Si rien dans votre app n'était en cause, il republie simplement. Nous avons aussi cessé d'attribuer à « notre côté » des problèmes qui venaient de l'app, et nous détectons maintenant les apps qui plantent quelques minutes après leur mise en ligne.

Ce qui a changé

Fix with AI pour chaque échec

Avant, certains échecs affichaient Fix with AI et d'autres seulement Try again. La distinction reposait sur le responsable apparent de l'échec : si cela semblait venir de notre côté, nous ne voulions pas que l'agent poursuive du code qui était correct, à vos frais en crédits.

Vous deviez donc deviner le type d'échec. Maintenant, chaque échec propose les deux boutons. L'agent reçoit le type d'échec et la sortie qui l'accompagne : il corrige l'app si quelque chose ne va pas dans l'app, et republie si rien ne va. Vous n'avez jamais à déterminer de quel cas il s'agissait.

Les exceptions sont les cas où la réponse n'est pas dans le code. Un nom de lien déjà pris entraîne la proposition d'autres noms. Un solde de crédits épuisé vous offre un moyen d'en obtenir davantage.

Des messages qui disent ce qui s'est passé

Plusieurs échecs aboutissaient à « un problème de notre côté, publiez à nouveau », ce qui était faux, et republier ne réglait rien. Ils ont maintenant leurs propres messages :

  • « Votre app n'a pas démarré après la publication. » L'app a été publiée, mais n'a jamais commencé à accepter les connexions. Le plus souvent, elle écoute sur un autre port, ou seulement sur localhost. Une app publiée doit écouter sur 0.0.0.0 et sur le port indiqué dans $PORT. Au lieu d'attendre un délai fixe en espérant que tout aille bien, nous vérifions maintenant que l'app accepte réellement les connexions sur son port.
  • « Ce fichier est trop volumineux » / trop de fichiers. Les sites statiques ont une limite de taille par fichier (environ 25 à 30 Mo, selon le type de site) et une limite de 20 000 fichiers. Nous mesurons maintenant le dossier avant tout téléversement, de la même façon pour tous les types de fichiers, et le message énumère chaque fichier qui dépasse la limite.
  • « Votre app s'est arrêtée juste après son démarrage. » Cela vient généralement d'un réglage manquant, comme une variable d'environnement ou un secret, d'un plantage à la première requête, ou d'une erreur dans la commande de démarrage.

Détecter les apps qui plantent après la mise en ligne

Une publication peut réussir, et l'app échouer quelques minutes plus tard : elle continue de planter, ou fonctionne mais n'accepte plus les connexions. Mythex vérifie régulièrement les apps publiées. Si une app plante à répétition dans les quelques minutes qui suivent, ou si elle fonctionne sans accepter de connexions, la publication est marquée comme échouée, vous recevez un courriel, et le projet affiche le message avec Fix with AI.

Un plantage isolé dont l'app s'est remise seule ne compte pas comme une publication échouée. Si la cause était un manque de mémoire, vous recevez un courriel distinct à ce sujet.

Lorsque nous marquons une app en ligne comme échouée, nous enregistrons aussi ce que l'app a affiché à ce moment-là. Vous ne voyez jamais cette sortie brute, mais c'est ce que Fix with AI transmet à l'agent, qui part ainsi de la véritable erreur au lieu de deviner.

Comment l'utiliser

  1. Cliquez sur Publish comme d'habitude.
  2. En cas d'échec, lisez le message dans la boîte de dialogue. Il est rédigé pour vous dire ce qui s'est passé, et pas seulement qu'il y a eu un problème.
  3. Cliquez sur Fix with AI. L'agent lit la sortie du build ou les journaux de l'app, corrige le projet, et vous pouvez publier à nouveau.
  4. Si le message indique que rien ne cloche dans votre app, par exemple « La publication est occupée un moment » ou « La publication a été interrompue », Try again suffit généralement.
  5. Si vous avez reçu un courriel indiquant qu'une app en ligne plante sans arrêt, ouvrez le projet : le même message et Fix with AI vous y attendent.

Gardez le même nom de lien lorsque vous publiez à nouveau, sauf si le message indique que le nom pose problème.

Pourquoi nous l'avons conçu ainsi

Une publication ratée est souvent le premier véritable obstacle rencontré. L'app fonctionne dans l'aperçu, la personne clique sur Publish, et l'app ne démarre pas. Pour quelqu'un qui n'est pas développeur, « consulte tes journaux » n'est pas un conseil qu'il peut suivre. Fix with AI transforme ce moment en un seul clic, et des messages honnêtes font en sorte que, lorsque vous les lisez, ils désignent la bonne cause.

Limites

  • Fix with AI utilise l'agent, donc il consomme des crédits comme tout autre message.
  • Il peut corriger ce qui se trouve dans votre projet : le code, la configuration, la commande de démarrage. Il ne peut pas corriger un nom de lien déjà pris, une adresse courriel non vérifiée ou un solde de crédits vide.
  • Certains problèmes exigent une décision de votre part, par exemple déplacer un gros fichier vers le stockage ou le rendre plus petit.

Chaque message et ce qu'il faut faire pour le régler figurent dans la documentation : Dépannage de la publication. Pour la compétence plus large de corriger les problèmes quand ils surviennent, voir comment déboguer une app construite avec l'IA.

Mythex · Pricing · Créez n'importe quoi avec l'IA · Modèles de sites web et d'applications · Mythex comparé · Glossaire de la création d'applications avec l'IA · Outils gratuits pour créer des applications avec l'IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)