Skip to content

Commit 47a5959

Browse files
authored
fix: incorporate latest 1.0 proto changes (#788)
Mainly a2aproject/A2A#1500 which required many changes. Generated from a2aproject/A2A@aca981c. `buf.gen.yaml` is updated to `main` again. Re #559
1 parent 942f4ae commit 47a5959

42 files changed

Lines changed: 398 additions & 545 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

buf.gen.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
version: v2
33
inputs:
44
- git_repo: https://github.com/a2aproject/A2A.git
5-
ref: 1997c9d63058ca0b89361a7d6e508f4641a6f68b
5+
ref: main
66
subdir: specification
77
managed:
88
enabled: true

src/a2a/client/base_client.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
from a2a.types.a2a_pb2 import (
1313
AgentCard,
1414
CancelTaskRequest,
15-
CreateTaskPushNotificationConfigRequest,
1615
DeleteTaskPushNotificationConfigRequest,
1716
GetExtendedAgentCardRequest,
1817
GetTaskPushNotificationConfigRequest,
@@ -98,10 +97,10 @@ def _apply_client_config(self, request: SendMessageRequest) -> None:
9897
if not request.configuration.blocking and self._config.polling:
9998
request.configuration.blocking = not self._config.polling
10099
if (
101-
not request.configuration.HasField('push_notification_config')
100+
not request.configuration.HasField('task_push_notification_config')
102101
and self._config.push_notification_configs
103102
):
104-
request.configuration.push_notification_config.CopyFrom(
103+
request.configuration.task_push_notification_config.CopyFrom(
105104
self._config.push_notification_configs[0]
106105
)
107106
if (
@@ -178,7 +177,7 @@ async def cancel_task(
178177

179178
async def create_task_push_notification_config(
180179
self,
181-
request: CreateTaskPushNotificationConfigRequest,
180+
request: TaskPushNotificationConfig,
182181
*,
183182
context: ClientCallContext | None = None,
184183
) -> TaskPushNotificationConfig:

src/a2a/client/client.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
from a2a.types.a2a_pb2 import (
1616
AgentCard,
1717
CancelTaskRequest,
18-
CreateTaskPushNotificationConfigRequest,
1918
DeleteTaskPushNotificationConfigRequest,
2019
GetExtendedAgentCardRequest,
2120
GetTaskPushNotificationConfigRequest,
@@ -24,7 +23,6 @@
2423
ListTaskPushNotificationConfigsResponse,
2524
ListTasksRequest,
2625
ListTasksResponse,
27-
PushNotificationConfig,
2826
SendMessageRequest,
2927
StreamResponse,
3028
SubscribeToTaskRequest,
@@ -71,8 +69,8 @@ class ClientConfig:
7169
accepted_output_modes: list[str] = dataclasses.field(default_factory=list)
7270
"""The set of accepted output modes for the client."""
7371

74-
push_notification_configs: list[PushNotificationConfig] = dataclasses.field(
75-
default_factory=list
72+
push_notification_configs: list[TaskPushNotificationConfig] = (
73+
dataclasses.field(default_factory=list)
7674
)
7775
"""Push notification configurations to use for every request."""
7876

@@ -171,7 +169,7 @@ async def cancel_task(
171169
@abstractmethod
172170
async def create_task_push_notification_config(
173171
self,
174-
request: CreateTaskPushNotificationConfigRequest,
172+
request: TaskPushNotificationConfig,
175173
*,
176174
context: ClientCallContext | None = None,
177175
) -> TaskPushNotificationConfig:

src/a2a/client/transports/base.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
from a2a.types.a2a_pb2 import (
99
AgentCard,
1010
CancelTaskRequest,
11-
CreateTaskPushNotificationConfigRequest,
1211
DeleteTaskPushNotificationConfigRequest,
1312
GetExtendedAgentCardRequest,
1413
GetTaskPushNotificationConfigRequest,
@@ -92,7 +91,7 @@ async def cancel_task(
9291
@abstractmethod
9392
async def create_task_push_notification_config(
9493
self,
95-
request: CreateTaskPushNotificationConfigRequest,
94+
request: TaskPushNotificationConfig,
9695
*,
9796
context: ClientCallContext | None = None,
9897
) -> TaskPushNotificationConfig:

src/a2a/client/transports/grpc.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
from a2a.types.a2a_pb2 import (
2828
AgentCard,
2929
CancelTaskRequest,
30-
CreateTaskPushNotificationConfigRequest,
3130
DeleteTaskPushNotificationConfigRequest,
3231
GetExtendedAgentCardRequest,
3332
GetTaskPushNotificationConfigRequest,
@@ -212,7 +211,7 @@ async def cancel_task(
212211
@_handle_grpc_exception
213212
async def create_task_push_notification_config(
214213
self,
215-
request: CreateTaskPushNotificationConfigRequest,
214+
request: TaskPushNotificationConfig,
216215
*,
217216
context: ClientCallContext | None = None,
218217
) -> TaskPushNotificationConfig:

src/a2a/client/transports/jsonrpc.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
from a2a.types.a2a_pb2 import (
2121
AgentCard,
2222
CancelTaskRequest,
23-
CreateTaskPushNotificationConfigRequest,
2423
DeleteTaskPushNotificationConfigRequest,
2524
GetExtendedAgentCardRequest,
2625
GetTaskPushNotificationConfigRequest,
@@ -173,7 +172,7 @@ async def cancel_task(
173172

174173
async def create_task_push_notification_config(
175174
self,
176-
request: CreateTaskPushNotificationConfigRequest,
175+
request: TaskPushNotificationConfig,
177176
*,
178177
context: ClientCallContext | None = None,
179178
) -> TaskPushNotificationConfig:

src/a2a/client/transports/rest.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
from a2a.types.a2a_pb2 import (
2020
AgentCard,
2121
CancelTaskRequest,
22-
CreateTaskPushNotificationConfigRequest,
2322
DeleteTaskPushNotificationConfigRequest,
2423
GetExtendedAgentCardRequest,
2524
GetTaskPushNotificationConfigRequest,
@@ -160,7 +159,7 @@ async def cancel_task(
160159

161160
async def create_task_push_notification_config(
162161
self,
163-
request: CreateTaskPushNotificationConfigRequest,
162+
request: TaskPushNotificationConfig,
164163
*,
165164
context: ClientCallContext | None = None,
166165
) -> TaskPushNotificationConfig:

src/a2a/client/transports/tenant_decorator.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
from a2a.types.a2a_pb2 import (
66
AgentCard,
77
CancelTaskRequest,
8-
CreateTaskPushNotificationConfigRequest,
98
DeleteTaskPushNotificationConfigRequest,
109
GetExtendedAgentCardRequest,
1110
GetTaskPushNotificationConfigRequest,
@@ -93,7 +92,7 @@ async def cancel_task(
9392

9493
async def create_task_push_notification_config(
9594
self,
96-
request: CreateTaskPushNotificationConfigRequest,
95+
request: TaskPushNotificationConfig,
9796
*,
9897
context: ClientCallContext | None = None,
9998
) -> TaskPushNotificationConfig:

src/a2a/compat/v0_3/conversions.py

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -271,9 +271,9 @@ def to_compat_authentication_info(
271271

272272
def to_core_push_notification_config(
273273
compat_config: types_v03.PushNotificationConfig,
274-
) -> pb2_v10.PushNotificationConfig:
274+
) -> pb2_v10.TaskPushNotificationConfig:
275275
"""Convert push notification config to v1.0 core type."""
276-
core_config = pb2_v10.PushNotificationConfig(url=compat_config.url)
276+
core_config = pb2_v10.TaskPushNotificationConfig(url=compat_config.url)
277277
if compat_config.id:
278278
core_config.id = compat_config.id
279279
if compat_config.token:
@@ -286,11 +286,11 @@ def to_core_push_notification_config(
286286

287287

288288
def to_compat_push_notification_config(
289-
core_config: pb2_v10.PushNotificationConfig,
289+
core_config: pb2_v10.TaskPushNotificationConfig,
290290
) -> types_v03.PushNotificationConfig:
291291
"""Convert push notification config to v0.3 compat type."""
292292
return types_v03.PushNotificationConfig(
293-
url=core_config.url,
293+
url=core_config.url if core_config.url else '',
294294
id=core_config.id if core_config.id else None,
295295
token=core_config.token if core_config.token else None,
296296
authentication=to_compat_authentication_info(core_config.authentication)
@@ -312,7 +312,7 @@ def to_core_send_message_configuration(
312312
compat_config.accepted_output_modes
313313
)
314314
if compat_config.push_notification_config:
315-
core_config.push_notification_config.CopyFrom(
315+
core_config.task_push_notification_config.CopyFrom(
316316
to_core_push_notification_config(
317317
compat_config.push_notification_config
318318
)
@@ -333,9 +333,9 @@ def to_compat_send_message_configuration(
333333
if core_config.accepted_output_modes
334334
else None,
335335
push_notification_config=to_compat_push_notification_config(
336-
core_config.push_notification_config
336+
core_config.task_push_notification_config
337337
)
338-
if core_config.HasField('push_notification_config')
338+
if core_config.HasField('task_push_notification_config')
339339
else None,
340340
history_length=core_config.history_length
341341
if core_config.HasField('history_length')
@@ -1008,7 +1008,7 @@ def to_core_task_push_notification_config(
10081008
task_id=compat_config.task_id
10091009
)
10101010
if compat_config.push_notification_config:
1011-
core_config.push_notification_config.CopyFrom(
1011+
core_config.MergeFrom(
10121012
to_core_push_notification_config(
10131013
compat_config.push_notification_config
10141014
)
@@ -1023,10 +1023,8 @@ def to_compat_task_push_notification_config(
10231023
return types_v03.TaskPushNotificationConfig(
10241024
task_id=core_config.task_id,
10251025
push_notification_config=to_compat_push_notification_config(
1026-
core_config.push_notification_config
1027-
)
1028-
if core_config.HasField('push_notification_config')
1029-
else types_v03.PushNotificationConfig(url=''),
1026+
core_config
1027+
),
10301028
)
10311029

10321030

@@ -1179,13 +1177,13 @@ def to_compat_delete_task_push_notification_config_request(
11791177

11801178
def to_core_create_task_push_notification_config_request(
11811179
compat_req: types_v03.SetTaskPushNotificationConfigRequest,
1182-
) -> pb2_v10.CreateTaskPushNotificationConfigRequest:
1180+
) -> pb2_v10.TaskPushNotificationConfig:
11831181
"""Convert create task push notification config request to v1.0 core type."""
1184-
core_req = pb2_v10.CreateTaskPushNotificationConfigRequest(
1182+
core_req = pb2_v10.TaskPushNotificationConfig(
11851183
task_id=compat_req.params.task_id
11861184
)
11871185
if compat_req.params.push_notification_config:
1188-
core_req.config.CopyFrom(
1186+
core_req.MergeFrom(
11891187
to_core_push_notification_config(
11901188
compat_req.params.push_notification_config
11911189
)
@@ -1194,7 +1192,7 @@ def to_core_create_task_push_notification_config_request(
11941192

11951193

11961194
def to_compat_create_task_push_notification_config_request(
1197-
core_req: pb2_v10.CreateTaskPushNotificationConfigRequest,
1195+
core_req: pb2_v10.TaskPushNotificationConfig,
11981196
request_id: str | int,
11991197
) -> types_v03.SetTaskPushNotificationConfigRequest:
12001198
"""Convert create task push notification config request to v0.3 compat type."""
@@ -1203,10 +1201,8 @@ def to_compat_create_task_push_notification_config_request(
12031201
params=types_v03.TaskPushNotificationConfig(
12041202
task_id=core_req.task_id,
12051203
push_notification_config=to_compat_push_notification_config(
1206-
core_req.config
1207-
)
1208-
if core_req.HasField('config')
1209-
else types_v03.PushNotificationConfig(url=''),
1204+
core_req
1205+
),
12101206
),
12111207
)
12121208

src/a2a/compat/v0_3/grpc_transport.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ async def cancel_task(
251251
@_handle_grpc_exception
252252
async def create_task_push_notification_config(
253253
self,
254-
request: a2a_pb2.CreateTaskPushNotificationConfigRequest,
254+
request: a2a_pb2.TaskPushNotificationConfig,
255255
*,
256256
context: ClientCallContext | None = None,
257257
) -> a2a_pb2.TaskPushNotificationConfig:

0 commit comments

Comments
 (0)