Skip to content

v1.0.0-alpha.1

Pre-release
Pre-release

Choose a tag to compare

@a2a-bot a2a-bot released this 10 Apr 12:21
6b56511

1.0.0-alpha.1 (2026-04-10)

⚠ BREAKING CHANGES

  • client: make ClientConfig.push_notification_config singular (#955)
  • client: reorganize ClientFactory API (#947)
  • server: add build_user function to DefaultContextBuilder to allow A2A user creation customization (#925)
  • client: remove ClientTaskManager and Consumers from client (#916)
  • server: migrate from Application wrappers to Starlette route-based endpoints for rest (#892)
  • server: migrate from Application wrappers to Starlette route-based endpoints for jsonrpc (#873)

Features

  • A2A Version Header validation on server side. (#865) (b261ceb)
  • Add GetExtendedAgentCard Support to RequestHandlers (#919) (2159140)
  • Add support for more Task Message and Artifact fields in the Vertex Task Store (#936) (605fa49)
  • Create EventQueue interface and make tap() async. (#914) (9ccf99c), closes #869
  • EventQueue - unify implementation between python versions (#877) (7437b88), closes #869
  • EventQueue is now a simple interface with single enqueue_event method. (#944) (f0e1d74)
  • Implementation of DefaultRequestHandlerV2 (#933) (462eb3c), closes #869
  • InMemoryTaskStore creates a copy of Task by default to make it consistent with database task stores (#887) (8c65e84), closes #869
  • merge metadata of new and old artifact when append=True (#945) (cc094aa)
  • server: add async context manager support to EventQueue (#743) (f68b22f)
  • server: validate presence according to google.api.field_behavior annotations (#870) (4586c3e)
  • Simplify ActiveTask.subscribe() (#958) (62e5e59)
  • Support AgentExectuor enqueue of a Task object. (#960) (12ce017)
  • Support Message-only simplified execution without creating Task (#956) (354fdfb)
  • Unhandled exception in AgentExecutor marks task as failed (#943) (4fc6b54)

Bug Fixes

  • Add packaging to base dependencies (#897) (7a9aec7)
  • client: do not mutate SendMessageRequest in BaseClient.send_message (#949) (94537c3)
  • fix athrow() RuntimeError on streaming responses (#912) (ca7edc3)
  • fix docstrings related to CallContextBuilder args in constructors and make ServerCallContext mandatory in compat folder (#907) (9cade9b)
  • fix error handling for gRPC and SSE streaming (#879) (2b323d0)
  • fix JSONRPC error handling (#957) (6c807d5)
  • fix REST error handling (#893) (405be3f)
  • handle SSE errors occurred after stream started (#894) (3a68d8f)
  • remove the use of deprecated types from VertexTaskStore (#889) (6d49122)
  • Remove unconditional SQLAlchemy dependency from SDK core (#898) (ab762f0), closes #883
  • remove unused import and request for FastAPI in pyproject (#934) (fe5de77)
  • replace stale entry in a2a.types.all with actual import name (#902) (05cd5e9)
  • wrong method name for ExtendedAgentCard endpoint in JsonRpc compat version (#931) (5d22186)

Documentation

  • add Database Migration Documentation (#864) (fd12dff)

Miscellaneous Chores

Code Refactoring

  • client: make ClientConfig.push_notification_config singular (#955) (be4c5ff)
  • client: remove ClientTaskManager and Consumers from client (#916) (97058bb), closes #734
  • client: reorganize ClientFactory API (#947) (01b3b2c)
  • server: add build_user function to DefaultContextBuilder to allow A2A user creation customization (#925) (2648c5e)
  • server: migrate from Application wrappers to Starlette route-based endpoints for jsonrpc (#873) (734d062)
  • server: migrate from Application wrappers to Starlette route-based endpoints for rest (#892) (4be2064)