Skip to content

Enable paginated thread history in app-server - #33364

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

Enable paginated thread history in app-server#33364
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/c42f9b268e29d049843330f474fa3ecde12f5b8a

Conversation

@copyberry

@copyberry copyberry Bot commented Jul 15, 2026

Copy link
Copy Markdown

Enable paginated thread history in app-server

What changed

  • Allow thread/start to select experimental historyMode: "paginated" when the thread store supports turn and item pagination.
  • Resume paginated threads with bounded model context and require excludeTurns: true instead of loading full history.
  • Return turnsBackwardsCursor and itemsBackwardsCursor from thread/resume so clients can hydrate durable history through thread/turns/list and thread/items/list while newer records arrive through live notifications.
  • Reject operations that still require full history, including initialTurnsPage, thread/read with includeTurns: true, thread/rollback, and detached review.
  • Make item cursors independent of the optional turnId filter.

Testing

  • Cover paginated thread start, cold and live resume, backwards cursor hydration, metadata reads, unsupported operations, and stores without pagination support.

## What changed

- Allow `thread/start` to select experimental `historyMode: "paginated"` when the thread store supports turn and item pagination.
- Resume paginated threads with bounded model context and require `excludeTurns: true` instead of loading full history.
- Return `turnsBackwardsCursor` and `itemsBackwardsCursor` from `thread/resume` so clients can hydrate durable history through `thread/turns/list` and `thread/items/list` while newer records arrive through live notifications.
- Reject operations that still require full history, including `initialTurnsPage`, `thread/read` with `includeTurns: true`, `thread/rollback`, and detached review.
- Make item cursors independent of the optional `turnId` filter.

## Testing

- Cover paginated thread start, cold and live resume, backwards cursor hydration, metadata reads, unsupported operations, and stores without pagination support.

GitOrigin-RevId: c42f9b268e29d049843330f474fa3ecde12f5b8a
@copyberry
copyberry Bot force-pushed the copyberry/codex-internal-to-codex-oss/c42f9b268e29d049843330f474fa3ecde12f5b8a branch from a75e155 to da61f7d Compare July 15, 2026 15:30
@copyberry
copyberry Bot merged commit da61f7d into main Jul 15, 2026
14 of 32 checks passed
@copyberry
copyberry Bot deleted the copyberry/codex-internal-to-codex-oss/c42f9b268e29d049843330f474fa3ecde12f5b8a branch July 15, 2026 15:31
@github-actions github-actions Bot locked and limited conversation to collaborators Jul 15, 2026
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.

3 participants