Summary of bugs fixed
1) Reset demo was blocked by a password/token
Symptom: Clicking Reset demo prompted for a password and then returned Forbidden.
Root cause: The reset endpoint required an admin token (NOVAMUSE_ADMIN_TOKEN) and returned 403 Forbidden when the provided token was missing or incorrect.
Fix: Removed the authentication requirement entirely:
/api/admin/resetno longer requires a token or header.- The UI no longer prompts for a password; it only asks for confirmation and then resets.
Result: Reset works immediately (full clean slate) without a password.
2) Zone controls (+5 / -5 / Spike) did not update the UI
Symptom: Clicking +5, -5, or Spike appeared to do nothing.
Root cause: The UI relied on WebSocket pushes for updates and did not reliably refresh state after an action. In a hosted environment, WebSockets can be unreliable, causing the dashboard to appear unchanged.
Fix:
- After each zone action, the UI now calls
fetchState()to refresh/api/state. - Added error handling so failures are not silent.
- Added a polling fallback when WebSockets are unavailable.
Result: Zone occupancy updates immediately after clicking the buttons.
3) Other staff actions did not refresh dashboard counters consistently
Symptom: After actions like generating a report, running automation, or logging an incident, the event count and alerts sometimes did not change until manual refresh.
Root cause: These actions did not trigger a state refresh in the UI.
Fix: After each action completes, the UI now refreshes state via fetchState().
Result: Dashboard counters and alerts stay in sync after actions.
4) Added a clear deployment/version check
Change: /health now returns version 0.1.1.
Result: It is easy to confirm the new build is deployed by checking the /health response.
Log in or sign up for Devpost to join the conversation.