openai / openai/codex

[Desktop regression] Auto-review Guardian threads appear as duplicate project sidebar tasks

Open
#38,986 6 comments 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?

ChatGPT desktop app / Codex 26.810.52044 (build 6662).

What platform is your computer?

macOS 26.5.2 (build 25F84).

What issue are you seeing?

Internal Auto-review / Guardian conversations are being surfaced as ordinary user tasks in the Codex project sidebar.

The leaked entries appear in two forms:

  1. Raw reviewer threads whose titles begin with:
    • The following is the Codex agent history whose request action you are assessing...
    • The following is the Codex agent history added since your last approval assessment...
  2. Duplicate sidebar tasks whose titles are copied from the parent user's original prompt, so several apparently identical tasks appear under the same project.

Opening a raw entry shows the internal approval-review transcript, tool results, and the final JSON decision such as {"outcome":"allow"}. These are not user-created tasks.

Auto-review itself works and is useful. The problem is only that its internal Guardian threads are being indexed and displayed as normal project tasks.

Steps to reproduce
  1. Enable Auto-review ("帮我批准") in the Codex desktop app.
  2. Work in several local projects.
  3. Run a task that requests an approval or sandbox escalation.
  4. Allow Auto-review to assess the request.
  5. Open or refresh the project sidebar.
  6. Observe a new raw Guardian task, or a duplicate task using the parent prompt as its title.

During diagnosis, a fresh internal record was created immediately after one read-only network approval, with a title beginning with the raw Guardian review prompt. This makes the problem reproducible on the current build.

Local diagnostic evidence (sanitized)

Read-only inspection of ~/.codex/state_5.sqlite showed:

  • Normal user tasks are stored with thread_source='user'.
  • The unwanted entries are stored with thread_source='subagent'.
  • Raw entries use Guardian / Auto-review metadata, including source={"subagent":{"other":"guardian"}} and the codex-auto-review model.
  • Affected internal rows have non-empty title and preview, which allows them to enter normal sidebar queries.
  • PRAGMA integrity_check returns ok.
  • 57 active normal user tasks remained intact during diagnosis.
  • Four older internal subagent rows resurfaced as visible tasks, and one additional Guardian row was created during a controlled reproduction.
  • Auto-review remained enabled throughout.

Older completed internal rows could be archived through the supported thread archive API. However, a newly completed Guardian row can temporarily return an "active writer" error when archived. A previous DB-only archive was also not fully durable because additional old internal rollouts were indexed again later.

No raw database, rollout, prompt, local path, account information, or private project screenshot is attached because those can contain sensitive conversation content.

Expected behavior
  • Auto-review should continue reviewing approval requests normally.
  • Internal Guardian / codex-auto-review threads should be ephemeral, automatically archived, or excluded from every user-facing project/sidebar query.
  • Only the parent user task should appear in the sidebar.
  • Existing normal user tasks must remain unaffected.
  • A migration or cleanup should hide already accumulated completed Guardian threads.
Actual behavior

Internal approval-review sessions appear as ordinary project tasks across multiple projects. They create meaningless duplicates, expose raw internal review transcripts, and make the sidebar difficult to use.

Impact
  • Severe sidebar clutter across projects.
  • Duplicate task names that are indistinguishable from real work.
  • Risk of exposing internal transcripts and tool output in a user-facing surface.
  • Manual cleanup is incomplete or may need to be repeated.
  • Users may disable Auto-review even though the official feature itself is working correctly and is useful.
Related issues
  • #19822 — reported the same raw Guardian title and internal approval-review thread appearing in normal history; now closed.
  • #32588 — active Guardian rows and oversized Guardian metadata accumulating in the desktop thread store.
  • #18364 — broader macOS sidebar/session pollution and non-durable DB-only cleanup.

This appears to be a recurrence/regression specifically visible in the current macOS desktop sidebar.

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

Trace the desktop project-sidebar indexing and query path, using ~/.codex/state_5.sqlite only as diagnostic evidence; compare thread_source='user' with Guardian subagent rows and codex-auto-review metadata. Verify that new and accumulated Guardian threads stay out of user-facing sidebar results, Auto-review still works, and normal tasks remain visible.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, rust, sqlite
Domain
databases, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.