Bug
After hermes update, a hermes dashboard process started before the update keeps running with the old Python backend in memory while the JS bundle on disk gets replaced. The updated frontend sends requests the stale backend can't handle.
Reproduction
hermes dashboard --port 9119 --host 127.0.0.1 --no-open (leave running)
hermes update
- Open the dashboard in a browser
Observed behavior
In v0.11.0 the frontend changed to send the session token via the X-Hermes-Session-Token header. A dashboard process started before v0.11.0 only checks Authorization: Bearer. Every API call returns 401. The page loads but all data endpoints fail with no visible error (sessions, config, keys all return "Unauthorized").
This is hard to diagnose because:
- The HTML page loads fine (static file, always fresh from disk)
- The session token lands in the page
- No visible error in the UI, just empty data
- You assume the dashboard is broken, not that it needs a restart
Expected behavior
hermes update should detect running dashboard processes and tell the user to restart them, similar to how it handles gateway processes (auto-restarts services, stops manual processes).
Suggested fix
After the git pull + pip install + web UI build steps, scan for running dashboard processes and print a warning. PR to follow.
Bug
After
hermes update, ahermes dashboardprocess started before the update keeps running with the old Python backend in memory while the JS bundle on disk gets replaced. The updated frontend sends requests the stale backend can't handle.Reproduction
hermes dashboard --port 9119 --host 127.0.0.1 --no-open(leave running)hermes updateObserved behavior
In v0.11.0 the frontend changed to send the session token via the
X-Hermes-Session-Tokenheader. A dashboard process started before v0.11.0 only checksAuthorization: Bearer. Every API call returns 401. The page loads but all data endpoints fail with no visible error (sessions, config, keys all return "Unauthorized").This is hard to diagnose because:
Expected behavior
hermes updateshould detect running dashboard processes and tell the user to restart them, similar to how it handles gateway processes (auto-restarts services, stops manual processes).Suggested fix
After the git pull + pip install + web UI build steps, scan for running dashboard processes and print a warning. PR to follow.