Skip to content

The rate-limit message is noise; the review count is signal - #17

Merged
dsnger merged 1 commit into
mainfrom
bots-count-is-the-arbiter
Jul 27, 2026
Merged

The rate-limit message is noise; the review count is signal#17
dsnger merged 1 commit into
mainfrom
bots-count-is-the-arbiter

Conversation

@dsnger

@dsnger dsnger commented Jul 27, 2026

Copy link
Copy Markdown
Owner

Docs-only follow-up to #16, split out because its head never got a genuine review and the rule this row states does not make exceptions for the row itself.

What changes

docs/pr-review-bots.md — the CodeRabbit completion-signal note reaches its terminal form:

The message is noise. The count is signal. In both directions.

Plus: verification is per head, not per PR.

Why this wording, and not the previous one

The row already said "never merge on the check alone". That was right but incomplete, because it implied "Review rate limited" was the thing to watch for. #16 disproved that inside a single PR:

head check message count actually reviewed?
c6c1850 pass Review rate limited 0 no
85c5ce5 pass Review rate limited 1 yes

The same message on both. So it carries no information either way — there is nothing to interpret, weigh, or watch for. One integer per head: 0 means do not merge, anything else means the head was reviewed. The green tick establishes that CodeRabbit's check finished, which is a different fact about a different thing.

The per-head clause records the other thing #16 demonstrated: every push moves the head and expires the previous answer. That PR needed three verifications, and its final head went unreviewed past the point of waiting — which is why this commit is here instead of there.

Five occurrences now: #12, #13, #15, and #16 twice.

Gate B

N/A — the staged path is docs/pr-review-bots.md, explanatory documentation under docs/**.md, which CLAUDE.md §5 exempts. A wrong sentence here costs a confused reader rather than broken behaviour.

Merging

No urgency, and no exception: this merges when its own head has a genuine review record. The rule applies to the PR that writes the rule.

…tions

Fifth occurrence, and #16 supplied the case that settles the wording: the
same "Review rate limited" message appeared on an unreviewed head (count 0)
and on a reviewed one (count 1) within a single PR. So the message is not a
tell to watch for; it carries no information either way, and the row now says
so without hedging — one integer per head, 0 means do not merge.

Also records that verification is per head rather than per PR: every push
moves the target and expires the previous answer. #16 needed three, and its
last head never got a review, which is why this refinement is landing as its
own PR rather than riding along in that one.

Docs-only (docs/**.md), so Gate B is N/A per CLAUDE.md §5's prose exemption.
@cursor

cursor Bot commented Jul 27, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@dsnger, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 49 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 35205f0a-9e3a-40af-97ed-0614b3586ff2

📥 Commits

Reviewing files that changed from the base of the PR and between 854868d and c62455b.

📒 Files selected for processing (1)
  • docs/pr-review-bots.md

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@greptile-apps

greptile-apps Bot commented Jul 27, 2026

Copy link
Copy Markdown

Greptile Summary

Updates the CodeRabbit review-bot guidance to clarify that review-record count is the reliable completion signal and that verification must be repeated for every new PR head.

  • Documents the differing review outcomes observed on two heads of PR Harden three classes from the profiles cycle #16 despite identical rate-limit messages.
  • Clarifies that a zero count blocks merging while a nonzero count confirms review of the current head.
  • Explains that pushing a new head invalidates the previous verification.

Confidence Score: 5/5

The documentation-only PR appears safe to merge.

The revised wording accurately distinguishes status-check completion from a CodeRabbit review record and aligns the merge guidance with the existing commit-specific verification command.

Important Files Changed

Filename Overview
docs/pr-review-bots.md The expanded guidance is consistent with the documented live-head and review-record filtering procedure, with no actionable issue identified.

Reviews (1): Last reviewed commit: "docs(bots): the message is noise, the co..." | Re-trigger Greptile

@dsnger

dsnger commented Jul 27, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@dsnger

dsnger commented Jul 27, 2026

Copy link
Copy Markdown
Owner Author

Merging as an explicit human exception — head `c62455b` was never reviewed by CodeRabbit.

Per-head verification (docs/pr-review-bots.md), run twice against the live head `c62455bc66bf66407cd7c7b8b3508ed4d70e4035`:

  • before re-trigger: 0 qualifying reviews
  • after `@coderabbitai review` + ~5 min wait: 0 qualifying reviews
  • total CodeRabbit review records on this PR, any head: 0

CodeRabbit's status check is green in both cases. The count is the arbiter, and it says unreviewed.

What its comments say — a variant worth recording, distinct from the four "Review rate limited" occurrences already documented:

  • 12:13Z"Review limit reached… you've reached your PR review limit, so we couldn't start this review. Next review available in 49 minutes." The review never started.
  • 16:25Z (re-trigger) — "✅ Action performed — Review finished. Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits." It reports completion and produced no review record — it appears to treat the never-started review as already done, so the re-trigger cannot recover this head.

Decision: Daniel's, explicitly, following the #14 precedent (green check, re-trigger produced nothing, merged on a recorded human decision). This PR is docs-only — it changes docs/pr-review-bots.md and nothing else — and Greptile reviewed it (check green). The unreviewed head is recorded here and in the merge commit body.

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Your plan includes PR reviews subject to rate limits. More reviews will be available in 43 minutes.

@dsnger
dsnger merged commit 30154f9 into main Jul 27, 2026
3 checks passed
@dsnger
dsnger deleted the bots-count-is-the-arbiter branch July 27, 2026 16:31
dsnger added a commit that referenced this pull request Jul 27, 2026
Docs-only, two files, no plugin path — no version bump.

CodeRabbit leaves Wait for after five consecutive unreviewed heads (#12, #13,
#15, #16, #17 — the last with zero review records on the PR) followed by a
genuine review on #18. Real findings source, unpredictable delivery, and a
completion signal that fires regardless of whether a review happened: the
opportunistic category by this file's own definition. Wait for is now empty.

Row additions: the status check goes green whether or not a review happened,
and `@coderabbitai review` is a no-op while automatic reviews are active
(CodeRabbit's own message on #17), which retroactively explains #14's
"re-trigger produced nothing". Plan corrected to Free; "Pro Plus" was observed
on PR #1 only.

The count rule's two facts separated: the per-head count remains the arbiter of
whether a head was reviewed, for any bot; the recorded-human-decision
requirement binds only bots under Wait for, and is dormant while that list is
empty. Every head reaching a PR has already passed Gate B, so a quiet
supplementary reviewer needs no exception.

MANIFEST.md: the bare `CLAUDE.md` row resolved to the repo root and produced a
false Major on #18. Qualified to source-files/CLAUDE.md, with the three files
distinguished, and root §6 (context canary) recorded as deliberately outside
the §1–§5 template range and never to be synced into the scaffolded template.

Pre-merge diagnostic: per-head count 1 on head 2634bf2 — reviewed. One Minor
finding (drop or explicitly optionalize the re-trigger step) collected, not
actioned, per §5's Minor/Nit rule.

Gate B: N/A — every path is explanatory documentation per §5's prose rule.
Battery green at each commit.
dsnger added a commit that referenced this pull request Jul 27, 2026
Resolves the Minor collected on #19. The file established that
`@coderabbitai review` is a no-op while automatic reviews are active, then
instructed operators to run it anyway inside the deterministic merge
verification — described twice, once imperatively and once undercut.

The imperative is out; the procedure ends at the DISMISSED filter and the
step survives once, as an explicitly optional note beside the human-exception
clause it precedes, which also scopes it to Wait-for bots.

Facts kept: the no-op behaviour with its #17 source, that #14 and #17 both
produced nothing, that nothing claims a re-trigger cannot work (only that
this account has never seen one work), and that `full review` must not be
claimed effective without a run observed here.

Pre-merge diagnostic: per-head count 0 on head 55c3d74 — which blocks nothing,
Wait for being empty. Recorded on the PR: this 0 is a false negative. CodeRabbit
reported "No actionable comments were generated in the recent review" over
286c55f..55c3d74, so the head was reviewed and simply had nothing to say; a
zero-finding review posts no review record. The count conflates "not reviewed"
with "reviewed, clean". Follow-up, not fixed here.

Gate B: N/A — single explanatory documentation path per §5's prose rule.
Battery green before commit.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant