runtime-overrides.json Reference
NORTHSTAR SHOW SYSTEMS
runtime-overrides.json Reference
Operator schedule override persistence format
v1.0 — May 2026
runtime-overrides.json Reference
The runtime-overrides.json file stores operator-set schedule enable/disable states that persist across HelmOS restarts. It sits beside nodes.json at C:\ProgramData\Helm\runtime-overrides.json in production.
Purpose
The nodes.json file is owned by Compose (the show designer) and is never modified by HelmOS during normal operation. When an operator toggles a schedule on or off in Cuemaster, that override must persist without modifying the show file. runtime-overrides.json serves this purpose.
Schema
The file is a JSON object with schedule IDs as keys:
| Field | Type | Description |
|---|---|---|
| Object | One entry per schedule that has been toggled | |
| .enabled | Boolean | true = schedule is active, false = schedule is suppressed |
Behavior
- Created automatically by HelmOS on the first POST /api/schedule/:id/toggle call.
- Read at startup. Overrides merge on top of the enabled flags in nodes.json.
- If a schedule ID in the overrides file does not exist in nodes.json (e.g., after a show file update), the orphaned entry is ignored.
- If the file is missing or empty, all schedules use their nodes.json defaults.
- HelmOS writes the full overrides object on every toggle (atomic write).
File location
| Environment | Path |
|---|---|
| Production | C:\ProgramData\Helm\runtime-overrides.json (beside nodes.json) |
| Development | Same directory as the --config path argument |
Relationship to nodes.json
nodes.json is the source of truth for show design. runtime-overrides.json is the source of truth for operator runtime decisions. When both exist, the merge priority is:
- nodes.json schedule.enabled— base value set by show designer
- runtime-overrides.json— operator override, wins if present
Uploading a new nodes.json (POST /api/config) does not clear runtime-overrides.json. The operator’s toggles persist unless manually reset.