* feat(app_sessions): split BaseAgentProtocol into ServerHandler + ClientFactory and add fluent builder API for app_sessions
* chore: update a2a-sdk to 0.3.20
* chore: refactor A2A and MCP server handlers and abstract types.
* feat: add native SlimRPC A2A server support and comprehensive E2E tests
Add full support for A2A over native SLIM RPC (slimrpc) transport with
E2E test coverage. This includes server implementation, client integration,
test infrastructure, and fixes for SLIM test isolation issues.
* refactor(a2a-client): update the A2A factory client to return new A2A iterator message type. Update A2A e2e tests to ensure test isolation via shutdown and startup sleep
* refactor(a2a): consolidate client/server files, rename patterns → additional_patterns
Refactor the A2A client and server layers for clearer file organization
* refactor(factory): refactor the root factory to utilize downstream protocol specific factories. Each semantic protocol registers its own factory for arg specific, type safe client creation
* chore(directory): move directory push placeholder back to app_sessions.py
* chore: add unit test for multi-transport A2A ClientConfig negotiation
* refactor(a2a-experimental): Refactor A2AExperimentalServer to bypass ASGI injection
Replace the fake-ASGI-scope approach in A2AExperimentalServer with
direct calls to the a2a-sdk's JSONRPCHandler. Transport messages
(SLIM/NATS) no longer round-trip through Starlette
indirection — instead, they are parsed, validated, and dispatched
to the handler directly with a properly constructed ServerCallContext.
* chore: rename a2a addition_patterns
* docs: update a2a and mcp usage guide arch diagrams and content
* feat(a2a): add create_client_card helper to A2AExperimentalServer
Centralise the transport scheme/label mapping that clients need to
stamp on an AgentCard for experimental-patterns negotiation. Accepts
an optional topic kwarg for pre-computed topics.
Remove duplicated _SCHEME_MAP / _build_agent_card from tests and
guide examples; update migration guides and usage guide to use the
new helper.
* docs: rewrite README with goal-oriented quickstart and transport clarity and create protocol guide tests
* chore: bump pyproject version