# Asset cache serves old bundle: pre-release checklist

Source: https://releasefailures.com/incidents/asset-cache-serves-old-bundle/
Content version: 1.0.0
Verified on: 2026-10-22
Licence: CC BY 4.0

Definition: Users receive an old JavaScript bundle with a new API and the app errors.
- [ ] PR-01 Scan the build output and fail the release when any JavaScript file URL lacks a content hash in its file name. (test class: Configuration and environment tests)
- [ ] PR-02 Confirm the remote entry file is served with a cache header that forces the browser to revalidate it on every load. (test class: Configuration and environment tests)
- [ ] PR-03 Confirm the previous deployment's hashed JavaScript assets still return 200 on the server after the new deployment goes live. (test class: Configuration and environment tests)
- [ ] PR-04 Confirm the deploy step purges every changed JavaScript chunk at the CDN and fails the deploy when the purge does not complete. (test class: Configuration and environment tests)
- [ ] PR-05 Load the app on the previous version in a browser, deploy the new version, reload without a hard refresh and confirm every page widget renders with no JavaScript errors. (test class: End-to-end tests)
- [ ] PR-06 Run the login flow in a browser that still holds the previous deployment's cached chunks and confirm login completes. (test class: End-to-end tests)
- [ ] PR-07 After each deploy, fetch the entry file and every chunk it references through the CDN and alert on any 404 response. (test class: Synthetic monitoring)
- [ ] PR-08 After each deploy, run a scripted login from several regions and confirm the chunk hashes it loads match the new build. (test class: Synthetic monitoring)
