a2aproject / a2aproject/a2a-python

Feat]: Client-side utility for assembling artifacts from update events

Open
#1,030 1 comment 0 reactions 0 assignees View on GitHub
component: client maintainers-only
Dominant language
Python
Stars
2.1k
Forks
496
Avg merge
4d 17h
Merged PRs (30d)
12

Description

### Is your feature request related to a problem? Please describe.

1.0 release removed `ClientTaskManager` (see #734) and changed client API in a way that it now closely mirrors server API and uses [`StreamResposne`](https://a2a-protocol.org/latest/specification/#323-stream-response) as a return type.

#734 mentions a possible helper for reconstructing artifacts specifically, this issue is to track it.

### Describe the solution you'd like

As stated in #734 maintaining the whole `Task` state locally can result in divergence with server state and should not be relied on by default (especially due to history behavior specification in 1.0, #734 has more details).

For artifacts though the logic is deterministic and can be replicated locally if one wants to maintain full artifact state by interpreting `append` and `lastChunk` flags. Client API should not be changed here, new helper should operate on a stream of `StreamResponse`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.