Skip to content

feat(review-desk): Page the Review item list with a cursor - #2480

Merged
dcramer merged 1 commit into
mainfrom
ref/review-desk-paging
Nov 1, 2026
Merged

dcramer merged 1 commit into
mainfrom
ref/review-desk-paging

Conversation

@sentry-junior

@sentry-junior sentry-junior Bot commented Oct 31, 2026 •

Copy link
Copy Markdown
Contributor

The review desk list returned at most 100 items, so open items past that limit never showed.

GET /api/review-items now pages the open items:

  • It takes cursor and limit (default 50, max 100). It returns nextCursor when more open items follow.
  • The order is updated_at desc, id desc. searchReviewItems takes an after position in that order.
  • The cursor uses the same shape as memory paging: base64url JSON with the position, the list filters (q and conversationId), and a version. A cursor from a different list gets a 400.
  • A search (q) also returns the newest archived matches, up to 50, with the first page only. moreArchived is set when more match, and the desk then tells the person to add words to the search.

Only open items page. With one order across open and archived items, an item that closes while a person reads would move below the cursor and show again on a later page. An open-only cursor does not have this problem: a closed item only leaves the open order. An item that changes while a person reads moves to the top, so a later page does not show it. A refresh shows it again.

The review desk and the Conversation review bar use useInfiniteQuery and the shared LoadMorePagination button, like the memory page. The bar shows 50+ when more items follow, and its side panel has Load more.

Mock reporting and the dashboard e2e mock still return { items: [...] }, which is valid because nextCursor and moreArchived are optional.

Part of the review desk cleanup for #2401.

via David Cramer.

--

View Session [Sentry]

@vercel

vercel Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
junior-docs Ready Ready Preview Nov 1, 2026 9:52pm UTC

Request Review

@cursor cursor Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

@github-actions

github-actions Bot commented Oct 31, 2026 •

Copy link
Copy Markdown
Contributor

2 screenshot changes — 2 changed · 0 added · 0 removed

Review screenshots in Frameshift

Conversation Child Agent Drawer · Desktop
Conversation Child Agent Drawer · Desktop
Changed
Conversation Child Agent Drawer · Mobile
Conversation Child Agent Drawer · Mobile
Changed

@dcramer

dcramer commented Nov 1, 2026

Copy link
Copy Markdown
Member

Needs rebased

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit d6a3e1d. Configure here.

A failed next page set the query error, and the page then showed only the
list error. Show that error only when no page loaded, and show a short
error under Load more for a failed next page.

Co-Authored-By: David Cramer <[email protected]>
@sentry-junior
sentry-junior Bot force-pushed the ref/review-desk-paging branch from 38bb4e9 to 1b6ca1b Compare November 1, 2026 21:51
@dcramer
dcramer merged commit 1eff727 into main Nov 1, 2026
41 checks passed
@dcramer
dcramer deleted the ref/review-desk-paging branch November 1, 2026 21:55

This branch was successfully deployed

1 active deployment
Preview – junior-docs — 1b6ca1bd Deployed Nov 1, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk: high PR risk score: high

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant