From c236bc3c4d7372466ed325b0740da058609db431 Mon Sep 17 00:00:00 2001 From: Adam Weidman Date: Thu, 7 May 2026 14:32:22 -0400 Subject: [PATCH] refactor: address review follow-ups for local protocol --- packages/core/src/agent/content-utils.test.ts | 2 +- packages/core/src/agent/legacy-agent-session.test.ts | 7 ++++--- packages/core/src/agent/legacy-agent-session.ts | 6 ++++-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/core/src/agent/content-utils.test.ts b/packages/core/src/agent/content-utils.test.ts index 6137bde280..0ed681c078 100644 --- a/packages/core/src/agent/content-utils.test.ts +++ b/packages/core/src/agent/content-utils.test.ts @@ -187,7 +187,7 @@ describe('contentPartsToGeminiParts', () => { ]); }); - it('throws on unknown ContentPart variants', () => { + it('serializes unknown ContentPart variants', () => { // Force an unknown variant past the type system const content = [ { type: 'custom_widget', payload: 123 }, diff --git a/packages/core/src/agent/legacy-agent-session.test.ts b/packages/core/src/agent/legacy-agent-session.test.ts index 1be4b023bd..525548e292 100644 --- a/packages/core/src/agent/legacy-agent-session.test.ts +++ b/packages/core/src/agent/legacy-agent-session.test.ts @@ -241,10 +241,11 @@ describe('LegacyAgentSession', () => { ); }); - it('returns null streamId for non-message payloads', async () => { + it('throws for non-message payloads', async () => { const session = new LegacyAgentSession(deps); - const result = await session.send({ update: { title: 'test' } }); - expect(result.streamId).toBeNull(); + await expect(session.send({ update: { title: 'test' } })).rejects.toThrow( + 'only supports message sends', + ); }); it('throws if send is called while a stream is active', async () => { diff --git a/packages/core/src/agent/legacy-agent-session.ts b/packages/core/src/agent/legacy-agent-session.ts index 182256323f..e8d5e56ef5 100644 --- a/packages/core/src/agent/legacy-agent-session.ts +++ b/packages/core/src/agent/legacy-agent-session.ts @@ -105,10 +105,12 @@ export class LegacyAgentProtocol implements AgentProtocol { }; } - async send(payload: AgentSend): Promise<{ streamId: string | null }> { + async send(payload: AgentSend): Promise<{ streamId: string }> { const message = 'message' in payload ? payload.message : undefined; if (!message) { - return { streamId: null }; + throw new Error( + 'LegacyAgentSession.send() only supports message sends for the moment.', + ); } if (this._activeStreamId) {