diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-09-11 13:57:44 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-09-11 13:57:44 +0200 |
| commit | 7adbf5163f0193d80bb5578dc875eba811f864bb (patch) | |
| tree | 95b6fc62835536a41f1fc47e646e904b27f9a042 /docs/playlists.md | |
| parent | 4b74ff3fc54f35fbc41d9c0f7d2b4ec89475154a (diff) | |
| download | meshbay-7adbf5163f0193d80bb5578dc875eba811f864bb.tar.gz | |
fix(hub): the asset fingerprint covers every file under static/
Everything under static/ is served at /a/<hash>/ with a year's
`immutable`, but the hash was computed from a hand-kept list of 43
top-level modules. The ten catalogues and vendor/ were not on it, nor
was anything the guarding test could see: it globbed *.js at the top
level only. A change confined to the catalogues therefore kept the hash,
and a phone went on showing a heading that had been rewritten and
deployed - pull-to-refresh fetched the no-store shell, which was
current, and never refetched en.js at a URL that had not moved.
The fingerprint now hashes every file under static/, path and content,
so a change, a rename or a new file moves the version with nothing to
register. _ASSETS is gone, and CLAUDE.md, MESHBAY_DESIGN.md 9.4 step 6,
assets/brand/README.md and docs/playlists.md no longer ask for it.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01D9MCBBWSm9GhBESmqzJxNy
Diffstat (limited to 'docs/playlists.md')
| -rw-r--r-- | docs/playlists.md | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/docs/playlists.md b/docs/playlists.md index 8e57546..485011a 100644 --- a/docs/playlists.md +++ b/docs/playlists.md @@ -439,7 +439,8 @@ throws on first access, at a point far from the version constant. 1. `playlists.js` (data) and `playlists-page.js` (UI). 2. Route + sidebar entry in `app.js`. -3. `webapp.py`'s `_ASSETS` tuple — both new files. +3. Nothing for caching: every file under `static/` feeds the `/a/<hash>/` + fingerprint. 4. `test_hook_ordering.py` (`STATIC_FILES`) and `test_transport_contracts.py` (`SPLIT_FILES`) — both new files. 5. i18n keys in all ten `static/locales/*.js`; `test_locales.py` holds them |