diff --git a/server/src/service/infrastructure/statusService.ts b/server/src/service/infrastructure/statusService.ts index 4b591694d..f2e7ff5ac 100755 --- a/server/src/service/infrastructure/statusService.ts +++ b/server/src/service/infrastructure/statusService.ts @@ -163,6 +163,9 @@ export class StatusService implements IStatusService { }; } + // With a full window, a single raw check must not change monitor.status; only the sliding-window threshold can trigger a transition. + newStatus = monitor.status; + // Check if threshold has been met const failures = monitor.statusWindow.filter((s) => s === false).length; const failureRate = (failures / monitor.statusWindow.length) * 100;