You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When interrupting mid tool call (Ctrl+C) and then sending a new prompt, the provider rejects the conversation
history because an unfinished assistant tool call is resent without a corresponding tool result.
Steps To Reproduce
Start Crush with an OpenAI-style provider (e.g., DeepSeek/OpenAI/Azure OpenAI/OpenRouter).
Prompt: “Use grep to find ‘TODO’ in the repo and summarize.”
As soon as the tool starts, press Ctrl+C to interrupt.
Send a new prompt (e.g., “hi”).
Actual Behavior
Provider returns 400 invalid request (example from DeepSeek):
“Invalid assistant message: content or tool_calls must be set”
Root cause: assistant message includes a tool call that wasn’t finished (no tool result), or becomes empty
after filtering.
Expected Behavior
Crush should sanitize history after interruption so the next request proceeds normally.
Summary
history because an unfinished assistant tool call is resent without a corresponding tool result.
Steps To Reproduce
Actual Behavior
after filtering.
Expected Behavior
Environment
Logs / Error
Proposed Fix
Acceptance Criteria