use axum::{ body::Body, extract::{Request, State as AxumState}, http::{HeaderMap, HeaderValue, StatusCode}, response::{IntoResponse, Response}, routing::get, Router, }; use futures_util::TryStreamExt; use tauri::{http, Manager}; use tokio::net::TcpListener; use crate::app_state::AppState; use crate::relay; /// Defense-in-depth cap: refuse to buffer responses larger than this into RAM. /// Range requests (≤16 MiB from server) always fit. Full GETs for huge videos /// get a clear 413 instead of OOM — the