{"record":{"id":"4b9fe11e26a5ad14","repo":"zed-industries/zed","slug":"this-openai-model-does-not-support-explicit-compac","errorCode":null,"errorMessage":"this OpenAI model does not support explicit compaction","messagePattern":"this OpenAI model does not support explicit compaction","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/language_models/src/provider/open_ai.rs","lineNumber":556,"sourceCode":"        self.model.supports_priority()\n    }\n\n    fn supports_server_side_compaction(&self) -> bool {\n        self.model.supports_compaction()\n    }\n\n    fn supports_explicit_compaction(&self) -> bool {\n        self.model.supports_compaction()\n    }\n\n    fn compact(\n        &self,\n        mut request: LanguageModelRequest,\n        cx: &AsyncApp,\n    ) -> BoxFuture<'static, Result<CompactionResult, LanguageModelCompletionError>> {\n        if !self.supports_explicit_compaction() {\n            return async {\n                Err(LanguageModelCompletionError::Other(anyhow::anyhow!(\n                    \"this OpenAI model does not support explicit compaction\"\n                )))\n            }\n            .boxed();\n        }\n\n        normalize_open_ai_response_thinking_effort(&mut request, &self.model);\n        let request = match into_open_ai_response(\n            request,\n            self.model.id(),\n            self.model.supports_parallel_tool_calls(),\n            self.model.supports_prompt_cache_key(),\n            self.max_output_tokens(),\n            default_thinking_reasoning_effort(&self.model),\n            self.model\n                .supported_reasoning_efforts()\n                .contains(&open_ai::ReasoningEffort::None),\n            &OPEN_AI_PROVIDER_ID,","sourceCodeStart":538,"sourceCodeEnd":574,"githubUrl":"https://github.com/zed-industries/zed/blob/5a9b9558db01a6b906cec2fb70a797affdc58cdd/crates/language_models/src/provider/open_ai.rs#L538-L574","documentation":"Guard in OpenAiLanguageModel::compact: explicit compaction was requested for a model whose supports_compaction() is false, so the provider refuses before calling the API rather than sending an unsupported compaction request.","triggerScenarios":"Thrown at crates/language_models/src/provider/open_ai.rs:555 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use an OpenAI model that supports server-side compaction","Fall back to client-side summarization/context trimming for this model"],"exampleFix":null,"handlingStrategy":"validation","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-14T00:17:10.932Z"}