"""Pydantic schemas for the vision execution response.""" from src.backend.models.api.tipi import UtcDateTime from pydantic import BaseModel, ConfigDict class VisionMeasurementResult(BaseModel): """One quote's outcome, as much of it as the client needs to show.""" subtask_id: int value: float pass_fail: str class VisionExecuteResponse(BaseModel): """What `POST /api/vision/execute` returns: the run, and every quote it filled.""" vision_result_id: int engine_version: str measurements: list[VisionMeasurementResult] class VisionReferenceImageResponse(BaseModel): """One saved reference image, as `GET /api/vision/reference-images` lists it.""" model_config = ConfigDict(from_attributes=True) id: int task_id: int path: str note: str | None = None station_id: int | None = None device_code: str | None = None acquired_at: UtcDateTime