Static files are served directly from disk with long-lived cache headers. Content-hashed filenames allow immutable caching; unhashed paths revalidate against the origin.
Cache-Control: public, max-age=31536000, immutable Vary: Accept-Encoding X-Content-Type-Options: nosniff
| Encoding | Applies to | Min size |
|---|---|---|
| zstd | text/*, application/json | 1 KB |
| gzip | fallback | 1 KB |
Assets are uploaded during CI. Each build writes to a versioned prefix, then a symlink switch promotes it:
/static/<build-id>/current pointer/healthz