VERSION was stuck at raycer-v1 so mobile PWAs never picked up
the streak fix (cache-first served the stale stats.js forever).
- Bump to raycer-v2 → triggers install, purges old caches
- Switch same-origin assets from cache-first to network-first
so future deploys propagate immediately; cache is only used
as an offline fallback
- Simplify to a single SHELL_CACHE (no separate runtime cache)
- Cross-origin vendor assets (Dexie CDN) stay cache-first
Vanilla HTML/JS/CSS PWA with Dexie offline-first sync, Hono+SQLite backend,
served via nginx reverse-proxy. Two seed goals (no-sugar, no-social-media)
for users ray and cer.
Local dev runs at https://raycer.test via the shared Traefik proxy.
Production deploys to https://raycer.altweb.me on cool2026/personal via
docker-compose.coolify.yaml — see deploy/COOLIFY.md.