Cross-channel baseline requirements (Web, WhatsApp, Telegram)
- Run the same logical flow behavior across Web, WhatsApp, and Telegram; avoid channel-specific business logic drift unless policy requires it.
- Conversation inactivity auto-close must be configurable (default 10 minutes) and applied to all channels, including web.
- Persist inactivity close configuration at bot + channel level so operations can tune independently by traffic profile.
- When inactivity timeout is reached, mark conversation closed in runtime state and support queue state to prevent zombie sessions.
- If a user replies after auto-close, start a clean new session while preserving prior transcript/audit trail for analytics continuity.
- For WhatsApp out-of-session responses, route to approved template-message path; for web/telegram, continue normal message path.
- Track auto-close events as analytics events (`conversation_auto_closed`) and audit actions for operational visibility.
- Production validation: test close/resume behavior separately for web widget, WhatsApp callback, and Telegram webhook.
