+8
−0
Loading
- Sleep timer gains a 'Fin de l'épisode' option alongside the fixed durations: playback fades out over the episode's last 20 seconds and stops there; the episode is marked played but the queue does not advance (new onSleepAtEpisodeEnd callback). - The streaming engine now observes AVPlayerItem failures (status KVO + FailedToPlayToEndTime) and reports them through engineDidFail, so a dead URL or a network drop shows the playback-error alert instead of a silently frozen player. - The resume position is persisted immediately on pause (new onPause hook) and when the app enters the background, instead of only every 10 seconds while playing. Co-Authored-By: Claude (RCA)