internal_alerts module
Internal alerts system for CodeBot (post-MVP).
Stores recent alerts in-memory for ChatOps consumption
Emits structured events via observability.emit_event
Optionally forwards alerts to sinks via alert_forwarder (Slack/Telegram) or directly to Telegram if alert_forwarder is unavailable.
Environment variables used by the Telegram fallback: - ALERT_TELEGRAM_BOT_TOKEN - ALERT_TELEGRAM_CHAT_ID
This module is intentionally lightweight and fail-open. It should never raise.
- internal_alerts.normalize_alert_details(**details)[מקור]
מחזיר את מטען ההתראה כמילון שטוח, משתי צורות הקריאה.
``emit_internal_alert`` מקבל את המטען דרך
**details, ולכן קורא שמעביר אותו כ-details={...}מגיע לכאן כמילון מקונן. הצורה הזו אינה ”תמיכה לאחור לטסטים“ אלא הצורה הנכונה בכל מקום שבו מפתחות המטען אינם ידועים בנקודת הקריאה: מפתח ששמוname/severity/summaryהיה מתנגש עם פרמטר של הפונקציה ומפיל אותה ב-TypeError.הכלל חי כאן ולא משוכפל: גם קוד הייצור וגם דמויות בטסטים קוראים לו, כדי שדמה לא תראה מבנה אחר ממה שהפונקציה האמיתית רואה.