From 95112dd25a3bf8a49bd1080bfddefd403e64cfcb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 16:24:28 +0000
Subject: [PATCH 001/215] chore(internal): bump dependencies
---
requirements-dev.lock | 282 ++++++++++++++++++++++++++----------------
requirements.lock | 261 ++++++++++++++++++++++++--------------
2 files changed, 346 insertions(+), 197 deletions(-)
diff --git a/requirements-dev.lock b/requirements-dev.lock
index 1078b30de..240c3f622 100644
--- a/requirements-dev.lock
+++ b/requirements-dev.lock
@@ -12,16 +12,20 @@
-e file:.
aiohappyeyeballs==2.6.1
# via aiohttp
-aiohttp==3.13.2
+aiohttp==3.13.3
# via agentex-sdk
# via httpx-aiohttp
# via litellm
-aiosignal==1.3.2
+aiosignal==1.4.0
# via aiohttp
annotated-types==0.7.0
# via pydantic
-anyio==4.10.0
+anthropic==0.86.0
# via agentex-sdk
+anyio==4.12.1
+ # via agentex-sdk
+ # via anthropic
+ # via claude-agent-sdk
# via httpx
# via mcp
# via openai
@@ -32,108 +36,126 @@ anyio==4.10.0
# via watchfiles
appnope==0.1.4
# via ipykernel
-argcomplete==3.1.2
+argcomplete==3.6.3
# via nox
-asttokens==3.0.0
+asttokens==3.0.1
# via stack-data
-attrs==25.3.0
+attrs==25.4.0
# via aiohttp
# via jsonschema
+ # via nox
# via referencing
bytecode==0.17.0
# via ddtrace
-cachetools==5.5.2
- # via google-auth
-certifi==2023.7.22
+certifi==2026.1.4
# via httpcore
# via httpx
# via kubernetes
# via requests
-charset-normalizer==3.4.3
+cffi==2.0.0
+ # via cryptography
+charset-normalizer==3.4.6
# via requests
-click==8.2.1
+claude-agent-sdk==0.1.52
+ # via agentex-sdk
+click==8.3.1
# via litellm
# via typer
# via uvicorn
-cloudpickle==3.1.1
+cloudpickle==3.1.2
# via agentex-sdk
colorama==0.4.6
# via griffe
-colorlog==6.7.0
+colorlog==6.10.1
# via nox
comm==0.2.3
# via ipykernel
+cryptography==46.0.6
+ # via google-auth
+ # via pyjwt
datadog==0.52.1
# via agentex-sdk
-ddtrace==3.15.0
+ddtrace==4.6.4
# via agentex-sdk
-debugpy==1.8.16
+debugpy==1.8.20
# via ipykernel
decorator==5.2.1
# via ipython
-dirty-equals==0.6.0
-distlib==0.3.7
+dependency-groups==1.3.1
+ # via nox
+dirty-equals==0.11
+distlib==0.4.0
# via virtualenv
distro==1.9.0
# via agentex-sdk
+ # via anthropic
# via openai
# via scale-gp
# via scale-gp-beta
+docstring-parser==0.17.0
+ # via anthropic
envier==0.6.1
# via ddtrace
-execnet==2.1.1
+execnet==2.1.2
# via pytest-xdist
-executing==2.2.0
+executing==2.2.1
# via stack-data
fastapi==0.115.14
# via agentex-sdk
-filelock==3.12.4
+fastuuid==0.14.0
+ # via litellm
+filelock==3.25.2
# via huggingface-hub
# via virtualenv
frozenlist==1.8.0
# via aiohttp
# via aiosignal
-fsspec==2025.7.0
+fsspec==2026.3.0
# via huggingface-hub
-google-auth==2.40.3
+google-auth==2.49.1
# via kubernetes
-griffe==1.12.0
+griffe==1.15.0
# via openai-agents
h11==0.16.0
# via httpcore
# via uvicorn
-hf-xet==1.1.7
+hf-xet==1.4.2
# via huggingface-hub
httpcore==1.0.9
# via httpx
httpx==0.27.2
# via agentex-sdk
+ # via anthropic
# via httpx-aiohttp
+ # via huggingface-hub
+ # via langsmith
# via litellm
# via mcp
# via openai
# via respx
# via scale-gp
# via scale-gp-beta
-httpx-aiohttp==0.1.9
+httpx-aiohttp==0.1.12
# via agentex-sdk
-httpx-sse==0.4.1
+httpx-sse==0.4.3
# via mcp
-huggingface-hub==0.34.4
+huggingface-hub==1.8.0
# via tokenizers
-idna==3.4
+humanize==4.13.0
+ # via nox
+idna==3.11
# via anyio
# via httpx
# via requests
# via yarl
-importlib-metadata==7.0.0
+importlib-metadata==8.7.1
# via litellm
# via opentelemetry-api
-iniconfig==2.0.0
+iniconfig==2.1.0
# via pytest
-ipykernel==6.30.1
+ipykernel==7.2.0
# via agentex-sdk
-ipython==9.4.0
+ipython==9.12.0
# via ipykernel
ipython-pygments-lexers==1.1.1
# via ipython
@@ -142,36 +164,48 @@ jedi==0.19.2
jinja2==3.1.6
# via agentex-sdk
# via litellm
-jiter==0.10.0
+jiter==0.13.0
+ # via anthropic
# via openai
json-log-formatter==1.1.1
# via agentex-sdk
+jsonpatch==1.33
+ # via langchain-core
+jsonpointer==3.1.1
+ # via jsonpatch
jsonref==1.1.0
# via agentex-sdk
-jsonschema==4.25.0
+jsonschema==4.26.0
# via agentex-sdk
# via litellm
# via mcp
-jsonschema-specifications==2025.4.1
+jsonschema-specifications==2025.9.1
# via jsonschema
-jupyter-client==8.6.3
+jupyter-client==8.8.0
# via ipykernel
-jupyter-core==5.8.1
+jupyter-core==5.9.1
# via ipykernel
# via jupyter-client
kubernetes==28.1.0
# via agentex-sdk
-litellm==1.75.5.post1
+langchain-core==1.2.23
+ # via langgraph-checkpoint
+langgraph-checkpoint==4.0.1
+ # via agentex-sdk
+langsmith==0.7.22
+ # via langchain-core
+litellm==1.82.6
# via agentex-sdk
markdown-it-py==3.0.0
# via rich
-markupsafe==3.0.2
+markupsafe==3.0.3
# via jinja2
-matplotlib-inline==0.1.7
+matplotlib-inline==0.2.1
# via ipykernel
# via ipython
-mcp==1.12.4
+mcp==1.26.0
# via agentex-sdk
+ # via claude-agent-sdk
# via openai-agents
mdurl==0.1.2
# via markdown-it-py
@@ -183,61 +217,78 @@ mypy-extensions==1.1.0
# via mypy
nest-asyncio==1.6.0
# via ipykernel
-nexus-rpc==1.1.0
+nexus-rpc==1.4.0
# via temporalio
-nodeenv==1.8.0
+nodeenv==1.10.0
# via pyright
-nox==2023.4.22
+nox==2025.11.12
oauthlib==3.3.1
# via kubernetes
# via requests-oauthlib
-openai==2.7.1
+openai==2.30.0
# via agentex-sdk
# via litellm
# via openai-agents
openai-agents==0.4.2
# via agentex-sdk
-opentelemetry-api==1.37.0
+opentelemetry-api==1.40.0
+ # via agentex-sdk
# via ddtrace
-packaging==23.2
+ # via opentelemetry-sdk
+ # via opentelemetry-semantic-conventions
+opentelemetry-sdk==1.40.0
+ # via agentex-sdk
+opentelemetry-semantic-conventions==0.61b0
+ # via opentelemetry-sdk
+orjson==3.11.7
+ # via langsmith
+ormsgpack==1.12.2
+ # via langgraph-checkpoint
+packaging==25.0
+ # via dependency-groups
# via huggingface-hub
# via ipykernel
+ # via langchain-core
+ # via langsmith
# via nox
# via pytest
-pathspec==0.12.1
- # via mypy
-parso==0.8.4
+parso==0.8.6
# via jedi
+pathspec==1.0.3
+ # via mypy
pexpect==4.9.0
# via ipython
-platformdirs==3.11.0
+platformdirs==4.4.0
# via jupyter-core
# via virtualenv
pluggy==1.6.0
# via pytest
-prompt-toolkit==3.0.51
+prompt-toolkit==3.0.52
# via ipython
# via questionary
-propcache==0.3.1
+propcache==0.4.1
# via aiohttp
# via yarl
-protobuf==5.29.5
- # via ddtrace
+protobuf==6.33.6
# via temporalio
-psutil==7.0.0
+psutil==7.2.2
# via ipykernel
ptyprocess==0.7.0
# via pexpect
pure-eval==0.2.3
# via stack-data
-pyasn1==0.6.1
+pyasn1==0.6.3
# via pyasn1-modules
- # via rsa
pyasn1-modules==0.4.2
# via google-auth
-pydantic==2.11.9
+pycparser==3.0
+ # via cffi
+pydantic==2.12.5
# via agentex-sdk
+ # via anthropic
# via fastapi
+ # via langchain-core
+ # via langsmith
# via litellm
# via mcp
# via openai
@@ -246,112 +297,115 @@ pydantic==2.11.9
# via python-on-whales
# via scale-gp
# via scale-gp-beta
-pydantic-core==2.33.2
+pydantic-core==2.41.5
# via pydantic
-pydantic-settings==2.10.1
+pydantic-settings==2.13.1
# via mcp
-pygments==2.18.0
+pygments==2.19.2
# via ipython
# via ipython-pygments-lexers
# via pytest
# via rich
-pyjwt==2.10.1
+pyjwt==2.12.1
+ # via mcp
# via redis
pyright==1.1.399
-pytest==8.4.1
+pytest==8.4.2
# via agentex-sdk
# via pytest-asyncio
# via pytest-xdist
-pytest-asyncio==1.1.0
+pytest-asyncio==1.2.0
# via agentex-sdk
-pytest-xdist==3.7.0
-python-dateutil==2.8.2
+pytest-xdist==3.8.0
+python-dateutil==2.9.0.post0
# via jupyter-client
# via kubernetes
# via time-machine
-python-dotenv==1.1.1
+python-dotenv==1.2.2
# via litellm
# via mcp
# via pydantic-settings
-python-multipart==0.0.20
+python-multipart==0.0.22
# via mcp
python-on-whales==0.73.0
# via agentex-sdk
-pytz==2023.3.post1
- # via dirty-equals
-pyyaml==6.0.2
+pyyaml==6.0.3
# via agentex-sdk
# via huggingface-hub
# via kubernetes
-pyzmq==27.0.1
+ # via langchain-core
+pyzmq==27.1.0
# via ipykernel
# via jupyter-client
-questionary==2.1.0
+questionary==2.1.1
# via agentex-sdk
redis==5.3.1
# via agentex-sdk
-referencing==0.36.2
+referencing==0.37.0
# via jsonschema
# via jsonschema-specifications
-regex==2025.7.34
+regex==2026.3.32
# via tiktoken
-requests==2.32.4
+requests==2.33.1
# via datadog
- # via huggingface-hub
# via kubernetes
+ # via langsmith
# via openai-agents
# via python-on-whales
# via requests-oauthlib
+ # via requests-toolbelt
# via tiktoken
requests-oauthlib==2.0.0
# via kubernetes
+requests-toolbelt==1.0.0
+ # via langsmith
respx==0.22.0
rich==13.9.4
# via agentex-sdk
# via typer
-rpds-py==0.27.0
+rpds-py==0.30.0
# via jsonschema
# via referencing
-rsa==4.9.1
- # via google-auth
-ruff==0.9.4
+ruff==0.14.13
# via agentex-sdk
-scale-gp==0.1.0a59
+scale-gp==0.1.0a61
# via agentex-sdk
-scale-gp-beta==0.1.0a20
+scale-gp-beta==0.1.0a51
# via agentex-sdk
-setuptools==68.2.2
- # via nodeenv
shellingham==1.5.4
# via typer
-six==1.16.0
+six==1.17.0
# via kubernetes
# via python-dateutil
sniffio==1.3.1
# via agentex-sdk
- # via anyio
+ # via anthropic
# via httpx
# via openai
# via scale-gp
# via scale-gp-beta
-sse-starlette==3.0.2
+sse-starlette==3.0.3
# via mcp
stack-data==0.6.3
# via ipython
starlette==0.46.2
# via fastapi
# via mcp
-temporalio==1.18.2
+temporalio==1.24.0
# via agentex-sdk
-tiktoken==0.11.0
+tenacity==9.1.4
+ # via langchain-core
+termcolor==3.3.0
+ # via yaspin
+tiktoken==0.12.0
# via litellm
-time-machine==2.9.0
-tokenizers==0.21.4
+time-machine==2.19.0
+tokenizers==0.22.2
# via litellm
-tornado==6.5.2
+tornado==6.5.5
# via ipykernel
# via jupyter-client
-tqdm==4.67.1
+tqdm==4.67.3
# via huggingface-hub
# via openai
# via python-on-whales
@@ -361,30 +415,37 @@ traitlets==5.14.3
# via jupyter-client
# via jupyter-core
# via matplotlib-inline
-typer==0.16.0
+typer==0.16.1
# via agentex-sdk
+ # via huggingface-hub
# via mcp
# via python-on-whales
-types-protobuf==6.30.2.20250809
+types-protobuf==6.32.1.20260221
# via temporalio
types-requests==2.31.0.6
# via openai-agents
types-urllib3==1.26.25.14
# via types-requests
-typing-extensions==4.12.2
+typing-extensions==4.15.0
# via agentex-sdk
# via aiosignal
+ # via anthropic
# via anyio
# via fastapi
# via huggingface-hub
+ # via langchain-core
+ # via mcp
# via mypy
# via nexus-rpc
# via openai
# via openai-agents
# via opentelemetry-api
+ # via opentelemetry-sdk
+ # via opentelemetry-semantic-conventions
# via pydantic
# via pydantic-core
# via pyright
+ # via pytest-asyncio
# via python-on-whales
# via referencing
# via scale-gp
@@ -392,31 +453,40 @@ typing-extensions==4.12.2
# via temporalio
# via typer
# via typing-inspection
- # via virtualenv
typing-inspection==0.4.2
+ # via mcp
# via pydantic
# via pydantic-settings
-tzdata==2025.2
+tzdata==2025.3
# via agentex-sdk
tzlocal==5.3.1
# via agentex-sdk
urllib3==1.26.20
# via kubernetes
# via requests
-uvicorn==0.35.0
+uuid-utils==0.14.1
+ # via langchain-core
+ # via langsmith
+uvicorn==0.42.0
# via agentex-sdk
# via mcp
-virtualenv==20.24.5
+virtualenv==20.36.1
# via nox
watchfiles==0.24.0
# via agentex-sdk
-wcwidth==0.2.13
+wcwidth==0.6.0
# via prompt-toolkit
-websocket-client==1.8.0
+websocket-client==1.9.0
# via kubernetes
-wrapt==1.17.3
+wrapt==2.1.2
# via ddtrace
-yarl==1.20.0
+xxhash==3.6.0
+ # via langsmith
+yarl==1.22.0
# via aiohttp
+yaspin==3.4.0
+ # via agentex-sdk
zipp==3.23.0
# via importlib-metadata
+zstandard==0.25.0
+ # via langsmith
diff --git a/requirements.lock b/requirements.lock
index 79519671e..87cbd10f2 100644
--- a/requirements.lock
+++ b/requirements.lock
@@ -12,16 +12,20 @@
-e file:.
aiohappyeyeballs==2.6.1
# via aiohttp
-aiohttp==3.13.2
+aiohttp==3.13.3
# via agentex-sdk
# via httpx-aiohttp
# via litellm
-aiosignal==1.3.2
+aiosignal==1.4.0
# via aiohttp
annotated-types==0.7.0
# via pydantic
-anyio==4.10.0
+anthropic==0.86.0
# via agentex-sdk
+anyio==4.12.1
+ # via agentex-sdk
+ # via anthropic
+ # via claude-agent-sdk
# via httpx
# via mcp
# via openai
@@ -32,97 +36,110 @@ anyio==4.10.0
# via watchfiles
appnope==0.1.4
# via ipykernel
-asttokens==3.0.0
+asttokens==3.0.1
# via stack-data
-attrs==25.3.0
+attrs==25.4.0
# via aiohttp
# via jsonschema
# via referencing
bytecode==0.17.0
# via ddtrace
-cachetools==5.5.2
- # via google-auth
-certifi==2023.7.22
+certifi==2026.1.4
# via httpcore
# via httpx
# via kubernetes
# via requests
-charset-normalizer==3.4.3
+cffi==2.0.0
+ # via cryptography
+charset-normalizer==3.4.6
# via requests
-click==8.2.1
+claude-agent-sdk==0.1.52
+ # via agentex-sdk
+click==8.3.1
# via litellm
# via typer
# via uvicorn
-cloudpickle==3.1.1
+cloudpickle==3.1.2
# via agentex-sdk
colorama==0.4.6
# via griffe
comm==0.2.3
# via ipykernel
+cryptography==46.0.6
+ # via google-auth
+ # via pyjwt
datadog==0.52.1
# via agentex-sdk
-ddtrace==3.15.0
+ddtrace==4.6.4
# via agentex-sdk
-debugpy==1.8.16
+debugpy==1.8.20
# via ipykernel
decorator==5.2.1
# via ipython
-distro==1.8.0
+distro==1.9.0
# via agentex-sdk
+ # via anthropic
# via openai
# via scale-gp
# via scale-gp-beta
+docstring-parser==0.17.0
+ # via anthropic
envier==0.6.1
# via ddtrace
-executing==2.2.0
+executing==2.2.1
# via stack-data
fastapi==0.115.14
# via agentex-sdk
-filelock==3.19.1
+fastuuid==0.14.0
+ # via litellm
+filelock==3.25.2
# via huggingface-hub
-frozenlist==1.6.2
+frozenlist==1.8.0
# via aiohttp
# via aiosignal
-fsspec==2025.7.0
+fsspec==2026.3.0
# via huggingface-hub
-google-auth==2.40.3
+google-auth==2.49.1
# via kubernetes
-griffe==1.12.0
+griffe==1.15.0
# via openai-agents
h11==0.16.0
# via httpcore
# via uvicorn
-hf-xet==1.1.7
+hf-xet==1.4.2
# via huggingface-hub
httpcore==1.0.9
# via httpx
httpx==0.27.2
# via agentex-sdk
+ # via anthropic
# via httpx-aiohttp
+ # via huggingface-hub
+ # via langsmith
# via litellm
# via mcp
# via openai
# via scale-gp
# via scale-gp-beta
-httpx-aiohttp==0.1.9
+httpx-aiohttp==0.1.12
# via agentex-sdk
-httpx-sse==0.4.1
+httpx-sse==0.4.3
# via mcp
-huggingface-hub==0.34.4
+huggingface-hub==1.8.0
# via tokenizers
-idna==3.4
+idna==3.11
# via anyio
# via httpx
# via requests
# via yarl
-importlib-metadata==8.7.0
+importlib-metadata==8.7.1
# via litellm
# via opentelemetry-api
-iniconfig==2.1.0
+iniconfig==2.3.0
# via pytest
-ipykernel==6.30.1
+ipykernel==7.2.0
# via agentex-sdk
-ipython==9.4.0
+ipython==9.12.0
# via ipykernel
ipython-pygments-lexers==1.1.1
# via ipython
@@ -131,187 +148,231 @@ jedi==0.19.2
jinja2==3.1.6
# via agentex-sdk
# via litellm
-jiter==0.10.0
+jiter==0.13.0
+ # via anthropic
# via openai
json-log-formatter==1.1.1
# via agentex-sdk
+jsonpatch==1.33
+ # via langchain-core
+jsonpointer==3.1.1
+ # via jsonpatch
jsonref==1.1.0
# via agentex-sdk
-jsonschema==4.25.0
+jsonschema==4.26.0
# via agentex-sdk
# via litellm
# via mcp
-jsonschema-specifications==2025.4.1
+jsonschema-specifications==2025.9.1
# via jsonschema
-jupyter-client==8.6.3
+jupyter-client==8.8.0
# via ipykernel
-jupyter-core==5.8.1
+jupyter-core==5.9.1
# via ipykernel
# via jupyter-client
kubernetes==28.1.0
# via agentex-sdk
-litellm==1.75.5.post1
+langchain-core==1.2.23
+ # via langgraph-checkpoint
+langgraph-checkpoint==4.0.1
+ # via agentex-sdk
+langsmith==0.7.22
+ # via langchain-core
+litellm==1.82.6
# via agentex-sdk
markdown-it-py==4.0.0
# via rich
-markupsafe==3.0.2
+markupsafe==3.0.3
# via jinja2
-matplotlib-inline==0.1.7
+matplotlib-inline==0.2.1
# via ipykernel
# via ipython
-mcp==1.12.4
+mcp==1.26.0
# via agentex-sdk
+ # via claude-agent-sdk
# via openai-agents
mdurl==0.1.2
# via markdown-it-py
-multidict==6.4.4
+multidict==6.7.0
# via aiohttp
# via yarl
nest-asyncio==1.6.0
# via ipykernel
-nexus-rpc==1.1.0
+nexus-rpc==1.4.0
# via temporalio
oauthlib==3.3.1
# via kubernetes
# via requests-oauthlib
-openai==2.7.1
+openai==2.30.0
# via agentex-sdk
# via litellm
# via openai-agents
openai-agents==0.4.2
# via agentex-sdk
-opentelemetry-api==1.37.0
+opentelemetry-api==1.40.0
+ # via agentex-sdk
# via ddtrace
-packaging==25.0
+ # via opentelemetry-sdk
+ # via opentelemetry-semantic-conventions
+opentelemetry-sdk==1.40.0
+ # via agentex-sdk
+opentelemetry-semantic-conventions==0.61b0
+ # via opentelemetry-sdk
+orjson==3.11.7
+ # via langsmith
+ormsgpack==1.12.2
+ # via langgraph-checkpoint
+packaging==26.0
# via huggingface-hub
# via ipykernel
+ # via langchain-core
+ # via langsmith
# via pytest
-parso==0.8.4
+parso==0.8.6
# via jedi
pexpect==4.9.0
# via ipython
-platformdirs==4.3.8
+platformdirs==4.9.4
# via jupyter-core
pluggy==1.6.0
# via pytest
-prompt-toolkit==3.0.51
+prompt-toolkit==3.0.52
# via ipython
# via questionary
-propcache==0.3.1
+propcache==0.4.1
# via aiohttp
# via yarl
-pydantic==2.12.5
- # via agentex-sdk
-pydantic-core==2.41.5
-protobuf==5.29.5
- # via ddtrace
+protobuf==6.33.6
# via temporalio
-psutil==7.0.0
+psutil==7.2.2
# via ipykernel
ptyprocess==0.7.0
# via pexpect
pure-eval==0.2.3
# via stack-data
-pyasn1==0.6.1
+pyasn1==0.6.3
# via pyasn1-modules
- # via rsa
pyasn1-modules==0.4.2
# via google-auth
+pycparser==3.0
+ # via cffi
+pydantic==2.12.5
+ # via agentex-sdk
+ # via anthropic
+ # via fastapi
+ # via langchain-core
+ # via langsmith
+ # via litellm
+ # via mcp
+ # via openai
+ # via openai-agents
+ # via pydantic-settings
+ # via python-on-whales
+ # via scale-gp
+ # via scale-gp-beta
+pydantic-core==2.41.5
# via pydantic
-pydantic-settings==2.10.1
+pydantic-settings==2.13.1
# via mcp
-pygments==2.19.2
+pygments==2.20.0
# via ipython
# via ipython-pygments-lexers
# via pytest
# via rich
-pyjwt==2.10.1
+pyjwt==2.12.1
+ # via mcp
# via redis
-pytest==8.4.1
+pytest==9.0.2
# via agentex-sdk
# via pytest-asyncio
-pytest-asyncio==1.1.0
+pytest-asyncio==1.3.0
# via agentex-sdk
python-dateutil==2.9.0.post0
# via jupyter-client
# via kubernetes
-python-dotenv==1.1.1
+python-dotenv==1.2.2
# via litellm
# via mcp
# via pydantic-settings
-python-multipart==0.0.20
+python-multipart==0.0.22
# via mcp
python-on-whales==0.73.0
# via agentex-sdk
-pyyaml==6.0.2
+pyyaml==6.0.3
# via agentex-sdk
# via huggingface-hub
# via kubernetes
-pyzmq==27.0.1
+ # via langchain-core
+pyzmq==27.1.0
# via ipykernel
# via jupyter-client
-questionary==2.1.0
+questionary==2.1.1
# via agentex-sdk
redis==5.3.1
# via agentex-sdk
-referencing==0.36.2
+referencing==0.37.0
# via jsonschema
# via jsonschema-specifications
-regex==2025.7.34
+regex==2026.3.32
# via tiktoken
-requests==2.32.4
+requests==2.33.1
# via datadog
- # via huggingface-hub
# via kubernetes
+ # via langsmith
# via openai-agents
# via python-on-whales
# via requests-oauthlib
+ # via requests-toolbelt
# via tiktoken
requests-oauthlib==2.0.0
# via kubernetes
+requests-toolbelt==1.0.0
+ # via langsmith
rich==13.9.4
# via agentex-sdk
# via typer
-rpds-py==0.27.0
+rpds-py==0.30.0
# via jsonschema
# via referencing
-rsa==4.9.1
- # via google-auth
-ruff==0.12.9
+ruff==0.15.8
# via agentex-sdk
-scale-gp==0.1.0a59
+scale-gp==0.1.0a61
# via agentex-sdk
-scale-gp-beta==0.1.0a20
+scale-gp-beta==0.1.0a51
# via agentex-sdk
shellingham==1.5.4
# via typer
six==1.17.0
# via kubernetes
# via python-dateutil
-sniffio==1.3.0
+sniffio==1.3.1
# via agentex-sdk
-typing-extensions==4.15.0
+ # via anthropic
# via httpx
# via openai
# via scale-gp
# via scale-gp-beta
-sse-starlette==3.0.2
+sse-starlette==3.0.3
# via mcp
stack-data==0.6.3
# via ipython
starlette==0.46.2
# via fastapi
# via mcp
-temporalio==1.18.2
+temporalio==1.24.0
# via agentex-sdk
-tiktoken==0.11.0
+tenacity==9.1.4
+ # via langchain-core
+termcolor==3.3.0
+ # via yaspin
+tiktoken==0.12.0
# via litellm
-tokenizers==0.21.4
+tokenizers==0.22.2
# via litellm
-tornado==6.5.2
+tornado==6.5.5
# via ipykernel
# via jupyter-client
-tqdm==4.67.1
+tqdm==4.67.3
# via huggingface-hub
# via openai
# via python-on-whales
@@ -321,27 +382,35 @@ traitlets==5.14.3
# via jupyter-client
# via jupyter-core
# via matplotlib-inline
-typer==0.16.0
+typer==0.16.1
# via agentex-sdk
+ # via huggingface-hub
# via mcp
# via python-on-whales
-types-protobuf==6.30.2.20250809
+types-protobuf==6.32.1.20260221
# via temporalio
types-requests==2.31.0.6
# via openai-agents
types-urllib3==1.26.25.14
# via types-requests
+typing-extensions==4.15.0
# via agentex-sdk
# via aiosignal
+ # via anthropic
# via anyio
# via fastapi
# via huggingface-hub
+ # via langchain-core
+ # via mcp
# via nexus-rpc
# via openai
# via openai-agents
# via opentelemetry-api
+ # via opentelemetry-sdk
+ # via opentelemetry-semantic-conventions
# via pydantic
# via pydantic-core
+ # via pytest-asyncio
# via python-on-whales
# via referencing
# via scale-gp
@@ -350,27 +419,37 @@ types-urllib3==1.26.25.14
# via typer
# via typing-inspection
typing-inspection==0.4.2
+ # via mcp
# via pydantic
# via pydantic-settings
-tzdata==2025.2
+tzdata==2025.3
# via agentex-sdk
tzlocal==5.3.1
# via agentex-sdk
urllib3==1.26.20
# via kubernetes
# via requests
-uvicorn==0.35.0
+uuid-utils==0.14.1
+ # via langchain-core
+ # via langsmith
+uvicorn==0.42.0
# via agentex-sdk
# via mcp
watchfiles==0.24.0
# via agentex-sdk
-wcwidth==0.2.13
+wcwidth==0.6.0
# via prompt-toolkit
-websocket-client==1.8.0
+websocket-client==1.9.0
# via kubernetes
-wrapt==1.17.3
+wrapt==2.1.2
# via ddtrace
-yarl==1.20.0
+xxhash==3.6.0
+ # via langsmith
+yarl==1.22.0
# via aiohttp
+yaspin==3.4.0
+ # via agentex-sdk
zipp==3.23.0
# via importlib-metadata
+zstandard==0.25.0
+ # via langsmith
From eae8de0cba93e7859ef89e51994c5bfe3f23c49d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 10 Feb 2026 18:27:05 +0000
Subject: [PATCH 002/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 343c53d6c07a130317c49c198d96f40417cf08ec Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 10 Feb 2026 19:27:02 +0000
Subject: [PATCH 003/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 09a3cd3c2a16b8ab0c41ec08ddb2daf899bd4490 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 10 Feb 2026 20:27:16 +0000
Subject: [PATCH 004/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 5fa92d71b41e7d214349aa8a4f9d83e1908d9345 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 10 Feb 2026 22:27:03 +0000
Subject: [PATCH 005/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From a5b341213de3b1e4dad3fbfe470fc5ad584fae70 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 00:32:08 +0000
Subject: [PATCH 006/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From b48cbbe70ea2a4794a792096e1d862c8e76eb6b4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 06:27:01 +0000
Subject: [PATCH 007/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From fc1463294f117f2cd8877bc3ac5cd4a97b3b6749 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 07:27:02 +0000
Subject: [PATCH 008/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9eed28588aa490b62677daff658f072ca455410d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 08:27:10 +0000
Subject: [PATCH 009/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4a3f406ec96b44bd05b672cf49f639d1a7e6bb60 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 09:26:57 +0000
Subject: [PATCH 010/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 64e4f629c8349d5425ce57433612f51a07e4423b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 11:26:56 +0000
Subject: [PATCH 011/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From beb3f45940386328e82c14ae4e85ca841b6181ff Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 13:26:54 +0000
Subject: [PATCH 012/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From cb99db1857e373c3dc47d4f5ff6861d06b0ddce4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 14:26:29 +0000
Subject: [PATCH 013/215] chore(internal): fix lint error on Python 3.14
---
src/agentex/_utils/_compat.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/agentex/_utils/_compat.py b/src/agentex/_utils/_compat.py
index dd703233c..2c70b299c 100644
--- a/src/agentex/_utils/_compat.py
+++ b/src/agentex/_utils/_compat.py
@@ -26,7 +26,7 @@ def is_union(tp: Optional[Type[Any]]) -> bool:
else:
import types
- return tp is Union or tp is types.UnionType
+ return tp is Union or tp is types.UnionType # type: ignore[comparison-overlap]
def is_typeddict(tp: Type[Any]) -> bool:
From 86ccaa9bd095b3bc91212fa10a6e2f8da5af0e2a Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 16:27:07 +0000
Subject: [PATCH 014/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From a91677f003ab0fb2cc0fbef7b98d7be9b4755fe5 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 17:34:55 +0000
Subject: [PATCH 015/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From a61b3b932f092eef40a83ed71740a38aa8a5fd95 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 18:28:33 +0000
Subject: [PATCH 016/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From b250e8062bf73d11672186237b01c8da3132d086 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 20:27:15 +0000
Subject: [PATCH 017/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 38fb141fa557f5e89fe22273ce9ec6d7b05f434d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 11 Feb 2026 22:26:59 +0000
Subject: [PATCH 018/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From ca8e74347006d7fb0cbc2b8a16c6e4b7969ba078 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 02:27:07 +0000
Subject: [PATCH 019/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9f8c5fab70ed9d17c3452b7c5044271155794cdb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 04:27:07 +0000
Subject: [PATCH 020/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0f4132ece8f32dd3a90815d292ec8a1bc1b16db1 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 05:27:00 +0000
Subject: [PATCH 021/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From d3715722318e633ec1532cca9246a701cc8d15e2 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 08:26:59 +0000
Subject: [PATCH 022/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 03896c11ecbaa8005bf71a7462dff0d383a69669 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 10:27:00 +0000
Subject: [PATCH 023/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 890e91ecaa336e1500b5462b0ed65d17eecf36ef Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 11:27:19 +0000
Subject: [PATCH 024/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From b864d244cbeaefe055909709f8ffc949a6fd7d8c Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 13:26:56 +0000
Subject: [PATCH 025/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 74e20b481739dbec7839b63ca6b32b3444349da2 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 14:26:56 +0000
Subject: [PATCH 026/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From cf04361389ad84f5bd1ce1e25f5bc5d3d318a6d4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 16:26:56 +0000
Subject: [PATCH 027/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From e67fa69c072f462ea86ecd67b888afa5f97cc7cc Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 16:57:47 +0000
Subject: [PATCH 028/215] chore: format all `api.md` files
---
pyproject.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyproject.toml b/pyproject.toml
index 13bededf5..0650ce0c7 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -110,7 +110,7 @@ format = { chain = [
# run formatting again to fix any inconsistencies when imports are stripped
"format:ruff",
]}
-"format:docs" = "python scripts/utils/ruffen-docs.py README.md api.md"
+"format:docs" = "bash -c 'python scripts/utils/ruffen-docs.py README.md $(find . -type f -name api.md)'"
"format:ruff" = "ruff format"
"lint" = { chain = [
From 4750697b087d59c7323da025a873838ff9f48ad5 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 19:27:04 +0000
Subject: [PATCH 029/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From b1fd61a5ae69b6428eed6a35b86de6f81ad1fc18 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 12 Feb 2026 20:27:14 +0000
Subject: [PATCH 030/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 3827eb9909cb4ffc70ee61d742f7b6ac2f7055fd Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 00:27:04 +0000
Subject: [PATCH 031/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From c7e1c542448bb1420213d084077690c6d5725e5a Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 01:27:09 +0000
Subject: [PATCH 032/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 2fd7ce3541f1731a4038955508cc69daebba63c7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 03:27:00 +0000
Subject: [PATCH 033/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7102e0562d25ee6a84cd9a884dadcf5ab0c8e6e3 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 07:27:14 +0000
Subject: [PATCH 034/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7a5ae60ad6c6940a5012f0e1f7fa2f96338c1445 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 10:27:08 +0000
Subject: [PATCH 035/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9ba386a8f80a2dc79e9f0b24852b0b90ae36a8e6 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 11:27:11 +0000
Subject: [PATCH 036/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 98ec0833c01b411a6624d0397b1d734b7681be57 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 12:27:00 +0000
Subject: [PATCH 037/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From d5fd69e94e646382b01a6029329a35d16dec5ba8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 13:27:00 +0000
Subject: [PATCH 038/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4c9477e1f012a3d15166c93034199c6180729248 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 15:26:59 +0000
Subject: [PATCH 039/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4d0862fcc8eedb3a8652c5453837cd206e3dfa97 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 17:27:01 +0000
Subject: [PATCH 040/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 173d1b88e34abef494a6026a3c061e29327b513d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 20:27:13 +0000
Subject: [PATCH 041/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 60e5402c4502957aee7848ab3cdcbfb41503a8ae Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 22:27:52 +0000
Subject: [PATCH 042/215] chore(internal): version bump
From 495341c62830b411b388e1142fbf8645755cfb5c Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 13 Feb 2026 23:27:08 +0000
Subject: [PATCH 043/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 097cb3788a286f5b90ae17160a7c8e136ffcf2b4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 00:27:02 +0000
Subject: [PATCH 044/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From f363b24e35f0e07d7f2ffa97bc2fdbf065a3e31b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 03:27:06 +0000
Subject: [PATCH 045/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From e17eef813b65d2367234f0cfb3855e95412aa70d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 04:26:59 +0000
Subject: [PATCH 046/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7dc48f7c22fd35d2c1f4234e09f6b6501aae2ff7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 08:27:08 +0000
Subject: [PATCH 047/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From cf75ae41b95cc81366e1cca6b41ec21ee9e6ddc9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 10:27:11 +0000
Subject: [PATCH 048/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 68dcb92f243d94e8bd6ad084fa9be09734f0d55a Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 12:27:02 +0000
Subject: [PATCH 049/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 349cd35919e5e850383ada9bd65cae0f30aab18b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 13:27:05 +0000
Subject: [PATCH 050/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From b88ede12b3045d61ca1912557ba74a18b32d53cf Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 14:27:10 +0000
Subject: [PATCH 051/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From e7e79f41b6d074d672b80260477a73b7e9fb2ab6 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 19:27:10 +0000
Subject: [PATCH 052/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 8521c660c7347982b1728e45659df92785ba7c86 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 22:27:10 +0000
Subject: [PATCH 053/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 19e52a2d434655b627a69e61589fc55347f659b7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 14 Feb 2026 23:27:09 +0000
Subject: [PATCH 054/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From b51f8c6852c87210042ae2c6fc66fe6984ed2dbd Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 07:27:11 +0000
Subject: [PATCH 055/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 038d48161ca8bd321fe86adec064048dd4a0beda Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 10:26:59 +0000
Subject: [PATCH 056/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 5312bea927dbb3b2a7a4b28cc1b1ae6f8df50048 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 12:27:13 +0000
Subject: [PATCH 057/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 28105acfe0c2713341d51155d451a1af9301331e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 15:27:13 +0000
Subject: [PATCH 058/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 1e9763b636af3bbca133f1a2c4d0d66505b3d719 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 16:27:12 +0000
Subject: [PATCH 059/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 69734dfbf170c8120261c8497b27090b8a845f90 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 21:27:14 +0000
Subject: [PATCH 060/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 517fe626945a3df1c12568d3f87a88ec9bf02588 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 22:27:08 +0000
Subject: [PATCH 061/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 216ddee00bb9c646bf3931459c12080ad78925a8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 15 Feb 2026 23:27:14 +0000
Subject: [PATCH 062/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From df1d739c0d78ec8074c97c39cf1463434f7bd9c3 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 00:27:08 +0000
Subject: [PATCH 063/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From bc84a4c02109af1fb2463602284be20dd5e38293 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 01:27:14 +0000
Subject: [PATCH 064/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From d8ac68170ab8e45b03b996176cd374591be98298 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 03:27:12 +0000
Subject: [PATCH 065/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0927887f12a7a2b2852186fbf5109becf2c34a09 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 05:27:13 +0000
Subject: [PATCH 066/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 01332aa30bfe190b3588de98f692ac86c78ca71b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 06:27:12 +0000
Subject: [PATCH 067/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0125481b9072bffa2feef64c6f78e00b2bc9bfdf Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 07:27:15 +0000
Subject: [PATCH 068/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 33ea5e74755e5bd4dcfaae1650f15bbc9c679098 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 08:27:08 +0000
Subject: [PATCH 069/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From bfa2f9818a7f4425f6ffa78891e1eafe36cea319 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 09:27:14 +0000
Subject: [PATCH 070/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 078006849d1e388957b9f2a481efa767ec53959d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 11:27:08 +0000
Subject: [PATCH 071/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From b3d224edd994190374b062a9863f7e271dc0067e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 12:27:03 +0000
Subject: [PATCH 072/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0d6740954b584567bb64b01bd690a79c2444b3c9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 13:27:04 +0000
Subject: [PATCH 073/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 3813abb5de902031339dece83caa86933fc0ecd8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 14:27:04 +0000
Subject: [PATCH 074/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7d39e24285ff5eed3c884d194e17ee9f2c71e170 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 15:27:11 +0000
Subject: [PATCH 075/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 5cc2dbf2fa9f064840d77c580a1f37b5c452709a Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 18:27:15 +0000
Subject: [PATCH 076/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 2e2917e2adaad09cd3ab6addd2230892cc20429c Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 19:27:15 +0000
Subject: [PATCH 077/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From ccceb5acefa12dff8ee07b8d0efaf654725f6866 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 20:27:12 +0000
Subject: [PATCH 078/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7f230a47b3cf0523fea03ba38776b5e87d9ac994 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 21:27:08 +0000
Subject: [PATCH 079/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 5aa5c1fa68247c824881e6a35a664467aed1fd99 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Feb 2026 22:27:17 +0000
Subject: [PATCH 080/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 567bedddeac360e2dfadc135787f32f483a8d171 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 00:27:10 +0000
Subject: [PATCH 081/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From bf2f413a9786350f75c908578ceb32e18dc3213f Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 02:27:16 +0000
Subject: [PATCH 082/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 82574e7ec30d07540d81b82b383ece63d68cd061 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 04:27:15 +0000
Subject: [PATCH 083/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From bbf82b918b30af4030bc362d7759f96d23ff7ba1 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 06:27:06 +0000
Subject: [PATCH 084/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 1e576e5602db0906491bd574a6b9d93ac06a8420 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 07:27:17 +0000
Subject: [PATCH 085/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From eb1f7129330e17fdba384bc029f7874b2c169d9c Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 08:27:17 +0000
Subject: [PATCH 086/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From cdba500c1e3c6ea96ca999b83ddc71ad85614fa9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 09:27:15 +0000
Subject: [PATCH 087/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4e1cd7720b91400aeec636cbcbfd180c83c3fca1 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 10:27:06 +0000
Subject: [PATCH 088/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From dd740b254187ce1526efaf3a4a4c162fd7815778 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 12:27:09 +0000
Subject: [PATCH 089/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 5f239efaf8806c701c70b945e9a44d90c6c76cc7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 13:27:15 +0000
Subject: [PATCH 090/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From f2023a422e98300dfa98f9b8061ba073be509da2 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 16:27:09 +0000
Subject: [PATCH 091/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4b28574aee7badabd02144af5a6e33e6216a940e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 17:27:10 +0000
Subject: [PATCH 092/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From 55d22aa88f1bb85560b377cbfdd5746c4a77d348 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 18:27:23 +0000
Subject: [PATCH 093/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..64d6fa8d6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
+openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
config_hash: 32eb65911c08ac84d117cecdf2759869
From 814dc3cf7a04b8796b1dc1e45ef6d5c3e93db16d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 19:27:11 +0000
Subject: [PATCH 094/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 64d6fa8d6..b62e4e62b 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-0afa5288ce6572ef15c5c314d65071a29cba29a94cd0d16712009a0d81e352a3.yml
-openapi_spec_hash: 4255339b0be5f0fb4f26161d6caaaa02
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
+openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
config_hash: 32eb65911c08ac84d117cecdf2759869
From dabc3341aa7fba66152e0cc57945f8c002346860 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 20:27:15 +0000
Subject: [PATCH 095/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index b62e4e62b..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-c9b5ca9e03141b62fa981944af1c880cd4562f0b697ed5f110c0e0e754f455ba.yml
-openapi_spec_hash: 9ed347fceac28248d2a0acb49c4eb356
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From dcd83ceaf959aeebc067887579e450c66418f4f2 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 21:27:11 +0000
Subject: [PATCH 096/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 806eb3e0b1333f3208782e1950cd2d64f6963506 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 17 Feb 2026 22:27:15 +0000
Subject: [PATCH 097/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From f61e99d30340a9797ef2b3a4eba0f9520527bb34 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 01:27:08 +0000
Subject: [PATCH 098/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From b6b825e9114c270d9a3e7ef08f6637401e5a09ec Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 05:27:18 +0000
Subject: [PATCH 099/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From d90e0c33525902f943edd80267893ed5eaa9169c Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 07:27:09 +0000
Subject: [PATCH 100/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From ca6a75f7f05f96d17f7dfcf1bed6b4ae48e6a3f7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 13:27:19 +0000
Subject: [PATCH 101/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 1132255a0cd7aec1daed38e4110cd6bac53f930a Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 18:00:16 +0000
Subject: [PATCH 102/215] chore(internal): version bump
---
.release-please-manifest.json | 2 +-
src/agentex/_version.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 871c1ad9e..1b1f6a809 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.9.5"
+ ".": "0.9.4"
}
diff --git a/src/agentex/_version.py b/src/agentex/_version.py
index 3c4a3a3a0..e5258b2ac 100644
--- a/src/agentex/_version.py
+++ b/src/agentex/_version.py
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
__title__ = "agentex"
-__version__ = "0.9.5" # x-release-please-version
+__version__ = "0.9.4" # x-release-please-version
From 366129d8d0157c9371695df0467472791caba3dd Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 19:27:19 +0000
Subject: [PATCH 103/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 85927608c529bd164a6db91f544fe0da050b87d0 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 21:27:07 +0000
Subject: [PATCH 104/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 71f7d62f3bb01dc9651c0f850a327337d478cea8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 22:27:41 +0000
Subject: [PATCH 105/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 05610585c95cbf26b7ac1d9f15c00e3b68a66094 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 18 Feb 2026 23:27:15 +0000
Subject: [PATCH 106/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From a7993a02acf4057fd83e2edd85bda258bd458db9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 02:27:13 +0000
Subject: [PATCH 107/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From c5458e1fe2280af42ad04a0aa62bdadeacf46636 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 03:27:11 +0000
Subject: [PATCH 108/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 2300f03c2d093bb256d131297c763bb00af7373e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 04:27:09 +0000
Subject: [PATCH 109/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From f6b4e7baef857404aee733598943f4abe29ad7f3 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 06:27:24 +0000
Subject: [PATCH 110/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From d9202da1cb36296674f5c6362f7a0c4d5eea39a6 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 07:27:15 +0000
Subject: [PATCH 111/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From d63107c40b540e455cd9e45ed75943acf23928de Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 12:27:13 +0000
Subject: [PATCH 112/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From e4a503bdb280f61319b1f107f55123bd55ab20cb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 15:27:12 +0000
Subject: [PATCH 113/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 3a5ae0f0451610ae56284307d4c2bee1ac2964c1 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 16:04:46 +0000
Subject: [PATCH 114/215] chore(internal): remove mock server code
---
scripts/mock | 41 -----------------------------------------
scripts/test | 46 ----------------------------------------------
2 files changed, 87 deletions(-)
delete mode 100755 scripts/mock
diff --git a/scripts/mock b/scripts/mock
deleted file mode 100755
index 0b28f6ea2..000000000
--- a/scripts/mock
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/env bash
-
-set -e
-
-cd "$(dirname "$0")/.."
-
-if [[ -n "$1" && "$1" != '--'* ]]; then
- URL="$1"
- shift
-else
- URL="$(grep 'openapi_spec_url' .stats.yml | cut -d' ' -f2)"
-fi
-
-# Check if the URL is empty
-if [ -z "$URL" ]; then
- echo "Error: No OpenAPI spec path/url provided or found in .stats.yml"
- exit 1
-fi
-
-echo "==> Starting mock server with URL ${URL}"
-
-# Run prism mock on the given spec
-if [ "$1" == "--daemon" ]; then
- npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL" &> .prism.log &
-
- # Wait for server to come online
- echo -n "Waiting for server"
- while ! grep -q "✖ fatal\|Prism is listening" ".prism.log" ; do
- echo -n "."
- sleep 0.1
- done
-
- if grep -q "✖ fatal" ".prism.log"; then
- cat .prism.log
- exit 1
- fi
-
- echo
-else
- npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL"
-fi
diff --git a/scripts/test b/scripts/test
index 2c69d995f..d84605d82 100755
--- a/scripts/test
+++ b/scripts/test
@@ -4,53 +4,7 @@ set -e
cd "$(dirname "$0")/.."
-RED='\033[0;31m'
-GREEN='\033[0;32m'
-YELLOW='\033[0;33m'
-NC='\033[0m' # No Color
-function prism_is_running() {
- curl --silent "http://localhost:4010" >/dev/null 2>&1
-}
-
-kill_server_on_port() {
- pids=$(lsof -t -i tcp:"$1" || echo "")
- if [ "$pids" != "" ]; then
- kill "$pids"
- echo "Stopped $pids."
- fi
-}
-
-function is_overriding_api_base_url() {
- [ -n "$TEST_API_BASE_URL" ]
-}
-
-if ! is_overriding_api_base_url && ! prism_is_running ; then
- # When we exit this script, make sure to kill the background mock server process
- trap 'kill_server_on_port 4010' EXIT
-
- # Start the dev server
- ./scripts/mock --daemon
-fi
-
-if is_overriding_api_base_url ; then
- echo -e "${GREEN}✔ Running tests against ${TEST_API_BASE_URL}${NC}"
- echo
-elif ! prism_is_running ; then
- echo -e "${RED}ERROR:${NC} The test suite will not run without a mock Prism server"
- echo -e "running against your OpenAPI spec."
- echo
- echo -e "To run the server, pass in the path or url of your OpenAPI"
- echo -e "spec to the prism command:"
- echo
- echo -e " \$ ${YELLOW}npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock path/to/your.openapi.yml${NC}"
- echo
-
- exit 1
-else
- echo -e "${GREEN}✔ Mock prism server is running with your OpenAPI spec${NC}"
- echo
-fi
export DEFER_PYDANTIC_BUILD=false
From 7443a1824c0f1984fc8df0e69bf139b5222d635b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 16:27:08 +0000
Subject: [PATCH 115/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 8c5c6d38214b13f645f6fbd75efbbb8116458589 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 16:35:11 +0000
Subject: [PATCH 116/215] chore: update mock server docs
---
CONTRIBUTING.md | 7 --
tests/api_resources/messages/test_batch.py | 24 ++---
tests/api_resources/test_agents.py | 120 ++++++++++-----------
tests/api_resources/test_events.py | 32 +++---
tests/api_resources/test_messages.py | 84 +++++++--------
tests/api_resources/test_spans.py | 68 ++++++------
tests/api_resources/test_states.py | 76 ++++++-------
tests/api_resources/test_tasks.py | 120 ++++++++++-----------
tests/api_resources/test_tracker.py | 52 ++++-----
9 files changed, 288 insertions(+), 295 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index d0efe0472..867cd143b 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -85,13 +85,6 @@ $ pip install ./path-to-wheel-file.whl
## Running tests
-Most tests require you to [set up a mock server](https://github.com/stoplightio/prism) against the OpenAPI spec to run the tests.
-
-```sh
-# you will need npm installed
-$ npx prism mock path/to/your/openapi.yml
-```
-
```sh
$ ./scripts/test
```
diff --git a/tests/api_resources/messages/test_batch.py b/tests/api_resources/messages/test_batch.py
index da404855f..5b7e981bf 100644
--- a/tests/api_resources/messages/test_batch.py
+++ b/tests/api_resources/messages/test_batch.py
@@ -18,7 +18,7 @@
class TestBatch:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_create(self, client: Agentex) -> None:
batch = client.messages.batch.create(
@@ -33,7 +33,7 @@ def test_method_create(self, client: Agentex) -> None:
)
assert_matches_type(BatchCreateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_create(self, client: Agentex) -> None:
response = client.messages.batch.with_raw_response.create(
@@ -52,7 +52,7 @@ def test_raw_response_create(self, client: Agentex) -> None:
batch = response.parse()
assert_matches_type(BatchCreateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_create(self, client: Agentex) -> None:
with client.messages.batch.with_streaming_response.create(
@@ -73,7 +73,7 @@ def test_streaming_response_create(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update(self, client: Agentex) -> None:
batch = client.messages.batch.update(
@@ -88,7 +88,7 @@ def test_method_update(self, client: Agentex) -> None:
)
assert_matches_type(BatchUpdateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_update(self, client: Agentex) -> None:
response = client.messages.batch.with_raw_response.update(
@@ -107,7 +107,7 @@ def test_raw_response_update(self, client: Agentex) -> None:
batch = response.parse()
assert_matches_type(BatchUpdateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_update(self, client: Agentex) -> None:
with client.messages.batch.with_streaming_response.update(
@@ -134,7 +134,7 @@ class TestAsyncBatch:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_create(self, async_client: AsyncAgentex) -> None:
batch = await async_client.messages.batch.create(
@@ -149,7 +149,7 @@ async def test_method_create(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(BatchCreateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.batch.with_raw_response.create(
@@ -168,7 +168,7 @@ async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
batch = await response.parse()
assert_matches_type(BatchCreateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_create(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.batch.with_streaming_response.create(
@@ -189,7 +189,7 @@ async def test_streaming_response_create(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update(self, async_client: AsyncAgentex) -> None:
batch = await async_client.messages.batch.update(
@@ -204,7 +204,7 @@ async def test_method_update(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(BatchUpdateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.batch.with_raw_response.update(
@@ -223,7 +223,7 @@ async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
batch = await response.parse()
assert_matches_type(BatchUpdateResponse, batch, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_update(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.batch.with_streaming_response.update(
diff --git a/tests/api_resources/test_agents.py b/tests/api_resources/test_agents.py
index 2b078045b..859dee815 100644
--- a/tests/api_resources/test_agents.py
+++ b/tests/api_resources/test_agents.py
@@ -23,7 +23,7 @@
class TestAgents:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
agent = client.agents.retrieve(
@@ -31,7 +31,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.agents.with_raw_response.retrieve(
@@ -43,7 +43,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.agents.with_streaming_response.retrieve(
@@ -57,7 +57,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_id` but received ''"):
@@ -65,13 +65,13 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
agent = client.agents.list()
assert_matches_type(AgentListResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
agent = client.agents.list(
@@ -83,7 +83,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(AgentListResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.agents.with_raw_response.list()
@@ -93,7 +93,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(AgentListResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.agents.with_streaming_response.list() as response:
@@ -105,7 +105,7 @@ def test_streaming_response_list(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_delete(self, client: Agentex) -> None:
agent = client.agents.delete(
@@ -113,7 +113,7 @@ def test_method_delete(self, client: Agentex) -> None:
)
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_delete(self, client: Agentex) -> None:
response = client.agents.with_raw_response.delete(
@@ -125,7 +125,7 @@ def test_raw_response_delete(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_delete(self, client: Agentex) -> None:
with client.agents.with_streaming_response.delete(
@@ -139,7 +139,7 @@ def test_streaming_response_delete(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_delete(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_id` but received ''"):
@@ -147,7 +147,7 @@ def test_path_params_delete(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_delete_by_name(self, client: Agentex) -> None:
agent = client.agents.delete_by_name(
@@ -155,7 +155,7 @@ def test_method_delete_by_name(self, client: Agentex) -> None:
)
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_delete_by_name(self, client: Agentex) -> None:
response = client.agents.with_raw_response.delete_by_name(
@@ -167,7 +167,7 @@ def test_raw_response_delete_by_name(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_delete_by_name(self, client: Agentex) -> None:
with client.agents.with_streaming_response.delete_by_name(
@@ -181,7 +181,7 @@ def test_streaming_response_delete_by_name(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_delete_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_name` but received ''"):
@@ -189,7 +189,7 @@ def test_path_params_delete_by_name(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve_by_name(self, client: Agentex) -> None:
agent = client.agents.retrieve_by_name(
@@ -197,7 +197,7 @@ def test_method_retrieve_by_name(self, client: Agentex) -> None:
)
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve_by_name(self, client: Agentex) -> None:
response = client.agents.with_raw_response.retrieve_by_name(
@@ -209,7 +209,7 @@ def test_raw_response_retrieve_by_name(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve_by_name(self, client: Agentex) -> None:
with client.agents.with_streaming_response.retrieve_by_name(
@@ -223,7 +223,7 @@ def test_streaming_response_retrieve_by_name(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_name` but received ''"):
@@ -231,7 +231,7 @@ def test_path_params_retrieve_by_name(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_rpc(self, client: Agentex) -> None:
agent = client.agents.rpc(
@@ -241,7 +241,7 @@ def test_method_rpc(self, client: Agentex) -> None:
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_rpc_with_all_params(self, client: Agentex) -> None:
agent = client.agents.rpc(
@@ -256,7 +256,7 @@ def test_method_rpc_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_rpc(self, client: Agentex) -> None:
response = client.agents.with_raw_response.rpc(
@@ -270,7 +270,7 @@ def test_raw_response_rpc(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_rpc(self, client: Agentex) -> None:
with client.agents.with_streaming_response.rpc(
@@ -286,7 +286,7 @@ def test_streaming_response_rpc(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_rpc(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_id` but received ''"):
@@ -296,7 +296,7 @@ def test_path_params_rpc(self, client: Agentex) -> None:
params={},
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_rpc_by_name(self, client: Agentex) -> None:
agent = client.agents.rpc_by_name(
@@ -306,7 +306,7 @@ def test_method_rpc_by_name(self, client: Agentex) -> None:
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_rpc_by_name_with_all_params(self, client: Agentex) -> None:
agent = client.agents.rpc_by_name(
@@ -321,7 +321,7 @@ def test_method_rpc_by_name_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_rpc_by_name(self, client: Agentex) -> None:
response = client.agents.with_raw_response.rpc_by_name(
@@ -335,7 +335,7 @@ def test_raw_response_rpc_by_name(self, client: Agentex) -> None:
agent = response.parse()
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_rpc_by_name(self, client: Agentex) -> None:
with client.agents.with_streaming_response.rpc_by_name(
@@ -351,7 +351,7 @@ def test_streaming_response_rpc_by_name(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_rpc_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_name` but received ''"):
@@ -367,7 +367,7 @@ class TestAsyncAgents:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.retrieve(
@@ -375,7 +375,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.retrieve(
@@ -387,7 +387,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
agent = await response.parse()
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.retrieve(
@@ -401,7 +401,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_id` but received ''"):
@@ -409,13 +409,13 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.list()
assert_matches_type(AgentListResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.list(
@@ -427,7 +427,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(AgentListResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.list()
@@ -437,7 +437,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
agent = await response.parse()
assert_matches_type(AgentListResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.list() as response:
@@ -449,7 +449,7 @@ async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_delete(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.delete(
@@ -457,7 +457,7 @@ async def test_method_delete(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.delete(
@@ -469,7 +469,7 @@ async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
agent = await response.parse()
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.delete(
@@ -483,7 +483,7 @@ async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_id` but received ''"):
@@ -491,7 +491,7 @@ async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_delete_by_name(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.delete_by_name(
@@ -499,7 +499,7 @@ async def test_method_delete_by_name(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.delete_by_name(
@@ -511,7 +511,7 @@ async def test_raw_response_delete_by_name(self, async_client: AsyncAgentex) ->
agent = await response.parse()
assert_matches_type(DeleteResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.delete_by_name(
@@ -525,7 +525,7 @@ async def test_streaming_response_delete_by_name(self, async_client: AsyncAgente
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_delete_by_name(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_name` but received ''"):
@@ -533,7 +533,7 @@ async def test_path_params_delete_by_name(self, async_client: AsyncAgentex) -> N
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.retrieve_by_name(
@@ -541,7 +541,7 @@ async def test_method_retrieve_by_name(self, async_client: AsyncAgentex) -> None
)
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.retrieve_by_name(
@@ -553,7 +553,7 @@ async def test_raw_response_retrieve_by_name(self, async_client: AsyncAgentex) -
agent = await response.parse()
assert_matches_type(Agent, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.retrieve_by_name(
@@ -567,7 +567,7 @@ async def test_streaming_response_retrieve_by_name(self, async_client: AsyncAgen
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_name` but received ''"):
@@ -575,7 +575,7 @@ async def test_path_params_retrieve_by_name(self, async_client: AsyncAgentex) ->
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_rpc(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.rpc(
@@ -585,7 +585,7 @@ async def test_method_rpc(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_rpc_with_all_params(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.rpc(
@@ -600,7 +600,7 @@ async def test_method_rpc_with_all_params(self, async_client: AsyncAgentex) -> N
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_rpc(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.rpc(
@@ -614,7 +614,7 @@ async def test_raw_response_rpc(self, async_client: AsyncAgentex) -> None:
agent = await response.parse()
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_rpc(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.rpc(
@@ -630,7 +630,7 @@ async def test_streaming_response_rpc(self, async_client: AsyncAgentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_rpc(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_id` but received ''"):
@@ -640,7 +640,7 @@ async def test_path_params_rpc(self, async_client: AsyncAgentex) -> None:
params={},
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_rpc_by_name(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.rpc_by_name(
@@ -650,7 +650,7 @@ async def test_method_rpc_by_name(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_rpc_by_name_with_all_params(self, async_client: AsyncAgentex) -> None:
agent = await async_client.agents.rpc_by_name(
@@ -665,7 +665,7 @@ async def test_method_rpc_by_name_with_all_params(self, async_client: AsyncAgent
)
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_rpc_by_name(self, async_client: AsyncAgentex) -> None:
response = await async_client.agents.with_raw_response.rpc_by_name(
@@ -679,7 +679,7 @@ async def test_raw_response_rpc_by_name(self, async_client: AsyncAgentex) -> Non
agent = await response.parse()
assert_matches_type(AgentRpcResponse, agent, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_rpc_by_name(self, async_client: AsyncAgentex) -> None:
async with async_client.agents.with_streaming_response.rpc_by_name(
@@ -695,7 +695,7 @@ async def test_streaming_response_rpc_by_name(self, async_client: AsyncAgentex)
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_rpc_by_name(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `agent_name` but received ''"):
diff --git a/tests/api_resources/test_events.py b/tests/api_resources/test_events.py
index ccf5f7bfb..7a0805b52 100644
--- a/tests/api_resources/test_events.py
+++ b/tests/api_resources/test_events.py
@@ -18,7 +18,7 @@
class TestEvents:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
event = client.events.retrieve(
@@ -26,7 +26,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(Event, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.events.with_raw_response.retrieve(
@@ -38,7 +38,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
event = response.parse()
assert_matches_type(Event, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.events.with_streaming_response.retrieve(
@@ -52,7 +52,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `event_id` but received ''"):
@@ -60,7 +60,7 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
event = client.events.list(
@@ -69,7 +69,7 @@ def test_method_list(self, client: Agentex) -> None:
)
assert_matches_type(EventListResponse, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
event = client.events.list(
@@ -80,7 +80,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(EventListResponse, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.events.with_raw_response.list(
@@ -93,7 +93,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
event = response.parse()
assert_matches_type(EventListResponse, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.events.with_streaming_response.list(
@@ -114,7 +114,7 @@ class TestAsyncEvents:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
event = await async_client.events.retrieve(
@@ -122,7 +122,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(Event, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.events.with_raw_response.retrieve(
@@ -134,7 +134,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
event = await response.parse()
assert_matches_type(Event, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.events.with_streaming_response.retrieve(
@@ -148,7 +148,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `event_id` but received ''"):
@@ -156,7 +156,7 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
event = await async_client.events.list(
@@ -165,7 +165,7 @@ async def test_method_list(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(EventListResponse, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
event = await async_client.events.list(
@@ -176,7 +176,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(EventListResponse, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.events.with_raw_response.list(
@@ -189,7 +189,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
event = await response.parse()
assert_matches_type(EventListResponse, event, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.events.with_streaming_response.list(
diff --git a/tests/api_resources/test_messages.py b/tests/api_resources/test_messages.py
index 4b9cfc31b..2aeeffe95 100644
--- a/tests/api_resources/test_messages.py
+++ b/tests/api_resources/test_messages.py
@@ -22,7 +22,7 @@
class TestMessages:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_create(self, client: Agentex) -> None:
message = client.messages.create(
@@ -35,7 +35,7 @@ def test_method_create(self, client: Agentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_create_with_all_params(self, client: Agentex) -> None:
message = client.messages.create(
@@ -59,7 +59,7 @@ def test_method_create_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_create(self, client: Agentex) -> None:
response = client.messages.with_raw_response.create(
@@ -76,7 +76,7 @@ def test_raw_response_create(self, client: Agentex) -> None:
message = response.parse()
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_create(self, client: Agentex) -> None:
with client.messages.with_streaming_response.create(
@@ -95,7 +95,7 @@ def test_streaming_response_create(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
message = client.messages.retrieve(
@@ -103,7 +103,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.messages.with_raw_response.retrieve(
@@ -115,7 +115,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
message = response.parse()
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.messages.with_streaming_response.retrieve(
@@ -129,7 +129,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `message_id` but received ''"):
@@ -137,7 +137,7 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update(self, client: Agentex) -> None:
message = client.messages.update(
@@ -151,7 +151,7 @@ def test_method_update(self, client: Agentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update_with_all_params(self, client: Agentex) -> None:
message = client.messages.update(
@@ -176,7 +176,7 @@ def test_method_update_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_update(self, client: Agentex) -> None:
response = client.messages.with_raw_response.update(
@@ -194,7 +194,7 @@ def test_raw_response_update(self, client: Agentex) -> None:
message = response.parse()
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_update(self, client: Agentex) -> None:
with client.messages.with_streaming_response.update(
@@ -214,7 +214,7 @@ def test_streaming_response_update(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_update(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `message_id` but received ''"):
@@ -228,7 +228,7 @@ def test_path_params_update(self, client: Agentex) -> None:
task_id="task_id",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
message = client.messages.list(
@@ -236,7 +236,7 @@ def test_method_list(self, client: Agentex) -> None:
)
assert_matches_type(MessageListResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
message = client.messages.list(
@@ -249,7 +249,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(MessageListResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.messages.with_raw_response.list(
@@ -261,7 +261,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
message = response.parse()
assert_matches_type(MessageListResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.messages.with_streaming_response.list(
@@ -275,7 +275,7 @@ def test_streaming_response_list(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_paginated(self, client: Agentex) -> None:
message = client.messages.list_paginated(
@@ -283,7 +283,7 @@ def test_method_list_paginated(self, client: Agentex) -> None:
)
assert_matches_type(MessageListPaginatedResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_paginated_with_all_params(self, client: Agentex) -> None:
message = client.messages.list_paginated(
@@ -295,7 +295,7 @@ def test_method_list_paginated_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(MessageListPaginatedResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list_paginated(self, client: Agentex) -> None:
response = client.messages.with_raw_response.list_paginated(
@@ -307,7 +307,7 @@ def test_raw_response_list_paginated(self, client: Agentex) -> None:
message = response.parse()
assert_matches_type(MessageListPaginatedResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list_paginated(self, client: Agentex) -> None:
with client.messages.with_streaming_response.list_paginated(
@@ -327,7 +327,7 @@ class TestAsyncMessages:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_create(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.create(
@@ -340,7 +340,7 @@ async def test_method_create(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_create_with_all_params(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.create(
@@ -364,7 +364,7 @@ async def test_method_create_with_all_params(self, async_client: AsyncAgentex) -
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.with_raw_response.create(
@@ -381,7 +381,7 @@ async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
message = await response.parse()
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_create(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.with_streaming_response.create(
@@ -400,7 +400,7 @@ async def test_streaming_response_create(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.retrieve(
@@ -408,7 +408,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.with_raw_response.retrieve(
@@ -420,7 +420,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
message = await response.parse()
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.with_streaming_response.retrieve(
@@ -434,7 +434,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `message_id` but received ''"):
@@ -442,7 +442,7 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.update(
@@ -456,7 +456,7 @@ async def test_method_update(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update_with_all_params(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.update(
@@ -481,7 +481,7 @@ async def test_method_update_with_all_params(self, async_client: AsyncAgentex) -
)
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.with_raw_response.update(
@@ -499,7 +499,7 @@ async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
message = await response.parse()
assert_matches_type(TaskMessage, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_update(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.with_streaming_response.update(
@@ -519,7 +519,7 @@ async def test_streaming_response_update(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `message_id` but received ''"):
@@ -533,7 +533,7 @@ async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
task_id="task_id",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.list(
@@ -541,7 +541,7 @@ async def test_method_list(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(MessageListResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.list(
@@ -554,7 +554,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(MessageListResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.with_raw_response.list(
@@ -566,7 +566,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
message = await response.parse()
assert_matches_type(MessageListResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.with_streaming_response.list(
@@ -580,7 +580,7 @@ async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_paginated(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.list_paginated(
@@ -588,7 +588,7 @@ async def test_method_list_paginated(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(MessageListPaginatedResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_paginated_with_all_params(self, async_client: AsyncAgentex) -> None:
message = await async_client.messages.list_paginated(
@@ -600,7 +600,7 @@ async def test_method_list_paginated_with_all_params(self, async_client: AsyncAg
)
assert_matches_type(MessageListPaginatedResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list_paginated(self, async_client: AsyncAgentex) -> None:
response = await async_client.messages.with_raw_response.list_paginated(
@@ -612,7 +612,7 @@ async def test_raw_response_list_paginated(self, async_client: AsyncAgentex) ->
message = await response.parse()
assert_matches_type(MessageListPaginatedResponse, message, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list_paginated(self, async_client: AsyncAgentex) -> None:
async with async_client.messages.with_streaming_response.list_paginated(
diff --git a/tests/api_resources/test_spans.py b/tests/api_resources/test_spans.py
index dd4162ba0..948760a67 100644
--- a/tests/api_resources/test_spans.py
+++ b/tests/api_resources/test_spans.py
@@ -19,7 +19,7 @@
class TestSpans:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_create(self, client: Agentex) -> None:
span = client.spans.create(
@@ -29,7 +29,7 @@ def test_method_create(self, client: Agentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_create_with_all_params(self, client: Agentex) -> None:
span = client.spans.create(
@@ -45,7 +45,7 @@ def test_method_create_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_create(self, client: Agentex) -> None:
response = client.spans.with_raw_response.create(
@@ -59,7 +59,7 @@ def test_raw_response_create(self, client: Agentex) -> None:
span = response.parse()
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_create(self, client: Agentex) -> None:
with client.spans.with_streaming_response.create(
@@ -75,7 +75,7 @@ def test_streaming_response_create(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
span = client.spans.retrieve(
@@ -83,7 +83,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.spans.with_raw_response.retrieve(
@@ -95,7 +95,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
span = response.parse()
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.spans.with_streaming_response.retrieve(
@@ -109,7 +109,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `span_id` but received ''"):
@@ -117,7 +117,7 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update(self, client: Agentex) -> None:
span = client.spans.update(
@@ -125,7 +125,7 @@ def test_method_update(self, client: Agentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update_with_all_params(self, client: Agentex) -> None:
span = client.spans.update(
@@ -141,7 +141,7 @@ def test_method_update_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_update(self, client: Agentex) -> None:
response = client.spans.with_raw_response.update(
@@ -153,7 +153,7 @@ def test_raw_response_update(self, client: Agentex) -> None:
span = response.parse()
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_update(self, client: Agentex) -> None:
with client.spans.with_streaming_response.update(
@@ -167,7 +167,7 @@ def test_streaming_response_update(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_update(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `span_id` but received ''"):
@@ -175,13 +175,13 @@ def test_path_params_update(self, client: Agentex) -> None:
span_id="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
span = client.spans.list()
assert_matches_type(SpanListResponse, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
span = client.spans.list(
@@ -193,7 +193,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(SpanListResponse, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.spans.with_raw_response.list()
@@ -203,7 +203,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
span = response.parse()
assert_matches_type(SpanListResponse, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.spans.with_streaming_response.list() as response:
@@ -221,7 +221,7 @@ class TestAsyncSpans:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_create(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.create(
@@ -231,7 +231,7 @@ async def test_method_create(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_create_with_all_params(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.create(
@@ -247,7 +247,7 @@ async def test_method_create_with_all_params(self, async_client: AsyncAgentex) -
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
response = await async_client.spans.with_raw_response.create(
@@ -261,7 +261,7 @@ async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
span = await response.parse()
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_create(self, async_client: AsyncAgentex) -> None:
async with async_client.spans.with_streaming_response.create(
@@ -277,7 +277,7 @@ async def test_streaming_response_create(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.retrieve(
@@ -285,7 +285,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.spans.with_raw_response.retrieve(
@@ -297,7 +297,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
span = await response.parse()
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.spans.with_streaming_response.retrieve(
@@ -311,7 +311,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `span_id` but received ''"):
@@ -319,7 +319,7 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.update(
@@ -327,7 +327,7 @@ async def test_method_update(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update_with_all_params(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.update(
@@ -343,7 +343,7 @@ async def test_method_update_with_all_params(self, async_client: AsyncAgentex) -
)
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
response = await async_client.spans.with_raw_response.update(
@@ -355,7 +355,7 @@ async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
span = await response.parse()
assert_matches_type(Span, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_update(self, async_client: AsyncAgentex) -> None:
async with async_client.spans.with_streaming_response.update(
@@ -369,7 +369,7 @@ async def test_streaming_response_update(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `span_id` but received ''"):
@@ -377,13 +377,13 @@ async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
span_id="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.list()
assert_matches_type(SpanListResponse, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
span = await async_client.spans.list(
@@ -395,7 +395,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(SpanListResponse, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.spans.with_raw_response.list()
@@ -405,7 +405,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
span = await response.parse()
assert_matches_type(SpanListResponse, span, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.spans.with_streaming_response.list() as response:
diff --git a/tests/api_resources/test_states.py b/tests/api_resources/test_states.py
index 0b3193420..2e5e91a0c 100644
--- a/tests/api_resources/test_states.py
+++ b/tests/api_resources/test_states.py
@@ -18,7 +18,7 @@
class TestStates:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_create(self, client: Agentex) -> None:
state = client.states.create(
@@ -28,7 +28,7 @@ def test_method_create(self, client: Agentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_create(self, client: Agentex) -> None:
response = client.states.with_raw_response.create(
@@ -42,7 +42,7 @@ def test_raw_response_create(self, client: Agentex) -> None:
state = response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_create(self, client: Agentex) -> None:
with client.states.with_streaming_response.create(
@@ -58,7 +58,7 @@ def test_streaming_response_create(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
state = client.states.retrieve(
@@ -66,7 +66,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.states.with_raw_response.retrieve(
@@ -78,7 +78,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
state = response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.states.with_streaming_response.retrieve(
@@ -92,7 +92,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `state_id` but received ''"):
@@ -100,7 +100,7 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update(self, client: Agentex) -> None:
state = client.states.update(
@@ -111,7 +111,7 @@ def test_method_update(self, client: Agentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_update(self, client: Agentex) -> None:
response = client.states.with_raw_response.update(
@@ -126,7 +126,7 @@ def test_raw_response_update(self, client: Agentex) -> None:
state = response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_update(self, client: Agentex) -> None:
with client.states.with_streaming_response.update(
@@ -143,7 +143,7 @@ def test_streaming_response_update(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_update(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `state_id` but received ''"):
@@ -154,13 +154,13 @@ def test_path_params_update(self, client: Agentex) -> None:
task_id="task_id",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
state = client.states.list()
assert_matches_type(StateListResponse, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
state = client.states.list(
@@ -173,7 +173,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(StateListResponse, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.states.with_raw_response.list()
@@ -183,7 +183,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
state = response.parse()
assert_matches_type(StateListResponse, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.states.with_streaming_response.list() as response:
@@ -195,7 +195,7 @@ def test_streaming_response_list(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_delete(self, client: Agentex) -> None:
state = client.states.delete(
@@ -203,7 +203,7 @@ def test_method_delete(self, client: Agentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_delete(self, client: Agentex) -> None:
response = client.states.with_raw_response.delete(
@@ -215,7 +215,7 @@ def test_raw_response_delete(self, client: Agentex) -> None:
state = response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_delete(self, client: Agentex) -> None:
with client.states.with_streaming_response.delete(
@@ -229,7 +229,7 @@ def test_streaming_response_delete(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_delete(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `state_id` but received ''"):
@@ -243,7 +243,7 @@ class TestAsyncStates:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_create(self, async_client: AsyncAgentex) -> None:
state = await async_client.states.create(
@@ -253,7 +253,7 @@ async def test_method_create(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
response = await async_client.states.with_raw_response.create(
@@ -267,7 +267,7 @@ async def test_raw_response_create(self, async_client: AsyncAgentex) -> None:
state = await response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_create(self, async_client: AsyncAgentex) -> None:
async with async_client.states.with_streaming_response.create(
@@ -283,7 +283,7 @@ async def test_streaming_response_create(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
state = await async_client.states.retrieve(
@@ -291,7 +291,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.states.with_raw_response.retrieve(
@@ -303,7 +303,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
state = await response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.states.with_streaming_response.retrieve(
@@ -317,7 +317,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `state_id` but received ''"):
@@ -325,7 +325,7 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update(self, async_client: AsyncAgentex) -> None:
state = await async_client.states.update(
@@ -336,7 +336,7 @@ async def test_method_update(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
response = await async_client.states.with_raw_response.update(
@@ -351,7 +351,7 @@ async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
state = await response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_update(self, async_client: AsyncAgentex) -> None:
async with async_client.states.with_streaming_response.update(
@@ -368,7 +368,7 @@ async def test_streaming_response_update(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `state_id` but received ''"):
@@ -379,13 +379,13 @@ async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
task_id="task_id",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
state = await async_client.states.list()
assert_matches_type(StateListResponse, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
state = await async_client.states.list(
@@ -398,7 +398,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(StateListResponse, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.states.with_raw_response.list()
@@ -408,7 +408,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
state = await response.parse()
assert_matches_type(StateListResponse, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.states.with_streaming_response.list() as response:
@@ -420,7 +420,7 @@ async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_delete(self, async_client: AsyncAgentex) -> None:
state = await async_client.states.delete(
@@ -428,7 +428,7 @@ async def test_method_delete(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
response = await async_client.states.with_raw_response.delete(
@@ -440,7 +440,7 @@ async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
state = await response.parse()
assert_matches_type(State, state, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> None:
async with async_client.states.with_streaming_response.delete(
@@ -454,7 +454,7 @@ async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `state_id` but received ''"):
diff --git a/tests/api_resources/test_tasks.py b/tests/api_resources/test_tasks.py
index ce240badc..294116ad5 100644
--- a/tests/api_resources/test_tasks.py
+++ b/tests/api_resources/test_tasks.py
@@ -23,7 +23,7 @@
class TestTasks:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
task = client.tasks.retrieve(
@@ -31,7 +31,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(TaskRetrieveResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve_with_all_params(self, client: Agentex) -> None:
task = client.tasks.retrieve(
@@ -40,7 +40,7 @@ def test_method_retrieve_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(TaskRetrieveResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.retrieve(
@@ -52,7 +52,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
task = response.parse()
assert_matches_type(TaskRetrieveResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.retrieve(
@@ -66,7 +66,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
@@ -74,13 +74,13 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
task_id="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
task = client.tasks.list()
assert_matches_type(TaskListResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
task = client.tasks.list(
@@ -94,7 +94,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(TaskListResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.list()
@@ -104,7 +104,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
task = response.parse()
assert_matches_type(TaskListResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.list() as response:
@@ -116,7 +116,7 @@ def test_streaming_response_list(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_delete(self, client: Agentex) -> None:
task = client.tasks.delete(
@@ -124,7 +124,7 @@ def test_method_delete(self, client: Agentex) -> None:
)
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_delete(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.delete(
@@ -136,7 +136,7 @@ def test_raw_response_delete(self, client: Agentex) -> None:
task = response.parse()
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_delete(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.delete(
@@ -150,7 +150,7 @@ def test_streaming_response_delete(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_delete(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
@@ -158,7 +158,7 @@ def test_path_params_delete(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_delete_by_name(self, client: Agentex) -> None:
task = client.tasks.delete_by_name(
@@ -166,7 +166,7 @@ def test_method_delete_by_name(self, client: Agentex) -> None:
)
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_delete_by_name(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.delete_by_name(
@@ -178,7 +178,7 @@ def test_raw_response_delete_by_name(self, client: Agentex) -> None:
task = response.parse()
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_delete_by_name(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.delete_by_name(
@@ -192,7 +192,7 @@ def test_streaming_response_delete_by_name(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_delete_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
@@ -200,7 +200,7 @@ def test_path_params_delete_by_name(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve_by_name(self, client: Agentex) -> None:
task = client.tasks.retrieve_by_name(
@@ -208,7 +208,7 @@ def test_method_retrieve_by_name(self, client: Agentex) -> None:
)
assert_matches_type(TaskRetrieveByNameResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve_by_name_with_all_params(self, client: Agentex) -> None:
task = client.tasks.retrieve_by_name(
@@ -217,7 +217,7 @@ def test_method_retrieve_by_name_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(TaskRetrieveByNameResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve_by_name(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.retrieve_by_name(
@@ -229,7 +229,7 @@ def test_raw_response_retrieve_by_name(self, client: Agentex) -> None:
task = response.parse()
assert_matches_type(TaskRetrieveByNameResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve_by_name(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.retrieve_by_name(
@@ -243,7 +243,7 @@ def test_streaming_response_retrieve_by_name(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
@@ -251,7 +251,7 @@ def test_path_params_retrieve_by_name(self, client: Agentex) -> None:
task_name="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_stream_events(self, client: Agentex) -> None:
task_stream = client.tasks.stream_events(
@@ -259,7 +259,7 @@ def test_method_stream_events(self, client: Agentex) -> None:
)
task_stream.response.close()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_stream_events(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.stream_events(
@@ -270,7 +270,7 @@ def test_raw_response_stream_events(self, client: Agentex) -> None:
stream = response.parse()
stream.close()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_stream_events(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.stream_events(
@@ -284,7 +284,7 @@ def test_streaming_response_stream_events(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_stream_events(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
@@ -292,7 +292,7 @@ def test_path_params_stream_events(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_stream_events_by_name(self, client: Agentex) -> None:
task_stream = client.tasks.stream_events_by_name(
@@ -300,7 +300,7 @@ def test_method_stream_events_by_name(self, client: Agentex) -> None:
)
task_stream.response.close()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_stream_events_by_name(self, client: Agentex) -> None:
response = client.tasks.with_raw_response.stream_events_by_name(
@@ -311,7 +311,7 @@ def test_raw_response_stream_events_by_name(self, client: Agentex) -> None:
stream = response.parse()
stream.close()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_stream_events_by_name(self, client: Agentex) -> None:
with client.tasks.with_streaming_response.stream_events_by_name(
@@ -325,7 +325,7 @@ def test_streaming_response_stream_events_by_name(self, client: Agentex) -> None
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_stream_events_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
@@ -339,7 +339,7 @@ class TestAsyncTasks:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.retrieve(
@@ -347,7 +347,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(TaskRetrieveResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve_with_all_params(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.retrieve(
@@ -356,7 +356,7 @@ async def test_method_retrieve_with_all_params(self, async_client: AsyncAgentex)
)
assert_matches_type(TaskRetrieveResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.retrieve(
@@ -368,7 +368,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
task = await response.parse()
assert_matches_type(TaskRetrieveResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.retrieve(
@@ -382,7 +382,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
@@ -390,13 +390,13 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
task_id="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.list()
assert_matches_type(TaskListResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.list(
@@ -410,7 +410,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(TaskListResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.list()
@@ -420,7 +420,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
task = await response.parse()
assert_matches_type(TaskListResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.list() as response:
@@ -432,7 +432,7 @@ async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_delete(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.delete(
@@ -440,7 +440,7 @@ async def test_method_delete(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.delete(
@@ -452,7 +452,7 @@ async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
task = await response.parse()
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.delete(
@@ -466,7 +466,7 @@ async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
@@ -474,7 +474,7 @@ async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_delete_by_name(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.delete_by_name(
@@ -482,7 +482,7 @@ async def test_method_delete_by_name(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.delete_by_name(
@@ -494,7 +494,7 @@ async def test_raw_response_delete_by_name(self, async_client: AsyncAgentex) ->
task = await response.parse()
assert_matches_type(DeleteResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.delete_by_name(
@@ -508,7 +508,7 @@ async def test_streaming_response_delete_by_name(self, async_client: AsyncAgente
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_delete_by_name(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
@@ -516,7 +516,7 @@ async def test_path_params_delete_by_name(self, async_client: AsyncAgentex) -> N
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.retrieve_by_name(
@@ -524,7 +524,7 @@ async def test_method_retrieve_by_name(self, async_client: AsyncAgentex) -> None
)
assert_matches_type(TaskRetrieveByNameResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve_by_name_with_all_params(self, async_client: AsyncAgentex) -> None:
task = await async_client.tasks.retrieve_by_name(
@@ -533,7 +533,7 @@ async def test_method_retrieve_by_name_with_all_params(self, async_client: Async
)
assert_matches_type(TaskRetrieveByNameResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.retrieve_by_name(
@@ -545,7 +545,7 @@ async def test_raw_response_retrieve_by_name(self, async_client: AsyncAgentex) -
task = await response.parse()
assert_matches_type(TaskRetrieveByNameResponse, task, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.retrieve_by_name(
@@ -559,7 +559,7 @@ async def test_streaming_response_retrieve_by_name(self, async_client: AsyncAgen
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
@@ -567,7 +567,7 @@ async def test_path_params_retrieve_by_name(self, async_client: AsyncAgentex) ->
task_name="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_stream_events(self, async_client: AsyncAgentex) -> None:
task_stream = await async_client.tasks.stream_events(
@@ -575,7 +575,7 @@ async def test_method_stream_events(self, async_client: AsyncAgentex) -> None:
)
await task_stream.response.aclose()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_stream_events(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.stream_events(
@@ -586,7 +586,7 @@ async def test_raw_response_stream_events(self, async_client: AsyncAgentex) -> N
stream = await response.parse()
await stream.close()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_stream_events(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.stream_events(
@@ -600,7 +600,7 @@ async def test_streaming_response_stream_events(self, async_client: AsyncAgentex
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_stream_events(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
@@ -608,7 +608,7 @@ async def test_path_params_stream_events(self, async_client: AsyncAgentex) -> No
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_stream_events_by_name(self, async_client: AsyncAgentex) -> None:
task_stream = await async_client.tasks.stream_events_by_name(
@@ -616,7 +616,7 @@ async def test_method_stream_events_by_name(self, async_client: AsyncAgentex) ->
)
await task_stream.response.aclose()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_stream_events_by_name(self, async_client: AsyncAgentex) -> None:
response = await async_client.tasks.with_raw_response.stream_events_by_name(
@@ -627,7 +627,7 @@ async def test_raw_response_stream_events_by_name(self, async_client: AsyncAgent
stream = await response.parse()
await stream.close()
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_stream_events_by_name(self, async_client: AsyncAgentex) -> None:
async with async_client.tasks.with_streaming_response.stream_events_by_name(
@@ -641,7 +641,7 @@ async def test_streaming_response_stream_events_by_name(self, async_client: Asyn
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_stream_events_by_name(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
diff --git a/tests/api_resources/test_tracker.py b/tests/api_resources/test_tracker.py
index ae4a3a918..d56f4b6db 100644
--- a/tests/api_resources/test_tracker.py
+++ b/tests/api_resources/test_tracker.py
@@ -18,7 +18,7 @@
class TestTracker:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
tracker = client.tracker.retrieve(
@@ -26,7 +26,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
)
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.tracker.with_raw_response.retrieve(
@@ -38,7 +38,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
tracker = response.parse()
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.tracker.with_streaming_response.retrieve(
@@ -52,7 +52,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `tracker_id` but received ''"):
@@ -60,7 +60,7 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update(self, client: Agentex) -> None:
tracker = client.tracker.update(
@@ -68,7 +68,7 @@ def test_method_update(self, client: Agentex) -> None:
)
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_update_with_all_params(self, client: Agentex) -> None:
tracker = client.tracker.update(
@@ -79,7 +79,7 @@ def test_method_update_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_update(self, client: Agentex) -> None:
response = client.tracker.with_raw_response.update(
@@ -91,7 +91,7 @@ def test_raw_response_update(self, client: Agentex) -> None:
tracker = response.parse()
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_update(self, client: Agentex) -> None:
with client.tracker.with_streaming_response.update(
@@ -105,7 +105,7 @@ def test_streaming_response_update(self, client: Agentex) -> None:
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_update(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `tracker_id` but received ''"):
@@ -113,13 +113,13 @@ def test_path_params_update(self, client: Agentex) -> None:
tracker_id="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
tracker = client.tracker.list()
assert_matches_type(TrackerListResponse, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
tracker = client.tracker.list(
@@ -132,7 +132,7 @@ def test_method_list_with_all_params(self, client: Agentex) -> None:
)
assert_matches_type(TrackerListResponse, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.tracker.with_raw_response.list()
@@ -142,7 +142,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
tracker = response.parse()
assert_matches_type(TrackerListResponse, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.tracker.with_streaming_response.list() as response:
@@ -160,7 +160,7 @@ class TestAsyncTracker:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
tracker = await async_client.tracker.retrieve(
@@ -168,7 +168,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.tracker.with_raw_response.retrieve(
@@ -180,7 +180,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
tracker = await response.parse()
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.tracker.with_streaming_response.retrieve(
@@ -194,7 +194,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `tracker_id` but received ''"):
@@ -202,7 +202,7 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update(self, async_client: AsyncAgentex) -> None:
tracker = await async_client.tracker.update(
@@ -210,7 +210,7 @@ async def test_method_update(self, async_client: AsyncAgentex) -> None:
)
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_update_with_all_params(self, async_client: AsyncAgentex) -> None:
tracker = await async_client.tracker.update(
@@ -221,7 +221,7 @@ async def test_method_update_with_all_params(self, async_client: AsyncAgentex) -
)
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
response = await async_client.tracker.with_raw_response.update(
@@ -233,7 +233,7 @@ async def test_raw_response_update(self, async_client: AsyncAgentex) -> None:
tracker = await response.parse()
assert_matches_type(AgentTaskTracker, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_update(self, async_client: AsyncAgentex) -> None:
async with async_client.tracker.with_streaming_response.update(
@@ -247,7 +247,7 @@ async def test_streaming_response_update(self, async_client: AsyncAgentex) -> No
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `tracker_id` but received ''"):
@@ -255,13 +255,13 @@ async def test_path_params_update(self, async_client: AsyncAgentex) -> None:
tracker_id="",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
tracker = await async_client.tracker.list()
assert_matches_type(TrackerListResponse, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
tracker = await async_client.tracker.list(
@@ -274,7 +274,7 @@ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) ->
)
assert_matches_type(TrackerListResponse, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.tracker.with_raw_response.list()
@@ -284,7 +284,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
tracker = await response.parse()
assert_matches_type(TrackerListResponse, tracker, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.tracker.with_streaming_response.list() as response:
From b74eb0ef3c1cd6114b50cfc1a33738e02561b5f8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 17:27:14 +0000
Subject: [PATCH 117/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 3f88357caf270e0b7d94ed845f8e6c52679eca76 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 19:27:36 +0000
Subject: [PATCH 118/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 941681c3a092361d1d75b0b70b9b81972e49d919 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Feb 2026 21:27:08 +0000
Subject: [PATCH 119/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 2f2c907f129464c1427004548aa06c23240e4dcb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 01:27:13 +0000
Subject: [PATCH 120/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0a97ac059d306844da89246123202181271cf387 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 05:27:10 +0000
Subject: [PATCH 121/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 892914e196c4779ccc6f026797c6d51d6e5e4cbb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 08:27:18 +0000
Subject: [PATCH 122/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 42a6e42f1aea0f9a8c2e05939f879772a555acc7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 09:27:10 +0000
Subject: [PATCH 123/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From b27165ab1b077fdfbebdb9273b976f4880c960b5 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 10:27:19 +0000
Subject: [PATCH 124/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 2e102af73aaa724d54dc65b700669c7d18d49f4f Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 11:27:12 +0000
Subject: [PATCH 125/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From af5eab558356111ea1566cf742737f8ec3d2a5dd Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 13:27:17 +0000
Subject: [PATCH 126/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7a305473dd5594a9fcb56f1e9cd6b4074f440a68 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 15:27:16 +0000
Subject: [PATCH 127/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From afda642b80c7a7828e01d66ce26e530307758074 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 16:27:25 +0000
Subject: [PATCH 128/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From d40746d447dce7fce2a21f3cc7be915dbc920d38 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 18:27:21 +0000
Subject: [PATCH 129/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0d4dcce5bc881cb993ff33dd753430e9c016cbc4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 20 Feb 2026 23:27:10 +0000
Subject: [PATCH 130/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 06fde86e304866972c1f80cd350f9a7c1b7419d8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 01:27:15 +0000
Subject: [PATCH 131/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 1ea950e780b4d54696be8b978ae845792d522f61 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 04:27:10 +0000
Subject: [PATCH 132/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 3c39972b19a445a63821cf2888a3405fc9f8fbc2 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 05:27:20 +0000
Subject: [PATCH 133/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From dce8408a1ca669dbb21c1d1d8329f1106cd23d2b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 06:27:22 +0000
Subject: [PATCH 134/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From e6c4dd278f6323ca3f646f812c681f1145cc94d6 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 08:27:49 +0000
Subject: [PATCH 135/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From ff1e3b5237878b4021099685a5597a8aafdaf353 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 09:27:19 +0000
Subject: [PATCH 136/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From dec90fd4a4e43f12849e9aa880ad8802d1519355 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 13:27:20 +0000
Subject: [PATCH 137/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From f1f119c41ff96014d61dc510efc48b953e604f45 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 16:27:18 +0000
Subject: [PATCH 138/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From fc78c40fc6520c6e08652b5d38cc5dce855eb19e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 18:27:10 +0000
Subject: [PATCH 139/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7d866492282855f5e9ba17a5a4de67626fe23037 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 19:27:21 +0000
Subject: [PATCH 140/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 1f3df0652870a30de719ae6a03779f6baceb57eb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 20:27:20 +0000
Subject: [PATCH 141/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From adc7854c579eb30354c2802005271131094b57c3 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 21 Feb 2026 23:27:10 +0000
Subject: [PATCH 142/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 6e968c82f87a1d578589feb57ab8423a51ae96d8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 00:27:18 +0000
Subject: [PATCH 143/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From eb84544662c8ac08df521e8aac5b8f1cfb4ce299 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 01:27:08 +0000
Subject: [PATCH 144/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 414662fd7197a22facb5edcadd99b7c62a9f33c7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 03:27:22 +0000
Subject: [PATCH 145/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From a6a3fddc8739fafc063f91f6508a2673859ce266 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 04:27:09 +0000
Subject: [PATCH 146/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From d85187b69fcef75f42db496ac0e156f419215870 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 06:27:20 +0000
Subject: [PATCH 147/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From ebd4f97599dff3003c186b2152f779a0f4027666 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 07:27:08 +0000
Subject: [PATCH 148/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 6dfcd80fc4610a45b4690f258495b6dc04d19940 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 08:27:24 +0000
Subject: [PATCH 149/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 496dbef525748a021dc1f8be00e218bac641b25b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 10:27:08 +0000
Subject: [PATCH 150/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7e86c1fc9f5dd94412d85c36cc1f919c3a7f3738 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 12:27:25 +0000
Subject: [PATCH 151/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From bba9286d42576467d88eafb024e2cf35730b8bb2 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 16:27:09 +0000
Subject: [PATCH 152/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From ca62df05d9fae9761e65a1ef25020aef0f73d496 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 19:27:10 +0000
Subject: [PATCH 153/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 250cb3c6ff07a56b34a9e87396319ef926e207aa Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 22 Feb 2026 20:27:25 +0000
Subject: [PATCH 154/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From afcbd05ecefb80fd8282c42801bbfe675419d8ed Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 01:27:17 +0000
Subject: [PATCH 155/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From b24bcde275d08df7408a523a6e543d0d8d990715 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 03:27:14 +0000
Subject: [PATCH 156/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7dc86ca2773a17927ec707eb90255688b2da6c41 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 04:27:23 +0000
Subject: [PATCH 157/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From b788da0d1b9fb6100dffb4a99b761ddcb7f0160e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 13:30:45 +0000
Subject: [PATCH 158/215] chore(internal): add request options to SSE classes
---
src/agentex/_response.py | 3 +++
src/agentex/_streaming.py | 11 ++++++++---
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/src/agentex/_response.py b/src/agentex/_response.py
index be9bfbc37..d8e2464e0 100644
--- a/src/agentex/_response.py
+++ b/src/agentex/_response.py
@@ -152,6 +152,7 @@ def _parse(self, *, to: type[_T] | None = None) -> R | _T:
),
response=self.http_response,
client=cast(Any, self._client),
+ options=self._options,
),
)
@@ -162,6 +163,7 @@ def _parse(self, *, to: type[_T] | None = None) -> R | _T:
cast_to=extract_stream_chunk_type(self._stream_cls),
response=self.http_response,
client=cast(Any, self._client),
+ options=self._options,
),
)
@@ -175,6 +177,7 @@ def _parse(self, *, to: type[_T] | None = None) -> R | _T:
cast_to=cast_to,
response=self.http_response,
client=cast(Any, self._client),
+ options=self._options,
),
)
diff --git a/src/agentex/_streaming.py b/src/agentex/_streaming.py
index bfe61d2ab..96585bde7 100644
--- a/src/agentex/_streaming.py
+++ b/src/agentex/_streaming.py
@@ -4,7 +4,7 @@
import json
import inspect
from types import TracebackType
-from typing import TYPE_CHECKING, Any, Generic, TypeVar, Iterator, AsyncIterator, cast
+from typing import TYPE_CHECKING, Any, Generic, TypeVar, Iterator, Optional, AsyncIterator, cast
from typing_extensions import Self, Protocol, TypeGuard, override, get_origin, runtime_checkable
import httpx
@@ -13,6 +13,7 @@
if TYPE_CHECKING:
from ._client import Agentex, AsyncAgentex
+ from ._models import FinalRequestOptions
_T = TypeVar("_T")
@@ -22,7 +23,7 @@ class Stream(Generic[_T]):
"""Provides the core interface to iterate over a synchronous stream response."""
response: httpx.Response
-
+ _options: Optional[FinalRequestOptions] = None
_decoder: SSEBytesDecoder
def __init__(
@@ -31,10 +32,12 @@ def __init__(
cast_to: type[_T],
response: httpx.Response,
client: Agentex,
+ options: Optional[FinalRequestOptions] = None,
) -> None:
self.response = response
self._cast_to = cast_to
self._client = client
+ self._options = options
self._decoder = client._make_sse_decoder()
self._iterator = self.__stream__()
@@ -85,7 +88,7 @@ class AsyncStream(Generic[_T]):
"""Provides the core interface to iterate over an asynchronous stream response."""
response: httpx.Response
-
+ _options: Optional[FinalRequestOptions] = None
_decoder: SSEDecoder | SSEBytesDecoder
def __init__(
@@ -94,10 +97,12 @@ def __init__(
cast_to: type[_T],
response: httpx.Response,
client: AsyncAgentex,
+ options: Optional[FinalRequestOptions] = None,
) -> None:
self.response = response
self._cast_to = cast_to
self._client = client
+ self._options = options
self._decoder = client._make_sse_decoder()
self._iterator = self.__stream__()
From 5f0940bfe6800633443bbd741e55b22a9b50955d Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 17:27:08 +0000
Subject: [PATCH 159/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From f8aecaf65bf0c8770ac18fe4edae8d8fb0f3ef69 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 18:27:11 +0000
Subject: [PATCH 160/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7b439228765871f09ba2fa6c0750ce3410786fb6 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 19:27:26 +0000
Subject: [PATCH 161/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7bfaa75be00bf8f11030f42a3dc6fdcd980c5823 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 20:28:02 +0000
Subject: [PATCH 162/215] chore(internal): make
`test_proxy_environment_variables` more resilient
---
tests/test_client.py | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/test_client.py b/tests/test_client.py
index 6e709e654..054738134 100644
--- a/tests/test_client.py
+++ b/tests/test_client.py
@@ -955,6 +955,8 @@ def retry_handler(_request: httpx.Request) -> httpx.Response:
def test_proxy_environment_variables(self, monkeypatch: pytest.MonkeyPatch) -> None:
# Test that the proxy environment variables are set correctly
monkeypatch.setenv("HTTPS_PROXY", "https://example.org")
+ # Delete in case our environment has this set
+ monkeypatch.delenv("HTTP_PROXY", raising=False)
client = DefaultHttpxClient()
@@ -1912,6 +1914,8 @@ async def test_main() -> None:
async def test_proxy_environment_variables(self, monkeypatch: pytest.MonkeyPatch) -> None:
# Test that the proxy environment variables are set correctly
monkeypatch.setenv("HTTPS_PROXY", "https://example.org")
+ # Delete in case our environment has this set
+ monkeypatch.delenv("HTTP_PROXY", raising=False)
client = DefaultAsyncHttpxClient()
From 3a6838bdf0f1aa49447df39e653c30265ffb76bd Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 21:27:07 +0000
Subject: [PATCH 163/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 8a5e7f2c89af788af48478d696a971b6cda7838e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Feb 2026 22:27:12 +0000
Subject: [PATCH 164/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 93fe4d78561b170d1b0a58ee1f0f0135ad81a8eb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 01:34:39 +0000
Subject: [PATCH 165/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 97c60f3e7f708796f77d4bc71510fc46e3c15d01 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 02:27:11 +0000
Subject: [PATCH 166/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 74fba1e1634c5d6d3a1b54f6a29a5a7aae44d634 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 03:27:27 +0000
Subject: [PATCH 167/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 63d7ead11ff9d607b4be438238c2e54e44b10690 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 06:27:20 +0000
Subject: [PATCH 168/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 594dc79a5d5f105bc12b389c19ac7bfafdb01d3e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 07:28:34 +0000
Subject: [PATCH 169/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0933707bf8f3337e646175b66851d6e75f09fb46 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 13:27:15 +0000
Subject: [PATCH 170/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From a6d596a05b75e46e7863257aeebf964c86675a35 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 14:36:36 +0000
Subject: [PATCH 171/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9fb05423986f0cd354cf79c641ddd89e43ccd99e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 16:27:16 +0000
Subject: [PATCH 172/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From fd1a06e212cf1a314ac7c61e4d51879401e120f9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 17:47:35 +0000
Subject: [PATCH 173/215] chore(internal): make
`test_proxy_environment_variables` more resilient to env
---
tests/test_client.py | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/tests/test_client.py b/tests/test_client.py
index 054738134..c13db7d12 100644
--- a/tests/test_client.py
+++ b/tests/test_client.py
@@ -955,8 +955,14 @@ def retry_handler(_request: httpx.Request) -> httpx.Response:
def test_proxy_environment_variables(self, monkeypatch: pytest.MonkeyPatch) -> None:
# Test that the proxy environment variables are set correctly
monkeypatch.setenv("HTTPS_PROXY", "https://example.org")
- # Delete in case our environment has this set
+ # Delete in case our environment has any proxy env vars set
monkeypatch.delenv("HTTP_PROXY", raising=False)
+ monkeypatch.delenv("ALL_PROXY", raising=False)
+ monkeypatch.delenv("NO_PROXY", raising=False)
+ monkeypatch.delenv("http_proxy", raising=False)
+ monkeypatch.delenv("https_proxy", raising=False)
+ monkeypatch.delenv("all_proxy", raising=False)
+ monkeypatch.delenv("no_proxy", raising=False)
client = DefaultHttpxClient()
@@ -1914,8 +1920,14 @@ async def test_main() -> None:
async def test_proxy_environment_variables(self, monkeypatch: pytest.MonkeyPatch) -> None:
# Test that the proxy environment variables are set correctly
monkeypatch.setenv("HTTPS_PROXY", "https://example.org")
- # Delete in case our environment has this set
+ # Delete in case our environment has any proxy env vars set
monkeypatch.delenv("HTTP_PROXY", raising=False)
+ monkeypatch.delenv("ALL_PROXY", raising=False)
+ monkeypatch.delenv("NO_PROXY", raising=False)
+ monkeypatch.delenv("http_proxy", raising=False)
+ monkeypatch.delenv("https_proxy", raising=False)
+ monkeypatch.delenv("all_proxy", raising=False)
+ monkeypatch.delenv("no_proxy", raising=False)
client = DefaultAsyncHttpxClient()
From cc06dde608119ed5f29d03fdc380021d49270966 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 18:27:26 +0000
Subject: [PATCH 174/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From e476f511966964e21dd9bde03bd358127ca6c6b0 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 19:27:17 +0000
Subject: [PATCH 175/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From b045396863eb30074098faa96d936b16c58d1ae8 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 20:27:24 +0000
Subject: [PATCH 176/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 49d3ceefe0fb411b45e968fb14f3873ef219ff01 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Feb 2026 22:27:10 +0000
Subject: [PATCH 177/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 041cfbd66ffb7aa19ad1199700d559bd1f560937 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 00:27:27 +0000
Subject: [PATCH 178/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 789d624ca84ec88cbf7f10b55e3a77947393d9ec Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 02:27:12 +0000
Subject: [PATCH 179/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From f9e846f257c7ef1cc79ee467c3e6d006ed161bd4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 06:27:12 +0000
Subject: [PATCH 180/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 7ce467f96ac26c382c7620827ed4ebdbb12ce1ca Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 10:27:17 +0000
Subject: [PATCH 181/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4c1388e5601f38d47c32fe4401e59085a2a44273 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 11:27:23 +0000
Subject: [PATCH 182/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 8bba68bf73f50a2ee4777b57e48abc5a8c3a0f64 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 12:27:19 +0000
Subject: [PATCH 183/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From e5f995d24b0ec54e85cba54351878622ec07e110 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 13:27:19 +0000
Subject: [PATCH 184/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 763f842634c58b3710c73d6ab5b2f449428410f7 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 14:27:17 +0000
Subject: [PATCH 185/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 4ffc69a433eaafb610fbf7314737926ddff3d586 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 18:27:17 +0000
Subject: [PATCH 186/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 960956d5b0134dbb0860952b37c71e67942a6c03 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 25 Feb 2026 23:27:13 +0000
Subject: [PATCH 187/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9cac5acec39ebcdc65f9686801e420ad080bce7e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 01:27:26 +0000
Subject: [PATCH 188/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9398f8bb72c4ee6660c026a539919ba5b4bfcf0b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 05:27:20 +0000
Subject: [PATCH 189/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 19785d3858878e4218c6e8ffa1891ad913dd9ebe Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 06:27:53 +0000
Subject: [PATCH 190/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 09b2a1b3e9142ae036bdeda30af0f83ba600cf68 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 07:27:18 +0000
Subject: [PATCH 191/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 8ba5858ea3d1ebe19c5547094ca0361545fb7566 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 09:27:28 +0000
Subject: [PATCH 192/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 10ffba447e59064586037b6d2982db59ac60239e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 11:27:19 +0000
Subject: [PATCH 193/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 0f3303193057a7ef3a59054b38c477a7ce8db6d0 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 12:27:26 +0000
Subject: [PATCH 194/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From ab1bca62b398f406809e022168336e9915417fc0 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 14:27:13 +0000
Subject: [PATCH 195/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From ec6abb06cd25e1039fb94d691bba1a9496c62cda Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 15:27:28 +0000
Subject: [PATCH 196/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 9e6534aadf95c06dfc3bb597fdbb0db4dc8cf204 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 16:27:12 +0000
Subject: [PATCH 197/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 26532c4d280445863e7cac5f41abb49408f3a889 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 19:35:21 +0000
Subject: [PATCH 198/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..3e0712121 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
+openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
config_hash: 32eb65911c08ac84d117cecdf2759869
From 8c2f3f30b2cd2cb4b2526b5464ec9723ef5f18d0 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Feb 2026 20:27:15 +0000
Subject: [PATCH 199/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3e0712121..0574052df 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5915a9830ddc25c4846c7af38ec19a1879c604d70762f86cd7d91fbaffdf61ae.yml
-openapi_spec_hash: 197130cabd7611ef7b1cbc66749a8f21
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
+openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
config_hash: 32eb65911c08ac84d117cecdf2759869
From 45e76227d8b0d5d1c2f398e9945b71eb5953e791 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 7 Mar 2026 12:53:23 +0000
Subject: [PATCH 200/215] chore(ci): skip uploading artifacts on
stainless-internal branches
---
.github/workflows/ci.yml | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 7cf293aab..06bc28284 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -61,14 +61,18 @@ jobs:
run: rye build
- name: Get GitHub OIDC Token
- if: github.repository == 'stainless-sdks/agentex-sdk-python'
+ if: |-
+ github.repository == 'stainless-sdks/agentex-sdk-python' &&
+ !startsWith(github.ref, 'refs/heads/stl/')
id: github-oidc
uses: actions/github-script@v8
with:
script: core.setOutput('github_token', await core.getIDToken());
- name: Upload tarball
- if: github.repository == 'stainless-sdks/agentex-sdk-python'
+ if: |-
+ github.repository == 'stainless-sdks/agentex-sdk-python' &&
+ !startsWith(github.ref, 'refs/heads/stl/')
env:
URL: https://pkg.stainless.com/s
AUTH: ${{ steps.github-oidc.outputs.github_token }}
From 235636b424dd4595f1510a87e6b79f3b2e103c97 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Mar 2026 17:33:03 +0000
Subject: [PATCH 201/215] fix(pydantic): do not pass `by_alias` unless set
---
src/agentex/_compat.py | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/agentex/_compat.py b/src/agentex/_compat.py
index 786ff42ad..e6690a4f2 100644
--- a/src/agentex/_compat.py
+++ b/src/agentex/_compat.py
@@ -2,7 +2,7 @@
from typing import TYPE_CHECKING, Any, Union, Generic, TypeVar, Callable, cast, overload
from datetime import date, datetime
-from typing_extensions import Self, Literal
+from typing_extensions import Self, Literal, TypedDict
import pydantic
from pydantic.fields import FieldInfo
@@ -131,6 +131,10 @@ def model_json(model: pydantic.BaseModel, *, indent: int | None = None) -> str:
return model.model_dump_json(indent=indent)
+class _ModelDumpKwargs(TypedDict, total=False):
+ by_alias: bool
+
+
def model_dump(
model: pydantic.BaseModel,
*,
@@ -142,6 +146,9 @@ def model_dump(
by_alias: bool | None = None,
) -> dict[str, Any]:
if (not PYDANTIC_V1) or hasattr(model, "model_dump"):
+ kwargs: _ModelDumpKwargs = {}
+ if by_alias is not None:
+ kwargs["by_alias"] = by_alias
return model.model_dump(
mode=mode,
exclude=exclude,
@@ -149,7 +156,7 @@ def model_dump(
exclude_defaults=exclude_defaults,
# warnings are not supported in Pydantic v1
warnings=True if PYDANTIC_V1 else warnings,
- by_alias=by_alias,
+ **kwargs,
)
return cast(
"dict[str, Any]",
From fd76bc994dca633c4966967c132323985eafa642 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Mar 2026 19:02:01 +0000
Subject: [PATCH 202/215] fix(deps): bump minimum typing-extensions version
---
pyproject.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyproject.toml b/pyproject.toml
index 0650ce0c7..2a3a68707 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -11,7 +11,7 @@ authors = [
dependencies = [
"httpx>=0.27.2,<0.28",
"pydantic>=2.0.0, <3",
- "typing-extensions>=4.10, <5",
+ "typing-extensions>=4.14, <5",
"anyio>=3.5.0, <5",
"distro>=1.7.0, <2",
"sniffio",
From 2e74af08e3e2dd4179550e9dd1cf22881195ac91 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 16 Mar 2026 20:45:14 +0000
Subject: [PATCH 203/215] chore(internal): tweak CI branches
---
.github/workflows/ci.yml | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 06bc28284..05748f4ee 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,12 +1,14 @@
name: CI
on:
push:
- branches-ignore:
- - 'generated'
- - 'codegen/**'
- - 'integrated/**'
- - 'stl-preview-head/**'
- - 'stl-preview-base/**'
+ branches:
+ - '**'
+ - '!integrated/**'
+ - '!stl-preview-head/**'
+ - '!stl-preview-base/**'
+ - '!generated'
+ - '!codegen/**'
+ - 'codegen/stl/**'
pull_request:
branches-ignore:
- 'stl-preview-head/**'
From e6472bea7d34a72d070079441b359bef25e87830 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 19 Mar 2026 15:37:30 +0000
Subject: [PATCH 204/215] fix: sanitize endpoint path params
---
src/agentex/_utils/__init__.py | 1 +
src/agentex/_utils/_path.py | 127 +++++++++++++++++++++
src/agentex/resources/agents.py | 26 ++---
src/agentex/resources/events.py | 6 +-
src/agentex/resources/messages/messages.py | 10 +-
src/agentex/resources/spans.py | 10 +-
src/agentex/resources/states.py | 14 +--
src/agentex/resources/tasks.py | 26 ++---
src/agentex/resources/tracker.py | 10 +-
tests/test_utils/test_path.py | 89 +++++++++++++++
10 files changed, 268 insertions(+), 51 deletions(-)
create mode 100644 src/agentex/_utils/_path.py
create mode 100644 tests/test_utils/test_path.py
diff --git a/src/agentex/_utils/__init__.py b/src/agentex/_utils/__init__.py
index dc64e29a1..10cb66d2d 100644
--- a/src/agentex/_utils/__init__.py
+++ b/src/agentex/_utils/__init__.py
@@ -1,3 +1,4 @@
+from ._path import path_template as path_template
from ._sync import asyncify as asyncify
from ._proxy import LazyProxy as LazyProxy
from ._utils import (
diff --git a/src/agentex/_utils/_path.py b/src/agentex/_utils/_path.py
new file mode 100644
index 000000000..4d6e1e4cb
--- /dev/null
+++ b/src/agentex/_utils/_path.py
@@ -0,0 +1,127 @@
+from __future__ import annotations
+
+import re
+from typing import (
+ Any,
+ Mapping,
+ Callable,
+)
+from urllib.parse import quote
+
+# Matches '.' or '..' where each dot is either literal or percent-encoded (%2e / %2E).
+_DOT_SEGMENT_RE = re.compile(r"^(?:\.|%2[eE]){1,2}$")
+
+_PLACEHOLDER_RE = re.compile(r"\{(\w+)\}")
+
+
+def _quote_path_segment_part(value: str) -> str:
+ """Percent-encode `value` for use in a URI path segment.
+
+ Considers characters not in `pchar` set from RFC 3986 §3.3 to be unsafe.
+ https://datatracker.ietf.org/doc/html/rfc3986#section-3.3
+ """
+ # quote() already treats unreserved characters (letters, digits, and -._~)
+ # as safe, so we only need to add sub-delims, ':', and '@'.
+ # Notably, unlike the default `safe` for quote(), / is unsafe and must be quoted.
+ return quote(value, safe="!$&'()*+,;=:@")
+
+
+def _quote_query_part(value: str) -> str:
+ """Percent-encode `value` for use in a URI query string.
+
+ Considers &, = and characters not in `query` set from RFC 3986 §3.4 to be unsafe.
+ https://datatracker.ietf.org/doc/html/rfc3986#section-3.4
+ """
+ return quote(value, safe="!$'()*+,;:@/?")
+
+
+def _quote_fragment_part(value: str) -> str:
+ """Percent-encode `value` for use in a URI fragment.
+
+ Considers characters not in `fragment` set from RFC 3986 §3.5 to be unsafe.
+ https://datatracker.ietf.org/doc/html/rfc3986#section-3.5
+ """
+ return quote(value, safe="!$&'()*+,;=:@/?")
+
+
+def _interpolate(
+ template: str,
+ values: Mapping[str, Any],
+ quoter: Callable[[str], str],
+) -> str:
+ """Replace {name} placeholders in `template`, quoting each value with `quoter`.
+
+ Placeholder names are looked up in `values`.
+
+ Raises:
+ KeyError: If a placeholder is not found in `values`.
+ """
+ # re.split with a capturing group returns alternating
+ # [text, name, text, name, ..., text] elements.
+ parts = _PLACEHOLDER_RE.split(template)
+
+ for i in range(1, len(parts), 2):
+ name = parts[i]
+ if name not in values:
+ raise KeyError(f"a value for placeholder {{{name}}} was not provided")
+ val = values[name]
+ if val is None:
+ parts[i] = "null"
+ elif isinstance(val, bool):
+ parts[i] = "true" if val else "false"
+ else:
+ parts[i] = quoter(str(values[name]))
+
+ return "".join(parts)
+
+
+def path_template(template: str, /, **kwargs: Any) -> str:
+ """Interpolate {name} placeholders in `template` from keyword arguments.
+
+ Args:
+ template: The template string containing {name} placeholders.
+ **kwargs: Keyword arguments to interpolate into the template.
+
+ Returns:
+ The template with placeholders interpolated and percent-encoded.
+
+ Safe characters for percent-encoding are dependent on the URI component.
+ Placeholders in path and fragment portions are percent-encoded where the `segment`
+ and `fragment` sets from RFC 3986 respectively are considered safe.
+ Placeholders in the query portion are percent-encoded where the `query` set from
+ RFC 3986 §3.3 is considered safe except for = and & characters.
+
+ Raises:
+ KeyError: If a placeholder is not found in `kwargs`.
+ ValueError: If resulting path contains /./ or /../ segments (including percent-encoded dot-segments).
+ """
+ # Split the template into path, query, and fragment portions.
+ fragment_template: str | None = None
+ query_template: str | None = None
+
+ rest = template
+ if "#" in rest:
+ rest, fragment_template = rest.split("#", 1)
+ if "?" in rest:
+ rest, query_template = rest.split("?", 1)
+ path_template = rest
+
+ # Interpolate each portion with the appropriate quoting rules.
+ path_result = _interpolate(path_template, kwargs, _quote_path_segment_part)
+
+ # Reject dot-segments (. and ..) in the final assembled path. The check
+ # runs after interpolation so that adjacent placeholders or a mix of static
+ # text and placeholders that together form a dot-segment are caught.
+ # Also reject percent-encoded dot-segments to protect against incorrectly
+ # implemented normalization in servers/proxies.
+ for segment in path_result.split("/"):
+ if _DOT_SEGMENT_RE.match(segment):
+ raise ValueError(f"Constructed path {path_result!r} contains dot-segment {segment!r} which is not allowed")
+
+ result = path_result
+ if query_template is not None:
+ result += "?" + _interpolate(query_template, kwargs, _quote_query_part)
+ if fragment_template is not None:
+ result += "#" + _interpolate(fragment_template, kwargs, _quote_fragment_part)
+
+ return result
diff --git a/src/agentex/resources/agents.py b/src/agentex/resources/agents.py
index ae6821e76..e6da458b9 100644
--- a/src/agentex/resources/agents.py
+++ b/src/agentex/resources/agents.py
@@ -11,7 +11,7 @@
from ..types import agent_rpc_params, agent_list_params, agent_rpc_by_name_params
from .._types import NOT_GIVEN, Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -82,7 +82,7 @@ def retrieve(
if not agent_id:
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
return self._get(
- f"/agents/{agent_id}",
+ path_template("/agents/{agent_id}", agent_id=agent_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -173,7 +173,7 @@ def delete(
if not agent_id:
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
return self._delete(
- f"/agents/{agent_id}",
+ path_template("/agents/{agent_id}", agent_id=agent_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -206,7 +206,7 @@ def delete_by_name(
if not agent_name:
raise ValueError(f"Expected a non-empty value for `agent_name` but received {agent_name!r}")
return self._delete(
- f"/agents/name/{agent_name}",
+ path_template("/agents/name/{agent_name}", agent_name=agent_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -239,7 +239,7 @@ def retrieve_by_name(
if not agent_name:
raise ValueError(f"Expected a non-empty value for `agent_name` but received {agent_name!r}")
return self._get(
- f"/agents/name/{agent_name}",
+ path_template("/agents/name/{agent_name}", agent_name=agent_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -278,7 +278,7 @@ def rpc(
if not agent_id:
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
return self._post(
- f"/agents/{agent_id}/rpc",
+ path_template("/agents/{agent_id}/rpc", agent_id=agent_id),
body=maybe_transform(
{
"method": method,
@@ -326,7 +326,7 @@ def rpc_by_name(
if not agent_name:
raise ValueError(f"Expected a non-empty value for `agent_name` but received {agent_name!r}")
return self._post(
- f"/agents/name/{agent_name}/rpc",
+ path_template("/agents/name/{agent_name}/rpc", agent_name=agent_name),
body=maybe_transform(
{
"method": method,
@@ -650,7 +650,7 @@ async def retrieve(
if not agent_id:
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
return await self._get(
- f"/agents/{agent_id}",
+ path_template("/agents/{agent_id}", agent_id=agent_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -741,7 +741,7 @@ async def delete(
if not agent_id:
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
return await self._delete(
- f"/agents/{agent_id}",
+ path_template("/agents/{agent_id}", agent_id=agent_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -774,7 +774,7 @@ async def delete_by_name(
if not agent_name:
raise ValueError(f"Expected a non-empty value for `agent_name` but received {agent_name!r}")
return await self._delete(
- f"/agents/name/{agent_name}",
+ path_template("/agents/name/{agent_name}", agent_name=agent_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -807,7 +807,7 @@ async def retrieve_by_name(
if not agent_name:
raise ValueError(f"Expected a non-empty value for `agent_name` but received {agent_name!r}")
return await self._get(
- f"/agents/name/{agent_name}",
+ path_template("/agents/name/{agent_name}", agent_name=agent_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -846,7 +846,7 @@ async def rpc(
if not agent_id:
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
return await self._post(
- f"/agents/{agent_id}/rpc",
+ path_template("/agents/{agent_id}/rpc", agent_id=agent_id),
body=await async_maybe_transform(
{
"method": method,
@@ -894,7 +894,7 @@ async def rpc_by_name(
if not agent_name:
raise ValueError(f"Expected a non-empty value for `agent_name` but received {agent_name!r}")
return await self._post(
- f"/agents/name/{agent_name}/rpc",
+ path_template("/agents/name/{agent_name}/rpc", agent_name=agent_name),
body=await async_maybe_transform(
{
"method": method,
diff --git a/src/agentex/resources/events.py b/src/agentex/resources/events.py
index 64ac63268..b0111abb4 100644
--- a/src/agentex/resources/events.py
+++ b/src/agentex/resources/events.py
@@ -8,7 +8,7 @@
from ..types import event_list_params
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -70,7 +70,7 @@ def retrieve(
if not event_id:
raise ValueError(f"Expected a non-empty value for `event_id` but received {event_id!r}")
return self._get(
- f"/events/{event_id}",
+ path_template("/events/{event_id}", event_id=event_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -181,7 +181,7 @@ async def retrieve(
if not event_id:
raise ValueError(f"Expected a non-empty value for `event_id` but received {event_id!r}")
return await self._get(
- f"/events/{event_id}",
+ path_template("/events/{event_id}", event_id=event_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
diff --git a/src/agentex/resources/messages/messages.py b/src/agentex/resources/messages/messages.py
index c047c9c23..667ef41ca 100644
--- a/src/agentex/resources/messages/messages.py
+++ b/src/agentex/resources/messages/messages.py
@@ -22,7 +22,7 @@
message_list_paginated_params,
)
from ..._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from ..._utils import maybe_transform, async_maybe_transform
+from ..._utils import path_template, maybe_transform, async_maybe_transform
from ..._compat import cached_property
from ..._resource import SyncAPIResource, AsyncAPIResource
from ..._response import (
@@ -131,7 +131,7 @@ def retrieve(
if not message_id:
raise ValueError(f"Expected a non-empty value for `message_id` but received {message_id!r}")
return self._get(
- f"/messages/{message_id}",
+ path_template("/messages/{message_id}", message_id=message_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -167,7 +167,7 @@ def update(
if not message_id:
raise ValueError(f"Expected a non-empty value for `message_id` but received {message_id!r}")
return self._put(
- f"/messages/{message_id}",
+ path_template("/messages/{message_id}", message_id=message_id),
body=maybe_transform(
{
"content": content,
@@ -1395,7 +1395,7 @@ async def retrieve(
if not message_id:
raise ValueError(f"Expected a non-empty value for `message_id` but received {message_id!r}")
return await self._get(
- f"/messages/{message_id}",
+ path_template("/messages/{message_id}", message_id=message_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -1431,7 +1431,7 @@ async def update(
if not message_id:
raise ValueError(f"Expected a non-empty value for `message_id` but received {message_id!r}")
return await self._put(
- f"/messages/{message_id}",
+ path_template("/messages/{message_id}", message_id=message_id),
body=await async_maybe_transform(
{
"content": content,
diff --git a/src/agentex/resources/spans.py b/src/agentex/resources/spans.py
index 589c2ac6b..f8d97e0de 100644
--- a/src/agentex/resources/spans.py
+++ b/src/agentex/resources/spans.py
@@ -9,7 +9,7 @@
from ..types import span_list_params, span_create_params, span_update_params
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -142,7 +142,7 @@ def retrieve(
if not span_id:
raise ValueError(f"Expected a non-empty value for `span_id` but received {span_id!r}")
return self._get(
- f"/spans/{span_id}",
+ path_template("/spans/{span_id}", span_id=span_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -199,7 +199,7 @@ def update(
if not span_id:
raise ValueError(f"Expected a non-empty value for `span_id` but received {span_id!r}")
return self._patch(
- f"/spans/{span_id}",
+ path_template("/spans/{span_id}", span_id=span_id),
body=maybe_transform(
{
"data": data,
@@ -385,7 +385,7 @@ async def retrieve(
if not span_id:
raise ValueError(f"Expected a non-empty value for `span_id` but received {span_id!r}")
return await self._get(
- f"/spans/{span_id}",
+ path_template("/spans/{span_id}", span_id=span_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -442,7 +442,7 @@ async def update(
if not span_id:
raise ValueError(f"Expected a non-empty value for `span_id` but received {span_id!r}")
return await self._patch(
- f"/spans/{span_id}",
+ path_template("/spans/{span_id}", span_id=span_id),
body=await async_maybe_transform(
{
"data": data,
diff --git a/src/agentex/resources/states.py b/src/agentex/resources/states.py
index a8f3d0854..d8cfa1ad8 100644
--- a/src/agentex/resources/states.py
+++ b/src/agentex/resources/states.py
@@ -8,7 +8,7 @@
from ..types import state_list_params, state_create_params, state_update_params
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -111,7 +111,7 @@ def retrieve(
if not state_id:
raise ValueError(f"Expected a non-empty value for `state_id` but received {state_id!r}")
return self._get(
- f"/states/{state_id}",
+ path_template("/states/{state_id}", state_id=state_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -147,7 +147,7 @@ def update(
if not state_id:
raise ValueError(f"Expected a non-empty value for `state_id` but received {state_id!r}")
return self._put(
- f"/states/{state_id}",
+ path_template("/states/{state_id}", state_id=state_id),
body=maybe_transform(
{
"agent_id": agent_id,
@@ -250,7 +250,7 @@ def delete(
if not state_id:
raise ValueError(f"Expected a non-empty value for `state_id` but received {state_id!r}")
return self._delete(
- f"/states/{state_id}",
+ path_template("/states/{state_id}", state_id=state_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -345,7 +345,7 @@ async def retrieve(
if not state_id:
raise ValueError(f"Expected a non-empty value for `state_id` but received {state_id!r}")
return await self._get(
- f"/states/{state_id}",
+ path_template("/states/{state_id}", state_id=state_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -381,7 +381,7 @@ async def update(
if not state_id:
raise ValueError(f"Expected a non-empty value for `state_id` but received {state_id!r}")
return await self._put(
- f"/states/{state_id}",
+ path_template("/states/{state_id}", state_id=state_id),
body=await async_maybe_transform(
{
"agent_id": agent_id,
@@ -484,7 +484,7 @@ async def delete(
if not state_id:
raise ValueError(f"Expected a non-empty value for `state_id` but received {state_id!r}")
return await self._delete(
- f"/states/{state_id}",
+ path_template("/states/{state_id}", state_id=state_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
diff --git a/src/agentex/resources/tasks.py b/src/agentex/resources/tasks.py
index 1bf41b7b5..7986924a3 100644
--- a/src/agentex/resources/tasks.py
+++ b/src/agentex/resources/tasks.py
@@ -9,7 +9,7 @@
from ..types import task_list_params, task_retrieve_params, task_retrieve_by_name_params
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -75,7 +75,7 @@ def retrieve(
if not task_id:
raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
return self._get(
- f"/tasks/{task_id}",
+ path_template("/tasks/{task_id}", task_id=task_id),
options=make_request_options(
extra_headers=extra_headers,
extra_query=extra_query,
@@ -164,7 +164,7 @@ def delete(
if not task_id:
raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
return self._delete(
- f"/tasks/{task_id}",
+ path_template("/tasks/{task_id}", task_id=task_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -197,7 +197,7 @@ def delete_by_name(
if not task_name:
raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
return self._delete(
- f"/tasks/name/{task_name}",
+ path_template("/tasks/name/{task_name}", task_name=task_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -231,7 +231,7 @@ def retrieve_by_name(
if not task_name:
raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
return self._get(
- f"/tasks/name/{task_name}",
+ path_template("/tasks/name/{task_name}", task_name=task_name),
options=make_request_options(
extra_headers=extra_headers,
extra_query=extra_query,
@@ -270,7 +270,7 @@ def stream_events(
if not task_id:
raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
return self._get(
- f"/tasks/{task_id}/stream",
+ path_template("/tasks/{task_id}/stream", task_id=task_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -305,7 +305,7 @@ def stream_events_by_name(
if not task_name:
raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
return self._get(
- f"/tasks/name/{task_name}/stream",
+ path_template("/tasks/name/{task_name}/stream", task_name=task_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -362,7 +362,7 @@ async def retrieve(
if not task_id:
raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
return await self._get(
- f"/tasks/{task_id}",
+ path_template("/tasks/{task_id}", task_id=task_id),
options=make_request_options(
extra_headers=extra_headers,
extra_query=extra_query,
@@ -453,7 +453,7 @@ async def delete(
if not task_id:
raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
return await self._delete(
- f"/tasks/{task_id}",
+ path_template("/tasks/{task_id}", task_id=task_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -486,7 +486,7 @@ async def delete_by_name(
if not task_name:
raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
return await self._delete(
- f"/tasks/name/{task_name}",
+ path_template("/tasks/name/{task_name}", task_name=task_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -520,7 +520,7 @@ async def retrieve_by_name(
if not task_name:
raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
return await self._get(
- f"/tasks/name/{task_name}",
+ path_template("/tasks/name/{task_name}", task_name=task_name),
options=make_request_options(
extra_headers=extra_headers,
extra_query=extra_query,
@@ -559,7 +559,7 @@ async def stream_events(
if not task_id:
raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
return await self._get(
- f"/tasks/{task_id}/stream",
+ path_template("/tasks/{task_id}/stream", task_id=task_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -594,7 +594,7 @@ async def stream_events_by_name(
if not task_name:
raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
return await self._get(
- f"/tasks/name/{task_name}/stream",
+ path_template("/tasks/name/{task_name}/stream", task_name=task_name),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
diff --git a/src/agentex/resources/tracker.py b/src/agentex/resources/tracker.py
index 15906b3f0..14de3fc49 100644
--- a/src/agentex/resources/tracker.py
+++ b/src/agentex/resources/tracker.py
@@ -8,7 +8,7 @@
from ..types import tracker_list_params, tracker_update_params
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -70,7 +70,7 @@ def retrieve(
if not tracker_id:
raise ValueError(f"Expected a non-empty value for `tracker_id` but received {tracker_id!r}")
return self._get(
- f"/tracker/{tracker_id}",
+ path_template("/tracker/{tracker_id}", tracker_id=tracker_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -112,7 +112,7 @@ def update(
if not tracker_id:
raise ValueError(f"Expected a non-empty value for `tracker_id` but received {tracker_id!r}")
return self._put(
- f"/tracker/{tracker_id}",
+ path_template("/tracker/{tracker_id}", tracker_id=tracker_id),
body=maybe_transform(
{
"last_processed_event_id": last_processed_event_id,
@@ -236,7 +236,7 @@ async def retrieve(
if not tracker_id:
raise ValueError(f"Expected a non-empty value for `tracker_id` but received {tracker_id!r}")
return await self._get(
- f"/tracker/{tracker_id}",
+ path_template("/tracker/{tracker_id}", tracker_id=tracker_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
@@ -278,7 +278,7 @@ async def update(
if not tracker_id:
raise ValueError(f"Expected a non-empty value for `tracker_id` but received {tracker_id!r}")
return await self._put(
- f"/tracker/{tracker_id}",
+ path_template("/tracker/{tracker_id}", tracker_id=tracker_id),
body=await async_maybe_transform(
{
"last_processed_event_id": last_processed_event_id,
diff --git a/tests/test_utils/test_path.py b/tests/test_utils/test_path.py
new file mode 100644
index 000000000..fdc41f1f8
--- /dev/null
+++ b/tests/test_utils/test_path.py
@@ -0,0 +1,89 @@
+from __future__ import annotations
+
+from typing import Any
+
+import pytest
+
+from agentex._utils._path import path_template
+
+
+@pytest.mark.parametrize(
+ "template, kwargs, expected",
+ [
+ ("/v1/{id}", dict(id="abc"), "/v1/abc"),
+ ("/v1/{a}/{b}", dict(a="x", b="y"), "/v1/x/y"),
+ ("/v1/{a}{b}/path/{c}?val={d}#{e}", dict(a="x", b="y", c="z", d="u", e="v"), "/v1/xy/path/z?val=u#v"),
+ ("/{w}/{w}", dict(w="echo"), "/echo/echo"),
+ ("/v1/static", {}, "/v1/static"),
+ ("", {}, ""),
+ ("/v1/?q={n}&count=10", dict(n=42), "/v1/?q=42&count=10"),
+ ("/v1/{v}", dict(v=None), "/v1/null"),
+ ("/v1/{v}", dict(v=True), "/v1/true"),
+ ("/v1/{v}", dict(v=False), "/v1/false"),
+ ("/v1/{v}", dict(v=".hidden"), "/v1/.hidden"), # dot prefix ok
+ ("/v1/{v}", dict(v="file.txt"), "/v1/file.txt"), # dot in middle ok
+ ("/v1/{v}", dict(v="..."), "/v1/..."), # triple dot ok
+ ("/v1/{a}{b}", dict(a=".", b="txt"), "/v1/.txt"), # dot var combining with adjacent to be ok
+ ("/items?q={v}#{f}", dict(v=".", f=".."), "/items?q=.#.."), # dots in query/fragment are fine
+ (
+ "/v1/{a}?query={b}",
+ dict(a="../../other/endpoint", b="a&bad=true"),
+ "/v1/..%2F..%2Fother%2Fendpoint?query=a%26bad%3Dtrue",
+ ),
+ ("/v1/{val}", dict(val="a/b/c"), "/v1/a%2Fb%2Fc"),
+ ("/v1/{val}", dict(val="a/b/c?query=value"), "/v1/a%2Fb%2Fc%3Fquery=value"),
+ ("/v1/{val}", dict(val="a/b/c?query=value&bad=true"), "/v1/a%2Fb%2Fc%3Fquery=value&bad=true"),
+ ("/v1/{val}", dict(val="%20"), "/v1/%2520"), # escapes escape sequences in input
+ # Query: slash and ? are safe, # is not
+ ("/items?q={v}", dict(v="a/b"), "/items?q=a/b"),
+ ("/items?q={v}", dict(v="a?b"), "/items?q=a?b"),
+ ("/items?q={v}", dict(v="a#b"), "/items?q=a%23b"),
+ ("/items?q={v}", dict(v="a b"), "/items?q=a%20b"),
+ # Fragment: slash and ? are safe
+ ("/docs#{v}", dict(v="a/b"), "/docs#a/b"),
+ ("/docs#{v}", dict(v="a?b"), "/docs#a?b"),
+ # Path: slash, ? and # are all encoded
+ ("/v1/{v}", dict(v="a/b"), "/v1/a%2Fb"),
+ ("/v1/{v}", dict(v="a?b"), "/v1/a%3Fb"),
+ ("/v1/{v}", dict(v="a#b"), "/v1/a%23b"),
+ # same var encoded differently by component
+ (
+ "/v1/{v}?q={v}#{v}",
+ dict(v="a/b?c#d"),
+ "/v1/a%2Fb%3Fc%23d?q=a/b?c%23d#a/b?c%23d",
+ ),
+ ("/v1/{val}", dict(val="x?admin=true"), "/v1/x%3Fadmin=true"), # query injection
+ ("/v1/{val}", dict(val="x#admin"), "/v1/x%23admin"), # fragment injection
+ ],
+)
+def test_interpolation(template: str, kwargs: dict[str, Any], expected: str) -> None:
+ assert path_template(template, **kwargs) == expected
+
+
+def test_missing_kwarg_raises_key_error() -> None:
+ with pytest.raises(KeyError, match="org_id"):
+ path_template("/v1/{org_id}")
+
+
+@pytest.mark.parametrize(
+ "template, kwargs",
+ [
+ ("{a}/path", dict(a=".")),
+ ("{a}/path", dict(a="..")),
+ ("/v1/{a}", dict(a=".")),
+ ("/v1/{a}", dict(a="..")),
+ ("/v1/{a}/path", dict(a=".")),
+ ("/v1/{a}/path", dict(a="..")),
+ ("/v1/{a}{b}", dict(a=".", b=".")), # adjacent vars → ".."
+ ("/v1/{a}.", dict(a=".")), # var + static → ".."
+ ("/v1/{a}{b}", dict(a="", b=".")), # empty + dot → "."
+ ("/v1/%2e/{x}", dict(x="ok")), # encoded dot in static text
+ ("/v1/%2e./{x}", dict(x="ok")), # mixed encoded ".." in static
+ ("/v1/.%2E/{x}", dict(x="ok")), # mixed encoded ".." in static
+ ("/v1/{v}?q=1", dict(v="..")),
+ ("/v1/{v}#frag", dict(v="..")),
+ ],
+)
+def test_dot_segment_rejected(template: str, kwargs: dict[str, Any]) -> None:
+ with pytest.raises(ValueError, match="dot-segment"):
+ path_template(template, **kwargs)
From aba7c4f8264fdad515a4926884f855c2d87aa910 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 23 Mar 2026 12:38:24 +0000
Subject: [PATCH 205/215] chore(internal): update gitignore
---
.gitignore | 1 +
1 file changed, 1 insertion(+)
diff --git a/.gitignore b/.gitignore
index 6398505af..8d1280062 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
.prism.log
+.stdy.log
_dev
__pycache__
From f4d5053766e5864338229218f2402d60f431d1fa Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Mar 2026 15:14:24 +0000
Subject: [PATCH 206/215] chore(ci): skip lint on metadata-only changes
Note that we still want to run tests, as these depend on the metadata.
---
.github/workflows/ci.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 05748f4ee..d6cc9ffb3 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -19,7 +19,7 @@ jobs:
timeout-minutes: 10
name: lint
runs-on: ${{ github.repository == 'stainless-sdks/agentex-sdk-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
- if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
+ if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')
steps:
- uses: actions/checkout@v6
@@ -38,7 +38,7 @@ jobs:
run: ./scripts/lint
build:
- if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
+ if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')
timeout-minutes: 10
name: build
permissions:
From 1ef69ed5415d3112055a8040eccfb6eca452e532 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Tue, 24 Mar 2026 17:16:14 +0000
Subject: [PATCH 207/215] chore(internal): version bump
---
.release-please-manifest.json | 2 +-
src/agentex/_version.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 1b1f6a809..871c1ad9e 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.9.4"
+ ".": "0.9.5"
}
diff --git a/src/agentex/_version.py b/src/agentex/_version.py
index e5258b2ac..3c4a3a3a0 100644
--- a/src/agentex/_version.py
+++ b/src/agentex/_version.py
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
__title__ = "agentex"
-__version__ = "0.9.4" # x-release-please-version
+__version__ = "0.9.5" # x-release-please-version
From 3bf3db1f692b44ceb5f4ea39cb8c4fd0f81c01ee Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 26 Mar 2026 19:26:05 +0000
Subject: [PATCH 208/215] feat(internal): implement indices array format for
query and form serialization
---
src/agentex/_qs.py | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/agentex/_qs.py b/src/agentex/_qs.py
index ada6fd3f7..de8c99bc6 100644
--- a/src/agentex/_qs.py
+++ b/src/agentex/_qs.py
@@ -101,7 +101,10 @@ def _stringify_item(
items.extend(self._stringify_item(key, item, opts))
return items
elif array_format == "indices":
- raise NotImplementedError("The array indices format is not supported yet")
+ items = []
+ for i, item in enumerate(value):
+ items.extend(self._stringify_item(f"{key}[{i}]", item, opts))
+ return items
elif array_format == "brackets":
items = []
key = key + "[]"
From 543c83be9972e0df66824bbe63b4b5033b84f4fa Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 15:59:29 +0000
Subject: [PATCH 209/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 0574052df..64c0896e7 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 35
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-eb0d3153f7c381a7e5e5fb4dae1dc629c739df0315aaf8c2e848106bdf5d5dec.yml
-openapi_spec_hash: 95ab0275ef41904bf89f080edf7e2d9a
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5fa3cb3c867281c804913c7c3e6d2143b5606d4924d42119f4b2b246f33e3db3.yml
+openapi_spec_hash: 8ec711692f3ed7cd34a7a3b9d3e33f7c
config_hash: 32eb65911c08ac84d117cecdf2759869
From d699e245d6c8f28034370ea6a654e11a3b78dc20 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 17:12:29 +0000
Subject: [PATCH 210/215] feat(api): add task state update methods
---
.stats.yml | 4 +-
api.md | 24 +-
src/agentex/resources/deployment_history.py | 24 +-
src/agentex/resources/tasks.py | 679 +++++++++++-
src/agentex/types/__init__.py | 14 +-
src/agentex/types/agent_rpc_by_name_params.py | 62 +-
src/agentex/types/agent_rpc_params.py | 62 +-
.../types/cancel_task_request_param.py | 16 +
.../types/create_task_request_param.py | 16 +
.../types/deployment_history_list_params.py | 4 +
.../types/deployment_history_list_response.py | 36 +-
.../deployment_history_retrieve_response.py | 35 +
src/agentex/types/send_event_request_param.py | 21 +
.../types/send_message_request_param.py | 27 +
src/agentex/types/task_cancel_params.py | 12 +
src/agentex/types/task_complete_params.py | 12 +
src/agentex/types/task_fail_params.py | 12 +
.../types/task_query_workflow_response.py | 8 +
src/agentex/types/task_terminate_params.py | 12 +
src/agentex/types/task_timeout_params.py | 12 +
src/agentex/types/task_update_by_id_params.py | 12 +
.../types/task_update_by_name_params.py | 12 +
.../api_resources/test_deployment_history.py | 56 +-
tests/api_resources/test_tasks.py | 974 ++++++++++++++++--
24 files changed, 1915 insertions(+), 231 deletions(-)
create mode 100644 src/agentex/types/cancel_task_request_param.py
create mode 100644 src/agentex/types/create_task_request_param.py
create mode 100644 src/agentex/types/deployment_history_retrieve_response.py
create mode 100644 src/agentex/types/send_event_request_param.py
create mode 100644 src/agentex/types/send_message_request_param.py
create mode 100644 src/agentex/types/task_cancel_params.py
create mode 100644 src/agentex/types/task_complete_params.py
create mode 100644 src/agentex/types/task_fail_params.py
create mode 100644 src/agentex/types/task_query_workflow_response.py
create mode 100644 src/agentex/types/task_terminate_params.py
create mode 100644 src/agentex/types/task_timeout_params.py
create mode 100644 src/agentex/types/task_update_by_id_params.py
create mode 100644 src/agentex/types/task_update_by_name_params.py
diff --git a/.stats.yml b/.stats.yml
index 64c0896e7..7c0aaa9ed 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
-configured_endpoints: 35
+configured_endpoints: 45
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5fa3cb3c867281c804913c7c3e6d2143b5606d4924d42119f4b2b246f33e3db3.yml
openapi_spec_hash: 8ec711692f3ed7cd34a7a3b9d3e33f7c
-config_hash: 32eb65911c08ac84d117cecdf2759869
+config_hash: d65d8b7a05f302e164ef9ba7fe72b277
diff --git a/api.md b/api.md
index f70f9b194..99034e8a4 100644
--- a/api.md
+++ b/api.md
@@ -15,9 +15,13 @@ from agentex.types import (
AgentRpcRequest,
AgentRpcResponse,
AgentRpcResult,
+ CancelTaskRequest,
+ CreateTaskRequest,
DataDelta,
ReasoningContentDelta,
ReasoningSummaryDelta,
+ SendEventRequest,
+ SendMessageRequest,
TaskMessageContent,
TaskMessageDelta,
TaskMessageUpdate,
@@ -43,7 +47,13 @@ Methods:
Types:
```python
-from agentex.types import Task, TaskRetrieveResponse, TaskListResponse, TaskRetrieveByNameResponse
+from agentex.types import (
+ Task,
+ TaskRetrieveResponse,
+ TaskListResponse,
+ TaskQueryWorkflowResponse,
+ TaskRetrieveByNameResponse,
+)
```
Methods:
@@ -51,10 +61,18 @@ Methods:
- client.tasks.retrieve(task_id, \*\*params) -> TaskRetrieveResponse
- client.tasks.list(\*\*params) -> TaskListResponse
- client.tasks.delete(task_id) -> DeleteResponse
+- client.tasks.cancel(task_id, \*\*params) -> Task
+- client.tasks.complete(task_id, \*\*params) -> Task
- client.tasks.delete_by_name(task_name) -> DeleteResponse
+- client.tasks.fail(task_id, \*\*params) -> Task
+- client.tasks.query_workflow(query_name, \*, task_id) -> TaskQueryWorkflowResponse
- client.tasks.retrieve_by_name(task_name, \*\*params) -> TaskRetrieveByNameResponse
- client.tasks.stream_events(task_id) -> object
- client.tasks.stream_events_by_name(task_name) -> object
+- client.tasks.terminate(task_id, \*\*params) -> Task
+- client.tasks.timeout(task_id, \*\*params) -> Task
+- client.tasks.update_by_id(task_id, \*\*params) -> Task
+- client.tasks.update_by_name(task_name, \*\*params) -> Task
# Messages
@@ -160,10 +178,10 @@ Methods:
Types:
```python
-from agentex.types import DeploymentHistory, DeploymentHistoryListResponse
+from agentex.types import DeploymentHistoryRetrieveResponse, DeploymentHistoryListResponse
```
Methods:
-- client.deployment_history.retrieve(deployment_id) -> DeploymentHistory
+- client.deployment_history.retrieve(deployment_id) -> DeploymentHistoryRetrieveResponse
- client.deployment_history.list(\*\*params) -> DeploymentHistoryListResponse
diff --git a/src/agentex/resources/deployment_history.py b/src/agentex/resources/deployment_history.py
index 4f3638cfa..f8a643b85 100644
--- a/src/agentex/resources/deployment_history.py
+++ b/src/agentex/resources/deployment_history.py
@@ -8,7 +8,7 @@
from ..types import deployment_history_list_params
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
+from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
from .._resource import SyncAPIResource, AsyncAPIResource
from .._response import (
@@ -18,8 +18,8 @@
async_to_streamed_response_wrapper,
)
from .._base_client import make_request_options
-from ..types.deployment_history import DeploymentHistory
from ..types.deployment_history_list_response import DeploymentHistoryListResponse
+from ..types.deployment_history_retrieve_response import DeploymentHistoryRetrieveResponse
__all__ = ["DeploymentHistoryResource", "AsyncDeploymentHistoryResource"]
@@ -54,7 +54,7 @@ def retrieve(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> DeploymentHistory:
+ ) -> DeploymentHistoryRetrieveResponse:
"""
Get a deployment record by its unique ID.
@@ -70,11 +70,11 @@ def retrieve(
if not deployment_id:
raise ValueError(f"Expected a non-empty value for `deployment_id` but received {deployment_id!r}")
return self._get(
- f"/deployment-history/{deployment_id}",
+ path_template("/deployment-history/{deployment_id}", deployment_id=deployment_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
- cast_to=DeploymentHistory,
+ cast_to=DeploymentHistoryRetrieveResponse,
)
def list(
@@ -83,6 +83,8 @@ def list(
agent_id: Optional[str] | Omit = omit,
agent_name: Optional[str] | Omit = omit,
limit: int | Omit = omit,
+ order_by: Optional[str] | Omit = omit,
+ order_direction: str | Omit = omit,
page_number: int | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
@@ -115,6 +117,8 @@ def list(
"agent_id": agent_id,
"agent_name": agent_name,
"limit": limit,
+ "order_by": order_by,
+ "order_direction": order_direction,
"page_number": page_number,
},
deployment_history_list_params.DeploymentHistoryListParams,
@@ -154,7 +158,7 @@ async def retrieve(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> DeploymentHistory:
+ ) -> DeploymentHistoryRetrieveResponse:
"""
Get a deployment record by its unique ID.
@@ -170,11 +174,11 @@ async def retrieve(
if not deployment_id:
raise ValueError(f"Expected a non-empty value for `deployment_id` but received {deployment_id!r}")
return await self._get(
- f"/deployment-history/{deployment_id}",
+ path_template("/deployment-history/{deployment_id}", deployment_id=deployment_id),
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
- cast_to=DeploymentHistory,
+ cast_to=DeploymentHistoryRetrieveResponse,
)
async def list(
@@ -183,6 +187,8 @@ async def list(
agent_id: Optional[str] | Omit = omit,
agent_name: Optional[str] | Omit = omit,
limit: int | Omit = omit,
+ order_by: Optional[str] | Omit = omit,
+ order_direction: str | Omit = omit,
page_number: int | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
@@ -215,6 +221,8 @@ async def list(
"agent_id": agent_id,
"agent_name": agent_name,
"limit": limit,
+ "order_by": order_by,
+ "order_direction": order_direction,
"page_number": page_number,
},
deployment_history_list_params.DeploymentHistoryListParams,
diff --git a/src/agentex/resources/tasks.py b/src/agentex/resources/tasks.py
index 7986924a3..d1e33f3a5 100644
--- a/src/agentex/resources/tasks.py
+++ b/src/agentex/resources/tasks.py
@@ -2,12 +2,23 @@
from __future__ import annotations
-from typing import List, Optional
+from typing import Dict, List, Optional
from typing_extensions import Literal
import httpx
-from ..types import task_list_params, task_retrieve_params, task_retrieve_by_name_params
+from ..types import (
+ task_fail_params,
+ task_list_params,
+ task_cancel_params,
+ task_timeout_params,
+ task_complete_params,
+ task_retrieve_params,
+ task_terminate_params,
+ task_update_by_id_params,
+ task_update_by_name_params,
+ task_retrieve_by_name_params,
+)
from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
from .._utils import path_template, maybe_transform, async_maybe_transform
from .._compat import cached_property
@@ -19,10 +30,12 @@
async_to_streamed_response_wrapper,
)
from .._streaming import Stream, AsyncStream
+from ..types.task import Task
from .._base_client import make_request_options
from ..types.task_list_response import TaskListResponse
from ..types.shared.delete_response import DeleteResponse
from ..types.task_retrieve_response import TaskRetrieveResponse
+from ..types.task_query_workflow_response import TaskQueryWorkflowResponse
from ..types.task_retrieve_by_name_response import TaskRetrieveByNameResponse
__all__ = ["TasksResource", "AsyncTasksResource"]
@@ -171,6 +184,76 @@ def delete(
cast_to=DeleteResponse,
)
+ def cancel(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as canceled.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return self._post(
+ path_template("/tasks/{task_id}/cancel", task_id=task_id),
+ body=maybe_transform({"reason": reason}, task_cancel_params.TaskCancelParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ def complete(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as completed.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return self._post(
+ path_template("/tasks/{task_id}/complete", task_id=task_id),
+ body=maybe_transform({"reason": reason}, task_complete_params.TaskCompleteParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
def delete_by_name(
self,
task_name: str,
@@ -204,6 +287,77 @@ def delete_by_name(
cast_to=DeleteResponse,
)
+ def fail(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as failed.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return self._post(
+ path_template("/tasks/{task_id}/fail", task_id=task_id),
+ body=maybe_transform({"reason": reason}, task_fail_params.TaskFailParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ def query_workflow(
+ self,
+ query_name: str,
+ *,
+ task_id: str,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> TaskQueryWorkflowResponse:
+ """
+ Query a Temporal workflow associated with a task for its current state.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ if not query_name:
+ raise ValueError(f"Expected a non-empty value for `query_name` but received {query_name!r}")
+ return self._get(
+ path_template("/tasks/{task_id}/query/{query_name}", task_id=task_id, query_name=query_name),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=TaskQueryWorkflowResponse,
+ )
+
def retrieve_by_name(
self,
task_name: str,
@@ -314,6 +468,146 @@ def stream_events_by_name(
stream_cls=Stream[object],
)
+ def terminate(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as terminated.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return self._post(
+ path_template("/tasks/{task_id}/terminate", task_id=task_id),
+ body=maybe_transform({"reason": reason}, task_terminate_params.TaskTerminateParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ def timeout(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as timed out.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return self._post(
+ path_template("/tasks/{task_id}/timeout", task_id=task_id),
+ body=maybe_transform({"reason": reason}, task_timeout_params.TaskTimeoutParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ def update_by_id(
+ self,
+ task_id: str,
+ *,
+ task_metadata: Optional[Dict[str, object]] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Update mutable fields for a task by its unique ID.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return self._put(
+ path_template("/tasks/{task_id}", task_id=task_id),
+ body=maybe_transform({"task_metadata": task_metadata}, task_update_by_id_params.TaskUpdateByIDParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ def update_by_name(
+ self,
+ task_name: str,
+ *,
+ task_metadata: Optional[Dict[str, object]] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Update mutable fields for a task by its unique Name.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_name:
+ raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
+ return self._put(
+ path_template("/tasks/name/{task_name}", task_name=task_name),
+ body=maybe_transform({"task_metadata": task_metadata}, task_update_by_name_params.TaskUpdateByNameParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
class AsyncTasksResource(AsyncAPIResource):
@cached_property
@@ -460,6 +754,76 @@ async def delete(
cast_to=DeleteResponse,
)
+ async def cancel(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as canceled.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return await self._post(
+ path_template("/tasks/{task_id}/cancel", task_id=task_id),
+ body=await async_maybe_transform({"reason": reason}, task_cancel_params.TaskCancelParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ async def complete(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as completed.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return await self._post(
+ path_template("/tasks/{task_id}/complete", task_id=task_id),
+ body=await async_maybe_transform({"reason": reason}, task_complete_params.TaskCompleteParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
async def delete_by_name(
self,
task_name: str,
@@ -493,6 +857,77 @@ async def delete_by_name(
cast_to=DeleteResponse,
)
+ async def fail(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as failed.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return await self._post(
+ path_template("/tasks/{task_id}/fail", task_id=task_id),
+ body=await async_maybe_transform({"reason": reason}, task_fail_params.TaskFailParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ async def query_workflow(
+ self,
+ query_name: str,
+ *,
+ task_id: str,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> TaskQueryWorkflowResponse:
+ """
+ Query a Temporal workflow associated with a task for its current state.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ if not query_name:
+ raise ValueError(f"Expected a non-empty value for `query_name` but received {query_name!r}")
+ return await self._get(
+ path_template("/tasks/{task_id}/query/{query_name}", task_id=task_id, query_name=query_name),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=TaskQueryWorkflowResponse,
+ )
+
async def retrieve_by_name(
self,
task_name: str,
@@ -603,6 +1038,150 @@ async def stream_events_by_name(
stream_cls=AsyncStream[object],
)
+ async def terminate(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as terminated.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return await self._post(
+ path_template("/tasks/{task_id}/terminate", task_id=task_id),
+ body=await async_maybe_transform({"reason": reason}, task_terminate_params.TaskTerminateParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ async def timeout(
+ self,
+ task_id: str,
+ *,
+ reason: Optional[str] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Mark a running task as timed out.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return await self._post(
+ path_template("/tasks/{task_id}/timeout", task_id=task_id),
+ body=await async_maybe_transform({"reason": reason}, task_timeout_params.TaskTimeoutParams),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ async def update_by_id(
+ self,
+ task_id: str,
+ *,
+ task_metadata: Optional[Dict[str, object]] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Update mutable fields for a task by its unique ID.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_id:
+ raise ValueError(f"Expected a non-empty value for `task_id` but received {task_id!r}")
+ return await self._put(
+ path_template("/tasks/{task_id}", task_id=task_id),
+ body=await async_maybe_transform(
+ {"task_metadata": task_metadata}, task_update_by_id_params.TaskUpdateByIDParams
+ ),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
+ async def update_by_name(
+ self,
+ task_name: str,
+ *,
+ task_metadata: Optional[Dict[str, object]] | Omit = omit,
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
+ # The extra values given here take precedence over values defined on the client or passed to this method.
+ extra_headers: Headers | None = None,
+ extra_query: Query | None = None,
+ extra_body: Body | None = None,
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
+ ) -> Task:
+ """
+ Update mutable fields for a task by its unique Name.
+
+ Args:
+ extra_headers: Send extra headers
+
+ extra_query: Add additional query parameters to the request
+
+ extra_body: Add additional JSON properties to the request
+
+ timeout: Override the client-level default timeout for this request, in seconds
+ """
+ if not task_name:
+ raise ValueError(f"Expected a non-empty value for `task_name` but received {task_name!r}")
+ return await self._put(
+ path_template("/tasks/name/{task_name}", task_name=task_name),
+ body=await async_maybe_transform(
+ {"task_metadata": task_metadata}, task_update_by_name_params.TaskUpdateByNameParams
+ ),
+ options=make_request_options(
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
+ ),
+ cast_to=Task,
+ )
+
class TasksResourceWithRawResponse:
def __init__(self, tasks: TasksResource) -> None:
@@ -617,9 +1196,21 @@ def __init__(self, tasks: TasksResource) -> None:
self.delete = to_raw_response_wrapper(
tasks.delete,
)
+ self.cancel = to_raw_response_wrapper(
+ tasks.cancel,
+ )
+ self.complete = to_raw_response_wrapper(
+ tasks.complete,
+ )
self.delete_by_name = to_raw_response_wrapper(
tasks.delete_by_name,
)
+ self.fail = to_raw_response_wrapper(
+ tasks.fail,
+ )
+ self.query_workflow = to_raw_response_wrapper(
+ tasks.query_workflow,
+ )
self.retrieve_by_name = to_raw_response_wrapper(
tasks.retrieve_by_name,
)
@@ -629,6 +1220,18 @@ def __init__(self, tasks: TasksResource) -> None:
self.stream_events_by_name = to_raw_response_wrapper(
tasks.stream_events_by_name,
)
+ self.terminate = to_raw_response_wrapper(
+ tasks.terminate,
+ )
+ self.timeout = to_raw_response_wrapper(
+ tasks.timeout,
+ )
+ self.update_by_id = to_raw_response_wrapper(
+ tasks.update_by_id,
+ )
+ self.update_by_name = to_raw_response_wrapper(
+ tasks.update_by_name,
+ )
class AsyncTasksResourceWithRawResponse:
@@ -644,9 +1247,21 @@ def __init__(self, tasks: AsyncTasksResource) -> None:
self.delete = async_to_raw_response_wrapper(
tasks.delete,
)
+ self.cancel = async_to_raw_response_wrapper(
+ tasks.cancel,
+ )
+ self.complete = async_to_raw_response_wrapper(
+ tasks.complete,
+ )
self.delete_by_name = async_to_raw_response_wrapper(
tasks.delete_by_name,
)
+ self.fail = async_to_raw_response_wrapper(
+ tasks.fail,
+ )
+ self.query_workflow = async_to_raw_response_wrapper(
+ tasks.query_workflow,
+ )
self.retrieve_by_name = async_to_raw_response_wrapper(
tasks.retrieve_by_name,
)
@@ -656,6 +1271,18 @@ def __init__(self, tasks: AsyncTasksResource) -> None:
self.stream_events_by_name = async_to_raw_response_wrapper(
tasks.stream_events_by_name,
)
+ self.terminate = async_to_raw_response_wrapper(
+ tasks.terminate,
+ )
+ self.timeout = async_to_raw_response_wrapper(
+ tasks.timeout,
+ )
+ self.update_by_id = async_to_raw_response_wrapper(
+ tasks.update_by_id,
+ )
+ self.update_by_name = async_to_raw_response_wrapper(
+ tasks.update_by_name,
+ )
class TasksResourceWithStreamingResponse:
@@ -671,9 +1298,21 @@ def __init__(self, tasks: TasksResource) -> None:
self.delete = to_streamed_response_wrapper(
tasks.delete,
)
+ self.cancel = to_streamed_response_wrapper(
+ tasks.cancel,
+ )
+ self.complete = to_streamed_response_wrapper(
+ tasks.complete,
+ )
self.delete_by_name = to_streamed_response_wrapper(
tasks.delete_by_name,
)
+ self.fail = to_streamed_response_wrapper(
+ tasks.fail,
+ )
+ self.query_workflow = to_streamed_response_wrapper(
+ tasks.query_workflow,
+ )
self.retrieve_by_name = to_streamed_response_wrapper(
tasks.retrieve_by_name,
)
@@ -683,6 +1322,18 @@ def __init__(self, tasks: TasksResource) -> None:
self.stream_events_by_name = to_streamed_response_wrapper(
tasks.stream_events_by_name,
)
+ self.terminate = to_streamed_response_wrapper(
+ tasks.terminate,
+ )
+ self.timeout = to_streamed_response_wrapper(
+ tasks.timeout,
+ )
+ self.update_by_id = to_streamed_response_wrapper(
+ tasks.update_by_id,
+ )
+ self.update_by_name = to_streamed_response_wrapper(
+ tasks.update_by_name,
+ )
class AsyncTasksResourceWithStreamingResponse:
@@ -698,9 +1349,21 @@ def __init__(self, tasks: AsyncTasksResource) -> None:
self.delete = async_to_streamed_response_wrapper(
tasks.delete,
)
+ self.cancel = async_to_streamed_response_wrapper(
+ tasks.cancel,
+ )
+ self.complete = async_to_streamed_response_wrapper(
+ tasks.complete,
+ )
self.delete_by_name = async_to_streamed_response_wrapper(
tasks.delete_by_name,
)
+ self.fail = async_to_streamed_response_wrapper(
+ tasks.fail,
+ )
+ self.query_workflow = async_to_streamed_response_wrapper(
+ tasks.query_workflow,
+ )
self.retrieve_by_name = async_to_streamed_response_wrapper(
tasks.retrieve_by_name,
)
@@ -710,3 +1373,15 @@ def __init__(self, tasks: AsyncTasksResource) -> None:
self.stream_events_by_name = async_to_streamed_response_wrapper(
tasks.stream_events_by_name,
)
+ self.terminate = async_to_streamed_response_wrapper(
+ tasks.terminate,
+ )
+ self.timeout = async_to_streamed_response_wrapper(
+ tasks.timeout,
+ )
+ self.update_by_id = async_to_streamed_response_wrapper(
+ tasks.update_by_id,
+ )
+ self.update_by_name = async_to_streamed_response_wrapper(
+ tasks.update_by_name,
+ )
diff --git a/src/agentex/types/__init__.py b/src/agentex/types/__init__.py
index 140acd92f..7604bc366 100644
--- a/src/agentex/types/__init__.py
+++ b/src/agentex/types/__init__.py
@@ -20,6 +20,7 @@
from .agent_rpc_params import AgentRpcParams as AgentRpcParams
from .agent_rpc_result import AgentRpcResult as AgentRpcResult
from .span_list_params import SpanListParams as SpanListParams
+from .task_fail_params import TaskFailParams as TaskFailParams
from .task_list_params import TaskListParams as TaskListParams
from .agent_list_params import AgentListParams as AgentListParams
from .event_list_params import EventListParams as EventListParams
@@ -28,10 +29,10 @@
from .agent_rpc_response import AgentRpcResponse as AgentRpcResponse
from .agent_task_tracker import AgentTaskTracker as AgentTaskTracker
from .data_content_param import DataContentParam as DataContentParam
-from .deployment_history import DeploymentHistory as DeploymentHistory
from .span_create_params import SpanCreateParams as SpanCreateParams
from .span_list_response import SpanListResponse as SpanListResponse
from .span_update_params import SpanUpdateParams as SpanUpdateParams
+from .task_cancel_params import TaskCancelParams as TaskCancelParams
from .task_list_response import TaskListResponse as TaskListResponse
from .task_message_delta import TaskMessageDelta as TaskMessageDelta
from .text_content_param import TextContentParam as TextContentParam
@@ -43,14 +44,17 @@
from .state_list_response import StateListResponse as StateListResponse
from .state_update_params import StateUpdateParams as StateUpdateParams
from .task_message_update import TaskMessageUpdate as TaskMessageUpdate
+from .task_timeout_params import TaskTimeoutParams as TaskTimeoutParams
from .tool_response_delta import ToolResponseDelta as ToolResponseDelta
from .tracker_list_params import TrackerListParams as TrackerListParams
+from .task_complete_params import TaskCompleteParams as TaskCompleteParams
from .task_message_content import TaskMessageContent as TaskMessageContent
from .task_retrieve_params import TaskRetrieveParams as TaskRetrieveParams
from .tool_request_content import ToolRequestContent as ToolRequestContent
from .message_create_params import MessageCreateParams as MessageCreateParams
from .message_list_response import MessageListResponse as MessageListResponse
from .message_update_params import MessageUpdateParams as MessageUpdateParams
+from .task_terminate_params import TaskTerminateParams as TaskTerminateParams
from .tool_response_content import ToolResponseContent as ToolResponseContent
from .tracker_list_response import TrackerListResponse as TrackerListResponse
from .tracker_update_params import TrackerUpdateParams as TrackerUpdateParams
@@ -59,12 +63,20 @@
from .reasoning_content_param import ReasoningContentParam as ReasoningContentParam
from .reasoning_summary_delta import ReasoningSummaryDelta as ReasoningSummaryDelta
from .agent_rpc_by_name_params import AgentRpcByNameParams as AgentRpcByNameParams
+from .send_event_request_param import SendEventRequestParam as SendEventRequestParam
+from .task_update_by_id_params import TaskUpdateByIDParams as TaskUpdateByIDParams
+from .cancel_task_request_param import CancelTaskRequestParam as CancelTaskRequestParam
+from .create_task_request_param import CreateTaskRequestParam as CreateTaskRequestParam
+from .send_message_request_param import SendMessageRequestParam as SendMessageRequestParam
from .task_message_content_param import TaskMessageContentParam as TaskMessageContentParam
+from .task_update_by_name_params import TaskUpdateByNameParams as TaskUpdateByNameParams
from .tool_request_content_param import ToolRequestContentParam as ToolRequestContentParam
from .tool_response_content_param import ToolResponseContentParam as ToolResponseContentParam
+from .task_query_workflow_response import TaskQueryWorkflowResponse as TaskQueryWorkflowResponse
from .task_retrieve_by_name_params import TaskRetrieveByNameParams as TaskRetrieveByNameParams
from .message_list_paginated_params import MessageListPaginatedParams as MessageListPaginatedParams
from .deployment_history_list_params import DeploymentHistoryListParams as DeploymentHistoryListParams
from .task_retrieve_by_name_response import TaskRetrieveByNameResponse as TaskRetrieveByNameResponse
from .message_list_paginated_response import MessageListPaginatedResponse as MessageListPaginatedResponse
from .deployment_history_list_response import DeploymentHistoryListResponse as DeploymentHistoryListResponse
+from .deployment_history_retrieve_response import DeploymentHistoryRetrieveResponse as DeploymentHistoryRetrieveResponse
diff --git a/src/agentex/types/agent_rpc_by_name_params.py b/src/agentex/types/agent_rpc_by_name_params.py
index ec0f638ea..352bfa597 100644
--- a/src/agentex/types/agent_rpc_by_name_params.py
+++ b/src/agentex/types/agent_rpc_by_name_params.py
@@ -2,19 +2,15 @@
from __future__ import annotations
-from typing import Dict, Union, Optional
+from typing import Union
from typing_extensions import Literal, Required, TypeAlias, TypedDict
-from .task_message_content_param import TaskMessageContentParam
+from .send_event_request_param import SendEventRequestParam
+from .cancel_task_request_param import CancelTaskRequestParam
+from .create_task_request_param import CreateTaskRequestParam
+from .send_message_request_param import SendMessageRequestParam
-__all__ = [
- "AgentRpcByNameParams",
- "Params",
- "ParamsCreateTaskRequest",
- "ParamsCancelTaskRequest",
- "ParamsSendMessageRequest",
- "ParamsSendEventRequest",
-]
+__all__ = ["AgentRpcByNameParams", "Params"]
class AgentRpcByNameParams(TypedDict, total=False):
@@ -28,50 +24,6 @@ class AgentRpcByNameParams(TypedDict, total=False):
jsonrpc: Literal["2.0"]
-class ParamsCreateTaskRequest(TypedDict, total=False):
- name: Optional[str]
- """The name of the task to create"""
-
- params: Optional[Dict[str, object]]
- """The parameters for the task"""
-
-
-class ParamsCancelTaskRequest(TypedDict, total=False):
- task_id: Optional[str]
- """The ID of the task to cancel. Either this or task_name must be provided."""
-
- task_name: Optional[str]
- """The name of the task to cancel. Either this or task_id must be provided."""
-
-
-class ParamsSendMessageRequest(TypedDict, total=False):
- content: Required[TaskMessageContentParam]
- """The message that was sent to the agent"""
-
- stream: bool
- """Whether to stream the response message back to the client"""
-
- task_id: Optional[str]
- """The ID of the task that the message was sent to"""
-
- task_name: Optional[str]
- """The name of the task that the message was sent to"""
-
- task_params: Optional[Dict[str, object]]
- """The parameters for the task (only used when creating new tasks)"""
-
-
-class ParamsSendEventRequest(TypedDict, total=False):
- content: Optional[TaskMessageContentParam]
- """The content to send to the event"""
-
- task_id: Optional[str]
- """The ID of the task that the event was sent to"""
-
- task_name: Optional[str]
- """The name of the task that the event was sent to"""
-
-
Params: TypeAlias = Union[
- ParamsCreateTaskRequest, ParamsCancelTaskRequest, ParamsSendMessageRequest, ParamsSendEventRequest
+ CreateTaskRequestParam, CancelTaskRequestParam, SendMessageRequestParam, SendEventRequestParam
]
diff --git a/src/agentex/types/agent_rpc_params.py b/src/agentex/types/agent_rpc_params.py
index fa101e796..52944ec0b 100644
--- a/src/agentex/types/agent_rpc_params.py
+++ b/src/agentex/types/agent_rpc_params.py
@@ -2,19 +2,15 @@
from __future__ import annotations
-from typing import Dict, Union, Optional
+from typing import Union
from typing_extensions import Literal, Required, TypeAlias, TypedDict
-from .task_message_content_param import TaskMessageContentParam
+from .send_event_request_param import SendEventRequestParam
+from .cancel_task_request_param import CancelTaskRequestParam
+from .create_task_request_param import CreateTaskRequestParam
+from .send_message_request_param import SendMessageRequestParam
-__all__ = [
- "AgentRpcParams",
- "Params",
- "ParamsCreateTaskRequest",
- "ParamsCancelTaskRequest",
- "ParamsSendMessageRequest",
- "ParamsSendEventRequest",
-]
+__all__ = ["AgentRpcParams", "Params"]
class AgentRpcParams(TypedDict, total=False):
@@ -28,50 +24,6 @@ class AgentRpcParams(TypedDict, total=False):
jsonrpc: Literal["2.0"]
-class ParamsCreateTaskRequest(TypedDict, total=False):
- name: Optional[str]
- """The name of the task to create"""
-
- params: Optional[Dict[str, object]]
- """The parameters for the task"""
-
-
-class ParamsCancelTaskRequest(TypedDict, total=False):
- task_id: Optional[str]
- """The ID of the task to cancel. Either this or task_name must be provided."""
-
- task_name: Optional[str]
- """The name of the task to cancel. Either this or task_id must be provided."""
-
-
-class ParamsSendMessageRequest(TypedDict, total=False):
- content: Required[TaskMessageContentParam]
- """The message that was sent to the agent"""
-
- stream: bool
- """Whether to stream the response message back to the client"""
-
- task_id: Optional[str]
- """The ID of the task that the message was sent to"""
-
- task_name: Optional[str]
- """The name of the task that the message was sent to"""
-
- task_params: Optional[Dict[str, object]]
- """The parameters for the task (only used when creating new tasks)"""
-
-
-class ParamsSendEventRequest(TypedDict, total=False):
- content: Optional[TaskMessageContentParam]
- """The content to send to the event"""
-
- task_id: Optional[str]
- """The ID of the task that the event was sent to"""
-
- task_name: Optional[str]
- """The name of the task that the event was sent to"""
-
-
Params: TypeAlias = Union[
- ParamsCreateTaskRequest, ParamsCancelTaskRequest, ParamsSendMessageRequest, ParamsSendEventRequest
+ CreateTaskRequestParam, CancelTaskRequestParam, SendMessageRequestParam, SendEventRequestParam
]
diff --git a/src/agentex/types/cancel_task_request_param.py b/src/agentex/types/cancel_task_request_param.py
new file mode 100644
index 000000000..727800599
--- /dev/null
+++ b/src/agentex/types/cancel_task_request_param.py
@@ -0,0 +1,16 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+__all__ = ["CancelTaskRequestParam"]
+
+
+class CancelTaskRequestParam(TypedDict, total=False):
+ task_id: Optional[str]
+ """The ID of the task to cancel. Either this or task_name must be provided."""
+
+ task_name: Optional[str]
+ """The name of the task to cancel. Either this or task_id must be provided."""
diff --git a/src/agentex/types/create_task_request_param.py b/src/agentex/types/create_task_request_param.py
new file mode 100644
index 000000000..9f6bc5f20
--- /dev/null
+++ b/src/agentex/types/create_task_request_param.py
@@ -0,0 +1,16 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Dict, Optional
+from typing_extensions import TypedDict
+
+__all__ = ["CreateTaskRequestParam"]
+
+
+class CreateTaskRequestParam(TypedDict, total=False):
+ name: Optional[str]
+ """The name of the task to create"""
+
+ params: Optional[Dict[str, object]]
+ """The parameters for the task"""
diff --git a/src/agentex/types/deployment_history_list_params.py b/src/agentex/types/deployment_history_list_params.py
index b26b2462d..d77ed5d17 100644
--- a/src/agentex/types/deployment_history_list_params.py
+++ b/src/agentex/types/deployment_history_list_params.py
@@ -15,4 +15,8 @@ class DeploymentHistoryListParams(TypedDict, total=False):
limit: int
+ order_by: Optional[str]
+
+ order_direction: str
+
page_number: int
diff --git a/src/agentex/types/deployment_history_list_response.py b/src/agentex/types/deployment_history_list_response.py
index c71a8f037..4511593b4 100644
--- a/src/agentex/types/deployment_history_list_response.py
+++ b/src/agentex/types/deployment_history_list_response.py
@@ -1,10 +1,40 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
from typing import List
+from datetime import datetime
from typing_extensions import TypeAlias
-from .deployment_history import DeploymentHistory
+from .._models import BaseModel
-__all__ = ["DeploymentHistoryListResponse"]
+__all__ = ["DeploymentHistoryListResponse", "DeploymentHistoryListResponseItem"]
-DeploymentHistoryListResponse: TypeAlias = List[DeploymentHistory]
+
+class DeploymentHistoryListResponseItem(BaseModel):
+ """API schema for deployment history."""
+
+ id: str
+ """The unique identifier of the deployment record"""
+
+ agent_id: str
+ """The ID of the agent this deployment belongs to"""
+
+ author_email: str
+ """Email of the commit author"""
+
+ author_name: str
+ """Name of the commit author"""
+
+ branch_name: str
+ """Name of the branch"""
+
+ build_timestamp: datetime
+ """When the build was created"""
+
+ commit_hash: str
+ """Git commit hash for this deployment"""
+
+ deployment_timestamp: datetime
+ """When this deployment was first seen in the system"""
+
+
+DeploymentHistoryListResponse: TypeAlias = List[DeploymentHistoryListResponseItem]
diff --git a/src/agentex/types/deployment_history_retrieve_response.py b/src/agentex/types/deployment_history_retrieve_response.py
new file mode 100644
index 000000000..a4539565f
--- /dev/null
+++ b/src/agentex/types/deployment_history_retrieve_response.py
@@ -0,0 +1,35 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from datetime import datetime
+
+from .._models import BaseModel
+
+__all__ = ["DeploymentHistoryRetrieveResponse"]
+
+
+class DeploymentHistoryRetrieveResponse(BaseModel):
+ """API schema for deployment history."""
+
+ id: str
+ """The unique identifier of the deployment record"""
+
+ agent_id: str
+ """The ID of the agent this deployment belongs to"""
+
+ author_email: str
+ """Email of the commit author"""
+
+ author_name: str
+ """Name of the commit author"""
+
+ branch_name: str
+ """Name of the branch"""
+
+ build_timestamp: datetime
+ """When the build was created"""
+
+ commit_hash: str
+ """Git commit hash for this deployment"""
+
+ deployment_timestamp: datetime
+ """When this deployment was first seen in the system"""
diff --git a/src/agentex/types/send_event_request_param.py b/src/agentex/types/send_event_request_param.py
new file mode 100644
index 000000000..49f00eac2
--- /dev/null
+++ b/src/agentex/types/send_event_request_param.py
@@ -0,0 +1,21 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+from .task_message_content_param import TaskMessageContentParam
+
+__all__ = ["SendEventRequestParam"]
+
+
+class SendEventRequestParam(TypedDict, total=False):
+ content: Optional[TaskMessageContentParam]
+ """The content to send to the event"""
+
+ task_id: Optional[str]
+ """The ID of the task that the event was sent to"""
+
+ task_name: Optional[str]
+ """The name of the task that the event was sent to"""
diff --git a/src/agentex/types/send_message_request_param.py b/src/agentex/types/send_message_request_param.py
new file mode 100644
index 000000000..0f02912ef
--- /dev/null
+++ b/src/agentex/types/send_message_request_param.py
@@ -0,0 +1,27 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Dict, Optional
+from typing_extensions import Required, TypedDict
+
+from .task_message_content_param import TaskMessageContentParam
+
+__all__ = ["SendMessageRequestParam"]
+
+
+class SendMessageRequestParam(TypedDict, total=False):
+ content: Required[TaskMessageContentParam]
+ """The message that was sent to the agent"""
+
+ stream: bool
+ """Whether to stream the response message back to the client"""
+
+ task_id: Optional[str]
+ """The ID of the task that the message was sent to"""
+
+ task_name: Optional[str]
+ """The name of the task that the message was sent to"""
+
+ task_params: Optional[Dict[str, object]]
+ """The parameters for the task (only used when creating new tasks)"""
diff --git a/src/agentex/types/task_cancel_params.py b/src/agentex/types/task_cancel_params.py
new file mode 100644
index 000000000..c76e97aa9
--- /dev/null
+++ b/src/agentex/types/task_cancel_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskCancelParams"]
+
+
+class TaskCancelParams(TypedDict, total=False):
+ reason: Optional[str]
diff --git a/src/agentex/types/task_complete_params.py b/src/agentex/types/task_complete_params.py
new file mode 100644
index 000000000..7e523041a
--- /dev/null
+++ b/src/agentex/types/task_complete_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskCompleteParams"]
+
+
+class TaskCompleteParams(TypedDict, total=False):
+ reason: Optional[str]
diff --git a/src/agentex/types/task_fail_params.py b/src/agentex/types/task_fail_params.py
new file mode 100644
index 000000000..ba32ad5fd
--- /dev/null
+++ b/src/agentex/types/task_fail_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskFailParams"]
+
+
+class TaskFailParams(TypedDict, total=False):
+ reason: Optional[str]
diff --git a/src/agentex/types/task_query_workflow_response.py b/src/agentex/types/task_query_workflow_response.py
new file mode 100644
index 000000000..3f8ae2c69
--- /dev/null
+++ b/src/agentex/types/task_query_workflow_response.py
@@ -0,0 +1,8 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from typing import Dict
+from typing_extensions import TypeAlias
+
+__all__ = ["TaskQueryWorkflowResponse"]
+
+TaskQueryWorkflowResponse: TypeAlias = Dict[str, object]
diff --git a/src/agentex/types/task_terminate_params.py b/src/agentex/types/task_terminate_params.py
new file mode 100644
index 000000000..869e3d45c
--- /dev/null
+++ b/src/agentex/types/task_terminate_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskTerminateParams"]
+
+
+class TaskTerminateParams(TypedDict, total=False):
+ reason: Optional[str]
diff --git a/src/agentex/types/task_timeout_params.py b/src/agentex/types/task_timeout_params.py
new file mode 100644
index 000000000..03d5fa75c
--- /dev/null
+++ b/src/agentex/types/task_timeout_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskTimeoutParams"]
+
+
+class TaskTimeoutParams(TypedDict, total=False):
+ reason: Optional[str]
diff --git a/src/agentex/types/task_update_by_id_params.py b/src/agentex/types/task_update_by_id_params.py
new file mode 100644
index 000000000..8b0f04f11
--- /dev/null
+++ b/src/agentex/types/task_update_by_id_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Dict, Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskUpdateByIDParams"]
+
+
+class TaskUpdateByIDParams(TypedDict, total=False):
+ task_metadata: Optional[Dict[str, object]]
diff --git a/src/agentex/types/task_update_by_name_params.py b/src/agentex/types/task_update_by_name_params.py
new file mode 100644
index 000000000..07d48df9b
--- /dev/null
+++ b/src/agentex/types/task_update_by_name_params.py
@@ -0,0 +1,12 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from __future__ import annotations
+
+from typing import Dict, Optional
+from typing_extensions import TypedDict
+
+__all__ = ["TaskUpdateByNameParams"]
+
+
+class TaskUpdateByNameParams(TypedDict, total=False):
+ task_metadata: Optional[Dict[str, object]]
diff --git a/tests/api_resources/test_deployment_history.py b/tests/api_resources/test_deployment_history.py
index 89012bf9f..49ce089f1 100644
--- a/tests/api_resources/test_deployment_history.py
+++ b/tests/api_resources/test_deployment_history.py
@@ -8,9 +8,11 @@
import pytest
from agentex import Agentex, AsyncAgentex
-from agentex.types import DeploymentHistory, DeploymentHistoryListResponse
-
-from ..utils import assert_matches_type
+from tests.utils import assert_matches_type
+from agentex.types import (
+ DeploymentHistoryListResponse,
+ DeploymentHistoryRetrieveResponse,
+)
base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
@@ -18,15 +20,15 @@
class TestDeploymentHistory:
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve(self, client: Agentex) -> None:
deployment_history = client.deployment_history.retrieve(
"deployment_id",
)
- assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_retrieve(self, client: Agentex) -> None:
response = client.deployment_history.with_raw_response.retrieve(
@@ -36,9 +38,9 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = response.parse()
- assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_retrieve(self, client: Agentex) -> None:
with client.deployment_history.with_streaming_response.retrieve(
@@ -48,11 +50,11 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = response.parse()
- assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_path_params_retrieve(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `deployment_id` but received ''"):
@@ -60,24 +62,26 @@ def test_path_params_retrieve(self, client: Agentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list(self, client: Agentex) -> None:
deployment_history = client.deployment_history.list()
assert_matches_type(DeploymentHistoryListResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_list_with_all_params(self, client: Agentex) -> None:
deployment_history = client.deployment_history.list(
agent_id="agent_id",
agent_name="agent_name",
limit=0,
+ order_by="order_by",
+ order_direction="order_direction",
page_number=0,
)
assert_matches_type(DeploymentHistoryListResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_raw_response_list(self, client: Agentex) -> None:
response = client.deployment_history.with_raw_response.list()
@@ -87,7 +91,7 @@ def test_raw_response_list(self, client: Agentex) -> None:
deployment_history = response.parse()
assert_matches_type(DeploymentHistoryListResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_streaming_response_list(self, client: Agentex) -> None:
with client.deployment_history.with_streaming_response.list() as response:
@@ -105,15 +109,15 @@ class TestAsyncDeploymentHistory:
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
deployment_history = await async_client.deployment_history.retrieve(
"deployment_id",
)
- assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
response = await async_client.deployment_history.with_raw_response.retrieve(
@@ -123,9 +127,9 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = await response.parse()
- assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
async with async_client.deployment_history.with_streaming_response.retrieve(
@@ -135,11 +139,11 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = await response.parse()
- assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
assert cast(Any, response.is_closed) is True
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `deployment_id` but received ''"):
@@ -147,24 +151,26 @@ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
"",
)
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list(self, async_client: AsyncAgentex) -> None:
deployment_history = await async_client.deployment_history.list()
assert_matches_type(DeploymentHistoryListResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
deployment_history = await async_client.deployment_history.list(
agent_id="agent_id",
agent_name="agent_name",
limit=0,
+ order_by="order_by",
+ order_direction="order_direction",
page_number=0,
)
assert_matches_type(DeploymentHistoryListResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
response = await async_client.deployment_history.with_raw_response.list()
@@ -174,7 +180,7 @@ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
deployment_history = await response.parse()
assert_matches_type(DeploymentHistoryListResponse, deployment_history, path=["response"])
- @pytest.mark.skip(reason="Prism tests are disabled")
+ @pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
async with async_client.deployment_history.with_streaming_response.list() as response:
diff --git a/tests/api_resources/test_tasks.py b/tests/api_resources/test_tasks.py
index 294116ad5..0f1dd591d 100644
--- a/tests/api_resources/test_tasks.py
+++ b/tests/api_resources/test_tasks.py
@@ -9,8 +9,10 @@
from agentex import Agentex, AsyncAgentex
from agentex.types import (
+ Task,
TaskListResponse,
TaskRetrieveResponse,
+ TaskQueryWorkflowResponse,
TaskRetrieveByNameResponse,
)
from agentex.types.shared import DeleteResponse
@@ -158,6 +160,108 @@ def test_path_params_delete(self, client: Agentex) -> None:
"",
)
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_cancel(self, client: Agentex) -> None:
+ task = client.tasks.cancel(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_cancel_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.cancel(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_raw_response_cancel(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.cancel(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_streaming_response_cancel(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.cancel(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_path_params_cancel(self, client: Agentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ client.tasks.with_raw_response.cancel(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_complete(self, client: Agentex) -> None:
+ task = client.tasks.complete(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_complete_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.complete(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_raw_response_complete(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.complete(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_streaming_response_complete(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.complete(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_path_params_complete(self, client: Agentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ client.tasks.with_raw_response.complete(
+ task_id="",
+ )
+
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_delete_by_name(self, client: Agentex) -> None:
@@ -200,6 +304,109 @@ def test_path_params_delete_by_name(self, client: Agentex) -> None:
"",
)
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_fail(self, client: Agentex) -> None:
+ task = client.tasks.fail(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_fail_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.fail(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_raw_response_fail(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.fail(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_streaming_response_fail(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.fail(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_path_params_fail(self, client: Agentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ client.tasks.with_raw_response.fail(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_query_workflow(self, client: Agentex) -> None:
+ task = client.tasks.query_workflow(
+ query_name="query_name",
+ task_id="task_id",
+ )
+ assert_matches_type(TaskQueryWorkflowResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_raw_response_query_workflow(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.query_workflow(
+ query_name="query_name",
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = response.parse()
+ assert_matches_type(TaskQueryWorkflowResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_streaming_response_query_workflow(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.query_workflow(
+ query_name="query_name",
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = response.parse()
+ assert_matches_type(TaskQueryWorkflowResponse, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_path_params_query_workflow(self, client: Agentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ client.tasks.with_raw_response.query_workflow(
+ query_name="query_name",
+ task_id="",
+ )
+
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `query_name` but received ''"):
+ client.tasks.with_raw_response.query_workflow(
+ query_name="",
+ task_id="task_id",
+ )
+
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
def test_method_retrieve_by_name(self, client: Agentex) -> None:
@@ -333,189 +540,598 @@ def test_path_params_stream_events_by_name(self, client: Agentex) -> None:
"",
)
-
-class TestAsyncTasks:
- parametrize = pytest.mark.parametrize(
- "async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
- )
-
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
- task = await async_client.tasks.retrieve(
+ def test_method_terminate(self, client: Agentex) -> None:
+ task = client.tasks.terminate(
task_id="task_id",
)
- assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_method_retrieve_with_all_params(self, async_client: AsyncAgentex) -> None:
- task = await async_client.tasks.retrieve(
+ def test_method_terminate_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.terminate(
task_id="task_id",
- relationships=["agents"],
+ reason="reason",
)
- assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
- response = await async_client.tasks.with_raw_response.retrieve(
+ def test_raw_response_terminate(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.terminate(
task_id="task_id",
)
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
- async with async_client.tasks.with_streaming_response.retrieve(
+ def test_streaming_response_terminate(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.terminate(
task_id="task_id",
) as response:
assert not response.is_closed
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
assert cast(Any, response.is_closed) is True
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
+ def test_path_params_terminate(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
- await async_client.tasks.with_raw_response.retrieve(
+ client.tasks.with_raw_response.terminate(
task_id="",
)
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_method_list(self, async_client: AsyncAgentex) -> None:
- task = await async_client.tasks.list()
- assert_matches_type(TaskListResponse, task, path=["response"])
+ def test_method_timeout(self, client: Agentex) -> None:
+ task = client.tasks.timeout(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
- task = await async_client.tasks.list(
- agent_id="agent_id",
- agent_name="agent_name",
- limit=0,
- order_by="order_by",
- order_direction="order_direction",
- page_number=0,
- relationships=["agents"],
+ def test_method_timeout_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.timeout(
+ task_id="task_id",
+ reason="reason",
)
- assert_matches_type(TaskListResponse, task, path=["response"])
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
- response = await async_client.tasks.with_raw_response.list()
+ def test_raw_response_timeout(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.timeout(
+ task_id="task_id",
+ )
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(TaskListResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
- async with async_client.tasks.with_streaming_response.list() as response:
+ def test_streaming_response_timeout(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.timeout(
+ task_id="task_id",
+ ) as response:
assert not response.is_closed
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(TaskListResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
assert cast(Any, response.is_closed) is True
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_method_delete(self, async_client: AsyncAgentex) -> None:
- task = await async_client.tasks.delete(
- "task_id",
+ def test_path_params_timeout(self, client: Agentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ client.tasks.with_raw_response.timeout(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_method_update_by_id(self, client: Agentex) -> None:
+ task = client.tasks.update_by_id(
+ task_id="task_id",
)
- assert_matches_type(DeleteResponse, task, path=["response"])
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
- response = await async_client.tasks.with_raw_response.delete(
- "task_id",
+ def test_method_update_by_id_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.update_by_id(
+ task_id="task_id",
+ task_metadata={"foo": "bar"},
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_raw_response_update_by_id(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.update_by_id(
+ task_id="task_id",
)
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(DeleteResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> None:
- async with async_client.tasks.with_streaming_response.delete(
- "task_id",
+ def test_streaming_response_update_by_id(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.update_by_id(
+ task_id="task_id",
) as response:
assert not response.is_closed
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(DeleteResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
assert cast(Any, response.is_closed) is True
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
+ def test_path_params_update_by_id(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
- await async_client.tasks.with_raw_response.delete(
- "",
+ client.tasks.with_raw_response.update_by_id(
+ task_id="",
)
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_method_delete_by_name(self, async_client: AsyncAgentex) -> None:
- task = await async_client.tasks.delete_by_name(
- "task_name",
+ def test_method_update_by_name(self, client: Agentex) -> None:
+ task = client.tasks.update_by_name(
+ task_name="task_name",
)
- assert_matches_type(DeleteResponse, task, path=["response"])
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_raw_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
- response = await async_client.tasks.with_raw_response.delete_by_name(
- "task_name",
+ def test_method_update_by_name_with_all_params(self, client: Agentex) -> None:
+ task = client.tasks.update_by_name(
+ task_name="task_name",
+ task_metadata={"foo": "bar"},
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ def test_raw_response_update_by_name(self, client: Agentex) -> None:
+ response = client.tasks.with_raw_response.update_by_name(
+ task_name="task_name",
)
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(DeleteResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_streaming_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
- async with async_client.tasks.with_streaming_response.delete_by_name(
- "task_name",
+ def test_streaming_response_update_by_name(self, client: Agentex) -> None:
+ with client.tasks.with_streaming_response.update_by_name(
+ task_name="task_name",
) as response:
assert not response.is_closed
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- task = await response.parse()
- assert_matches_type(DeleteResponse, task, path=["response"])
+ task = response.parse()
+ assert_matches_type(Task, task, path=["response"])
assert cast(Any, response.is_closed) is True
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
- async def test_path_params_delete_by_name(self, async_client: AsyncAgentex) -> None:
+ def test_path_params_update_by_name(self, client: Agentex) -> None:
with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
- await async_client.tasks.with_raw_response.delete_by_name(
+ client.tasks.with_raw_response.update_by_name(
+ task_name="",
+ )
+
+
+class TestAsyncTasks:
+ parametrize = pytest.mark.parametrize(
+ "async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.retrieve(
+ task_id="task_id",
+ )
+ assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_retrieve_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.retrieve(
+ task_id="task_id",
+ relationships=["agents"],
+ )
+ assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.retrieve(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.retrieve(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(TaskRetrieveResponse, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_retrieve(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.retrieve(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_list(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.list()
+ assert_matches_type(TaskListResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_list_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.list(
+ agent_id="agent_id",
+ agent_name="agent_name",
+ limit=0,
+ order_by="order_by",
+ order_direction="order_direction",
+ page_number=0,
+ relationships=["agents"],
+ )
+ assert_matches_type(TaskListResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_list(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.list()
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(TaskListResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_list(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.list() as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(TaskListResponse, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_delete(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.delete(
+ "task_id",
+ )
+ assert_matches_type(DeleteResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_delete(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.delete(
+ "task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(DeleteResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_delete(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.delete(
+ "task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(DeleteResponse, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_delete(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.delete(
+ "",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_cancel(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.cancel(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_cancel_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.cancel(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_cancel(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.cancel(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_cancel(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.cancel(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_cancel(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.cancel(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_complete(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.complete(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_complete_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.complete(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_complete(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.complete(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_complete(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.complete(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_complete(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.complete(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_delete_by_name(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.delete_by_name(
+ "task_name",
+ )
+ assert_matches_type(DeleteResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.delete_by_name(
+ "task_name",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(DeleteResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_delete_by_name(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.delete_by_name(
+ "task_name",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(DeleteResponse, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_delete_by_name(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
+ await async_client.tasks.with_raw_response.delete_by_name(
"",
)
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_fail(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.fail(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_fail_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.fail(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_fail(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.fail(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_fail(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.fail(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_fail(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.fail(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_query_workflow(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.query_workflow(
+ query_name="query_name",
+ task_id="task_id",
+ )
+ assert_matches_type(TaskQueryWorkflowResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_query_workflow(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.query_workflow(
+ query_name="query_name",
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(TaskQueryWorkflowResponse, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_query_workflow(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.query_workflow(
+ query_name="query_name",
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(TaskQueryWorkflowResponse, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_query_workflow(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.query_workflow(
+ query_name="query_name",
+ task_id="",
+ )
+
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `query_name` but received ''"):
+ await async_client.tasks.with_raw_response.query_workflow(
+ query_name="",
+ task_id="task_id",
+ )
+
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
async def test_method_retrieve_by_name(self, async_client: AsyncAgentex) -> None:
@@ -648,3 +1264,207 @@ async def test_path_params_stream_events_by_name(self, async_client: AsyncAgente
await async_client.tasks.with_raw_response.stream_events_by_name(
"",
)
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_terminate(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.terminate(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_terminate_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.terminate(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_terminate(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.terminate(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_terminate(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.terminate(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_terminate(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.terminate(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_timeout(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.timeout(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_timeout_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.timeout(
+ task_id="task_id",
+ reason="reason",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_timeout(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.timeout(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_timeout(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.timeout(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_timeout(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.timeout(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_update_by_id(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.update_by_id(
+ task_id="task_id",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_update_by_id_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.update_by_id(
+ task_id="task_id",
+ task_metadata={"foo": "bar"},
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_update_by_id(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.update_by_id(
+ task_id="task_id",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_update_by_id(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.update_by_id(
+ task_id="task_id",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_update_by_id(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_id` but received ''"):
+ await async_client.tasks.with_raw_response.update_by_id(
+ task_id="",
+ )
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_update_by_name(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.update_by_name(
+ task_name="task_name",
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_method_update_by_name_with_all_params(self, async_client: AsyncAgentex) -> None:
+ task = await async_client.tasks.update_by_name(
+ task_name="task_name",
+ task_metadata={"foo": "bar"},
+ )
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_raw_response_update_by_name(self, async_client: AsyncAgentex) -> None:
+ response = await async_client.tasks.with_raw_response.update_by_name(
+ task_name="task_name",
+ )
+
+ assert response.is_closed is True
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_streaming_response_update_by_name(self, async_client: AsyncAgentex) -> None:
+ async with async_client.tasks.with_streaming_response.update_by_name(
+ task_name="task_name",
+ ) as response:
+ assert not response.is_closed
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
+
+ task = await response.parse()
+ assert_matches_type(Task, task, path=["response"])
+
+ assert cast(Any, response.is_closed) is True
+
+ @pytest.mark.skip(reason="Mock server tests are disabled")
+ @parametrize
+ async def test_path_params_update_by_name(self, async_client: AsyncAgentex) -> None:
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `task_name` but received ''"):
+ await async_client.tasks.with_raw_response.update_by_name(
+ task_name="",
+ )
From 3ec2a1e9987cd69fbcfeee8a8a6449b6825a1d49 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 17:51:34 +0000
Subject: [PATCH 211/215] feat(api): keep backwards compatible models
---
.stats.yml | 2 +-
api.md | 4 --
src/agentex/types/__init__.py | 4 --
src/agentex/types/agent_rpc_by_name_params.py | 62 ++++++++++++++++---
src/agentex/types/agent_rpc_params.py | 62 ++++++++++++++++---
.../types/cancel_task_request_param.py | 16 -----
.../types/create_task_request_param.py | 16 -----
src/agentex/types/send_event_request_param.py | 21 -------
.../types/send_message_request_param.py | 27 --------
9 files changed, 111 insertions(+), 103 deletions(-)
delete mode 100644 src/agentex/types/cancel_task_request_param.py
delete mode 100644 src/agentex/types/create_task_request_param.py
delete mode 100644 src/agentex/types/send_event_request_param.py
delete mode 100644 src/agentex/types/send_message_request_param.py
diff --git a/.stats.yml b/.stats.yml
index 7c0aaa9ed..8b769ff6f 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 45
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5fa3cb3c867281c804913c7c3e6d2143b5606d4924d42119f4b2b246f33e3db3.yml
openapi_spec_hash: 8ec711692f3ed7cd34a7a3b9d3e33f7c
-config_hash: d65d8b7a05f302e164ef9ba7fe72b277
+config_hash: 5bd184c2e406dcf4485d6df328642824
diff --git a/api.md b/api.md
index 99034e8a4..ddcd14c26 100644
--- a/api.md
+++ b/api.md
@@ -15,13 +15,9 @@ from agentex.types import (
AgentRpcRequest,
AgentRpcResponse,
AgentRpcResult,
- CancelTaskRequest,
- CreateTaskRequest,
DataDelta,
ReasoningContentDelta,
ReasoningSummaryDelta,
- SendEventRequest,
- SendMessageRequest,
TaskMessageContent,
TaskMessageDelta,
TaskMessageUpdate,
diff --git a/src/agentex/types/__init__.py b/src/agentex/types/__init__.py
index 7604bc366..27f34c67a 100644
--- a/src/agentex/types/__init__.py
+++ b/src/agentex/types/__init__.py
@@ -63,11 +63,7 @@
from .reasoning_content_param import ReasoningContentParam as ReasoningContentParam
from .reasoning_summary_delta import ReasoningSummaryDelta as ReasoningSummaryDelta
from .agent_rpc_by_name_params import AgentRpcByNameParams as AgentRpcByNameParams
-from .send_event_request_param import SendEventRequestParam as SendEventRequestParam
from .task_update_by_id_params import TaskUpdateByIDParams as TaskUpdateByIDParams
-from .cancel_task_request_param import CancelTaskRequestParam as CancelTaskRequestParam
-from .create_task_request_param import CreateTaskRequestParam as CreateTaskRequestParam
-from .send_message_request_param import SendMessageRequestParam as SendMessageRequestParam
from .task_message_content_param import TaskMessageContentParam as TaskMessageContentParam
from .task_update_by_name_params import TaskUpdateByNameParams as TaskUpdateByNameParams
from .tool_request_content_param import ToolRequestContentParam as ToolRequestContentParam
diff --git a/src/agentex/types/agent_rpc_by_name_params.py b/src/agentex/types/agent_rpc_by_name_params.py
index 352bfa597..ec0f638ea 100644
--- a/src/agentex/types/agent_rpc_by_name_params.py
+++ b/src/agentex/types/agent_rpc_by_name_params.py
@@ -2,15 +2,19 @@
from __future__ import annotations
-from typing import Union
+from typing import Dict, Union, Optional
from typing_extensions import Literal, Required, TypeAlias, TypedDict
-from .send_event_request_param import SendEventRequestParam
-from .cancel_task_request_param import CancelTaskRequestParam
-from .create_task_request_param import CreateTaskRequestParam
-from .send_message_request_param import SendMessageRequestParam
+from .task_message_content_param import TaskMessageContentParam
-__all__ = ["AgentRpcByNameParams", "Params"]
+__all__ = [
+ "AgentRpcByNameParams",
+ "Params",
+ "ParamsCreateTaskRequest",
+ "ParamsCancelTaskRequest",
+ "ParamsSendMessageRequest",
+ "ParamsSendEventRequest",
+]
class AgentRpcByNameParams(TypedDict, total=False):
@@ -24,6 +28,50 @@ class AgentRpcByNameParams(TypedDict, total=False):
jsonrpc: Literal["2.0"]
+class ParamsCreateTaskRequest(TypedDict, total=False):
+ name: Optional[str]
+ """The name of the task to create"""
+
+ params: Optional[Dict[str, object]]
+ """The parameters for the task"""
+
+
+class ParamsCancelTaskRequest(TypedDict, total=False):
+ task_id: Optional[str]
+ """The ID of the task to cancel. Either this or task_name must be provided."""
+
+ task_name: Optional[str]
+ """The name of the task to cancel. Either this or task_id must be provided."""
+
+
+class ParamsSendMessageRequest(TypedDict, total=False):
+ content: Required[TaskMessageContentParam]
+ """The message that was sent to the agent"""
+
+ stream: bool
+ """Whether to stream the response message back to the client"""
+
+ task_id: Optional[str]
+ """The ID of the task that the message was sent to"""
+
+ task_name: Optional[str]
+ """The name of the task that the message was sent to"""
+
+ task_params: Optional[Dict[str, object]]
+ """The parameters for the task (only used when creating new tasks)"""
+
+
+class ParamsSendEventRequest(TypedDict, total=False):
+ content: Optional[TaskMessageContentParam]
+ """The content to send to the event"""
+
+ task_id: Optional[str]
+ """The ID of the task that the event was sent to"""
+
+ task_name: Optional[str]
+ """The name of the task that the event was sent to"""
+
+
Params: TypeAlias = Union[
- CreateTaskRequestParam, CancelTaskRequestParam, SendMessageRequestParam, SendEventRequestParam
+ ParamsCreateTaskRequest, ParamsCancelTaskRequest, ParamsSendMessageRequest, ParamsSendEventRequest
]
diff --git a/src/agentex/types/agent_rpc_params.py b/src/agentex/types/agent_rpc_params.py
index 52944ec0b..fa101e796 100644
--- a/src/agentex/types/agent_rpc_params.py
+++ b/src/agentex/types/agent_rpc_params.py
@@ -2,15 +2,19 @@
from __future__ import annotations
-from typing import Union
+from typing import Dict, Union, Optional
from typing_extensions import Literal, Required, TypeAlias, TypedDict
-from .send_event_request_param import SendEventRequestParam
-from .cancel_task_request_param import CancelTaskRequestParam
-from .create_task_request_param import CreateTaskRequestParam
-from .send_message_request_param import SendMessageRequestParam
+from .task_message_content_param import TaskMessageContentParam
-__all__ = ["AgentRpcParams", "Params"]
+__all__ = [
+ "AgentRpcParams",
+ "Params",
+ "ParamsCreateTaskRequest",
+ "ParamsCancelTaskRequest",
+ "ParamsSendMessageRequest",
+ "ParamsSendEventRequest",
+]
class AgentRpcParams(TypedDict, total=False):
@@ -24,6 +28,50 @@ class AgentRpcParams(TypedDict, total=False):
jsonrpc: Literal["2.0"]
+class ParamsCreateTaskRequest(TypedDict, total=False):
+ name: Optional[str]
+ """The name of the task to create"""
+
+ params: Optional[Dict[str, object]]
+ """The parameters for the task"""
+
+
+class ParamsCancelTaskRequest(TypedDict, total=False):
+ task_id: Optional[str]
+ """The ID of the task to cancel. Either this or task_name must be provided."""
+
+ task_name: Optional[str]
+ """The name of the task to cancel. Either this or task_id must be provided."""
+
+
+class ParamsSendMessageRequest(TypedDict, total=False):
+ content: Required[TaskMessageContentParam]
+ """The message that was sent to the agent"""
+
+ stream: bool
+ """Whether to stream the response message back to the client"""
+
+ task_id: Optional[str]
+ """The ID of the task that the message was sent to"""
+
+ task_name: Optional[str]
+ """The name of the task that the message was sent to"""
+
+ task_params: Optional[Dict[str, object]]
+ """The parameters for the task (only used when creating new tasks)"""
+
+
+class ParamsSendEventRequest(TypedDict, total=False):
+ content: Optional[TaskMessageContentParam]
+ """The content to send to the event"""
+
+ task_id: Optional[str]
+ """The ID of the task that the event was sent to"""
+
+ task_name: Optional[str]
+ """The name of the task that the event was sent to"""
+
+
Params: TypeAlias = Union[
- CreateTaskRequestParam, CancelTaskRequestParam, SendMessageRequestParam, SendEventRequestParam
+ ParamsCreateTaskRequest, ParamsCancelTaskRequest, ParamsSendMessageRequest, ParamsSendEventRequest
]
diff --git a/src/agentex/types/cancel_task_request_param.py b/src/agentex/types/cancel_task_request_param.py
deleted file mode 100644
index 727800599..000000000
--- a/src/agentex/types/cancel_task_request_param.py
+++ /dev/null
@@ -1,16 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-from typing import Optional
-from typing_extensions import TypedDict
-
-__all__ = ["CancelTaskRequestParam"]
-
-
-class CancelTaskRequestParam(TypedDict, total=False):
- task_id: Optional[str]
- """The ID of the task to cancel. Either this or task_name must be provided."""
-
- task_name: Optional[str]
- """The name of the task to cancel. Either this or task_id must be provided."""
diff --git a/src/agentex/types/create_task_request_param.py b/src/agentex/types/create_task_request_param.py
deleted file mode 100644
index 9f6bc5f20..000000000
--- a/src/agentex/types/create_task_request_param.py
+++ /dev/null
@@ -1,16 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-from typing import Dict, Optional
-from typing_extensions import TypedDict
-
-__all__ = ["CreateTaskRequestParam"]
-
-
-class CreateTaskRequestParam(TypedDict, total=False):
- name: Optional[str]
- """The name of the task to create"""
-
- params: Optional[Dict[str, object]]
- """The parameters for the task"""
diff --git a/src/agentex/types/send_event_request_param.py b/src/agentex/types/send_event_request_param.py
deleted file mode 100644
index 49f00eac2..000000000
--- a/src/agentex/types/send_event_request_param.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-from typing import Optional
-from typing_extensions import TypedDict
-
-from .task_message_content_param import TaskMessageContentParam
-
-__all__ = ["SendEventRequestParam"]
-
-
-class SendEventRequestParam(TypedDict, total=False):
- content: Optional[TaskMessageContentParam]
- """The content to send to the event"""
-
- task_id: Optional[str]
- """The ID of the task that the event was sent to"""
-
- task_name: Optional[str]
- """The name of the task that the event was sent to"""
diff --git a/src/agentex/types/send_message_request_param.py b/src/agentex/types/send_message_request_param.py
deleted file mode 100644
index 0f02912ef..000000000
--- a/src/agentex/types/send_message_request_param.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-from typing import Dict, Optional
-from typing_extensions import Required, TypedDict
-
-from .task_message_content_param import TaskMessageContentParam
-
-__all__ = ["SendMessageRequestParam"]
-
-
-class SendMessageRequestParam(TypedDict, total=False):
- content: Required[TaskMessageContentParam]
- """The message that was sent to the agent"""
-
- stream: bool
- """Whether to stream the response message back to the client"""
-
- task_id: Optional[str]
- """The ID of the task that the message was sent to"""
-
- task_name: Optional[str]
- """The name of the task that the message was sent to"""
-
- task_params: Optional[Dict[str, object]]
- """The parameters for the task (only used when creating new tasks)"""
From 9a9a333677b1c1e5814becc205ee9f4fd4d3e33e Mon Sep 17 00:00:00 2001
From: Declan Brady
Date: Mon, 30 Mar 2026 13:55:41 -0400
Subject: [PATCH 212/215] (chore) fix deployment_history test
---
tests/api_resources/test_deployment_history.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tests/api_resources/test_deployment_history.py b/tests/api_resources/test_deployment_history.py
index 49ce089f1..c85be60d6 100644
--- a/tests/api_resources/test_deployment_history.py
+++ b/tests/api_resources/test_deployment_history.py
@@ -8,12 +8,13 @@
import pytest
from agentex import Agentex, AsyncAgentex
-from tests.utils import assert_matches_type
from agentex.types import (
DeploymentHistoryListResponse,
DeploymentHistoryRetrieveResponse,
)
+from ..utils import assert_matches_type
+
base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
From 4c63d9c340e56d7f602f77f2f1fb33b005577402 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 18:24:03 +0000
Subject: [PATCH 213/215] feat(api): use DeploymentHistory instead of
DeploymentHistoryRetrieveResponse
---
.stats.yml | 2 +-
api.md | 4 +--
src/agentex/resources/deployment_history.py | 10 +++---
src/agentex/types/__init__.py | 2 +-
src/agentex/types/deployment_history.py | 2 ++
.../types/deployment_history_list_response.py | 36 ++-----------------
.../deployment_history_retrieve_response.py | 35 ------------------
.../api_resources/test_deployment_history.py | 17 ++++-----
8 files changed, 21 insertions(+), 87 deletions(-)
delete mode 100644 src/agentex/types/deployment_history_retrieve_response.py
diff --git a/.stats.yml b/.stats.yml
index 8b769ff6f..3a7c990c0 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 45
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5fa3cb3c867281c804913c7c3e6d2143b5606d4924d42119f4b2b246f33e3db3.yml
openapi_spec_hash: 8ec711692f3ed7cd34a7a3b9d3e33f7c
-config_hash: 5bd184c2e406dcf4485d6df328642824
+config_hash: fb079ef7936611b032568661b8165f19
diff --git a/api.md b/api.md
index ddcd14c26..3b091ec88 100644
--- a/api.md
+++ b/api.md
@@ -174,10 +174,10 @@ Methods:
Types:
```python
-from agentex.types import DeploymentHistoryRetrieveResponse, DeploymentHistoryListResponse
+from agentex.types import DeploymentHistory, DeploymentHistoryListResponse
```
Methods:
-- client.deployment_history.retrieve(deployment_id) -> DeploymentHistoryRetrieveResponse
+- client.deployment_history.retrieve(deployment_id) -> DeploymentHistory
- client.deployment_history.list(\*\*params) -> DeploymentHistoryListResponse
diff --git a/src/agentex/resources/deployment_history.py b/src/agentex/resources/deployment_history.py
index f8a643b85..9149ffff8 100644
--- a/src/agentex/resources/deployment_history.py
+++ b/src/agentex/resources/deployment_history.py
@@ -18,8 +18,8 @@
async_to_streamed_response_wrapper,
)
from .._base_client import make_request_options
+from ..types.deployment_history import DeploymentHistory
from ..types.deployment_history_list_response import DeploymentHistoryListResponse
-from ..types.deployment_history_retrieve_response import DeploymentHistoryRetrieveResponse
__all__ = ["DeploymentHistoryResource", "AsyncDeploymentHistoryResource"]
@@ -54,7 +54,7 @@ def retrieve(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> DeploymentHistoryRetrieveResponse:
+ ) -> DeploymentHistory:
"""
Get a deployment record by its unique ID.
@@ -74,7 +74,7 @@ def retrieve(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
- cast_to=DeploymentHistoryRetrieveResponse,
+ cast_to=DeploymentHistory,
)
def list(
@@ -158,7 +158,7 @@ async def retrieve(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> DeploymentHistoryRetrieveResponse:
+ ) -> DeploymentHistory:
"""
Get a deployment record by its unique ID.
@@ -178,7 +178,7 @@ async def retrieve(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
- cast_to=DeploymentHistoryRetrieveResponse,
+ cast_to=DeploymentHistory,
)
async def list(
diff --git a/src/agentex/types/__init__.py b/src/agentex/types/__init__.py
index 27f34c67a..5125c00b0 100644
--- a/src/agentex/types/__init__.py
+++ b/src/agentex/types/__init__.py
@@ -29,6 +29,7 @@
from .agent_rpc_response import AgentRpcResponse as AgentRpcResponse
from .agent_task_tracker import AgentTaskTracker as AgentTaskTracker
from .data_content_param import DataContentParam as DataContentParam
+from .deployment_history import DeploymentHistory as DeploymentHistory
from .span_create_params import SpanCreateParams as SpanCreateParams
from .span_list_response import SpanListResponse as SpanListResponse
from .span_update_params import SpanUpdateParams as SpanUpdateParams
@@ -75,4 +76,3 @@
from .task_retrieve_by_name_response import TaskRetrieveByNameResponse as TaskRetrieveByNameResponse
from .message_list_paginated_response import MessageListPaginatedResponse as MessageListPaginatedResponse
from .deployment_history_list_response import DeploymentHistoryListResponse as DeploymentHistoryListResponse
-from .deployment_history_retrieve_response import DeploymentHistoryRetrieveResponse as DeploymentHistoryRetrieveResponse
diff --git a/src/agentex/types/deployment_history.py b/src/agentex/types/deployment_history.py
index f9e3ce518..63a25e8e2 100644
--- a/src/agentex/types/deployment_history.py
+++ b/src/agentex/types/deployment_history.py
@@ -8,6 +8,8 @@
class DeploymentHistory(BaseModel):
+ """API schema for deployment history."""
+
id: str
"""The unique identifier of the deployment record"""
diff --git a/src/agentex/types/deployment_history_list_response.py b/src/agentex/types/deployment_history_list_response.py
index 4511593b4..c71a8f037 100644
--- a/src/agentex/types/deployment_history_list_response.py
+++ b/src/agentex/types/deployment_history_list_response.py
@@ -1,40 +1,10 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
from typing import List
-from datetime import datetime
from typing_extensions import TypeAlias
-from .._models import BaseModel
+from .deployment_history import DeploymentHistory
-__all__ = ["DeploymentHistoryListResponse", "DeploymentHistoryListResponseItem"]
+__all__ = ["DeploymentHistoryListResponse"]
-
-class DeploymentHistoryListResponseItem(BaseModel):
- """API schema for deployment history."""
-
- id: str
- """The unique identifier of the deployment record"""
-
- agent_id: str
- """The ID of the agent this deployment belongs to"""
-
- author_email: str
- """Email of the commit author"""
-
- author_name: str
- """Name of the commit author"""
-
- branch_name: str
- """Name of the branch"""
-
- build_timestamp: datetime
- """When the build was created"""
-
- commit_hash: str
- """Git commit hash for this deployment"""
-
- deployment_timestamp: datetime
- """When this deployment was first seen in the system"""
-
-
-DeploymentHistoryListResponse: TypeAlias = List[DeploymentHistoryListResponseItem]
+DeploymentHistoryListResponse: TypeAlias = List[DeploymentHistory]
diff --git a/src/agentex/types/deployment_history_retrieve_response.py b/src/agentex/types/deployment_history_retrieve_response.py
deleted file mode 100644
index a4539565f..000000000
--- a/src/agentex/types/deployment_history_retrieve_response.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from datetime import datetime
-
-from .._models import BaseModel
-
-__all__ = ["DeploymentHistoryRetrieveResponse"]
-
-
-class DeploymentHistoryRetrieveResponse(BaseModel):
- """API schema for deployment history."""
-
- id: str
- """The unique identifier of the deployment record"""
-
- agent_id: str
- """The ID of the agent this deployment belongs to"""
-
- author_email: str
- """Email of the commit author"""
-
- author_name: str
- """Name of the commit author"""
-
- branch_name: str
- """Name of the branch"""
-
- build_timestamp: datetime
- """When the build was created"""
-
- commit_hash: str
- """Git commit hash for this deployment"""
-
- deployment_timestamp: datetime
- """When this deployment was first seen in the system"""
diff --git a/tests/api_resources/test_deployment_history.py b/tests/api_resources/test_deployment_history.py
index c85be60d6..1b98042b7 100644
--- a/tests/api_resources/test_deployment_history.py
+++ b/tests/api_resources/test_deployment_history.py
@@ -8,10 +8,7 @@
import pytest
from agentex import Agentex, AsyncAgentex
-from agentex.types import (
- DeploymentHistoryListResponse,
- DeploymentHistoryRetrieveResponse,
-)
+from agentex.types import DeploymentHistory, DeploymentHistoryListResponse
from ..utils import assert_matches_type
@@ -27,7 +24,7 @@ def test_method_retrieve(self, client: Agentex) -> None:
deployment_history = client.deployment_history.retrieve(
"deployment_id",
)
- assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
@@ -39,7 +36,7 @@ def test_raw_response_retrieve(self, client: Agentex) -> None:
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = response.parse()
- assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
@@ -51,7 +48,7 @@ def test_streaming_response_retrieve(self, client: Agentex) -> None:
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = response.parse()
- assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
assert cast(Any, response.is_closed) is True
@@ -116,7 +113,7 @@ async def test_method_retrieve(self, async_client: AsyncAgentex) -> None:
deployment_history = await async_client.deployment_history.retrieve(
"deployment_id",
)
- assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
@@ -128,7 +125,7 @@ async def test_raw_response_retrieve(self, async_client: AsyncAgentex) -> None:
assert response.is_closed is True
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = await response.parse()
- assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
@pytest.mark.skip(reason="Mock server tests are disabled")
@parametrize
@@ -140,7 +137,7 @@ async def test_streaming_response_retrieve(self, async_client: AsyncAgentex) ->
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
deployment_history = await response.parse()
- assert_matches_type(DeploymentHistoryRetrieveResponse, deployment_history, path=["response"])
+ assert_matches_type(DeploymentHistory, deployment_history, path=["response"])
assert cast(Any, response.is_closed) is True
From 47948ec76936565fdc443766bb19cbec71e4669b Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 18:17:09 +0000
Subject: [PATCH 214/215] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 3a7c990c0..8ebd3262a 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 45
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-5fa3cb3c867281c804913c7c3e6d2143b5606d4924d42119f4b2b246f33e3db3.yml
-openapi_spec_hash: 8ec711692f3ed7cd34a7a3b9d3e33f7c
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp%2Fagentex-sdk-484a34db630cbb844d4496b9eada50771ded02db3f8ef71ec5316ce14d5470e4.yml
+openapi_spec_hash: aba2cc1906c8b07dc66f3b290d6d176f
config_hash: fb079ef7936611b032568661b8165f19
From 2c6ff7e1bfc58c9e35a17fb5f783e668bfbe3d03 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 30 Mar 2026 18:25:26 +0000
Subject: [PATCH 215/215] release: 0.9.6
---
.release-please-manifest.json | 2 +-
CHANGELOG.md | 37 +++++++++++++++++++++++++++++++++++
pyproject.toml | 2 +-
src/agentex/_version.py | 2 +-
4 files changed, 40 insertions(+), 3 deletions(-)
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 871c1ad9e..bfa837fbf 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.9.5"
+ ".": "0.9.6"
}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index bf3556280..27f0a0c1c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,42 @@
# Changelog
+## 0.9.6 (2026-03-30)
+
+Full Changelog: [v0.9.5...v0.9.6](https://github.com/scaleapi/scale-agentex-python/compare/v0.9.5...v0.9.6)
+
+### Features
+
+* **api:** add task state update methods ([d699e24](https://github.com/scaleapi/scale-agentex-python/commit/d699e245d6c8f28034370ea6a654e11a3b78dc20))
+* **api:** keep backwards compatible models ([3ec2a1e](https://github.com/scaleapi/scale-agentex-python/commit/3ec2a1e9987cd69fbcfeee8a8a6449b6825a1d49))
+* **api:** use DeploymentHistory instead of DeploymentHistoryRetrieveResponse ([4c63d9c](https://github.com/scaleapi/scale-agentex-python/commit/4c63d9c340e56d7f602f77f2f1fb33b005577402))
+* **internal:** implement indices array format for query and form serialization ([3bf3db1](https://github.com/scaleapi/scale-agentex-python/commit/3bf3db1f692b44ceb5f4ea39cb8c4fd0f81c01ee))
+
+
+### Bug Fixes
+
+* **deps:** bump minimum typing-extensions version ([fd76bc9](https://github.com/scaleapi/scale-agentex-python/commit/fd76bc994dca633c4966967c132323985eafa642))
+* **pydantic:** do not pass `by_alias` unless set ([235636b](https://github.com/scaleapi/scale-agentex-python/commit/235636b424dd4595f1510a87e6b79f3b2e103c97))
+* sanitize endpoint path params ([e6472be](https://github.com/scaleapi/scale-agentex-python/commit/e6472bea7d34a72d070079441b359bef25e87830))
+
+
+### Chores
+
+* **ci:** skip lint on metadata-only changes ([f4d5053](https://github.com/scaleapi/scale-agentex-python/commit/f4d5053766e5864338229218f2402d60f431d1fa))
+* **ci:** skip uploading artifacts on stainless-internal branches ([45e7622](https://github.com/scaleapi/scale-agentex-python/commit/45e76227d8b0d5d1c2f398e9945b71eb5953e791))
+* format all `api.md` files ([e67fa69](https://github.com/scaleapi/scale-agentex-python/commit/e67fa69c072f462ea86ecd67b888afa5f97cc7cc))
+* **internal:** add request options to SSE classes ([b788da0](https://github.com/scaleapi/scale-agentex-python/commit/b788da0d1b9fb6100dffb4a99b761ddcb7f0160e))
+* **internal:** bump dependencies ([95112dd](https://github.com/scaleapi/scale-agentex-python/commit/95112dd25a3bf8a49bd1080bfddefd403e64cfcb))
+* **internal:** fix lint error on Python 3.14 ([cb99db1](https://github.com/scaleapi/scale-agentex-python/commit/cb99db1857e373c3dc47d4f5ff6861d06b0ddce4))
+* **internal:** make `test_proxy_environment_variables` more resilient ([7bfaa75](https://github.com/scaleapi/scale-agentex-python/commit/7bfaa75be00bf8f11030f42a3dc6fdcd980c5823))
+* **internal:** make `test_proxy_environment_variables` more resilient to env ([fd1a06e](https://github.com/scaleapi/scale-agentex-python/commit/fd1a06e212cf1a314ac7c61e4d51879401e120f9))
+* **internal:** remove mock server code ([3a5ae0f](https://github.com/scaleapi/scale-agentex-python/commit/3a5ae0f0451610ae56284307d4c2bee1ac2964c1))
+* **internal:** tweak CI branches ([2e74af0](https://github.com/scaleapi/scale-agentex-python/commit/2e74af08e3e2dd4179550e9dd1cf22881195ac91))
+* **internal:** update gitignore ([aba7c4f](https://github.com/scaleapi/scale-agentex-python/commit/aba7c4f8264fdad515a4926884f855c2d87aa910))
+* **internal:** version bump ([1ef69ed](https://github.com/scaleapi/scale-agentex-python/commit/1ef69ed5415d3112055a8040eccfb6eca452e532))
+* **internal:** version bump ([1132255](https://github.com/scaleapi/scale-agentex-python/commit/1132255a0cd7aec1daed38e4110cd6bac53f930a))
+* **internal:** version bump ([60e5402](https://github.com/scaleapi/scale-agentex-python/commit/60e5402c4502957aee7848ab3cdcbfb41503a8ae))
+* update mock server docs ([8c5c6d3](https://github.com/scaleapi/scale-agentex-python/commit/8c5c6d38214b13f645f6fbd75efbbb8116458589))
+
## 0.9.5 (2026-03-24)
Full Changelog: [v0.9.4...v0.9.5](https://github.com/scaleapi/scale-agentex-python/compare/v0.9.4...v0.9.5)
diff --git a/pyproject.toml b/pyproject.toml
index 2a3a68707..e0cde6550 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "agentex-sdk"
-version = "0.9.5"
+version = "0.9.6"
description = "The official Python library for the agentex API"
dynamic = ["readme"]
license = "Apache-2.0"
diff --git a/src/agentex/_version.py b/src/agentex/_version.py
index 3c4a3a3a0..f3bb1cd71 100644
--- a/src/agentex/_version.py
+++ b/src/agentex/_version.py
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
__title__ = "agentex"
-__version__ = "0.9.5" # x-release-please-version
+__version__ = "0.9.6" # x-release-please-version