mirror of
https://github.com/euzu/tuliprox.git
synced 2026-10-28 17:52:50 +01:00
* fix (hls): preserve playback reserve across cache eviction keep a stable session media clock and completed segment timings so cache eviction and origin rollovers cannot reset playback reserve. update segment fixtures and cover reserve stability after collection. * fix (hls): prevent playback stalls during origin manifest retries mark the origin as degraded on the first retryable manifest failure, cap retry-after delays, and reevaluate reserve independently of client polling. use a bounded state commit after an expired splice deadline instead of leaving the lease live when terminal media cannot be published safely. * fix (hls): serve custom responses after the live splice deadline publish a finite lease-bound channel_unavailable playlist on the existing manifest route when a safe live splice is no longer possible. renew lease and session activity on successful custom-segment requests and retain concrete preparation failure diagnostics. * fix(hls): persist origin qualification for short playlists Share qualification and retry receipts across leases, preserve them while media publication is pending, and allow controlled recovery after expired acceptance episodes. Prefer eligible regular candidates before short fallbacks. Add startup, revalidation, replay, cookie and endpoint regression coverage, and document short-window behavior. Validation during implementation: Linux make test (7009 passed, 23 ignored), focused HLS and endpoint suites, format checks, Clippy and Markdown lint. Offline production library and backend checks passed after the import fix. * fix(hls): reconcile cache write budgets and revision reclamation Transfer reserved bytes atomically through staging and publication, preserve cleanup ownership across cancellation, and retire unpinned revisions during local and global reclamation. Version temp registrations during inventory scans, remove production panic calls, and isolate debug diagnostics from admission results. Validation: 1,162 HLS tests and 7,038 workspace tests passed; fmt-check, lint, test, markdown-lint and isolated production Clippy passed with dev-slim. * feat (ai): add local codex files * fix (hls): replace invalid origin accounts in shared HLS sessions * fix (hls): synchronize origin account handovers across WebUI viewers * fix (hls): preserve same-account resume work and backpressure * fix (hls): resume reduced retries without crossing generations Allow eligible exhausted acceptance episodes to select reduced retry candidates while preserving generation, candidate, workload and timing guards. Keep recovery chains bound to their generation, including changes between selection and commit. Add regressions for repaired and persistent resource conflicts, generation isolation and media delivery through the app's local HTTP origin. Keep shared manifest fixtures under test/fixtures/hls/reduced-retry.