Skip to content

Page status display differs between frontend UI and badge API #717

Description

@Plattenspatz

Description

I noticed that the overall status displayed on a status page in the frontend UI can differ from the status shown by the badge API for the same page. I'm not sure if this is intentional behavior or a bug, so I wanted to report it.

Steps to reproduce

  1. Create a status page with three monitors
  2. Set the monitors to the following states:
    • Monitor A: DEGRADED (e.g. a warning condition)
    • Monitor B: UP
    • Monitor C: MAINTENANCE
  3. Check the status in two places:
    • Frontend UI on the status page → shows "Under Maintenance" (MAINTENANCE)
    • Badge API (/badge/_/status) → shows "Degraded" (DEGRADED)

Expected behavior

I would expect both the frontend UI and the badge API to show the same overall status for a page. In my understanding, DEGRADED should take priority over MAINTENANCE, since a degraded state indicates an active problem that users may notice, while maintenance is a planned and acknowledged activity.

Observed behavior

The frontend UI appears to prioritize MAINTENANCE over DEGRADED in its status aggregation, while the badge API prioritizes DEGRADED over MAINTENANCE. This leads to a situation where the same page shows different statuses depending on where you look.

Example

Monitor Status
Monitor A DEGRADED
Monitor B UP
Monitor C MAINTENANCE
Source Overall status displayed
Frontend UI Under Maintenance
Badge API Degraded

Why this matters

I'm building an automated system that reads monitor statuses and displays them on an overview page. The inconsistency makes it difficult to present a single source of truth to users, since the status they see depends on whether they look at the main page or at a badge/embed.

Environment

  • Kener version: latest (Docker image docker.io/rajnandan1/kener:latest)
  • Deployment: Docker Compose, self-hosted

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions