{"record":{"id":"d6544f3e65f44a42","repo":"zed-industries/zed","slug":"inline-assistant-response-ended-without-completing","errorCode":null,"errorMessage":"Inline assistant response ended without completing `{REWRITE_SECTION_TOOL_NAME}` or `{FAILURE_MESSAGE_TOOL_NAME}`","messagePattern":"Inline assistant response ended without completing `(.+?)` or `(.+?)`","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/agent_ui/src/buffer_codegen.rs","lineNumber":1250,"sourceCode":"                            };\n                            Ok(Some(ToolUseOutput::Failure {\n                                message: std::mem::take(&mut input.message),\n                                is_input_complete: tool_use.is_input_complete,\n                            }))\n                        }\n                        _ => Ok(None),\n                    }\n                };\n\n            let mut message_id = None;\n            let mut failure_started = false;\n            let mut failure_complete = false;\n            let last_token_usage = Arc::new(Mutex::new(TokenUsage::default()));\n\n            let first_text = loop {\n                let Some(event) = completion_events.next().await else {\n                    if failure_complete {\n                        finish_with_status(CodegenStatus::Done, cx);\n                    } else {\n                        finish_with_status(\n                            CodegenStatus::Error(anyhow!(\n                                \"Inline assistant response ended without completing \\\n                                 `{REWRITE_SECTION_TOOL_NAME}` or `{FAILURE_MESSAGE_TOOL_NAME}`\"\n                            )),\n                            cx,\n                        );\n                    }\n                    return;\n                };\n\n                match event {\n                    Ok(LanguageModelCompletionEvent::StartMessage { message_id: id }) => {\n                        message_id = Some(id);\n                    }\n                    Ok(LanguageModelCompletionEvent::ToolUse(tool_use)) => {\n                        let output = match process_tool_use(tool_use) {","sourceCodeStart":1232,"sourceCodeEnd":1268,"githubUrl":"https://github.com/zed-industries/zed/blob/5a9b9558db01a6b906cec2fb70a797affdc58cdd/crates/agent_ui/src/buffer_codegen.rs#L1232-L1268","documentation":"The completion event stream ended (next() returned None) without the model having emitted a completed rewrite_section or failure_message tool call, so the inline assist cannot produce an edit and errors.","triggerScenarios":"Thrown at crates/agent_ui/src/buffer_codegen.rs:1248 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Retry the inline assist: transient stream truncation often resolves itself","If it recurs, use a shorter target selection to reduce response length","Check the model provider status for dropped streaming connections"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5a9b9558db01a6b906cec2fb70a797affdc58cdd","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}