mirror of
https://github.com/getnora-io/nora.git
synced 2026-04-12 06:50:31 +00:00
Upload sessions were stored in a global LazyLock<RwLock<HashMap>>, making them impossible to test in isolation and invisible to other parts of the system. Multi-instance deployments would also lose sessions started on a different node. Changes: - Move upload_sessions into AppState as Arc<RwLock<HashMap>> - Add State extractor to start_upload, patch_blob and their _ns wrappers - Expire sessions in the existing 30s background task (alongside metrics) - Make UploadSession and cleanup_expired_sessions pub for AppState access