Gli errori di pubblicazione ora dicono cosa è successo, in parole semplici
Quando una pubblicazione fallisce su Mythex, la finestra ora ti dice in una sola frase semplice cosa è successo — la build è fallita, la tua app si è fermata dopo l'avvio, la tua app non è mai partita, un file è troppo grande, oppure qualcosa è andato storto dal nostro lato — e ti offre Fix with AI e Try again. L'output grezzo della build e della tua app arriva comunque all'agente, così Fix with AI può leggerlo e sistemare il progetto, ma non devi più leggerlo tu.
Cosa è cambiato
Una frase su cui agire
Ogni pubblicazione fallita ora ha un tipo, deciso nel momento in cui fallisce in base a fatti che abbiamo lì — quale passo è fallito, se la macchina dell'app ha segnalato crash, se l'app ha mai iniziato ad accettare connessioni — invece di leggere il testo dell'errore dopo. Ogni tipo ha il proprio messaggio:
| Cosa vedi | Cosa significa |
|---|---|
| "The build failed." | La build o il Dockerfile del tuo progetto non sono riusciti a compilare. |
| "Your app stopped right after it started." | È stata pubblicata, poi è uscita o continua a riavviarsi. |
| "Your app didn't start after publishing." | È stata pubblicata ma non ha mai iniziato ad accettare connessioni. |
| "This file is too big" / troppi file | Un sito statico supera il limite per file o per numero di file. Il messaggio elenca i file. |
| "This link name can't be used for publishing." | Cambia il nome del link e pubblica di nuovo; il tuo codice va bene. |
| "Publishing is busy for a moment" | Con la tua app non c'è nulla di sbagliato. Pubblica di nuovo tra qualche minuto. |
| "…a problem on our side, not in your app." | Tocca a noi risolverlo. Pubblica di nuovo tra qualche minuto. |
Fix with AI su ogni fallimento
Ogni fallimento mostra Fix with AI e Try again. Quando usi Fix with AI, l'agente riceve in privato il tipo di fallimento e l'output completo della build o dell'app, nel suo contesto. Se qualcosa nella tua app non va, lo sistema. Se non c'è nulla da sistemare — un momento di occupazione, o un problema dal nostro lato — può semplicemente pubblicare di nuovo. Non devi capire tu che tipo di fallimento fosse.
Problemi dopo essere andati online
Una pubblicazione può riuscire e l'app fallire qualche minuto dopo. Mythex controlla regolarmente le app pubblicate. Se un'app online continua a bloccarsi, oppure resta in esecuzione ma smette di accettare connessioni, la pubblicazione viene segnata come fallita, ricevi un'email, e il progetto mostra il messaggio con Fix with AI. Ciò che l'app ha stampato viene salvato perché l'agente lo legga.
Limiti di dimensione controllati prima del caricamento
Per i siti statici, la dimensione di ogni file e il numero totale di file vengono verificati prima che qualsiasi cosa venga caricata. Se qualcosa supera il limite, ricevi un unico messaggio che elenca ogni file troppo grande, invece di un fallimento a metà strada.
Perché l'abbiamo costruito
Una pubblicazione fallita mostrava un tempo ciò che gli strumenti dietro la pubblicazione avevano stampato. In una settimana di fine settembre, la maggior parte dei fallimenti mostrava testi di costruzione che erano nostra responsabilità, non loro: contatti di fatturazione, numeri di versione interni, percorsi del registro, errori di storage. Fix with AI incollava poi nella chat lo stesso testo. Alle persone veniva chiesto di fare il debug della nostra infrastruttura.
Parte di quel testo era anche semplicemente sbagliato. Un'app che non ascoltava sulla sua porta veniva segnalata come "un problema dal nostro lato", quando la soluzione era nell'app. Un file statico oltre il limite di dimensione veniva segnalato allo stesso modo — e ripubblicare non avrebbe mai potuto funzionare.
E ogni parte di Mythex che reagiva a un fallimento — la finestra, le notifiche, Fix with AI, i nostri avvisi interni — capiva cosa era successo confrontando parole nel testo dell'errore. Questo si rompeva ogni volta che la formulazione cambiava. Ora il tipo viene registrato nel punto in cui avviene il fallimento, e tutto il resto legge il tipo.
Abbiamo applicato la stessa regola anche ad altri errori, già che ci eravamo:
- Chat. Se la connessione cade mentre una risposta è in streaming, ora vedi la nostra frase invece del "Load failed" o "Failed to fetch" del browser.
- Domini personalizzati. I messaggi sull'acquisto o sul collegamento di un dominio ora vengono scelti in base allo stato e ai codici della risposta, invece di passare le frasi del fornitore del dominio.
- Generazione di immagini. La scheda mostra il nostro messaggio; l'agente riceve il dettaglio del servizio.
Come usarla
- Pubblica come al solito dal pulsante Publish.
- Se fallisce, leggi il messaggio di una riga nella finestra.
- Clicca su Fix with AI. L'agente legge l'output della build o i log della tua app, sistema ciò che non va, e ripubblica se nell'app non serviva correggere nulla.
- Oppure clicca su Try again per pubblicare di nuovo la stessa versione — la scelta giusta per "busy for a moment" e "a problem on our side".
- Se il messaggio riguarda il nome del link, cambialo prima di pubblicare di nuovo. Per qualsiasi altro errore, mantieni lo stesso nome.
Limiti
- Alcuni fallimenti mostrano pulsanti diversi: un nome di link già preso suggerisce altri nomi, e se i crediti sono esauriti viene offerta una via per aggiungerne.
- I siti statici hanno un limite per file di circa 25–30 MB, a seconda del tipo di sito, e fino a 20.000 file. I file grandi conviene tenerli nello storage e collegarli.
- Le pubblicazioni fallite prima di questa modifica non hanno un tipo, quindi mostrano una riga neutra invece di un motivo specifico.
- Se "a problem on our side" continua a comparire, contatta il supporto con l'ID del progetto e il nome del link.
L'elenco completo dei messaggi e cosa fare per ciascuno è in risoluzione dei problemi di pubblicazione. Se stai sistemando a mano un'app ostinata, la nostra guida su come fare debug di un'app creata con l'IA ti accompagna nel processo. E per ciò che succede a un sito online mentre lo ripubblichi, vedi la tua app pubblicata ora resta online mentre la ripubblichi.