mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-03 12:42:43 +00:00
8a70a2c23c
Compounding slice on the per-resource operator-state feature: when an operator has marked a resource as IntentionallyOffline (via the API surface from slice 30), new findings against that resource get auto-dismissed as expected_behavior with the lifecycle event tagged operator_state_cause=intentionally_offline. Same shape as the maintenance-window suppression from slice 31 but indefinite — no scheduled end, no maintenance_end_at metadata. Restructures the ResourceOperatorStateProvider interface to return a single ResourceOperatorStateProjection per call rather than a narrow ActiveMaintenanceWindow method. Adding the second signal would otherwise have meant a second method and another call per finding; the projection shape carries every signal in one round-trip and gives future signals (NeverAutoRemediate, criticality) a stable extension point. Maintenance windows take priority over intentionally_offline when both are active because the time-bounded suppression is more honest to surface to the operator — they'll see it auto-clear when the window ends rather than wondering when the indefinite suppression will lift.