""" 自动生成的 Pydantic 模型 — example 来源: config/workers/example/ """ from __future__ import annotations from typing import Any, Optional from pydantic import BaseModel, Field class AddGetRequest(BaseModel): """Add two numbers — 请求体""" a: float = Field(...) b: float = Field(...) class AddGetResponse(BaseModel): """Add two numbers — 响应体""" result: float = Field(...) operation: str = Field(default='add') timestamp: Optional[float] = Field(default=0.0) class AddPostRequest(BaseModel): """Add two numbers (POST) — 请求体""" a: float = Field(...) b: float = Field(...) class AddPostResponse(BaseModel): """Add two numbers (POST) — 响应体""" result: float = Field(...) operation: str = Field(default='add') timestamp: Optional[float] = Field(default=0.0) class AddMqttRequest(BaseModel): """Add two numbers via MQTT — 请求体""" a: float = Field(...) b: float = Field(...) class CountGetResponse(BaseModel): """Get visit count and increment — 响应体""" name: str = Field(...) value: int = Field(...) class DivideGetRequest(BaseModel): """Divide two numbers — 请求体""" a: float = Field(...) b: float = Field(...) class DivideGetResponse(BaseModel): """Divide two numbers — 响应体""" result: Optional[float] = Field(default=0.0) operation: str = Field(default='divide') timestamp: Optional[float] = Field(default=0.0) error: Optional[str] = Field(default='') class HeartbeatMqttRequest(BaseModel): """Heartbeat ping (no response) — 请求体""" worker_id: str = Field(...) class MultiplyGetRequest(BaseModel): """Multiply two numbers — 请求体""" a: float = Field(...) b: float = Field(...) class MultiplyGetResponse(BaseModel): """Multiply two numbers — 响应体""" result: float = Field(...) operation: str = Field(default='multiply') timestamp: Optional[float] = Field(default=0.0) class SubtractGetRequest(BaseModel): """Subtract two numbers — 请求体""" a: float = Field(...) b: float = Field(...) class SubtractGetResponse(BaseModel): """Subtract two numbers — 响应体""" result: float = Field(...) operation: str = Field(default='subtract') timestamp: Optional[float] = Field(default=0.0) # 所有响应模型的联合类型 ExampleResponse = AddPostResponse | AddGetResponse | DivideGetResponse | SubtractGetResponse | CountGetResponse | MultiplyGetResponse