zed-industries/zed · error · LanguageModelCompletionError
ChatGPT subscription compaction returned multiple replacemen
Error message
ChatGPT subscription compaction returned multiple replacement contexts
What it means
While consuming the compaction event stream, more than one CompactionUpdate::Finished event arrived. The protocol allows exactly one replacement context per compaction, so a second one indicates the upstream response stream is malformed or duplicated.
Source
Thrown at crates/openai_subscribed/src/openai_subscribed.rs:842
responses_request,
&extra_headers,
)
.await
.map_err(LanguageModelCompletionError::from)
})
.await?;
let mapper = OpenAiResponseEventMapper::new(PROVIDER_ID);
let mut event_stream = language_model::stream_in_background(
mapper.map_stream(response_stream.boxed()).boxed(),
cx.background_executor().clone(),
);
let mut compacted_context = None;
let mut usage = language_model::TokenUsage::default();
while let Some(event) = event_stream.next().await {
match event? {
LanguageModelCompletionEvent::Compaction(
language_model::CompactionUpdate::Finished(context),
) => {
if compacted_context.replace(context).is_some() {
return Err(LanguageModelCompletionError::Other(anyhow!(
"ChatGPT subscription compaction returned multiple replacement contexts"
)));
}
}
LanguageModelCompletionEvent::UsageUpdate(updated_usage) => {
usage = updated_usage;
}
_ => {}
}
}
let context = compacted_context.ok_or_else(|| {
LanguageModelCompletionError::Other(anyhow!(
"ChatGPT subscription compaction returned no replacement context"
))View on GitHub (pinned to 5a9b9558db)
Solutions
- Retry the compaction request; a duplicated finished event is usually a transient stream glitch
- If it reproduces consistently, capture the raw event stream and report it — the model/endpoint is emitting multiple compaction completions
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/openai_subscribed/src/openai_subscribed.rs:810 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zed-industries/zed@5a9b9558db (2026-08-20).
Data as JSON: /api/errors/0a4d82c76a1addaf.
Report an issue: GitHub.