"""Agent HTTP 请求与结果,不向前端暴露内部 Graph State""" from typing import Literal from uuid import UUID from pydantic import BaseModel, Field from app.schemas.actions import Action from app.schemas.clarification import Clarification from app.schemas.clarification_reply import ClarificationReply class ResumeRequest(BaseModel): thread_id: UUID reply: ClarificationReply class AgentResult(BaseModel): conversation_id: str # 当前聊天会话 ID thread_id: str # 当前任务 ID message_id: str # 本次用户输入的 ID,不是助手回复 ID status: Literal["completed", "waiting_for_input", "failed", "cancelled"] actions: list[Action] = Field(default_factory=list) answer: str | None = None # 回答,或失败时由模型总结的原因说明 # 可以一键发送的后续请求,前端显示成按钮,点了就作为下一条消息发出;目前只有问答查了数据后的"放到大屏上" suggestions: list[str] = Field(default_factory=list) clarification: Clarification | None = None