// server/http/files.js — one file on disk (serveFile) or one body in memory (serveBuffer, the served manifests of // assetViews.js) → an HTTP response (static.js and media.js decide which file): // MIME types incl. .mjs/.js text/javascript, .skel application/octet-stream, .atlas text/plain; // gzip for text-like types, .skel and uncompressed fonts when the client accepts it (small files are // compressed once and cached in memory); strong ETag + Last-Modified with 304s — the ETag is the content hash // when the caller has one (assetIndex.js), else size + mtime; Cache-Control (html & code/data: no-cache + // revalidate; public/assets|fonts|vendor: 1 day; a URL whose content-hash segment matches the file (static.js, // media.js): immutable for a year; any `?v=` URL: immutable); single byte-range requests (206/416, used by