File size: 527 Bytes
666f6cf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from pydantic import BaseModel
from typing import List, Any, Annotated
from solverforge_legacy.solver.score import HardMediumSoftScore
from .json_serialization import ScoreSerializer


class MatchAnalysisDTO(BaseModel):
    name: str
    score: Annotated[HardMediumSoftScore, ScoreSerializer]
    justification: Any


class ConstraintAnalysisDTO(BaseModel):
    name: str
    weight: Annotated[HardMediumSoftScore, ScoreSerializer]
    score: Annotated[HardMediumSoftScore, ScoreSerializer]
    matches: List[MatchAnalysisDTO]