Preserve paginated thread metadata across resumes - #35678
Merged
copyberry[bot] merged 1 commit intoJul 27, 2026
Merged
Conversation
## 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
Bot
force-pushed
the
copyberry/codex-internal-to-codex-oss/b393d0727afcba70fda7f50a6f2dcca0632745b4
branch
from
July 27, 2026 22:12
18ba0af to
4d1f66b
Compare
copyberry
Bot
deleted the
copyberry/codex-internal-to-codex-oss/b393d0727afcba70fda7f50a6f2dcca0632745b4
branch
July 27, 2026 22:14
joshhubert-dsp
temporarily deployed
to
issue-triage
July 27, 2026 22:26 — with
GitHub Actions
Inactive
joshhubert-dsp
temporarily deployed
to
issue-triage
July 27, 2026 22:26 — with
GitHub Actions
Inactive
joshhubert-dsp
temporarily deployed
to
issue-triage
July 27, 2026 22:26 — with
GitHub Actions
Inactive
elpidioportela-afk
temporarily deployed
to
issue-triage
July 27, 2026 22:32 — with
GitHub Actions
Inactive
elpidioportela-afk
temporarily deployed
to
issue-triage
July 27, 2026 22:32 — with
GitHub Actions
Inactive
elpidioportela-afk
temporarily deployed
to
issue-triage
July 27, 2026 22:32 — with
GitHub Actions
Inactive
fredzannarbor
temporarily deployed
to
issue-triage
July 27, 2026 22:51 — with
GitHub Actions
Inactive
fredzannarbor
temporarily deployed
to
issue-triage
July 27, 2026 22:51 — with
GitHub Actions
Inactive
fredzannarbor
temporarily deployed
to
issue-triage
July 27, 2026 22:51 — with
GitHub Actions
Inactive
fredzannarbor
temporarily deployed
to
issue-triage
July 27, 2026 22:53 — with
GitHub Actions
Inactive
teamleaderleo
temporarily deployed
to
issue-triage
July 27, 2026 23:03 — with
GitHub Actions
Inactive
teamleaderleo
temporarily deployed
to
issue-triage
July 27, 2026 23:03 — with
GitHub Actions
Inactive
teamleaderleo
temporarily deployed
to
issue-triage
July 27, 2026 23:03 — with
GitHub Actions
Inactive
teamleaderleo
temporarily deployed
to
issue-triage
July 27, 2026 23:04 — with
GitHub Actions
Inactive
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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
reads, including reads by an explicit rollout path.
fills only missing fields instead of overwriting existing ones.
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.