peter
86971c574d
fix(api): progress checkpoints past the int4 column are a 422, and idle HLS sessions are reaped on a timer
...
Deep-review round 3 of bug hunt 2026-09.
- The YouTube and Plex progress bodies are bounded by POSITION_MAX_S (the int4 position columns): a
finite position of 2^31 or more was a DataError, i.e. a 500 — the sibling of round 2's non-finite
fix.
- plex/stream.py promised "a periodic reaper", but reap_idle ran only inside the NEXT session
request: after the last playback an abandoned session (its ffmpeg still working, its directory a
whole segmented copy of the film) lived until someone pressed play again. A lifespan task reaps
every 60 s.
- Tests for what round 2 left untested: the 422's body keeps the list shape the UI localizes, and
stream_session refuses non-finite start/aoff.
2026-09-11 18:05:30 +02:00
..
2026-09-01 23:09:25 +02:00
2026-09-05 04:02:57 +02:00
2026-08-23 07:43:06 +02:00
2026-09-02 00:15:21 +02:00
2026-09-04 22:42:15 +02:00
2026-09-04 23:04:09 +02:00
2026-08-27 04:02:25 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-09 00:12:53 +02:00
2026-08-28 03:53:04 +02:00
2026-08-28 02:37:56 +02:00
2026-09-05 03:41:58 +02:00
2026-09-05 04:18:33 +02:00
2026-08-30 03:32:14 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-04 20:29:33 +02:00
2026-09-05 01:35:09 +02:00
2026-09-04 20:29:33 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-26 05:25:47 +02:00
2026-08-23 07:43:06 +02:00
2026-09-05 01:03:24 +02:00
2026-08-28 02:37:56 +02:00
2026-09-11 18:05:30 +02:00
2026-08-29 08:02:11 +02:00
2026-09-04 01:56:55 +02:00
2026-09-04 22:42:15 +02:00
2026-09-01 23:31:49 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-11 18:05:19 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-29 03:52:13 +02:00
2026-09-11 18:05:19 +02:00
2026-08-20 08:50:47 +02:00
2026-09-09 23:55:51 +02:00
2026-09-10 22:05:39 +02:00
2026-08-23 08:08:34 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-27 02:50:41 +02:00
2026-09-06 03:31:02 +02:00
2026-08-23 07:43:06 +02:00
2026-09-06 03:31:02 +02:00
2026-08-30 17:58:38 +02:00
2026-08-30 06:02:45 +02:00
2026-08-23 07:43:06 +02:00
2026-09-10 20:02:06 +02:00
2026-09-11 18:04:30 +02:00
2026-09-11 18:04:30 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-28 01:34:02 +02:00
2026-09-11 18:05:30 +02:00
2026-08-23 07:43:06 +02:00
2026-09-01 22:02:43 +02:00
2026-08-23 07:43:06 +02:00
2026-09-04 02:38:01 +02:00
2026-09-04 23:04:09 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-05 01:46:58 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-26 05:25:47 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-30 18:09:26 +02:00
2026-09-05 04:02:57 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-04 20:29:33 +02:00
2026-08-23 07:43:06 +02:00