feat(lotto): briefing API 4계층 picks + tier_rationale 수용

This commit is contained in:
2026-05-11 08:45:21 +09:00
parent b936233e7c
commit 3bd819b5e2
3 changed files with 90 additions and 19 deletions

View File

@@ -7,10 +7,24 @@ from .. import db
router = APIRouter(prefix="/api/lotto")
class TierRationale(BaseModel):
bonus: str = ""
extended: str = ""
pool: str = ""
class BriefingPicks(BaseModel):
core: List[Dict[str, Any]] = Field(default_factory=list)
bonus: List[Dict[str, Any]] = Field(default_factory=list)
extended: List[Dict[str, Any]] = Field(default_factory=list)
pool: List[Dict[str, Any]] = Field(default_factory=list)
class BriefingRequest(BaseModel):
draw_no: int
picks: List[Dict[str, Any]]
picks: BriefingPicks
narrative: Dict[str, Any]
tier_rationale: TierRationale = Field(default_factory=TierRationale)
confidence: int = Field(ge=0, le=100)
model: str
tokens_input: int = 0