From 8f16d7b26b1c4857148d4ad6b49414588ca9df68 Mon Sep 17 00:00:00 2001 From: Evie Gauthier Date: Tue, 31 Mar 2026 10:47:08 -0400 Subject: [PATCH 1/2] fix(caddy): add cache-control headers for assets, sw.js, and index.html --- Caddyfile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Caddyfile b/Caddyfile index 63fec50e6..d32ef3bb9 100644 --- a/Caddyfile +++ b/Caddyfile @@ -16,6 +16,13 @@ try_files {path} /index.html + # Content-hashed assets can be cached indefinitely — the filename changes on every build. + header /assets/* Cache-Control "public, max-age=31536000, immutable" + # Workbox SW must be revalidated on every load so the browser picks up updates. + header /sw.js Cache-Control "no-cache" + # index.html must not be cached so the browser always gets the latest app shell. + header /index.html Cache-Control "no-cache" + # Required for Sentry browser profiling (JS Self-Profiling API) header Document-Policy "js-profiling" } From fa29d2cde36e7ae6250003b70912e59d664345a8 Mon Sep 17 00:00:00 2001 From: Evie Gauthier Date: Tue, 31 Mar 2026 12:27:20 -0400 Subject: [PATCH 2/2] chore: add changeset for caddy-cache-headers --- .changeset/caddy-cache-headers.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/caddy-cache-headers.md diff --git a/.changeset/caddy-cache-headers.md b/.changeset/caddy-cache-headers.md new file mode 100644 index 000000000..498db7463 --- /dev/null +++ b/.changeset/caddy-cache-headers.md @@ -0,0 +1,5 @@ +--- +default: patch +--- + +Add cache-control headers in Caddyfile for assets, service worker, and index.html