| Users see old UI after deploy | Waiting service worker or cached HTML | Add update prompt and avoid long-lived HTML cache |
| App crashes after update | Old HTML references removed chunks | Fingerprint assets and coordinate reload/update |
| Infinite reload loop | Worker activates and reloads repeatedly | Gate reload to one user action or version transition |
| Offline page never updates | Offline fallback cached forever | Version fallback page and clear old caches |
| API data is stale | Runtime cache lacks expiration/invalidation | Add cache expiration or network-first strategy |
| Cache grows forever | Runtime caches unbounded | Add max entries, max age, and cleanup |