🧪 DS-708 — Тест-сценарий для staging
По совету Марата Комарова (Slack) · 21 марта 2026
Баг: Когда AI-агент отправляет уведомление оператору в Telegram — он перестаёт отвечать клиенту. Проблема не в том, что уведомление не уходит, а в том, что ответ клиенту не отправляется вместе с уведомлением.
💡 Суть подхода (обходной путь Марата)
Полноценную Telegram-интеграцию на review/staging поднять нельзя — нужен отдельный бот-токен, зарегистрированный в системе, иначе сломается dev.
Обходной путь: Настроить интеграцию без реального бота — либо включить флаг в базе данных, либо «подключить» интеграцию без полной настройки. Отправка в Telegram обёрнута в try/catch, поэтому ошибка будет поймана и не уронит процесс.
Главное: Проверить, что ответ клиенту всё равно уходит, даже когда срабатывает нотификация (неважно — успешно или с ошибкой).
📋 Предусловия
- Staging/review ветка DS-708
- AI-ассистент опубликован (published)
- У ассистента добавлены
notificationSubscribers (в настройках продукта)
- Telegram-интеграция включена (флаг в БД) или подключена без реального бота
- Правило агента: «Уведомить оператора при запросе на живого человека»
Сценарий 1: Нотификация → TG фейлится → клиент получает ответ
| # | Шаг | Ожидаемый результат |
| 1 | Настроить AI-агента с правилом «уведомить оператора при запросе на живого человека» | Правило сохранено |
| 2 | Опубликовать ассистента | Ассистент в статусе published |
| 3 | Добавить notificationSubscribers (в настройках продукта, не в env) | Подписчики добавлены |
| 4 | Включить Telegram-интеграцию (флаг в БД или через UI, без реального бота) | Интеграция «включена» |
| 5 | Отправить от лица клиента: «Хочу поговорить с менеджером» | Агент триггерит нотификацию |
| 6 | Проверить: агент отправил ответ клиенту? | ✅ PASS Клиент получает ответ (напр. «Передаю вашу просьбу оператору») |
| 7 | Проверить логи: нотификация в TG упала в try/catch? | ℹ️ INFO Ошибка ожидаема — бот не настроен |
Сценарий 2: После нотификации агент продолжает диалог
| # | Шаг | Ожидаемый результат |
| 1 | После сценария 1 — отправить от клиента: «Какие у вас услуги?» | ✅ PASS Агент отвечает как обычно |
| 2 | Отправить ещё: «Расскажите подробнее» | ✅ PASS Агент не замолкает, продолжает диалог |
Сценарий 3: Повторная нотификация в рамках одного диалога
| # | Шаг | Ожидаемый результат |
| 1 | После сценария 2 — отправить: «Нет, мне нужен именно живой оператор» | Агент повторно триггерит нотификацию |
| 2 | Проверить: клиент получил ответ? | ✅ PASS Ответ клиенту отправлен |
| 3 | Отправить обычное сообщение: «Спасибо» | ✅ PASS Агент отвечает, не замолкает |
🔑 Ключевой момент
«У нас же нет проблемы что он в телегу не шлёт — есть проблема что это не сопровождается сообщением клиенту»
— Марат Комаров, Slack
Фикс должен гарантировать: отправка нотификации и ответ клиенту — независимые операции. Даже если Telegram-отправка падает — клиент должен получить свой ответ.
⚙️ Варианты настройки интеграции на staging
| Способ | Описание | Сложность |
| Флаг в БД | Поменять флаг наличия Telegram-интеграции напрямую в базе | Просто |
| UI без бота | Подключить интеграцию через UI, не указывая реальный токен | Зависит от валидации |
| Отдельный бот | Зарегистрировать новый бот-токен в системе (не использовать dev-токен!) | Сложно |