Skip to content

Threads disappear from sidebar after updating — migration version-38 checksum mismatch caused by PR #28655 #28689

Open

Description

@creativeincode

What version of the Codex App are you using (From “About Codex” dialog)?

26.611.61753

What subscription do you have?

Pro

What platform is your computer?

Darwin 23.6.0 arm64 arm

What issue are you seeing?

After updating Codex on June 17, 2026, two threads completely disappeared from the left sidebar — one was a worktree session, the other a regular "local change" session.

The sidebar shows no trace of them. No crash or error was shown. 😭

This appears to be caused by the migration version-38 checksum mismatch introduced by the revert in PR #28655, which was explicitly warned about by the chatgpt-codex-connector bot before merge:

"If any state DB has already recorded this reverted migration as version 38, deleting it leaves version 38 represented by the different 0038_external_agent_config_imports.sql file; the runtime migrator only ignores missing newer versions and still validates checksums for known versions, so those users will fail state DB migration on startup with a checksum mismatch instead of opening their existing sessions."

Relevant PR: openai/codex#28655
Commit: https://github.com/openai/codex/pull/28655/commits
Deleted migration file: codex-rs/state/migrations/0038_threads_recency_at.sql
(which added ALTER TABLE threads ADD COLUMN recency_at INTEGER NOT NULL DEFAULT 0;)

What steps can reproduce the bug?

  1. Install or use Codex with migration 0038_threads_recency_at.sql applied (i.e., any version that included PR #27910)
  2. Create new threads in Codex
  3. Update Codex to a version that includes the revert in PR #28655
  4. Launch Codex — the migrator encounters a checksum mismatch for version 38
  5. Threads created while PR #27910 was active (after #27910, before #28655) fail to load silently — sidebar shows no trace of them, no error shown to user

What is the expected behavior?

Existing threads should persist across updates. PR #28655 should've included a compatibility path for the old version-38 checksum (or renumbered the migration history), as the bot explicitly recommended, before merge.

Additional information

The chatgpt-codex-connector bot flagged this as a required fix in its PR review comment on #28655 before it was merged. The warning was not acted on. Users who had PR #27910 already applied to their local state DB are silently losing thread history. 😭

Affected sessions: 1 worktree thread, 1 regular local-change thread — both lost after update.

Possible fix: add a compatibility migration path that accounts for the old version-38 checksum, or provide a manual recovery path for affected users (e.g., how to inspect/repair the state DB via sqlite3).

Note: This is distinct from #28607 and #28664. Those issues describe threads missing/unopenable without identifying a root cause. This issue identifies the specific cause: the migration version-38 checksum collision from PR #28655, which the bot explicitly flagged as a P1 risk before merge.

Timeline

  • App bundle timestamp: 2026-06-16 22:24:19 CDT (build/sign time, not apply time)
  • PR #28655 merged: ~2026-06-17 00:00–01:00 CDT (showed "3 hours ago" at 03:00 CDT)
  • Update applied: ~2026-06-17 01:05 CDT (verified by user action)
  • Thread loss observed: immediately after relaunch post-update

State DB forensics

  • Two sets of logs_2.sqlite found in ~/.codex — the pre-update DB (70.6 MB, last modified 2026-06-17 01:08 CDT) confirms the update applied at ~01:05–01:09 CDT, after PR #28655 merged.
  • Maintainers: the pre-update DB likely still contains the missing threads — a recovery guide (e.g., via sqlite3) would help affected users.

Activity

  1. added
    bugSomething isn't working
    sessionIssues involving session (thread) management, resuming, forking, naming, archiving
    on Jun 17, 2026
  2. github-actions commented on Jun 17, 2026

    @github-actions
    Contributor
  3. peterhanneman commented on Jun 19, 2026

    @peterhanneman

    Have lost several threads this week through multiple Codex versions including the most recently deployed at time of writing (26.616.31447) but the thread content is still present on disk:

    • thread IDs/titles still appear in session_index.jsonl
    • rollout-*.jsonl files exist under .codex\sessions for the missing thread IDs
    • SQLite threads rows still exist for IDs

    Wildly frustrating loosing millions of tokens of work to bugs like this.

  4. burmjohn commented on Jun 26, 2026

    @burmjohn

    All of my remote threads running on my Linux box had the same issue on my windows desktop and laptop. The entire thread history was gone, and it only happened after the last update.

    I knew I still had a job running, so I opened that project, started a new chat, and asked, “Is there an active thread running? I can’t see it.” I also gave Codex a screenshot showing no history under the project to give it context. It confirmed that the thread was still active and said it couldn’t add it back to the project’s thread list, but it was able to pin it so I could see it again, so odd...

    This is 100% a bug in the Codex app. The data is still there, and the SQLite database contains all of the thread information. The app is just failing to parse or process it correctly and display it in the project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething isn't workingsessionIssues involving session (thread) management, resuming, forking, naming, archiving

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions