google-gemini / google-gemini/gemini-cli
Model parotting "[The previous response was interrupted before it completed]"
- Dominant language
- TypeScript
- Stars
- 107k
- Forks
- 14.6k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 45
Description
### What happened?
https://github.com/google-gemini/gemini-cli/pull/28700 introduced yet another regression.
Because it inserts "[The previous response was interrupted before it completed]" as the model response to a user functionResponse, the model "learns" that this is what it should answer to any tool call. What this results in is that for all subsequent tool calls, the API response is just "[The previous response was interrupted before it completed]".
At this point the session is poisoned and needs to be discarded.
### What did you expect to happen?
I expect the client to be able to handle an aborted request.
An alternative might be to concat the orphaned turns together and inject them as an invisible prefix to the next user prompt after an abort, that would avoid the model getting confused about what it should be doing.
### Client information
Client Information
Run `gemini` to enter the interactive CLI, then run the `/about` command.
```console
> /about
│ CLI Version 0.56.0-nightly.20260814.gc0d192452 │
│ Git Commit fba6ee2d3cb0 │
│ Model Auto │
│ Sandbox no sandbox │
│ OS linux │
│ Auth Method Signed in with Google () │
│ Tier Gemini Code Assist Standard │
│ GCP Project tm-gcp-emea-ai-platform
```
### Login information
Signed in with Google
### Anything else we need to know?
This is probably the last issue I will be raising, every other PR you land introduces a regression.
I think you need to take a long, hard look at how you do reviews.
I shouldn't spend half my time QA-ing your product, a product my company pays for, for you.
Contributor guide
Research direction
Start with the changes introduced by PR #28700 and reproduce the problem through the `gemini` interactive CLI after an aborted request. Trace how the interrupted response is inserted into a user functionResponse and verify that subsequent tool calls no longer receive the interruption text or poison the session.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- ai, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100