diff --git a/.stats.yml b/.stats.yml index 59e6768..e9e292b 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 26 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-fb4caa8d0381531c44dd2d3c8c0b930b8c15a7bdde474d15bf7aeeb3b27aef56.yml -openapi_spec_hash: 3a263e46f2369eeb2410430001c60d15 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-5748199af356c3243a46a466e73b5d0bab7eaa0c56895e1d0f903d637f61d0bb.yml +openapi_spec_hash: c04f6b6be54b05d9b1283c24e870163b config_hash: 1ae82c93499b9f0b9ba828b8919f9cb3 diff --git a/api.md b/api.md index c5eafcf..1758023 100644 --- a/api.md +++ b/api.md @@ -23,7 +23,6 @@ Types: ```python from opencode_ai.types import ( App, - LogLevel, Mode, Model, Provider, diff --git a/src/opencode_ai/resources/app.py b/src/opencode_ai/resources/app.py index 44fe939..e9505ce 100644 --- a/src/opencode_ai/resources/app.py +++ b/src/opencode_ai/resources/app.py @@ -3,10 +3,11 @@ from __future__ import annotations from typing import Dict +from typing_extensions import Literal import httpx -from ..types import LogLevel, app_log_params +from ..types import app_log_params from .._types import NOT_GIVEN, Body, Query, Headers, NotGiven from .._utils import maybe_transform, async_maybe_transform from .._compat import cached_property @@ -19,7 +20,6 @@ from .._response import ( ) from ..types.app import App from .._base_client import make_request_options -from ..types.log_level import LogLevel from ..types.app_log_response import AppLogResponse from ..types.app_init_response import AppInitResponse from ..types.app_modes_response import AppModesResponse @@ -89,7 +89,7 @@ class AppResource(SyncAPIResource): def log( self, *, - level: LogLevel, + level: Literal["debug", "info", "error", "warn"], message: str, service: str, extra: Dict[str, object] | NotGiven = NOT_GIVEN, @@ -237,7 +237,7 @@ class AsyncAppResource(AsyncAPIResource): async def log( self, *, - level: LogLevel, + level: Literal["debug", "info", "error", "warn"], message: str, service: str, extra: Dict[str, object] | NotGiven = NOT_GIVEN, diff --git a/src/opencode_ai/types/__init__.py b/src/opencode_ai/types/__init__.py index e7b46d8..2dc9b99 100644 --- a/src/opencode_ai/types/__init__.py +++ b/src/opencode_ai/types/__init__.py @@ -19,7 +19,6 @@ from .message import Message as Message from .session import Session as Session from .provider import Provider as Provider from .file_part import FilePart as FilePart -from .log_level import LogLevel as LogLevel from .text_part import TextPart as TextPart from .tool_part import ToolPart as ToolPart from .file_source import FileSource as FileSource diff --git a/src/opencode_ai/types/app_log_params.py b/src/opencode_ai/types/app_log_params.py index 105b5a4..8b24c11 100644 --- a/src/opencode_ai/types/app_log_params.py +++ b/src/opencode_ai/types/app_log_params.py @@ -3,15 +3,13 @@ from __future__ import annotations from typing import Dict -from typing_extensions import Required, TypedDict - -from .log_level import LogLevel +from typing_extensions import Literal, Required, TypedDict __all__ = ["AppLogParams"] class AppLogParams(TypedDict, total=False): - level: Required[LogLevel] + level: Required[Literal["debug", "info", "error", "warn"]] """Log level""" message: Required[str] diff --git a/src/opencode_ai/types/log_level.py b/src/opencode_ai/types/log_level.py deleted file mode 100644 index c5138ea..0000000 --- a/src/opencode_ai/types/log_level.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["LogLevel"] - -LogLevel: TypeAlias = Literal["debug", "info", "error", "warn"] diff --git a/src/opencode_ai/types/part.py b/src/opencode_ai/types/part.py index 198ea9e..5a74aa5 100644 --- a/src/opencode_ai/types/part.py +++ b/src/opencode_ai/types/part.py @@ -1,9 +1,12 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. -from typing import Union -from typing_extensions import Annotated, TypeAlias +from typing import List, Union +from typing_extensions import Literal, Annotated, TypeAlias + +from pydantic import Field as FieldInfo from .._utils import PropertyInfo +from .._models import BaseModel from .file_part import FilePart from .text_part import TextPart from .tool_part import ToolPart @@ -11,8 +14,24 @@ from .snapshot_part import SnapshotPart from .step_start_part import StepStartPart from .step_finish_part import StepFinishPart -__all__ = ["Part"] +__all__ = ["Part", "PatchPart"] + + +class PatchPart(BaseModel): + id: str + + files: List[str] + + hash: str + + message_id: str = FieldInfo(alias="messageID") + + session_id: str = FieldInfo(alias="sessionID") + + type: Literal["patch"] + Part: TypeAlias = Annotated[ - Union[TextPart, FilePart, ToolPart, StepStartPart, StepFinishPart, SnapshotPart], PropertyInfo(discriminator="type") + Union[TextPart, FilePart, ToolPart, StepStartPart, StepFinishPart, SnapshotPart, PatchPart], + PropertyInfo(discriminator="type"), ]