Gabimet e publikimit tani thonë çfarë ndodhi, me fjalë të thjeshta
Kur një publikim dështon në Mythex, dialogu tani të thotë në një fjali të thjeshtë çfarë ndodhi: ndërtimi dështoi, aplikacioni yt u ndal pasi u nis, aplikacioni yt nuk u nis fare, një skedar është shumë i madh, ose diçka shkoi keq nga ana jonë. Të jep Fix with AI dhe Try again. Dalja e papërpunuar nga ndërtimi dhe nga aplikacioni yt prapë arrin te agjenti, kështu që Fix with AI mund ta lexojë dhe ta rregullojë projektin, por nuk ke më nevojë ta lexosh vetë.
Çfarë ndryshoi
Një fjali që mund ta zbatosh
Çdo publikim i dështuar tani ka një lloj, të përcaktuar në momentin kur dështon, nga faktet që kemi aty: cili hap dështoi, nëse makina e aplikacionit raportoi përplasje, nëse ka filluar ndonjëherë të pranojë lidhje, në vend që ta lexojmë më vonë nga teksti i gabimit. Çdo lloj ka mesazhin e vet:
| Çfarë sheh | Çfarë do të thotë |
|---|---|
| “The build failed.” | Komanda e ndërtimit ose Dockerfile-i i projektit tënd nuk u ndërtua. |
| “Your app stopped right after it started.” | U publikua, pastaj doli ose vazhdoi të rinisej. |
| “Your app didn't start after publishing.” | U publikua, por kurrë nuk filloi të pranonte lidhje. |
| “This file is too big” / shumë skedarë | Një faqe statike është mbi kufirin e madhësisë për skedar ose numrin e skedarëve. Mesazhi i liston skedarët. |
| “This link name can't be used for publishing.” | Ndrysho emrin e lidhjes dhe publiko përsëri; kodi yt është në rregull. |
| “Publishing is busy for a moment” | Asgjë nuk është e gabuar me aplikacionin tënd. Publiko përsëri pas disa minutash. |
| “…a problem on our side, not in your app.” | Është e jona për ta rregulluar. Publiko përsëri pas disa minutash. |
Fix with AI në çdo dështim
Çdo dështim shfaq Fix with AI dhe Try again. Kur përdor Fix with AI, agjenti merr llojin e dështimit dhe daljen e plotë të ndërtimit ose të aplikacionit në mënyrë private, në kontekstin e vet. Nëse diçka në aplikacionin tënd është e gabuar, e rregullon. Nëse asgjë nuk është (një moment i zënë, ose një problem nga ana jonë), mund thjesht të publikojë përsëri. Nuk duhet të kuptosh ti se cili lloj dështimi ishte.
Probleme pasi del live
Një publikim mund të përfundojë me sukses dhe aplikacioni të dështojë disa minuta më vonë. Mythex kontrollon rregullisht aplikacionet e publikuara. Nëse një aplikacion live vazhdon të përplaset, ose vazhdon të punojë por ndalon së pranuari lidhje, publikimi shënohet si i dështuar, merr një email, dhe projekti e shfaq mesazhin me Fix with AI. Ajo që printoi aplikacioni ruhet që agjenti ta lexojë.
Kontrolle të madhësisë përpara ngarkimit
Për faqet statike, çdo skedar kontrollohet për madhësinë dhe numri total i skedarëve kontrollohet përpara se të ngarkohet ndonjë gjë. Nëse diçka është mbi kufi, merr një mesazh të vetëm që liston çdo skedar shumë të madh, në vend të një dështimi në mes të rrugës.
Pse e ndërtuam
Një publikim i dështuar më parë shfaqte çfarëdo që kishin printuar mjetet pas publikimit. Në një javë në fund të shtatorit, shumica e dështimeve shfaqnin tekst të ndërtuesve që ishte puna jonë, jo e tyre: kontakte faturimi, numra versionesh të brendshme, shtigje regjistri, gabime storage. Fix with AI pastaj e ngjiste të njëjtin tekst në chat. Njerëzve po u kërkohej të debuggonin infrastrukturën tonë.
Një pjesë e tij ishte gjithashtu thjesht e gabuar. Një aplikacion që nuk dëgjonte kurrë në portin e vet raportohej si “problem nga ana jonë”, kur rregullimi ishte në aplikacion. Një skedar statik mbi kufirin e madhësisë raportohej po ashtu, dhe publikimi përsëri nuk mund të funksiononte kurrë.
Dhe çdo pjesë e Mythex që reagonte ndaj një dështimi (dialogu, njoftimet, Fix with AI, alarmet tona) dinte se çfarë ndodhi duke kërkuar fjalë në tekstin e gabimit. Kjo prishej sa herë ndryshonte fraza. Tani lloji regjistrohet aty ku ndodh dështimi, dhe gjithçka tjetër e lexon llojin.
E zbatuam të njëjtin rregull edhe për gabime të tjera ndërkohë:
- Chat. Nëse lidhja ndërpritet ndërsa përgjigjia transmetohet, tani shikon fjalinë tonë në vend të “Load failed” ose “Failed to fetch” të shfletuesit.
- Domain-et personalë. Mesazhet për blerjen ose lidhjen e një domaini zgjidhen nga statusi dhe kodet e përgjigjes, në vend që të përcjellin fjalitë e ofruesit të domain-it.
- Krijimi i imazheve. Karta shfaq mesazhin tonë; agjenti merr detajin e shërbimit.
Si ta përdorësh
- Publiko si zakonisht nga butoni Publish.
- Nëse dështon, lexo mesazhin e një rreshti në dialog.
- Kliko Fix with AI. Agjenti lexon daljen e ndërtimit ose log-et e aplikacionit tënd, rregullon atë që është e gabuar, dhe ripublikon nëse asgjë në aplikacion nuk kishte nevojë për rregullim.
- Ose kliko Try again për të publikuar të njëjtën version përsëri, zgjedhja e duhur për “busy for a moment” dhe “a problem on our side”.
- Nëse mesazhi ka të bëjë me emrin e lidhjes, ndrysho emrin e lidhjes përpara se të publikosh përsëri. Për çdo gabim tjetër, mbaj të njëjtin emër.
Kufizimet
- Disa dështime shfaqin butona të tjerë: një emër lidhjeje i zënë sugjeron emra të tjerë, dhe mbarimi i kredisë ofron të shtosh kredite.
- Faqet statike kanë një kufi për skedar prej rreth 25–30 MB, varësisht nga lloji i faqes, dhe deri në 20,000 skedarë. Skedarët e mëdhenj mbahen më mirë në storage dhe lidhen me to.
- Dështimet e publikimit përpara kësaj ndryshimi nuk kanë lloj, kështu që shfaqin një rresht neutral në vend të një arsye specifike.
- Nëse “a problem on our side” përsëritet, kontakto mbështetjen me ID-në e projektit dhe emrin e lidhjes.
Lista e plotë e mesazheve dhe çfarë të bësh për secilin është në publish troubleshooting. Nëse po rregullon dorazi një aplikacion kokëfortë, udhëzuesi ynë për si të debuggosh një aplikacion të ndërtuar me AI të kalon hap pas hapi. Dhe për atë që ndodh me një faqe live ndërsa e ripublikon, shih aplikacioni yt i publikuar tani qëndron gjallë ndërsa e ripublikon.