summaryrefslogtreecommitdiffstats
path: root/docs/MESHBAY_DESIGN.md
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-11 13:57:44 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-11 13:57:44 +0200
commit7adbf5163f0193d80bb5578dc875eba811f864bb (patch)
tree95b6fc62835536a41f1fc47e646e904b27f9a042 /docs/MESHBAY_DESIGN.md
parent4b74ff3fc54f35fbc41d9c0f7d2b4ec89475154a (diff)
downloadmeshbay-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/MESHBAY_DESIGN.md')
-rw-r--r--docs/MESHBAY_DESIGN.md7
1 files changed, 4 insertions, 3 deletions
diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md
index d24d7a9..472d5ab 100644
--- a/docs/MESHBAY_DESIGN.md
+++ b/docs/MESHBAY_DESIGN.md
@@ -1963,9 +1963,10 @@ There is no folder-browsing protocol and this does not add one.
5. **i18n:** at minimum a tab label key **in all ten catalogues**. A settings key
added to the client must be added ten times; write the table and generate the
insert.
-6. **Add both files to the asset fingerprint list.** A module reached through the
- registry is not imported by name anywhere, so nothing else would notice it
- changing and a browser would keep serving the cached copy.
+6. **Nothing to register for caching.** Every file under `static/` feeds the
+ `/a/<hash>/` fingerprint, subdirectories included, so a new or changed module
+ moves the URL by itself — which matters for a module reached through the
+ registry, since nothing imports it by name.
7. **Add the file to the test file-set lists** — hook ordering, sticky headers,
transport contracts. A file missing from those lists is never checked, which
fails silently rather than loudly.