openai / openai/codex

"Branch in new chat" can cause archived chats to become undeletable

Open
#43,400 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app bug session
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

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

26.901.51231

What subscription do you have?

Plus

What platform is your computer?

Microsoft Windows NT 10.0.19045.0 x64

What issue are you seeing?

Creating a new conversation with the “Branch in new chat” button at the bottom of a chat can break archived-chat deletion.

If the branched chat is archived first, it may disappear immediately instead of appearing in the Archived chats list. After the original chat is archived, the original chat appears in Archived chats, but clicking Delete fails and the archived chat cannot be removed.

This appears to leave the parent chat and its branched descendant in an inconsistent archive/index state.

What steps can reproduce the bug?
  1. Create a parent task A.
  2. Use the chat menu to create a forked task B from A.
  3. Archive B. B disappears from the archived-task list instead of appearing there.
  4. Archive A. A appears in the archived-task list.
  5. Try to delete A from the archived-task list. The deletion fails.
What is the expected behavior?
  • B should appear in Archived chats after being archived.
  • Deleting A should permanently delete A and its branched descendant B.
Additional information

Actual behavior:

  • B disappears after archive and is not listed in Archived chats.
  • A appears in Archived chats, but cannot be deleted.
  • Restarting the latest Codex Desktop app does not resolve the issue.

This is unrelated to Git branches or worktrees. The trigger is the chat-level “Branch in new chat” feature.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue through the “Branch in new chat” flow and the archive/delete actions described in the steps. Trace how the branched chat and its parent are represented in the archived-chat list and index state. Done means B remains visible after archiving, and deleting A successfully removes A and its branched descendant B.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.