# 子机离线告警独立 Telegram — 验证报告 **日期**: 2026-06-13 ## 验证结果 | 项 | 方式 | 结果 | |----|------|------| | 通道路由单测 | `pytest tests/test_telegram_offline_channel.py` | **PASS** 4/4 | | 配置与白名单 | Python import `MUTABLE_KEYS` / `resolve_offline_*` | **PASS** | | API 路由注册 | FastAPI `telegram/offline/*` | **PASS** | | 本地门控 | `bash scripts/local_verify.sh` | **PASS** 26/26 + ruff | | 前端构建 | `npm run build` | **PASS**(含 `SettingsPage-*.js`) | | 构建产物 API 路径 | `telegram/offline/test` 等 | **PASS** | | 真实 Telegram 发送 | 未执行 | **SKIP**(需生产/本地 Bot 凭据) | | 子机离线边沿 E2E | 未执行 | **SKIP**(需可 SSH 子机 + Agent) | ## 路由清单(已注册) - `POST /api/settings/telegram/offline/test` - `GET /api/settings/telegram/offline/chats` - `POST /api/settings/telegram/offline/reveal-token` - `PUT /api/settings/telegram_offline_bot_token` - `PUT /api/settings/telegram_offline_chat_id` ## 路由逻辑(单测覆盖) 1. 专用 Token+Chat 均配置 → 离线告警走专用 Bot 2. 未配置专用 → 回退默认 `TELEGRAM_BOT_TOKEN` / `TELEGRAM_CHAT_ID` 3. 仅配置一半专用 → 回退默认(避免半配发不出去) ## 手动终验(部署后) 1. **设置** → 配置离线专用 Bot + Chat ID →「测试离线通道」收到消息。 2. 停一台子机 Agent → 离线通知进**专用群**(非默认群)。 3. 清空离线专用配置 → 离线通知回默认群。