fix(auto-repair): 中低風險+無kubectl_command → TYPE-1 純資訊,不顯示審核按鈕
問題: HostHighCpuLoad 等主機層告警 affected_services=[] → OpenClaw 生成 kubectl unknown → safety guard 攔截 → 退回 READY + TYPE-3 帶按鈕卡片 用戶一直看到帶按鈕的中/低風險告警,按鈕無法修復任何東西 修復三處: 1. openclaw.py: _call_openclaw_analyze() 回傳 suggested_action 欄位 + target_resource 預設改為 "" (避免 "unknown" 進入 safety guard) 2. decision_manager.py: classify_notification() 傳入 suggested_action / risk_level / has_kubectl_command 3. telegram_gateway.py: classify_notification() 新規則 — 無 kubectl_command + risk=low/medium + action=investigate/no_action → TYPE-1 (純資訊,無按鈕) 搭配 clawbot-v5 f4b84d7 (OpenClaw prompt CRITICAL RULES) 一起生效 2026-04-14 Claude Sonnet 4.6 Asia/Taipei Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -225,12 +225,18 @@ async def _push_decision_to_telegram(
|
||||
_auto_executed = proposal_data.get("auto_executed", False)
|
||||
_decision_state = proposal_data.get("decision_state", "")
|
||||
_mcp_all_failed = proposal_data.get("mcp_all_failed", False)
|
||||
_suggested_action_for_classify = proposal_data.get("suggested_action", "")
|
||||
_risk_level_for_classify = proposal_data.get("risk_level", "medium")
|
||||
_has_kubectl = bool(proposal_data.get("kubectl_command", ""))
|
||||
_notif_type = classify_notification(
|
||||
incident=incident,
|
||||
confidence=confidence,
|
||||
auto_executed=_auto_executed,
|
||||
mcp_all_failed=_mcp_all_failed,
|
||||
decision_state=_decision_state,
|
||||
suggested_action=_suggested_action_for_classify,
|
||||
risk_level=_risk_level_for_classify,
|
||||
has_kubectl_command=_has_kubectl,
|
||||
)
|
||||
|
||||
# 2026-04-12 ogt: ADR-075 — 從 Incident 提取 alert_category/notification_type(各分支共用)
|
||||
|
||||
Reference in New Issue
Block a user