Bạn tải ZIP trực tiếp vào Supabase Dashboard → Storage. Website chỉ gửi lệnh cho Edge Function xử lý trên Supabase theo từng phần, không upload ZIP qua EdgeOne.
01_CAI_DAT_STORAGE_V2.sql, rồi 02_HAM_STORAGE_V2.sql từ FULL SOURCE 35. Không chạy riêng dòng lệnh trong thân hàm.pg_cron, và kiểm tra Cron có hoạt động.xm-storage-v2; dán toàn bộ supabase/functions/xm-storage-v2/index.ts, bật yêu cầu xác thực JWT.xm-restore-v2 → tạo thư mục backups → Upload ZIP V2. Không đổi nội dung file. Tên file chỉ gồm chữ, số, dấu _ - ..backups/BACKUP_XUONG_MAY_V2.zip, nhấn 1. Tạo phiên từ Storage. Bộ ZIP phải có v2/manifest.json và các phần NDJSON hợp lệ.ready. Có thể tắt trang/mở lại và tiếp tục bằng nút Kiểm tra phiên. Thao tác này chỉ nạp staging, chưa sửa dữ liệu nghiệp vụ.missing_only hoặc overwrite rồi nhấn áp dụng một lần.restore_applied và trạng thái applied bằng SQL 03_KIEM_TRA_CHI_DOC.sql.Chi tiết mở HUONG_DAN_STORAGE_SUPABASE_KHONG_CAI_SOFT_26_10_2026.md trong FULL SOURCE.