feat(telegram): enforce canonical product routing

This commit is contained in:
ogt
2026-07-14 19:14:11 +08:00
parent 1431abba54
commit 180e708444
54 changed files with 7746 additions and 740 deletions

View File

@@ -732,7 +732,10 @@ class FailureWatcherService(IFailureWatcher):
)
# 推送到 Telegram
from src.services.telegram_gateway import get_telegram_gateway
from src.services.telegram_gateway import (
_telegram_send_delivery_succeeded,
get_telegram_gateway,
)
tg = get_telegram_gateway()
message = (
@@ -744,13 +747,24 @@ class FailureWatcherService(IFailureWatcher):
f"└ 💡 下一步: {analysis.get('suggested_repair', 'AI 深度診斷')}\n\n"
f"狀態:<code>ai_retry_or_break_glass_recorded</code>"
)
await tg.send_alert_notification(message)
logger.info(
"ai_controlled_repair_followup_sent",
audit_log_id=audit_log_id,
risk_level=analysis.get("risk_level"),
delivery = await tg.send_alert_notification(
message,
product_id="awoooi",
signal_family="incident_lifecycle",
severity="P1",
)
if _telegram_send_delivery_succeeded(delivery):
logger.info(
"ai_controlled_repair_followup_sent",
audit_log_id=audit_log_id,
risk_level=analysis.get("risk_level"),
)
else:
logger.warning(
"ai_controlled_repair_followup_blocked_no_send",
audit_log_id=audit_log_id,
risk_level=analysis.get("risk_level"),
)
except Exception as e:
logger.warning(
@@ -776,7 +790,12 @@ class FailureWatcherService(IFailureWatcher):
f"├ 📋 AuditLog: <code>{audit_log_id[:8]}...</code>\n"
f"└ 📝 結果: {repair_result}"
)
await tg.send_alert_notification(message)
await tg.send_alert_notification(
message,
product_id="awoooi",
signal_family="incident_lifecycle",
severity="P1",
)
except Exception as e:
logger.warning(