M3u catchup fix (#794)

* **New Features**
  * Catch-up streams can now auto-detect whether to serve direct video or an HLS playlist.
  * Added archive-aware HLS session/identity handling and improved upstream user-agent propagation for manifests.
  * Enhanced M3U timeshift/archiving, including nested handling and native Flussonic archive support; Short EPG can advertise archive availability.

* **Bug Fixes**
  * Provider session headers now persist across retries and deferred-open scenarios.
  * Legacy HLS routing is now cache-aware; seek detection improvements.
  * Stalker errors now better redact sensitive URL details.
  * Fix: Preserve VOD client range requests

* **Tests**
  * Expanded coverage for probing, archive/timeshift resolution, header overlay rules, and related routing.
This commit is contained in:
euzu
2026-07-27 15:13:10 +02:00
committed by GitHub
parent bcc1badcfe
commit 4d8df8f534
73 changed files with 4346 additions and 890 deletions
@@ -18,10 +18,10 @@ use crate::repository::stalker_repository::{
remove_stalker_file, snapshot_stalker_epg_at, snapshot_stalker_items_at,
upsert_stalker_epg_at, upsert_stalker_items_at,
};
use crate::utils::network::stalker::catalog::{StalkerCategory, StalkerRawItem};
use crate::utils::network::stalker::client::StalkerApiClient;
use crate::utils::network::stalker::error::StalkerError;
use crate::utils::network::stalker::profile::StalkerHandshake;
use crate::iptv::stalker::catalog::{StalkerCategory, StalkerRawItem};
use crate::iptv::stalker::client::StalkerApiClient;
use crate::iptv::stalker::error::StalkerError;
use crate::iptv::stalker::profile::StalkerHandshake;
use super::stalker::StalkerCluster;
const MAX_RETRIES: u8 = 3;