Dashboard
The tenant file's four datasets, and the shifts built on them.
Shifts in Office
The account of confirmed shifts (documentation + broadcast). Verified shifts move to Rostering (status → completed) and are not changed thereafter.
Shift inbox
Incoming shifts (open / proposed). The solver runs every 5 min and classifies them into tiers — 0 auto-confirms (perfectly deterministic), 1–3 relax on a principle, 4 is manual focus.
Communication layer
Select a user to see their device URL + auth…
Files
The tenant file on disk — one folder per tenant, four datasets inside.
Database
How the datasets flow: inputs → shift configurations → the pages they patch.
Tenant
One tenant per file — bound to its MagicDNS. Network sync across the six communication layers.
Compliance
Rule toggles that flag data drift. First rule (owner, 29 Aug): GPS vs eircode — when both are present and the coordinates are more than 100 m from the eircode's location, the record is flagged.
Roles
The hierarchy, guard upward. A role's grants start from the shipped matrix; every switch you save is stored as an explicit override.
Select a role to edit its 340 features.
Employees
One table of every employee — add people, filter by role / site, pick the columns. Creating a login sets the username to <name>@<host> and issues the device API key once.
Sites
Every site on the tenant file. State colours the map on the dashboard.
Clients
Clients on the tenant file, with the sites they're linked to.
Incidents
Every incident on the tenant file — add, filter by severity / status / site, pick the columns.
Credentials
One table of every user — add users, filter by role / site / client, pick the columns.