Merge remote-tracking branch 'origin/main' into codex/p0-006-ai-log-triage-20260709
This commit is contained in:
@@ -91,6 +91,7 @@ _PUBLIC_MAINTENANCE_ROUTE_BLOCKERS = {
|
||||
}
|
||||
_PUBLIC_MAINTENANCE_EDGE_BLOCKERS = {
|
||||
"edge_public_maintenance_live_config_drift",
|
||||
"privileged_edge_apply_channel_unavailable",
|
||||
}
|
||||
_PUBLIC_MAINTENANCE_BLOCKERS = (
|
||||
_PUBLIC_MAINTENANCE_ROUTE_BLOCKERS | _PUBLIC_MAINTENANCE_EDGE_BLOCKERS
|
||||
@@ -2428,6 +2429,14 @@ def _build_public_maintenance_fallback_readback(value: Any) -> dict[str, Any]:
|
||||
):
|
||||
blockers.append("public_route_unreachable_without_external_l1_fallback")
|
||||
edge_blockers = _strings(public_maintenance.get("edge_fallback_blockers"))
|
||||
edge_fallback = _dict(public_maintenance.get("edge_fallback"))
|
||||
if (
|
||||
public_maintenance.get("edge_fallback_runtime_readback_present") is True
|
||||
and public_maintenance.get("edge_fallback_ready") is not True
|
||||
and edge_fallback.get("sudo_n_ready") is False
|
||||
and "privileged_edge_apply_channel_unavailable" not in edge_blockers
|
||||
):
|
||||
edge_blockers.append("privileged_edge_apply_channel_unavailable")
|
||||
for blocker in edge_blockers:
|
||||
if blocker not in blockers:
|
||||
blockers.append(blocker)
|
||||
@@ -2441,7 +2450,7 @@ def _build_public_maintenance_fallback_readback(value: Any) -> dict[str, Any]:
|
||||
public_maintenance.get("edge_fallback_runtime_readback_present") is True
|
||||
),
|
||||
"edge_fallback_ready": public_maintenance.get("edge_fallback_ready"),
|
||||
"edge_fallback": _dict(public_maintenance.get("edge_fallback")),
|
||||
"edge_fallback": edge_fallback,
|
||||
"edge_fallback_blockers": edge_blockers,
|
||||
"target_url_count": _int(public_maintenance.get("target_url_count")),
|
||||
"route_count": _int(public_maintenance.get("route_count")),
|
||||
@@ -3499,6 +3508,7 @@ def _reboot_sop_primary_blocker(active_blockers: list[str]) -> str:
|
||||
"windows99_console_verify_output_truncated",
|
||||
"public_route_raw_5xx_without_maintenance_fallback",
|
||||
"public_route_unreachable_without_external_l1_fallback",
|
||||
"privileged_edge_apply_channel_unavailable",
|
||||
"edge_public_maintenance_live_config_drift",
|
||||
"public_maintenance_fallback_runtime_readback_missing",
|
||||
"post_start_blocked_not_zero",
|
||||
@@ -3713,11 +3723,24 @@ def _active_blocker_action_row(
|
||||
next_safe_action = (
|
||||
"run_public_maintenance_fallback_probe_and_rerun_scorecard_no_reload"
|
||||
)
|
||||
controlled_apply_mode = "check_mode_then_separate_edge_or_nginx_apply"
|
||||
if blocker == "privileged_edge_apply_channel_unavailable":
|
||||
next_safe_action = (
|
||||
"restore_privileged_edge_apply_channel_then_rerun_edge_fallback_"
|
||||
"check_and_nginx_t_apply_package_no_app_restart"
|
||||
)
|
||||
controlled_apply_mode = (
|
||||
"blocked_until_passwordless_privileged_edge_channel_readback"
|
||||
)
|
||||
elif blocker == "edge_public_maintenance_live_config_drift":
|
||||
next_safe_action = (
|
||||
"run_public_maintenance_edge_fallback_check_then_prepare_"
|
||||
"privileged_nginx_t_apply_package_no_app_restart"
|
||||
)
|
||||
post_verifier = (
|
||||
"python3 scripts/reboot-recovery/public-maintenance-fallback-probe.py"
|
||||
)
|
||||
evidence_inputs = ["public_maintenance_fallback"]
|
||||
controlled_apply_mode = "check_mode_then_separate_edge_or_nginx_apply"
|
||||
elif "stockplatform" in blocker or "product_data" in blocker:
|
||||
category = "product_data_freshness"
|
||||
owner_lane = "stockplatform_freshness_and_ingestion"
|
||||
|
||||
Reference in New Issue
Block a user