feat(subscription-gate): extend offline grace window 3 → 30 days
Matches Qobuz's own mobile app posture. The previous 3-day window was both user-hostile (punishes anyone on a flaky network) and a compliance red flag (shorter windows read as 'we're hiding something', longer windows read as 'we're lenient for a reason'). 30 days is the exact parity answer. The useful protection against bulk-download-and-ghost attacks comes from the CMAF-at-rest offline cache (v2 format), not from aggressive revalidation. This grace window is a belt over the suspenders. Changes: - GRACE_PERIOD_SECS: 3 → 30 days in config/subscription_state.rs, with a comment explaining the reasoning for future readers. - Log message in session_lifecycle no longer says "3 days" (it quoted a constant, now says "grace window"). - Disclaimer string in all 5 locales (en/es/de/fr/pt) updated from "3 days" to "30 days" so the Offline Playback settings screen reflects the actual behavior. No behavior changes for users with an active subscription. Users who were within the old 3-day window don't lose cache — the window extended, not contracted. cc
This commit is contained in:
7 files changed
+20
-7
No files matched your search
@@ -1408,7 +1408,7 @@
|
||||
},
|
||||
"offlineLibrary": {
|
||||
"title": "Offline-Bibliothek",
|
||||
"disclaimer": "Die Offline-Bibliothek ist ein temporärer Wiedergabe-Cache für das Offline-Hören, solange Sie ein gültiges Qobuz-Abonnement haben. Sie erhalten keine Lizenz zum Behalten oder Weiterverteilen der Inhalte. Wenn Ihr Abonnement ungültig wird, entfernt QBZ alle zwischengespeicherten Inhalte nach 3 Tagen.",
|
||||
"disclaimer": "Die Offline-Bibliothek ist ein temporärer Wiedergabe-Cache für das Offline-Hören, solange Sie ein gültiges Qobuz-Abonnement haben. Sie erhalten keine Lizenz zum Behalten oder Weiterverteilen der Inhalte. Wenn Ihr Abonnement ungültig wird, entfernt QBZ alle zwischengespeicherten Inhalte nach 30 Tagen.",
|
||||
"cachedTracks": "Offline-Titel",
|
||||
"cachedTracksDesc": "Zwischengespeicherte Titel für die Offline-Wiedergabe",
|
||||
"clearCache": "Alles löschen",
|
||||
|
||||
Reference in new issue
Block a user