Fix video autoplay reliability, add shuffle playback, refresh data on appear

- Remove cache expiry on video feed (fetch once, keep for session)
- Add retry logic (3 attempts with backoff) for autoplay resolution
- Replace random video selection with shuffle-bag (no repeats until all played)
- Reload games every time DashboardView appears
- Cache standings per day to avoid redundant fetches

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-03-30 21:49:54 -05:00
parent fda809fd2f
commit 58e4c36963
3 changed files with 64 additions and 30 deletions

View File

@@ -770,9 +770,10 @@ private struct MultiStreamTile: View {
guard let nextURL = await viewModel.resolveNextAuthenticatedFeedURLForActiveStream(
id: stream.id,
feedURL: SpecialPlaybackChannelConfig.werkoutNSFWFeedURL,
headers: SpecialPlaybackChannelConfig.werkoutNSFWHeaders
headers: SpecialPlaybackChannelConfig.werkoutNSFWHeaders,
maxRetries: 3
) else {
logMultiView("playNextWerkoutClip failed id=\(stream.id) reason=resolve-nil")
logMultiView("playNextWerkoutClip failed id=\(stream.id) reason=resolve-nil-after-retries")
return
}