main was a 4-commit January 2026 orphan snapshot that also committed
node_modules/, backend/.env and backend/data/database.db. Its only
source features (OSS traffic stats via @alicloud/cms20190101, /s/:code
share route, quota display fixes) are all superseded by master's
360-commit history — master implements download traffic via the
reservation + OSS log reconcile system instead.
Merge records main's history as an ancestor; the resulting tree is
master's unchanged.
The DELETE /api/direct-link/:id endpoint requires CSRF validation.
Updated api_delete_direct_link to fetch CSRF token before sending
the request, matching the pattern used by api_delete_share.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
For OSS storage, the /api/upload/resumable/complete endpoint now returns
immediately after all chunks are assembled, then uploads to OSS in the
background. This eliminates the blocking re-upload delay for large files.
Local storage remains synchronous (already optimized with rename-first).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Replace CSS-only file icons with SVG icons for each file type (folder, image, video, audio, archive, document, app)
- Add navigation icons to left sidebar (Baidu Netdisk style)
- Enlarge file cards (108px -> 120px) with smoother transitions
- Add direct links section to share page with copy/delete actions
- Add Rust bridge commands for fetching and deleting direct links
- Optimize local storage put() to use rename-first strategy instead of copyFileSync for instant large file completion
- Show "server processing" status during upload finalization instead of appearing stuck
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>