From 7b226a1fa015dc461b139bcda0f6711efff96633 Mon Sep 17 00:00:00 2001 From: Alisa Novikova <62909685+alisa-alisa@users.noreply.github.com> Date: Thu, 12 Mar 2026 11:45:47 -0700 Subject: [PATCH] Remove getGrpcCredentials (replace with inline) --- packages/core/src/agents/a2a-client-manager.ts | 7 +++++-- packages/core/src/agents/a2aUtils.test.ts | 13 ------------- packages/core/src/agents/a2aUtils.ts | 10 ---------- 3 files changed, 5 insertions(+), 25 deletions(-) diff --git a/packages/core/src/agents/a2a-client-manager.ts b/packages/core/src/agents/a2a-client-manager.ts index 576f66825f..d0339c105f 100644 --- a/packages/core/src/agents/a2a-client-manager.ts +++ b/packages/core/src/agents/a2a-client-manager.ts @@ -22,9 +22,10 @@ import { createAuthenticatingFetchWithRetry, } from '@a2a-js/sdk/client'; import { GrpcTransportFactory } from '@a2a-js/sdk/client/grpc'; +import * as grpc from '@grpc/grpc-js'; import { v4 as uuidv4 } from 'uuid'; import { Agent as UndiciAgent } from 'undici'; -import { getGrpcCredentials, normalizeAgentCard } from './a2aUtils.js'; +import { normalizeAgentCard } from './a2aUtils.js'; import { debugLogger } from '../utils/debugLogger.js'; import { classifyAgentError } from './a2a-errors.js'; @@ -138,7 +139,9 @@ export class A2AClientManager { new RestTransportFactory({ fetchImpl: authFetch }), new JsonRpcTransportFactory({ fetchImpl: authFetch }), new GrpcTransportFactory({ - grpcChannelCredentials: getGrpcCredentials(grpcUrl), + grpcChannelCredentials: grpcUrl.startsWith('https://') + ? grpc.credentials.createSsl() + : grpc.credentials.createInsecure(), }), ], cardResolver: resolver, diff --git a/packages/core/src/agents/a2aUtils.test.ts b/packages/core/src/agents/a2aUtils.test.ts index 2dd70d92b1..0dce551be4 100644 --- a/packages/core/src/agents/a2aUtils.test.ts +++ b/packages/core/src/agents/a2aUtils.test.ts @@ -12,7 +12,6 @@ import { A2AResultReassembler, AUTH_REQUIRED_MSG, normalizeAgentCard, - getGrpcCredentials, } from './a2aUtils.js'; import type { SendMessageResult } from './a2a-client-manager.js'; import type { @@ -34,18 +33,6 @@ describe('a2aUtils', () => { vi.restoreAllMocks(); }); - describe('getGrpcCredentials', () => { - it('should return secure credentials for https', () => { - const credentials = getGrpcCredentials('https://test.agent'); - expect(credentials).toBeDefined(); - }); - - it('should return insecure credentials for http', () => { - const credentials = getGrpcCredentials('http://test.agent'); - expect(credentials).toBeDefined(); - }); - }); - describe('isTerminalState', () => { it('should return true for completed, failed, canceled, and rejected', () => { expect(isTerminalState('completed')).toBe(true); diff --git a/packages/core/src/agents/a2aUtils.ts b/packages/core/src/agents/a2aUtils.ts index c84d48f2ff..70fc9cf557 100644 --- a/packages/core/src/agents/a2aUtils.ts +++ b/packages/core/src/agents/a2aUtils.ts @@ -4,7 +4,6 @@ * SPDX-License-Identifier: Apache-2.0 */ -import * as grpc from '@grpc/grpc-js'; import type { Message, Part, @@ -251,15 +250,6 @@ export function normalizeAgentCard(card: unknown): AgentCard { return result; } -/** - * Returns gRPC channel credentials based on the URL scheme. - */ -export function getGrpcCredentials(url: string): grpc.ChannelCredentials { - return url.startsWith('https://') - ? grpc.credentials.createSsl() - : grpc.credentials.createInsecure(); -} - /** * Extracts contextId and taskId from a Message, Task, or Update response. * Follows the pattern from the A2A CLI sample to maintain conversational continuity.