Merge pull request #175 from thedavidweng/feat/remote-manifest-pull-gc-resumable-151
2 months ago
Authored
Davyfix(remote): complete Remote Library reliability protocol for #151
Parents91d5e28340552f
70 files changed
- CHANGELOG.md+48−1
- docs/references/contracts/model-bootstrap.md+54−1
- docs/references/contracts/playback.md+71−0
- docs/references/contracts/settings.md+54−0
- docs/references/generated/db-schema.md+15−1
- src-tauri/Cargo.lock+1−0
- src-tauri/Cargo.toml+1−0
- src-tauri/migrations/013_remote_publish_outbox.sql+13
−0
src-tauri/migrations/remote_state/001_init.sql+82−0src-tauri/migrations/remote_state/002_manifest_columns.sql+18−0src-tauri/src/app_runtime.rs+387−1src-tauri/src/audio/chunked_cache.rs+56−5src-tauri/src/audio/coordinator.rs+58−0src-tauri/src/audio/playback.rs+113−0src-tauri/src/audio/remote_source.rs+296−20src-tauri/src/cache/mod.rs+4−0src-tauri/src/cache/stems.rs+7−0src-tauri/src/commands/bootstrap.rs+37−1src-tauri/src/commands/import/mod.rs+9−16src-tauri/src/commands/lyrics.rs+15−32src-tauri/src/commands/remote_library/mod.rs+184−0src-tauri/src/config.rs+2−2src-tauri/src/lib.rs+3−0src-tauri/src/library/artwork.rs+36−7src-tauri/src/remote/atomic_download.rs+2352−0src-tauri/src/remote/bootstrap.rs+109−19src-tauri/src/remote/cache_catalog.rs+1266−0src-tauri/src/remote/control_db.rs+1543−0src-tauri/src/remote/dropbox.rs+670−16src-tauri/src/remote/errors.rs+476−0src-tauri/src/remote/executor.rs+3346−0src-tauri/src/remote/fault_injection.rs+1708−0src-tauri/src/remote/google_drive.rs+694−21src-tauri/src/remote/library_outbox.rs+546−0src-tauri/src/remote/manifest.rs+503−0src-tauri/src/remote/mod.rs+82−3src-tauri/src/remote/mutation.rs+666−137src-tauri/src/remote/net_policy.rs+685−0src-tauri/src/remote/provider.rs+141−1src-tauri/src/remote/recovery.rs+1461−0src-tauri/src/remote/sync/file_ops.rs+2−0src-tauri/src/remote/sync/mirror.rs+141−5src-tauri/src/remote/sync/publish.rs+1422−142src-tauri/src/remote/sync/revision.rs+428−52src-tauri/src/remote/sync/upload_status.rs+790−5src-tauri/src/remote/webdav.rs+613−9src-tauri/src/services/mod.rs+1−0src-tauri/src/services/playback.rs+466−24src-tauri/src/services/playback_source.rs+1288−33src-tauri/src/services/reconnect.rs+811−0src-tauri/src/state/remote.rs+106−7src/components/Player/PlaybackBar.tsx+7−1src/components/Player/RemoteReconnectIndicator.test.tsx+137−0src/components/Player/RemoteReconnectIndicator.tsx+91−0src/components/Settings/SettingsOverlay.state.ts+11−0src/components/Settings/SettingsOverlay.tsx+4−0src/components/Settings/SettingsRemoteCacheSection.test.tsx+148−0src/components/Settings/SettingsRemoteCacheSection.tsx+119−0src/components/Settings/SettingsRemoteDiagnosticsSection.test.tsx+204−0src/components/Settings/SettingsRemoteDiagnosticsSection.tsx+150−0src/hooks/use-playback-runtime.test.tsx+94−0src/hooks/use-playback-runtime.ts+36−0src/lib/tauri/remote-repository.ts+14−0src/locales/en.json+23−1src/locales/zh-CN.json+23−1src/mock/tauri-mock-impl.ts+20−0src/stores/remote-playback-store.test.ts+71−0src/stores/remote-playback-store.ts+92−0src/types/ipc.ts+62−0tests/e2e/scrollbar.spec.ts+30−15