fix(reboot): route slo blockers to action matrix
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 59s
CD Pipeline / build-and-deploy (push) Successful in 4m40s
CD Pipeline / post-deploy-checks (push) Has been cancelled

This commit is contained in:
Your Name
2026-07-03 00:33:27 +08:00
parent f700489bb9
commit fd79a8cd0c
8 changed files with 630 additions and 10 deletions

View File

@@ -474,6 +474,43 @@ def _assert_reboot_slo_payload(payload: dict):
is False
)
assert payload["active_blockers"] == EXPECTED_REBOOT_SLO_BLOCKERS
matrix = payload["active_blocker_action_matrix"]
assert matrix["schema_version"] == "reboot_active_blocker_action_matrix_v1"
assert matrix["item_count"] == 11
assert matrix["telegram_alert_required_count"] == 11
assert matrix["primary_blocker_action"]["blocker"] == (
"reboot_event_required_host_unreachable"
)
assert matrix["primary_blocker_action"]["category"] == "host_boot_detection"
assert matrix["primary_blocker_action"]["owner_lane"] == (
"reboot_event_detector_and_host_probe"
)
assert matrix["category_counts"]["host_boot_detection"] == 5
assert matrix["category_counts"]["windows99_vmware_autostart"] == 2
assert matrix["category_counts"]["backup_observability"] == 1
action_by_blocker = {item["blocker"]: item for item in matrix["items"]}
assert action_by_blocker["windows99_remote_execution_channel_unavailable"][
"owner_lane"
] == "windows99_console_or_no_secret_management_channel"
assert action_by_blocker["backup_core_green_not_1"]["category"] == (
"backup_observability"
)
assert action_by_blocker["wazuh_dashboard_degraded"][
"telegram_severity"
] == "warning"
assert action_by_blocker["reboot_event_required_host_unreachable"][
"controlled_apply_authorized_by_scorecard"
] is False
assert "host_reboot" in action_by_blocker[
"reboot_event_required_host_unreachable"
]["forbidden_actions"]
assert payload["readback"]["active_blocker_action_count"] == 11
assert payload["readback"]["primary_blocker_owner_lane"] == (
"reboot_event_detector_and_host_probe"
)
assert payload["rollups"]["active_blocker_action_category_counts"][
"windows99_vmware_autostart"
] == 2
progress = payload["reboot_sop_progress"]
assert progress["current_phase"] == "host_boot_detection_blocked"
assert progress["eta_or_wait_reason"] == (