refactor: break submitQuery into smaller functions (#350)

This commit is contained in:
Brandon Keiji
2025-05-14 22:14:15 +00:00
committed by GitHub
parent 1245fe4885
commit 521708e294
3 changed files with 566 additions and 417 deletions

View File

@@ -78,16 +78,43 @@ export interface ServerToolCallConfirmationDetails {
details: ToolCallConfirmationDetails;
}
export type ServerGeminiContentEvent = {
type: GeminiEventType.Content;
value: string;
};
export type ServerGeminiToolCallRequestEvent = {
type: GeminiEventType.ToolCallRequest;
value: ToolCallRequestInfo;
};
export type ServerGeminiToolCallResponseEvent = {
type: GeminiEventType.ToolCallResponse;
value: ToolCallResponseInfo;
};
export type ServerGeminiToolCallConfirmationEvent = {
type: GeminiEventType.ToolCallConfirmation;
value: ServerToolCallConfirmationDetails;
};
export type ServerGeminiUserCancelledEvent = {
type: GeminiEventType.UserCancelled;
};
export type ServerGeminiErrorEvent = {
type: GeminiEventType.Error;
value: GeminiErrorEventValue;
};
// The original union type, now composed of the individual types
export type ServerGeminiStreamEvent =
| { type: GeminiEventType.Content; value: string }
| { type: GeminiEventType.ToolCallRequest; value: ToolCallRequestInfo }
| { type: GeminiEventType.ToolCallResponse; value: ToolCallResponseInfo }
| {
type: GeminiEventType.ToolCallConfirmation;
value: ServerToolCallConfirmationDetails;
}
| { type: GeminiEventType.UserCancelled }
| { type: GeminiEventType.Error; value: GeminiErrorEventValue };
| ServerGeminiContentEvent
| ServerGeminiToolCallRequestEvent
| ServerGeminiToolCallResponseEvent
| ServerGeminiToolCallConfirmationEvent
| ServerGeminiUserCancelledEvent
| ServerGeminiErrorEvent;
// A turn manages the agentic loop turn within the server context.
export class Turn {