[object Object]

← back to Macstudio1 Dashboard

fix: no-store HTML so new sections appear on reload

2afd088110d7a1e48d19aac706c221c73d80aaaa · 2026-05-07 23:21:32 -0700 · SteveStudio2

Browser was caching v0.1 HTML so the engine-bay processes table
didn't render after v0.2 deploy. Sets Cache-Control: no-store on
.html responses.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

Files touched

Diff

commit 2afd088110d7a1e48d19aac706c221c73d80aaaa
Author: SteveStudio2 <steve@designerwallcoverings.com>
Date:   Thu May 7 23:21:32 2026 -0700

    fix: no-store HTML so new sections appear on reload
    
    Browser was caching v0.1 HTML so the engine-bay processes table
    didn't render after v0.2 deploy. Sets Cache-Control: no-store on
    .html responses.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---
 server.js | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/server.js b/server.js
index a466962..d7ca33d 100644
--- a/server.js
+++ b/server.js
@@ -13,7 +13,15 @@ const OLLAMA = process.env.OLLAMA || 'http://localhost:11434';
 
 const app = express();
 app.use(express.json({ limit: '8kb' }));
-app.use(express.static(path.join(__dirname, 'public'), { maxAge: '5s' }));
+// no caching of HTML — dashboard iterates fast, stale HTML hides new sections
+app.use(express.static(path.join(__dirname, 'public'), {
+  maxAge: 0,
+  setHeaders: (res, filePath) => {
+    if (filePath.endsWith('.html')) {
+      res.setHeader('Cache-Control', 'no-store, no-cache, must-revalidate, max-age=0');
+    }
+  }
+}));
 
 // Recent activity log — last 30 inference triggers seen via /api/ps polling.
 // Each tick of the front-end's fetch indirectly produces a record when ps changes.

← 3ef920f feat: engine bay live process table below gauges  ·  back to Macstudio1 Dashboard  ·  feat: rich LLM bay panel — per-model rows + ollama process s 684c80b →