From 1fb5b91433670d58e970a4c2718b9f76ff905617 Mon Sep 17 00:00:00 2001 From: ShishirRmc <113575088+ShishirRmc@users.noreply.github.com> Date: Wed, 19 Nov 2025 14:25:35 +0545 Subject: [PATCH 1/2] Fix: Return updated agent_card in JsonRpcTransport.get_card() The get_card() method was returning the stale 'card' variable instead of the newly fetched 'self.agent_card' when retrieving authenticated extended cards. This caused callers to receive outdated agent metadata. This fix aligns JsonRpcTransport with RestTransport's correct behavior. --- src/a2a/client/transports/jsonrpc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/a2a/client/transports/jsonrpc.py b/src/a2a/client/transports/jsonrpc.py index bfba09d7..fa024c71 100644 --- a/src/a2a/client/transports/jsonrpc.py +++ b/src/a2a/client/transports/jsonrpc.py @@ -374,7 +374,7 @@ async def get_card( raise A2AClientJSONRPCError(response.root) self.agent_card = response.root.result self._needs_extended_card = False - return card + return self.agent_card async def close(self) -> None: """Closes the httpx client.""" From bf5acf10b27c91b63f1767fe30d8ae3d0e33a984 Mon Sep 17 00:00:00 2001 From: ShishirRmc Date: Thu, 20 Nov 2025 23:31:02 +0545 Subject: [PATCH 2/2] updated verify get_card returns updated extended card --- tests/client/test_jsonrpc_client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/client/test_jsonrpc_client.py b/tests/client/test_jsonrpc_client.py index 58feec25..6130524a 100644 --- a/tests/client/test_jsonrpc_client.py +++ b/tests/client/test_jsonrpc_client.py @@ -773,7 +773,7 @@ async def test_get_card_with_extended_card_support( mock_send_request.return_value = rpc_response card = await client.get_card() - assert card == agent_card + assert card == AGENT_CARD_EXTENDED mock_send_request.assert_called_once() sent_payload = mock_send_request.call_args.args[0] assert sent_payload['method'] == 'agent/getAuthenticatedExtendedCard'