Terry Notifications
Role of Notifications
Нотификации в Terry это отдельная capability, которая использует результаты pipeline execution и переводит их в action-oriented сообщения.
Notification Flow
flowchart LR
O["Pipeline outcome"] --> R["Notification rules"]
R --> T["Template rendering"]
T --> C["Channel delivery"]
C --> A["Delivery attempts log"]
Building Blocks
notification templateопределяет структуру сообщения и variables contract;delivery channelопределяет transport и provider-specific delivery logic;- notification rule связывает pipeline outcome с template и channel policy.
Triggering Strategy
Полезно различать минимум три типа событий:
- success notifications;
- anomaly or validation notifications;
- operational failure notifications.
Это позволяет не смешивать бизнес-сигналы с эксплуатационными alerting событиями.
Delivery Principles
- рендеринг шаблона должен быть детерминированным и воспроизводимым;
- отправка должна быть идемпотентной настолько, насколько это позволяет канал;
- dedup policy должна быть описана на уровне notification rule;
- provider response и attempt metadata должны сохраняться для triage.
Template Discipline
- шаблон использует normalized fields и execution metadata;
- шаблон не должен зависеть от source-specific сырого JSON;
- критичные сообщения должны иметь plain-text fallback;
- template versioning должен быть возможен без разрыва исторических delivery logs.
Channel Examples
Потенциальные delivery channel:
- email;
- Telegram;
- Slack;
- webhook;
- internal event bus.
Конкретный набор каналов будет зависеть от реализации, но модель должна оставаться общей.