Skip to content

fix(a2a): send new-integration extension header via service_parameters on a2a-sdk 1.x - #7335

Open
chelsealong wants to merge 1 commit into
google:mainfrom
chelsealong:fix/a2a-extension-header-service-parameters
Open

chelsealong wants to merge 1 commit into
google:mainfrom
chelsealong:fix/a2a-extension-header-service-parameters

Conversation

@chelsealong

Copy link
Copy Markdown
Contributor

Closes #7334

Problem: With RemoteA2aAgent(use_legacy=False) on a2a-sdk 1.x, the interceptor wrote A2A-Extensions into client_call_context.state['http_kwargs'], which 1.x transports never read (they build headers from service_parameters). The header never reached the server.

Fix: On a2a-sdk 1.x, read/merge/write the header in service_parameters (preserving other entries); the 0.3.x path is unchanged. Mirrors _add_request_headers.

Test: TestNewIntegrationExtensionInterceptor — fails without the fix (KeyError: 'A2A-Extensions'), passes with it. pytest tests/unittests/a2a: 731 passed, 49 skipped.

AI assistance: drafted with Claude Code; reviewed and tested by the author.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[A2A] RemoteA2aAgent(use_legacy=False): extension header written to state['http_kwargs'], ignored by a2a-sdk 1.x transports

2 participants