Сценарии: Послойная отработка
Как пользовательский запрос проходит через все слои платформы
🎯Ключевая идея
Любой сценарий в clowbot проходит 4 обязательных слоя: PostgreSQL → Python Bridge → n8n/Agents → LLM. Понимание этого потока — ключ к созданию надёжных сценариев.
01Послойная диаграмма
LAYER 0: Telegram
LAYER 1: Python Bridge (FastAPI)
LAYER 2: PostgreSQL (Single Source of Truth)
LAYER 3A: n8n (Workflows)
LAYER 3B: Agent (Direct LLM)
LAYER 4: LLM Provider (Ollama / OpenAI / GLM)
LAYER 5: Response Assembly
LAYER 6: Telegram Response
Время прохождения слоёв
02Примеры сценариев
Сценарий 1: Simple Chat
User: "Привет, как дела?"
Сценарий 2: Web Search
User: "Найди информацию о..."
Сценарий 3: Reminder
User: "Напомни мне через 5 минут"
03Сценарии отказа
LLM Timeout
1. LLM не отвечает за 300s
2. Fallback: degraded response
3. Log to llm_calls (status: timeout)
4. User: "Попробуйте позже"
n8n Unavailable
1. n8n webhook timeout
2. Retry 3x with backoff
3. Fallback: direct LLM path
4. Log to automation_events
DB Connection Lost
1. asyncpg pool exhausted
2. Wait for connection
3. If timeout: graceful shutdown
4. Restart with health check
Rate Limited
1. User exceeds daily limit
2. Check user.tier
3. Return friendly message
4. Suggest upgrade if free tier
04Тестирование сценариев
Swarm Live E2E Rule
Каждый активный процесс должен быть верифицирован в живом Telegram сценарии.
- • Один бот триггерит другой через
/cmd@bot - • No fan-out (не все боты отвечают)
- • Chain progression visible in Telegram
- • Auditable in DB
- • Status via
/swarm_test status
- • Unaddressed group commands must NOT trigger all bots
- • Primary bot may return addressing hint
- • Silent failure is better than spam