docs(devops): add Nginx caching investigation task for app version pickup issue

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Scott Idem
2026-05-21 18:31:51 -04:00
parent b3029a4d27
commit 60e3fc539e

View File

@@ -494,6 +494,23 @@ Firefox unaffected. Production unaffected (public IPs only).
ago and regressed. Check Nginx site config and FastAPI `CORSMiddleware` settings.
Low urgency (dev-only, Firefox workaround available), but blocks home-network iframe testing.
### [DevOps] Nginx caching — app version pickup issue
- [ ] **Investigate Nginx reverse proxy caching so users pick up new app deploys.**
Some users are not getting the updated app after a deploy. SvelteKit hashes JS/CSS bundle
filenames (cache-busting is automatic), but if Nginx or the browser caches `index.html`
itself, users get stale HTML pointing to old (possibly deleted) hashed assets.
**Check:**
- `proxy_cache` / `expires` directives in Nginx config for the SvelteKit app location
- Actual `Cache-Control` header on `/``curl -I https://<host>/` to verify
- Any service worker registration that might add another caching layer
**Expected fix:** Serve `index.html` with `Cache-Control: no-cache` (or `no-store`).
Hashed static assets (`/_app/immutable/`) can stay aggressively cached (`max-age=31536000,
immutable`). Root page must always be fresh so users pick up the new bundle references.
**Task ID:** #182928308 (shared Kanban)
### [DevOps] Remaining deployment items
- [ ] **Simplify Dockerfile env file selection** — Currently the Dockerfile uses a `BUILD_MODE` arg to