v1.0.0-beta.0
Pre-release
Pre-release
1.0.0-beta.0 (2026-07-01)
The v0.3 backward-compatibility layer is now complete, marking this release as the first one bringing v1.0 and v0.3 support together.
Backward compatibility with v0.3 was implemented across all three transports (JSON-RPC, REST, gRPC), agent-card resolution, and push notifications — closing #452.
A v1.0 server can transparently accept v0.3 clients (and a v1.0 client can talk to v0.3 servers) by opting in with legacyCompat: { enabled: true } on the relevant transport.
See the v0.3 → v1.0 migration guide
and the end-user v0.3 compatibility guide.
Features
- add compat-v1 client and server samples to demonstrate A2A v0.3 backward compatibility (#520) (fce0b3f)
- add opt-in legacy v0.3 compatibility to JSON-RPC handler and improve extension header support (#501) (f707350)
- add v0.3 compatibility layer for client and server agent-card handling (#504) (75685f2)
- add v0.3 gRPC compat layer (#505) (314d9e3)
- default to v0.3 if version not provided (#511) (ad7f772)
- defined compat-specific consts and mappings (#478) (db0c595)
- implement legacy v0.3 JSON-RPC transport handler (#493) (d191d91)
- implement legacy v0.3 REST support with compatible transport handler and middleware routing (#495) (da9a968)
- implement v0.3 ITK cross-SDK validation workflows (#513) (c9385f3)
- implement v0.3 JSON-RPC client transport (#499) (46aa5d6)
- implement v0.3 protocol compatibility for RestTransportFactory (#503) (b172482)
- implement versioned push notification serializers with legacy v0.3 compatibility support (#507) (0261be8)
- normalize extension headers based on negotiated protocol version (#510) (74a51ee)
- replace automatic v0.3 agent card synthesis with explicit per-interface advertisement (#560) (60ad3b2)
Bug Fixes
- compat: wrap primitive Part.data values instead of throwing (#537) (7647db5)
- server/rest: handle undefined historyLength to return full task history (#527) (fa9ebce), closes #535
- server: handle AUTH_REQUIRED lifecycle per spec (#523) (68826c2)
- server: make cancelTask idempotent on the canceled state (#545) (1d17a78)
- server: make push notification config id optional with server-side UUID (#543) (83af8c3)
- server: merge Task history in ResultManager instead of overwriting (#524) (4e1d4f7), closes #532
- server: preserve activated extensions in response header (#544) (26184b4)
- server: propagate return to SSE generators to prevent listener leaks (#526) (a690734), closes #534
- server: synthesize correct error Task id in blocking and streaming paths (#525) (a3dd703), closes #533
- server: yield Task snapshot on resubscribe when bus is inactive (#542) (cd8f8fc)