Skip to content

refactor(client)!: remove ClientTaskManager and Consumers from client#916

Merged
guglielmo-san merged 5 commits intoa2aproject:1.0-devfrom
guglielmo-san:guglielmoc/remove_client_side_task_manager
Apr 2, 2026
Merged

refactor(client)!: remove ClientTaskManager and Consumers from client#916
guglielmo-san merged 5 commits intoa2aproject:1.0-devfrom
guglielmo-san:guglielmoc/remove_client_side_task_manager

Conversation

@guglielmo-san
Copy link
Copy Markdown
Member

@guglielmo-san guglielmo-san commented Mar 31, 2026

Description

This PR removes the client side TaskManager, as it represent a redundant duplication of the server-side TaskManager, and the client Consumers.
Consumers can be replaced with ClientCallInterceptor.

Fix #734

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 31, 2026

🧪 Code Coverage (vs 1.0-dev)

⬇️ Download Full Report

Base PR Delta
src/a2a/client/base_client.py 92.21% 91.85% 🔴 -0.36%
src/a2a/client/client.py 90.48% 96.88% 🟢 +6.40%
src/a2a/client/client_factory.py 89.35% 89.31% 🔴 -0.04%
Total 91.58% 91.56% 🔴 -0.02%

Generated by coverage-comment.yml

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request simplifies the client architecture by removing the Consumer and ClientEvent abstractions along with the ClientTaskManager. Methods such as send_message and subscribe now return an AsyncIterator of StreamResponse directly instead of a tuple. All associated tests and factory methods have been updated to accommodate the removal of consumer-related parameters and the change in return types. A minor formatting improvement was suggested for a docstring in the client factory.

@guglielmo-san guglielmo-san marked this pull request as ready for review April 2, 2026 07:36
@guglielmo-san guglielmo-san requested a review from a team as a code owner April 2, 2026 07:36
@guglielmo-san guglielmo-san requested a review from ishymko April 2, 2026 07:40
@guglielmo-san guglielmo-san changed the title refactor(client)!: remove ClientTaskManager and related consumers from client refactor(client)!: remove ClientTaskManager and Consumers from client Apr 2, 2026
@guglielmo-san guglielmo-san merged commit 97058bb into a2aproject:1.0-dev Apr 2, 2026
14 checks passed
@guglielmo-san guglielmo-san deleted the guglielmoc/remove_client_side_task_manager branch April 2, 2026 12:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants