Skip to content

fix: restore isMaintenance field in status page API response#3259

Closed
scrollingreel wants to merge 1 commit intobluewave-labs:developfrom
scrollingreel:fix/status-page-isMaintenance
Closed

fix: restore isMaintenance field in status page API response#3259
scrollingreel wants to merge 1 commit intobluewave-labs:developfrom
scrollingreel:fix/status-page-isMaintenance

Conversation

@scrollingreel
Copy link

Describe your changes

Fixes the regression in v3.3 where isMaintenance field was missing from the status page API response (/api/v1/status-page/:url).

Root cause: The getStatusPageByUrl controller method was using findByIds() which performs a simple query, instead of findByIdsWithChecks() which runs the aggregation pipeline that calculates isMaintenance from maintenance windows.

Changes:

  • Changed findByIds to findByIdsWithChecks in statusPageController.ts
  • Added isMaintenance?: boolean property to Monitor type
  • Included isMaintenance in toEntityWithChecks entity mapping

Write your issue number after "Fixes "

Related Issue

Closes #3255

- Changed findByIds to findByIdsWithChecks in statusPageController
- Added isMaintenance property to Monitor type
- Included isMaintenance in toEntityWithChecks mapping

Fixes the regression where isMaintenance was missing in v3.3
Copy link
Member

@Br0wnHammer Br0wnHammer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Thanks for the fix 🚀

@ajhollid
Copy link
Collaborator

ajhollid commented Feb 9, 2026

Thanks for taking a look at this, however the change is intentional. The findByIdsWithChecks aggregation is too slow for use on the status page. Additionally, recent checks are now denormalized and included in the monitor itself, so the old aggregation is no longer needed here.

If the maintenance status is required, we'll have to implement a different method of handling that. Please feel free to discuss further in the relevant issue!

@ajhollid ajhollid closed this Feb 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Status Page API no longer includes maintenance window status

3 participants