"""Request/response schemas for the authenticated user's own ratings and watchlist (section 17, additive).""" from __future__ import annotations from datetime import datetime from pydantic import BaseModel, Field class RatingIn(BaseModel): # 0.5-10.0 in practice (TMDb's own scale), enforced as a continuous # range rather than an enum of 0.5 steps -- not worth the extra # validation for a value nothing downstream treats as discrete. value: float = Field(ge=0.5, le=10.0) class RatingOut(BaseModel): value: float created_at: datetime updated_at: datetime