fix(api): 修復 Telegram 訊息 INC-INC- 重複前綴

問題: TelegramMessage.format() 中的 incident_id 生成邏輯
當 approval_id 已是 "INC-xxx" 格式時仍添加 "INC-" 前綴

修復: 檢查 approval_id 是否已有 INC- 前綴,避免重複

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
OG T
2026-03-27 10:28:18 +08:00
parent 43e8ead0d2
commit 7720551b8c

View File

@@ -166,8 +166,13 @@ class TelegramMessage:
else:
conf_emoji = "🔴"
# 自動生成事件編號
incident_id = self.incident_id or f"INC-{self.approval_id[:8].upper()}"
# 自動生成事件編號 (2026-03-27 ogt: 修復 INC-INC- 重複前綴)
if self.incident_id:
incident_id = self.incident_id
elif self.approval_id.startswith("INC-"):
incident_id = self.approval_id
else:
incident_id = f"INC-{self.approval_id[:8].upper()}"
# SignOz URL (優先使用動態 URL) - 必須 HTML 轉義防止解析錯誤
service_name = self.resource_name.split("-")[0] if "-" in self.resource_name else self.resource_name