fix(parser): require structured queued-picker evidence#312
Conversation
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_dd02da75-62c1-44fb-9bdc-dba885c33fbc) |
|
Warning Review limit reached
Next review available in: 42 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8fb0abc7bc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| const PICKER_SELECTED_NUMBERED_OPTION_RE = | ||
| /^\s*[>❯›]\s*(?:[☐☑◉○●◯✓✔]\s*)?\d+\.\s+\S.+$/; |
There was a problem hiding this comment.
Handle glyph-selected queued options
The option matcher just above accepts glyph-only numbered choices such as ◉ 1. ... or ☑ 1. ..., but this new selected-option regex only reports a selection when an arrow also precedes the glyph. For a queued-message Claude picker rendered with a header plus glyph-selected choices and fewer than two auxiliary choices, hasStructuredClaudePicker stays false, so the delivery guard treats the open picker as safe and may type into it.
Useful? React with 👍 / 👎.
Summary
Context
PR #311 merged externally at
579c814while its final Codex review was still surfacing this false-positive case. This follow-up contains only the reviewed fix commit8fb0abc; the branch diff against currentmainis two files, 42 additions and 5 deletions.Test plan
Press up to edit queued messagesreturnsfalsetruebunx vitest run --silent— 98 files, 1,829 tests passedbun run pre-pr— typecheck plus 61 harness tests passedbun run buildbun run typecheckgit diff --checkrun_tests.sh— 98 files, 1,829 tests passedReview provenance
Fixes the final Codex review thread from #311: #311 (comment)
Note
Low Risk
Localized heuristic change in screen-parser picker detection with targeted regressions; misclassification could still affect automation that gates on interactive_overlay.
Overview
Tightens Claude picker detection when the navigation footer is "Press up to edit queued messages", so normal transcript (checklist headers, numbered bullets, composer line) above that footer is no longer treated as an active menu.
hasPickerNavigationBlockno longer treats any single Claude picker chrome line as sufficient. It now requires structured evidence: a checkbox-style header and a cursor-selected numbered option (PICKER_SELECTED_NUMBERED_OPTION_RE), or at least two aux lines like "Type something" / "Chat about this". Real AskUserQuestion pickers that share the same queued-message footer still classify as pickers.Tests add a regression for checklist + numbered transcript + queued footer → not a picker, and a positive case for a structured picker with that footer → is a picker.
Reviewed by Cursor Bugbot for commit 8fb0abc. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Fix
hasPickerNavigationBlockto require structured picker evidence when a queued-message footer is presentPICKER_SELECTED_NUMBERED_OPTION_REto match currently-selected numbered options (lines beginning with>,❯, or›).Macroscope summarized 8fb0abc.