Skip to content

Preserve paginated thread metadata across resumes - #35678

Merged
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/b393d0727afcba70fda7f50a6f2dcca0632745b4
Jul 27, 2026
Merged

Preserve paginated thread metadata across resumes#35678
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/b393d0727afcba70fda7f50a6f2dcca0632745b4

Conversation

@copyberry

@copyberry copyberry Bot commented Jul 27, 2026

Copy link
Copy Markdown

Preserve paginated thread metadata across resumes

Why

Paginated rollout history may contain only a bounded suffix. Deriving display
metadata from that suffix can replace the thread's original preview, title, and
first user message when the thread is read or resumed.

What changed

  • Use SQLite as the canonical source of display metadata for paginated thread
    reads, including reads by an explicit rollout path.
  • Seed resume metadata tracking from the persisted values so appended history
    fills only missing fields instead of overwriting existing ones.
  • Prefer an explicitly requested rollout path over a stale path stored in
    SQLite while retaining the canonical metadata.

Testing

Added coverage for reads by ID and path, bounded-history resumes across app
server restarts, preservation of existing metadata, initialization of missing
fields, and stale persisted rollout paths.

## Why

Paginated rollout history may contain only a bounded suffix. Deriving display
metadata from that suffix can replace the thread's original preview, title, and
first user message when the thread is read or resumed.

## What changed

- Use SQLite as the canonical source of display metadata for paginated thread
  reads, including reads by an explicit rollout path.
- Seed resume metadata tracking from the persisted values so appended history
  fills only missing fields instead of overwriting existing ones.
- Prefer an explicitly requested rollout path over a stale path stored in
  SQLite while retaining the canonical metadata.

## Testing

Added coverage for reads by ID and path, bounded-history resumes across app
server restarts, preservation of existing metadata, initialization of missing
fields, and stale persisted rollout paths.

GitOrigin-RevId: b393d0727afcba70fda7f50a6f2dcca0632745b4
@copyberry
copyberry Bot force-pushed the copyberry/codex-internal-to-codex-oss/b393d0727afcba70fda7f50a6f2dcca0632745b4 branch from 18ba0af to 4d1f66b Compare July 27, 2026 22:12
@copyberry
copyberry Bot merged commit 4d1f66b into main Jul 27, 2026
14 of 32 checks passed
@copyberry
copyberry Bot deleted the copyberry/codex-internal-to-codex-oss/b393d0727afcba70fda7f50a6f2dcca0632745b4 branch July 27, 2026 22:14
@github-actions github-actions Bot locked and limited conversation to collaborators Jul 27, 2026
@MG665
MG665 temporarily deployed to issue-triage July 27, 2026 22:49 — with GitHub Actions Inactive
@MG665
MG665 temporarily deployed to issue-triage July 27, 2026 22:49 — with GitHub Actions Inactive
@MG665
MG665 temporarily deployed to issue-triage July 27, 2026 22:49 — with GitHub Actions Inactive
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants