from pydantic import BaseModel from typing import Optional class UserContext(BaseModel): """Java 侧传来的业务上下文""" child_id: Optional[int] = None report_id: Optional[int] = None survey_id: Optional[int] = None family_id: Optional[int] = None mascot_code: Optional[str] = None self_check_result: Optional[str] = None # P1-2: 自检结果 JSON(五维得分+历史) class SourceInfo(BaseModel): """回答引用来源""" type: str # knowledge / tool title: str score: Optional[float] = None