diff --git a/.stats.yml b/.stats.yml index b87c540..6701b4a 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 22 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-05150c78e0e6e97b0ce97ed685ebcf1cb01dc839beccb99e9d3ead5b783cfd47.yml -openapi_spec_hash: 833a5b6d53d98dc2beac2c4c394b20d5 -config_hash: bfc82d11ce9b808a15a860a9222ad78e +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-7270b9e4859010d6680bcc92afcd6f7c679d80a2645f65d7097d19ce2e8cdc5a.yml +openapi_spec_hash: 5fcbfaedebfea62c17c74437a9728b04 +config_hash: 931828b5dd9393834a3c1703e02e02b0 diff --git a/api.md b/api.md index c96e445..9444712 100644 --- a/api.md +++ b/api.md @@ -96,6 +96,7 @@ from opencode_ai.types import ( Message, Part, Session, + SnapshotPart, StepFinishPart, StepStartPart, TextPart, diff --git a/src/opencode_ai/types/__init__.py b/src/opencode_ai/types/__init__.py index 4d6528d..be3befd 100644 --- a/src/opencode_ai/types/__init__.py +++ b/src/opencode_ai/types/__init__.py @@ -26,6 +26,7 @@ from .text_part import TextPart as TextPart from .tool_part import ToolPart as ToolPart from .mcp_remote import McpRemote as McpRemote from .user_message import UserMessage as UserMessage +from .snapshot_part import SnapshotPart as SnapshotPart from .app_log_params import AppLogParams as AppLogParams from .file_part_param import FilePartParam as FilePartParam from .step_start_part import StepStartPart as StepStartPart diff --git a/src/opencode_ai/types/part.py b/src/opencode_ai/types/part.py index 7b4ddee..198ea9e 100644 --- a/src/opencode_ai/types/part.py +++ b/src/opencode_ai/types/part.py @@ -1,30 +1,18 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. from typing import Union -from typing_extensions import Literal, TypeAlias +from typing_extensions import Annotated, TypeAlias -from pydantic import Field as FieldInfo - -from .._models import BaseModel +from .._utils import PropertyInfo from .file_part import FilePart from .text_part import TextPart from .tool_part import ToolPart +from .snapshot_part import SnapshotPart from .step_start_part import StepStartPart from .step_finish_part import StepFinishPart -__all__ = ["Part", "UnionMember5"] +__all__ = ["Part"] - -class UnionMember5(BaseModel): - id: str - - message_id: str = FieldInfo(alias="messageID") - - session_id: str = FieldInfo(alias="sessionID") - - snapshot: str - - type: Literal["snapshot"] - - -Part: TypeAlias = Union[TextPart, FilePart, ToolPart, StepStartPart, StepFinishPart, UnionMember5] +Part: TypeAlias = Annotated[ + Union[TextPart, FilePart, ToolPart, StepStartPart, StepFinishPart, SnapshotPart], PropertyInfo(discriminator="type") +] diff --git a/src/opencode_ai/types/snapshot_part.py b/src/opencode_ai/types/snapshot_part.py new file mode 100644 index 0000000..485f47b --- /dev/null +++ b/src/opencode_ai/types/snapshot_part.py @@ -0,0 +1,21 @@ +# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. + +from typing_extensions import Literal + +from pydantic import Field as FieldInfo + +from .._models import BaseModel + +__all__ = ["SnapshotPart"] + + +class SnapshotPart(BaseModel): + id: str + + message_id: str = FieldInfo(alias="messageID") + + session_id: str = FieldInfo(alias="sessionID") + + snapshot: str + + type: Literal["snapshot"]