aboutsummaryrefslogtreecommitdiffstats
path: root/CLAUDE.md
diff options
context:
space:
mode:
Diffstat (limited to 'CLAUDE.md')
-rw-r--r--CLAUDE.md8
1 files changed, 6 insertions, 2 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index 824a3ae..f2a3363 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -549,7 +549,11 @@ do. Read them before writing anything that touches the same mechanism.
fix can be written, tested, deployed, served and still not be what runs, which
is indistinguishable from a fix that does not work. The whole module graph is
now served under `/a/<content-hash>/` so relative imports inherit the prefix and
- no cache can serve yesterday's build or half of each. `test_asset_versioning.py`
+ no cache can serve yesterday's build or half of each. The hash covers every file
+ under `static/`: it once covered a hand-kept list of top-level modules, the
+ catalogues were not on it, and a heading rewritten only in `en.js` stayed on a
+ phone after the deploy — immutable for a year at a URL that had not moved.
+ `test_asset_versioning.py`
- **Redeploying during someone else's test destroys the evidence.** A node deploy
restarts the daemon, which kills every live WebRTC session — the tester sees
@@ -664,7 +668,7 @@ here are kept only where they are a rule about *editing* the code.
| Groups, membership, presence, public-group quota | `meshbay_hub/api/groups.py` | §7.3 |
| Admin API, instance policy, moderation | `meshbay_hub/api/admin.py`, `hub.py` | §7.4, §7.5 |
| Notifications, federation, relays, reports | `meshbay_hub/api/notifications.py`, `federation.py`, `relay.py`, `moderation.py` | §7.6 |
-| Asset versioning | `meshbay_hub/api/webapp.py` — `_asset_version()`, `_ASSETS` | the whole module graph is served under `/a/<hash>/`. **A new static file must be added to `_ASSETS`** |
+| Asset versioning | `meshbay_hub/api/webapp.py` — `_asset_version()` | the whole module graph is served under `/a/<hash>/`, and the hash covers **every file under `static/`**, subdirectories included — nothing to register |
| Token lifetimes | `meshbay_hub/config.py` — `[jwt]` | 4 h access, 30 days refresh. **Production sets both in `~/.config/meshbay/hub.toml`** — changing the code default alone does nothing there |
### Browser / desktop UI (`meshbay_hub/static/`)