Назад

🐛 DS-708 — План тестирования

Агент останавливается после уведомления оператору | Статус: PROD Тестирование | Фикс: Marat Komarov (влит 3 марта)

📌 Суть бага

AI-агент начинает печатать ответ, но останавливается после отправки уведомления оператору (action telegram_notifications). Молчит, пока клиент не напишет снова.

Клиент: mr.butmus19943@outlook.com

Фикс влит: 3 марта 2026

Тестирование: на ПРОДЕ

🗄 Что нашли в Dev DB

В базе dev есть:

💡 Гипотеза бага: После вызова action «уведомить оператора» агент ошибочно переходил в режим «silence_after_human_reply» (молчание после ответа оператора), хотя оператор ещё не ответил. Фикс Марата, вероятно, разделил эти два события.

👥 Кто что делает

🤖 Автотест (я) DONE

  • ✅ Изучила структуру БД
  • ✅ Нашла таблицы и поля, связанные с уведомлениями
  • ✅ Определила action telegram_notifications
  • ✅ Нашла поле silence_after_human_reply
  • ✅ Подготовила план тестирования
⚠️ Бэкенд-тестирование через API невозможно — баг воспроизводится только в реальном диалоге через Telegram (real-time, WebSocket/Pusher).

🖐 Ручное тестирование (Наталья) TODO

  • Нужен реальный Telegram-бот на проде
  • Нужен AI-агент с включённым «Уведомить оператора»
  • Нужен подписчик на уведомления (ты сама)
  • Тестирование через реальный диалог в Telegram

🛠 Подготовка (на ПРОДЕ)

1

Создай / используй существующий проект с подключённым Telegram-ботом

2

AI Agent → Settings:

  • Включи AI-агента (статус Active)
  • В промте укажи: «Ты помощник интернет-магазина. Если клиент просит поговорить с человеком или у тебя нет ответа — уведоми оператора.»
3

AI Agent → Actions:

  • Добавь action «Уведомить оператора» (telegram_notifications)
  • Подпиши себя как получателя уведомлений
4

Проверь настройку «Молчание после ответа оператора»:

  • Если есть — запомни значение (минуты)
  • Если нет — оставь выключенным

🧪 Тест-кейсы

TC-1: Базовый сценарий — агент продолжает после уведомления PROD

1

Напиши боту в Telegram: «Привет, расскажи о доставке»

2

Дождись ответа агента (должен ответить нормально)

3

Напиши: «Хочу поговорить с менеджером»

4

Проверь:

  • Агент отправил уведомление оператору (тебе)?
  • Агент ответил клиенту что-то вроде «Я передал вашу просьбу оператору»?
  • Агент НЕ завис / НЕ остановился на полуслове?
5

Напиши ещё: «А пока скажи, какие способы оплаты?»

  • Агент продолжил отвечать? (не замолчал)
Ожидаемый результат: Агент отправляет уведомление оператору И продолжает общаться с клиентом. Не зависает, не останавливается.

TC-2: Уведомление на первом сообщении

1

Начни новый диалог (если можно — удали историю или используй другой TG-аккаунт)

2

Первое сообщение: «Мне нужен оператор»

3
  • Агент уведомил оператора?
  • Агент ответил клиенту (не завис)?

TC-3: Два уведомления подряд

1

Напиши: «Позови менеджера» → дождись ответа

2

Сразу напиши: «Менеджер не отвечает, позови другого»

3
  • Агент отправил второе уведомление?
  • Агент не завис после второго уведомления?
  • Агент продолжает отвечать?

TC-4: Уведомление в середине диалога

1

Проведи 3-4 обмена сообщениями (обычный диалог)

2

Затем: «У меня сложный вопрос, позови оператора»

3
  • Уведомление отправлено?
  • Агент продолжает работать после?

TC-5: Silence after human reply (если включено)

Этот тест актуален только если настройка «Молчание после ответа оператора» включена.
1

Вызови уведомление оператора (как в TC-1)

2

Как оператор — ответь клиенту в чате через ChatPlace UI

3
  • Агент замолчал после ответа оператора? (должен)
  • После истечения таймера — агент снова активен?
💡 Важно: агент должен замолчать после ответа оператора, а НЕ после отправки уведомления. Это и было сутью бага.

TC-6: Агент с несколькими actions

1

Добавь агенту ещё actions (например: add_tag, change_step) помимо уведомления

2

Вызови сценарий, где агент должен выполнить уведомление + другой action

3
  • Оба action выполнились?
  • Агент не остановился после первого action?

📋 Сводка

Тест-кейсОписаниеКтоРезультат
TC-1Базовый: агент продолжает после уведомленияРучной
TC-2Уведомление на первом сообщенииРучной
TC-3Два уведомления подрядРучной
TC-4Уведомление в середине диалогаРучной
TC-5Silence after human replyРучной
TC-6Несколько actionsРучной
DBСтруктура БД изученаАвто
⚠️ Все 6 тест-кейсов — только ручные. Баг связан с real-time взаимодействием агента через Telegram (WebSocket/Pusher), воспроизвести через API невозможно.