| """Request / response models for report routes (KM-644). | |
| The full report payload is the `AnalysisReport` contract | |
| (src/agents/report/schemas.py); this module only adds the lightweight list-entry | |
| returned by the versions endpoint. | |
| """ | |
| from datetime import datetime | |
| from pydantic import BaseModel, Field | |
| class ReportVersionEntry(BaseModel): | |
| """One row in a session's report-version list (for the Analysis-menu sidebar).""" | |
| report_id: str = Field(..., description="Stable report identifier.") | |
| version: int = Field(..., description="Monotonic version (V1, V2, …).") | |
| generated_at: datetime = Field(..., description="When this version was generated.") | |
| record_count: int = Field(..., description="Number of AnalysisRecords it was built from.") | |