from uuid import UUID from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app.api.schemas import EvaluateIn from app.persistence.db import get_session from app.services.evaluation_service import evaluate_and_store, load_evaluation router = APIRouter(prefix="/api/v1") @router.post("/evaluate/{variant_id}", status_code=201) def evaluate(variant_id: UUID, payload: EvaluateIn): return evaluate_and_store(variant_id=variant_id, payload=payload.model_dump()) @router.get("/evaluations/{evaluation_id}") def get_evaluation(evaluation_id: UUID, session: Session = Depends(get_session)): return load_evaluation(session, evaluation_id)