`codex resume` context compression drops recent conversation context, making continuation impossible

Open 💬 5 comments Opened May 31, 2026 by Deepwater1000
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

Problem

When using codex resume to continue a previous conversation, the desktop app compresses/truncates the conversation history before loading it into a new context window. However, the compression algorithm prioritizes globally important information over recent information, which means:

  • The last 3-5 turns (which contain the user's latest instructions, current task progress, recent errors, and in-progress decisions) are often discarded or severely truncated.
  • Instead, the summary preserves older background context that, while important in a global sense, is useless without knowing what just happened.
  • Result: the resumed session cannot continue the previous task — it's effectively amnesic.

Reproduction

  1. Have a long conversation (20+ turns) with concrete ongoing work (e.g., debugging a crash, configuring plugins, writing code)
  2. Let the session approach the context limit or naturally trigger codex resume
  3. Resume the conversation
  4. The AI agent cannot recall:
  • The exact error message from the last 2 turns
  • The file path or config value being edited
  • The user's most recent specific instruction
  • What step was next in the task

Expected Behavior

When compressing conversation history for resume, the system should use a recency-weighted approach:

| Recency | Turns | Weight | What to keep |
|---------|-------|--------|-------------|
| 🔴 Most recent | Last 3 turns | ~50% | Full user messages, errors, latest decisions |
| 🟡 Recent | Turns 4-8 | ~30% | Context, chosen approaches, file paths |
| 🟢 Mid | Turns 9-15 | ~15% | Background, failed attempts, sub-tasks |
| ⚪ Early | Older | ~5% | Project goal, completed milestones |

Minimum items any compressed summary must contain

  1. Current task and progress status
  2. User's last 3 specific requests (original text + intent)
  3. Most recent error messages (verbatim)
  4. File paths, config keys, and variable values involved
  5. Content explicitly marked "remember this" by the user

Impact

This makes codex resume unreliable for long-running development sessions where users need to pick up exactly where they left off.

Environment

  • Codex Desktop (latest version)
  • macOS
  • Heavy usage: long sessions (50+ turns), multiple context-compression events per session

View original on GitHub ↗

5 Comments

github-actions[bot] contributor · 2 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #24281

Powered by Codex Action

weidwonder · 2 months ago

+1

Necmttn · 2 months ago

Compression needs a hard recency floor separate from the global summary.

I would keep the last N user/assistant/tool boundary events as structured carryover: latest user instruction, current files/commands, recent errors, open tool ids, and next-step state. The older context can be summarized aggressively, but the recent tail should survive verbatim or near-verbatim.

Otherwise resume optimizes for background knowledge while losing the active task pointer.

---

_Generated with ax._

tajemniktv · 23 days ago

I guess now we know where the cost cuts were hidden in... Same issues here

321Fontsize · 4 days ago

Same issue. After I run codex resume <session_id>, I can only see my first message and the error message ■ Conversation interrupted - tell the model what to do differently. Something went wrong? Hit
/feedback to report the issue.