The two outbound notification channels behind the #41 abstraction: Telegram (default, instant) and Resend email (optional, summaries). Spec: [§9.2 Notification channels](https://app.notion.com/p/37214c40040d8142af8aeb81d8a70961), §10 Credentials, §16.3 (`secrets`). ## Acceptance criteria - [ ] **Telegram** outbound channel sends alerts to the human's chat via the bot (token + chat id resolved by reference) (§9.2, §10). - [ ] **Resend** email channel sends digests/summaries; off by default and suited to summaries rather than instant alerts (§9.2). - [ ] Both implement the #41 channel interface and register with the dispatcher. - [ ] Each send has explicit success and failure paths; transient failures are surfaced, not swallowed. - [ ] Secrets `telegram_bot_token`, `telegram_chat_id`, `resend_api_key` resolved by reference and added to `.env.example` (names only). - [ ] Tests with the Telegram and Resend HTTP layers mocked. Depends on: #41, #5
The two outbound notification channels behind the #41 abstraction: Telegram (default, instant) and Resend email (optional, summaries).
Spec: §9.2 Notification channels, §10 Credentials, §16.3 (
secrets).Acceptance criteria
telegram_bot_token,telegram_chat_id,resend_api_keyresolved by reference and added to.env.example(names only).Depends on: #41, #5