Задача 005: Навигация на основе заголовков (API)
Приоритет: Средний Статус: Запланировано Категория: Инфраструктура / HTTP
🎯 Цель
Позволить бэкенду управлять навигацией бота, отправляя специфические метаданные в HTTP-заголовках ответа.
🛠 Постановка проблемы
В архитектуре Клиент-Сервер бэкенд (FastAPI/REST) часто знает, каким должен быть следующий экран. В данный момент боту приходится парсить тело ответа, чтобы решить, куда переходить, что раздувает логику Оркестратора.
🚀 Предлагаемое решение
- Извлечение метаданных: Улучшить
BaseApiClient, чтобы он возвращал не только тело JSON, но и специфические заголовки (например,X-Bot-Next-Scene,X-Bot-Alert). - Интеграция с Оркестратором: Предоставить способ для Оркестраторов «пробрасывать» эти инструкции в
Directorбез ручных проверок IF/ELSE. - Соглашение: Стандартизировать имена заголовков для общих действий, таких как
set_scene,show_alertиclean_history.
✅ Определение готовности
BaseApiClient._request()опционально возвращает метаданные ответа.- Документирован стандартный паттерн для навигации «Тонкого клиента».