-
Notifications
You must be signed in to change notification settings - Fork 528
Description
What happened?
Description
The uv.lock files across the a2a-samples repository are referencing an outdated version of the a2a-sdk package, which contains a known bug that has since been fixed. While the bug fix is already available in the a2a-sdk package, the lock files in the samples have not been updated, potentially causing issues for users working with the sample code.
Root Cause
The lock files are pinned to an older version of a2a-sdk that includes a bug related to UUID structure enforcement on context IDs in tasks. Although this bug has been fixed in the a2a-sdk package, the uv.lock files have not been regenerated to reflect the updated dependency, indicating a possible oversight in repository maintenance.
Impact
- Local server: Not affected, as it uses the updated
a2a-sdkpackage with the bug fix - Sample users: May encounter issues due to outdated dependencies when running or testing the samples
- Repository maintenance: Suggests a gap in the process for keeping sample dependencies current
Expected Behavior and Requested Action
All uv.lock files within each of the samples should reference the latest stable version of the a2a-sdk package that includes the bug fix. The requested action is to update all uv.lock files across the samples directory to ensure they use the current version of a2a-sdk.
References
- Last
uv.lockupdate forlanggraphsample: August 8, 2025 - Breaking changes in
a2a-sdk: August 22, 2025
Suggested Solution
- Navigate to each sample directory containing a
uv.lockfile - Run the appropriate dependency update command (e.g.,
uv lock --upgradeor equivalent) - Verify that the lock file now references the latest version of
a2a-sdk - Test the samples to ensure they work correctly with the updated dependencies
- Commit and push the updated lock files
Relevant log output
ERROR:a2a.server.request_handlers.default_request_handler:Agent execution failed. Error: Invalid context_id: 'xxxxxxxx' is not a valid UUID.
ERROR:a2a.server.apps.jsonrpc.jsonrpc_app:Unhandled exception: Invalid context_id: 'xxxxxxxx' is not a valid UUID.
Traceback (most recent call last):
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/utils/task.py", line 34, in new_task
uuid.UUID(context_id_str)
File "/usr/lib64/python3.12/uuid.py", line 178, in __init__
raise ValueError('badly formed hexadecimal UUID string')
ValueError: badly formed hexadecimal UUID string
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/server/apps/jsonrpc/jsonrpc_app.py", line 257, in _handle_requests
return await self._process_non_streaming_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/server/apps/jsonrpc/jsonrpc_app.py", line 344, in _process_non_streaming_request
handler_result = await self.handler.on_message_send(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/utils/telemetry.py", line 194, in async_wrapper
result = await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/server/request_handlers/jsonrpc_handler.py", line 102, in on_message_send
task_or_message = await self.request_handler.on_message_send(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/utils/telemetry.py", line 194, in async_wrapper
result = await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/server/request_handlers/default_request_handler.py", line 315, in on_message_send
await self._cleanup_producer(producer_task, task_id)
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/utils/telemetry.py", line 194, in async_wrapper
result = await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/server/request_handlers/default_request_handler.py", line 364, in _cleanup_producer
await producer_task
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/utils/telemetry.py", line 194, in async_wrapper
result = await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/server/request_handlers/default_request_handler.py", line 172, in _run_event_stream
await self.agent_executor.execute(request, queue)
File "/opt/app-root/app/agent_executor.py", line 45, in execute
task = new_task(context.message) # type: ignore
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/.venv/lib64/python3.12/site-packages/a2a/utils/task.py", line 37, in new_task
raise ValueError(
ValueError: Invalid context_id: 'xxxxxxxx' is not a valid UUID.
ERROR:a2a.server.apps.jsonrpc.jsonrpc_app:Request Error (ID: yyyyyyyy): Code=-32603, Message='Invalid context_id: 'xxxxxxxx' is not a valid UUID.'Code of Conduct
- I agree to follow this project's Code of Conduct