""" Pydantic schemas for request / response payloads. """ from __future__ import annotations from typing import Optional, Any from pydantic import BaseModel # ── Requests ──────────────────────────────────────────────────────────── class CommandRequest(BaseModel): command: str # ── Responses ─────────────────────────────────────────────────────────── class CommandResponse(BaseModel): status: str # success | error | unresolved message: str diff: Optional[dict[str, Any]] = None suggestions: Optional[list[str]] = None class SessionInfo(BaseModel): session_id: str file_name: str file_size_bytes: int columns: list[dict[str, str]] # [{"name": "salary", "dtype": "Float64"}] row_count: int status: str # active | processing class UploadResponse(BaseModel): session_id: str file_name: str rows: int columns: list[str] size_human: str class ErrorResponse(BaseModel): detail: str