What's new?
Fixed
- Demo app: the theme toggle now controls the whole page. The demo previously wrapped its content in a second, uncontrolled
ThemeRoot(fromui-components,defaultTheme="system") that followed the OS independently of the header toggle, leaking dark tokens (e.g.--sidebar) into the light.a2a-rootand leaving the sidebar dark in light mode. Removed the redundant wrapper so a single, toggle-synced theme root governs the app. (Demo only — the published library was unaffected.) - Outbound v0.3 message parts now always include the required
kinddiscriminator ("text","file","data").buildOutboundPartspreviously passed v0.3 parts through unchanged, so messages sent to v0.3 agents omittedkind(e.g.{ "text": "Hello" }), breaking agents that use it as a discriminator. The legacytypefield is also dropped, since it is superseded bykindin the v0.3 wire format. - SSE streaming: non-terminal
taskenvelopes (e.g.submitted) no longer close the stream prematurely. The chat store now keeps the stream open until a terminal state (completed,failed,canceled,rejected) is received, preventing blank or dropped responses from agents that send an initial task object beforeartifact-update/status-updateevents.
What's Changed
- feat: improve light mode on dev server by @jurijat in #97
- fix: required kind field by @jurijat in #96
- feat: add terminal task state fix by @jurijat in #93
- chore: format and fix local mock agent by @jurijat in #25
- chore(deps): update all minor updates in #76
- chore(deps): update github actions (major) in #71
- chore(deps): update ui components in #72
- chore(deps): update github actions in #69
- chore(deps): update dev toolchain in #68
- fix(deps): pin dependency react-markdown to 10.1.0 in #67
- fix(deps): pin dependencies in #66
- chore(deps): pin dependencies in #65
Full Changelog: v0.4.4...v0.4.5