summaryrefslogtreecommitdiffstats
path: root/packages/meshbay-client/src/main.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/meshbay-client/src/main.js')
-rw-r--r--packages/meshbay-client/src/main.js10
1 files changed, 10 insertions, 0 deletions
diff --git a/packages/meshbay-client/src/main.js b/packages/meshbay-client/src/main.js
index 2bdf550..0517eba 100644
--- a/packages/meshbay-client/src/main.js
+++ b/packages/meshbay-client/src/main.js
@@ -114,6 +114,16 @@ function registerUiProtocol() {
'Content-Type': contentType(target),
'Content-Security-Policy': CSP,
'X-Content-Type-Options': 'nosniff',
+ // Without this, a response carrying no cache header at all is a
+ // response Chromium is free to reuse by heuristic freshness — the
+ // same trap CLAUDE.md already records for the hub-served SPA
+ // (`Cache-Control: no-cache` only binds a browser that asks).
+ // Here every file is read fresh from disk on each request
+ // already (sync-ui during development, a fresh install
+ // otherwise), so nothing is ever served from the renderer's own
+ // HTTP cache instead — a plain reload is enough after `npm run
+ // sync-ui`, not just a full app restart.
+ 'Cache-Control': 'no-store',
},
});
} catch {