#region AgentChat.ScreenModels [C:3] [TYPE ADR] [SEMANTICS ux,screen-models,agent-chat]
@BRIEF Screen model inventory — revised for LangChain v1 native stack. No active/follower. No WebSocket.
@RATIONALE Model-first per ADR-0010. AgentChatModel handles Gradio submit() lifecycle, streaming state, tool-call tracking, multi-tab gate.

## Screens Requiring Models

| Screen | Route | Model ID | Complexity | Rationale |
|--------|-------|----------|------------|-----------|
| AssistantChatPanel (drawer + embedded) | overlay | `AgentChat.Model` | C4 | Gradio `submit()` lifecycle, streaming, tool-call parsing, confirmation card state, connection health |
| Agent Chat Page (full) | `/agent` | `AgentChat.Model` (shared) | C4 | Same model, two-column layout |

## Screens Using Inline State

| Screen | Reason |
|--------|--------|
| ConversationList | `conversations[]` из модели. Поиск — локальный. Группировка — `$derived` |
| ToolCallCard | Пропсы от родителя |
| ConfirmationCard | Пропсы от модели (`confirm_id`, `prompt`) |
| MessageBubble | Рендерит одно сообщение. Стриминг — через `$derived` |
| ConnectionIndicator | `model.connectionState` → dot color |

## Model Decomposition Gate

| Threshold | Est. | Action |
|-----------|:----:|--------|
| Lines > 400 | ~220 | Within limit |
| Methods > 40 | ~12 | Within limit |

#endregion AgentChat.ScreenModels
