feat(schemas): add scout_proposal + scout_proposal_ack WS frame types
This commit is contained in:
@@ -98,6 +98,9 @@ class WsFrameType(str, Enum):
|
||||
contextual_request = "contextual_request"
|
||||
contextual_scope_update = "contextual_scope_update"
|
||||
contextual_scope_ack = "contextual_scope_ack"
|
||||
# ── v9 scout proposal frame types ────────────────────────────────
|
||||
SCOUT_PROPOSAL = "scout_proposal"
|
||||
SCOUT_PROPOSAL_ACK = "scout_proposal_ack"
|
||||
|
||||
|
||||
class WsToolCall(BaseModel):
|
||||
@@ -275,3 +278,25 @@ class ScoutRunLogResponse(BaseModel):
|
||||
|
||||
# ── Chatbot Journey ───────────────────────────────────────────────────
|
||||
|
||||
|
||||
# ── Scout Proposal Frame Models ───────────────────────────────────────
|
||||
|
||||
class ScoutProposalPayload(BaseModel):
|
||||
id: str
|
||||
scout_id: str
|
||||
source_type: str
|
||||
source_msg_ref: str
|
||||
raw_subject: str | None = None
|
||||
raw_snippet: str | None = None
|
||||
category: Literal["unprocessed"] = "unprocessed"
|
||||
payload: dict | None = None
|
||||
|
||||
|
||||
class ScoutProposalFrame(BaseModel):
|
||||
type: Literal[WsFrameType.SCOUT_PROPOSAL]
|
||||
proposal: ScoutProposalPayload
|
||||
|
||||
|
||||
class ScoutProposalAckFrame(BaseModel):
|
||||
type: Literal[WsFrameType.SCOUT_PROPOSAL_ACK]
|
||||
proposal_id: str
|
||||
|
||||
Reference in New Issue
Block a user