486e1288bf
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
32 lines
911 B
Python
32 lines
911 B
Python
"""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
|