Platform & Access
Authentication, session lifecycle, centre scoping and the landing desktop — the shell every other feature runs inside.
11 features · 27 use cases · 13 happy paths · 34 failure paths · 7 open findings
mindmap root((Platform and Access)) Staff login Password reset request Password update from reset link Change own password Idle auto-logout Centre switching and multi-centre scoping Server-incident banner Desktop home dashboard Runtime environment and white-label boot Back-office interface language In-app help and support chat Froged
Features
| Feature | Modules | Use | ✅ | ⛔ | Risk |
|---|---|---|---|---|---|
| Staff login Email + password authentication for back-office staff. On success a bearer token is stored in the ember-simple-auth session and the current … | — | 3 | 1 | 4 | 🟠 Medium |
| Password reset request Public form where a staff member asks for a password-reset email by entering their address. | — | 2 | 1 | 2 | — |
| Password update from reset link Token-gated screen where a staff member sets a new password and confirmation. | — | 2 | 1 | 4 | — |
| Change own password Authenticated self-service password change requiring the current password plus a new one and its confirmation. | — | 2 | 1 | 3 | — |
| Idle auto-logout Per-centre inactivity timer that warns the user and then ends the session. The timeout in minutes is configured on the centre’s `auto_logout… | auto_logout | 2 | 2 | 3 | 🟠 Medium |
| Centre switching & multi-centre scoping The navbar centre picker sets the active centre, which scopes virtually every list query ( filter.center_id), drives which modules are enab… | — | 3 | 1 | 3 | 🟠 Medium |
| Server-incident banner In-app banner that surfaces an open server incident (title, description, last update) to every user, dismissible per session. | — | 2 | 1 | 2 | — |
| Desktop (home dashboard) The landing screen after login. It renders whichever dashboard is configured with category: 'home' — a custom panel, the data-quality pane… | — | 3 | 2 | 4 | 🔵 Low |
| Runtime environment & white-label boot Before anything renders, the app fetches a per-deployment config.json that sets the API host, environment and deploy names, the visual the… | — | 3 | 1 | 3 | 🟠 Medium |
| Back-office interface language The staff interface is shown in Spanish or Portuguese when the browser is set to one of them, and in English otherwise, with English filling… | — | 2 | 1 | 3 | 🔵 Low |
| In-app help & support chat (Froged) A Froged support bubble with a knowledge base and chat, loaded on every page and identified with the signed-in staff member, their company (… | — | 3 | 1 | 3 | 🔵 Low |
Findings in this area
- 🟠 Medium R12 · Auto-logout silently disabled when minutes are unset
- 🟠 Medium R13 · Missing centre cookie produces unscoped queries
- 🔵 Low R18 · Idle monitor cannot remove its listeners
- 🔵 Low R19 · Froged identify flag never set
- 🔵 Low R20 · Portuguese string in the English bundle
- 🔵 Low R27 · Desktop receipts query has no catch
- 🟠 Medium R32 · Runtime config failure is a blank page