Skip to content

Commit c4ddd94

Browse files
tofarrTetsu-is
authored andcommitted
Fix for broken OpenAPI Schema (All-Hands-AI#7558)
1 parent f095763 commit c4ddd94

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

openhands/integrations/provider.py

+7-2
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22

33
from enum import Enum
44
from types import MappingProxyType
5-
from typing import Any, Coroutine, Literal, overload
5+
from typing import Annotated, Any, Coroutine, Literal, overload
66

77
from pydantic import (
88
BaseModel,
99
Field,
1010
SecretStr,
1111
SerializationInfo,
12+
WithJsonSchema,
1213
field_serializer,
1314
model_validator,
1415
)
@@ -58,10 +59,14 @@ def from_value(cls, token_value: ProviderToken | dict[str, str]) -> ProviderToke
5859

5960
PROVIDER_TOKEN_TYPE = MappingProxyType[ProviderType, ProviderToken]
6061
CUSTOM_SECRETS_TYPE = MappingProxyType[str, SecretStr]
62+
PROVIDER_TOKEN_TYPE_WITH_JSON_SCHEMA = Annotated[
63+
PROVIDER_TOKEN_TYPE,
64+
WithJsonSchema({'type': 'object', 'additionalProperties': {'type': 'string'}}),
65+
]
6166

6267

6368
class SecretStore(BaseModel):
64-
provider_tokens: PROVIDER_TOKEN_TYPE = Field(
69+
provider_tokens: PROVIDER_TOKEN_TYPE_WITH_JSON_SCHEMA = Field(
6570
default_factory=lambda: MappingProxyType({})
6671
)
6772

0 commit comments

Comments
 (0)