S3 Download CORS Error Handling and Debug Info Panel Storage Backend Events
✨ Features
- web: Added an
isS3CorsError()pattern toshowKnownErrorToast()so S3/R2 CORS failures during download are shown as an enriched toast with a Copy button and a link to the troubleshooting docs. - web: The Debug Info Panel event timeline now shows which storage backend is active: "S3 upload active" when the server uses S3/R2 for an upload, and "S3 presigned URL received" when a download fetches directly from S3/R2 (all three download tiers covered).
🐛 Bug Fixes
- web: Fixed S3 downloads via presigned URL crashing the download page. After the switch from iframe to
<a>navigation for Service Worker streaming, a CORS or network error from the S3/R2 bucket caused the browser to navigate the main page away. The Service Worker now catches those errors, signals the main thread via BroadcastChannel to fall back to the next download tier, and returns a safe attachment response to prevent page navigation.
🐳 Docker
- Image:
skyfay/skysend:v2.10.1 - Also tagged as:
latest,v2 - Platforms: linux/amd64, linux/arm64