import { readFile, realpath, stat } from "node:fs/promises"; import path from "node:path"; import { reportMediaDir, reportMediaIndexFile, siteReportDir } from "yt-dlp-transcript-common/publish/reportMedia"; import { rangeResponse } from "@/lib/report/serve.mjs"; import { CHANNELS_DIR, REPORTS_ROOT, SITES_DIR, inside } from "@/lib/paths"; import { sitesPaths } from "@/lib/articles/sites"; export const dynamic = "force-dynamic"; // Article media, READ-ONLY, with byte ranges (lib/report/serve.mjs // rangeResponse, the one the cut player uses -- a