Platform & Access · Server-incident banner

In-app banner that surfaces an open server incident (title, description, last update) to every user, dismissible per session.

AreaPlatform & Access
Routes(application-wide)
Centre modulesalways available
Staff levelsall
Modelsserver-incident
UI labelmenu.navbar.server-incidents
Coverage2 use cases · 1 happy · 2 failure

How it works

Consumer side of the Server incidents admin feature. The application controller exposes incidentTitle, incidentDescription, incidentUpdatedAt and incidentAlertIsClosed plus a closeIncident action. Dismissal is per user per session, so a re-login re-shows the alert.

Use cases

Why someone opens this (2)

  • Telling all back-office users that receipt validation is degraded before they open support tickets.
  • Announcing a maintenance window from inside the product.

Path map

flowchart LR
    F(["Server-incident banner"]):::feat
    F --> H1["Incident announced and acknowledged"]:::ok
    F -.-> X1["No open incident"]:::bad
    F -.-> X2["Incident resolved but banner cached"]:::bad
    classDef feat fill:#4a5c8a,stroke:#4a5c8a,color:#ffffff,font-weight:bold
    classDef ok fill:#e3f1ea,stroke:#0d6b42,color:#0d4a2e
    classDef bad fill:#f7e6e2,stroke:#9a2d1c,color:#6e1f13

Happy paths

Incident announced and acknowledged

  1. An admin creates a server incident under Configuration.
  2. Every signed-in user sees the banner with title, description and update time.
  3. A user clicks close; incidentAlertIsClosed hides it for the rest of the session.

Failure paths

QA checklist

Tick these off while regression-testing this feature. The boxes are plain Markdown, so progress is visible in git diffs.

  • ✅ Incident announced and acknowledged
  • ⛔ No open incident
  • ⛔ Incident resolved but banner cached

Implementation


Generated from doc/feature-inventory.json · id platform-incident-alert · commit 276788ca6