Sửa bằng AI: một cú nhấp khi publish thất bại
Khi một lần publish thất bại trên Mythex, hộp thoại giờ sẽ cho bạn biết chính xác chuyện gì đã xảy ra và luôn có hai nút ở mỗi lần lỗi: Sửa bằng AI và Thử lại. Sửa bằng AI sẽ đưa cho agent lỗi cùng với những gì app của bạn đã in ra, để agent sửa dự án và publish lại. Nếu không có gì sai trong app, nó chỉ đơn giản publish lại. Chúng tôi cũng đã ngừng đổ lỗi “phía chúng tôi” cho những vấn đề thực sự nằm trong app, và bắt đầu phát hiện những app bị lỗi vài phút sau khi đã lên sóng.
Có gì thay đổi
Sửa bằng AI cho mọi lỗi
Trước đây, có lỗi chỉ hiện Sửa bằng AI, có lỗi chỉ hiện Thử lại. Cách chia này dựa trên việc lỗi trông giống do bên nào gây ra: nếu có vẻ do phía chúng tôi, chúng tôi không muốn agent loay hoay sửa đoạn mã vốn đúng, còn tốn credit của bạn.
Điều đó buộc bạn phải tự đoán mình đang gặp loại lỗi nào. Giờ mọi lỗi đều có cả hai nút. Agent nhận được loại lỗi và phần output đi kèm, nên nó sẽ sửa app nếu có gì sai trong app, và publish lại nếu không có gì sai. Bạn không cần phải phân biệt.
Ngoại lệ là những lỗi mà lời giải không nằm ở code. Tên link bị trùng sẽ gợi ý các tên khác. Hết credit thì có cách để nạp thêm.
Thông báo nói rõ chuyện gì đã xảy ra
Nhiều lỗi trước đây đều kết thúc bằng câu “sự cố phía chúng tôi, hãy publish lại”, và điều đó không đúng. Publish lại cũng chẳng bao giờ giúp được gì. Giờ mỗi lỗi có thông báo riêng:
- “App của bạn không khởi động sau khi publish.” App đã được publish nhưng chưa bao giờ bắt đầu nhận kết nối. Thường thì nó lắng nghe trên một cổng khác, hoặc chỉ trên
localhost. App được publish phải lắng nghe trên0.0.0.0và cổng trong$PORT. Thay vì chờ một khoảng thời gian cố định rồi hy vọng, giờ chúng tôi kiểm tra xem app có thực sự nhận kết nối trên cổng của nó hay không. - “File này quá lớn” / quá nhiều file. Site tĩnh có giới hạn kích thước cho mỗi file (khoảng 25–30 MB, tùy loại site) và tối đa 20.000 file. Giờ chúng tôi đo thư mục trước khi tải lên, theo cùng một cách cho mọi loại file, và thông báo liệt kê mọi file vượt giới hạn.
- “App của bạn dừng ngay sau khi khởi động.” Thường do thiếu một thiết lập như biến môi trường hoặc secret, app bị crash ở request đầu tiên, hoặc có lỗi trong lệnh khởi động.
Phát hiện app bị lỗi sau khi đã lên sóng
Một lần publish có thể thành công nhưng app vẫn hỏng vài phút sau đó: nó liên tục crash, hoặc vẫn chạy nhưng không nhận kết nối nữa. Mythex kiểm tra các app đã publish một cách đều đặn. Nếu app crash lặp lại trong vài phút, hoặc đang chạy nhưng không nhận kết nối nào, lần publish sẽ được đánh dấu thất bại, bạn nhận một email, và dự án sẽ hiện thông báo kèm nút Sửa bằng AI.
Một lần crash đơn lẻ mà app tự phục hồi được sẽ không được tính là publish thất bại. Nếu nguyên nhân là app hết bộ nhớ, bạn sẽ nhận một email riêng về chuyện đó.
Khi chúng tôi đánh dấu một app đang chạy là thất bại, chúng tôi cũng lưu lại những gì app đã in ra vào thời điểm đó. Bạn sẽ không thấy phần output thô này, nhưng nó là thứ Sửa bằng AI đưa cho agent, nên agent bắt đầu từ lỗi thật thay vì phải đoán.
Cách dùng
- Nhấn Publish như thường lệ.
- Nếu lỗi, hãy đọc thông báo trong hộp thoại. Thông báo được viết để cho bạn biết chuyện gì đã xảy ra, không chỉ là có gì đó đã hỏng.
- Nhấn Sửa bằng AI. Agent sẽ đọc output build hoặc log của app, sửa dự án, và bạn có thể publish lại.
- Nếu thông báo nói app của bạn không có vấn đề gì — “Publish đang bận một lát” hoặc “Publish bị gián đoạn” — thường thì Thử lại là đủ.
- Nếu bạn nhận email báo một app đang chạy liên tục bị crash, hãy mở dự án: cùng thông báo và nút Sửa bằng AI đang chờ ở đó.
Khi publish lại, hãy giữ nguyên tên link, trừ khi thông báo nói rằng chính cái tên là vấn đề.
Vì sao chúng tôi làm điều này
Một lần publish thất bại thường là bức tường đầu tiên mà ai đó va phải. App chạy tốt trong bản xem trước, họ nhấn Publish, và nó không lên được. Với người không phải lập trình viên, “hãy kiểm tra log” không phải là lời khuyên họ có thể làm theo. Sửa bằng AI biến khoảnh khắc đó thành một cú nhấp, và những thông báo trung thực nghĩa là khi bạn đọc chúng, chúng sẽ chỉ đúng chỗ cần xem.
Giới hạn
- Sửa bằng AI dùng agent, nên nó tiêu credit như bất kỳ tin nhắn nào khác.
- Nó có thể sửa những gì nằm trong dự án: code, cấu hình, lệnh khởi động. Nó không thể sửa một tên link đã bị trùng, một email chưa xác minh hay số dư credit bằng 0.
- Một số vấn đề cần bạn quyết định, chẳng hạn có nên chuyển một file lớn vào Storage hay làm nó nhỏ lại.
Mỗi thông báo và việc cần làm với nó đều có trong tài liệu: Xử lý sự cố khi publish. Còn kỹ năng rộng hơn là sửa lỗi khi mọi thứ hỏng, xem cách debug một app do AI xây dựng.