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

@@ -410,9 +410,10 @@ async def _send_rollback_proposal_alert(
不自動執行 rollback僅通知人工評估。
"""
try:
from src.core.config import get_settings
from src.services.telegram_gateway import get_telegram_gateway
_settings = get_settings()
from src.services.telegram_gateway import (
_telegram_send_delivery_succeeded,
get_telegram_gateway,
)
gateway = get_telegram_gateway()
regressions = assessment.get("regressions", [])
@@ -429,20 +430,25 @@ async def _send_rollback_proposal_alert(
f"<i>此為提案,不會自動執行 Rollback</i>"
)
target_chat_id = _settings.SRE_GROUP_CHAT_ID
await gateway._send_request(
"sendMessage",
{
"chat_id": target_chat_id,
"text": text,
"parse_mode": "HTML",
},
)
logger.info(
"rollback_proposal_sent",
incident_id=incident_id,
score=score,
delivery = await gateway.send_canonical_message(
product_id="awoooi",
signal_family="incident_lifecycle",
severity="P1",
text=text,
parse_mode="HTML",
)
if _telegram_send_delivery_succeeded(delivery):
logger.info(
"rollback_proposal_sent",
incident_id=incident_id,
score=score,
)
else:
logger.warning(
"rollback_proposal_blocked_no_send",
incident_id=incident_id,
score=score,
)
except Exception:
logger.warning(
"rollback_proposal_send_failed",