summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui/hooks/useGeminiStream.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/ui/hooks/useGeminiStream.ts')
-rw-r--r--packages/cli/src/ui/hooks/useGeminiStream.ts12
1 files changed, 9 insertions, 3 deletions
diff --git a/packages/cli/src/ui/hooks/useGeminiStream.ts b/packages/cli/src/ui/hooks/useGeminiStream.ts
index 4049c884..86c35836 100644
--- a/packages/cli/src/ui/hooks/useGeminiStream.ts
+++ b/packages/cli/src/ui/hooks/useGeminiStream.ts
@@ -155,7 +155,12 @@ export const useGeminiStream = (
(tc) =>
tc.status === 'executing' ||
tc.status === 'scheduled' ||
- tc.status === 'validating',
+ tc.status === 'validating' ||
+ ((tc.status === 'success' ||
+ tc.status === 'error' ||
+ tc.status === 'cancelled') &&
+ !(tc as TrackedCompletedToolCall | TrackedCancelledToolCall)
+ .responseSubmittedToGemini),
)
) {
return StreamingState.Responding;
@@ -453,8 +458,9 @@ export const useGeminiStream = (
const submitQuery = useCallback(
async (query: PartListUnion, options?: { isContinuation: boolean }) => {
if (
- streamingState === StreamingState.Responding ||
- streamingState === StreamingState.WaitingForConfirmation
+ (streamingState === StreamingState.Responding ||
+ streamingState === StreamingState.WaitingForConfirmation) &&
+ !options?.isContinuation
)
return;