Skip to content

Docs · Product

The check

One check run carries the whole product: Read PR / Review complete. It appears on every pull request in a watched repo and tells you, per commit, whether the changed files have been read.

A completed Read PR check run on a pull request
A completed check. The summary names each reviewer and their reading time.

States

StateTitleMeaning
Queued / in progressWaiting on reviewFiles are recorded, thresholds are set, reading has not finished. This is the normal state of an open PR. It is amber, not red.
SuccessAll files readEvery non-excluded file met its threshold for the required readers on the current head commit.
Action requiredReading incompleteA review was submitted before the files were read. The summary lists which files still need time.
NeutralRead PR paused, not enforcedBilling is unresolved on a private repo. The check states why and links to billing. It never blocks the merge.

The check is per commit. A new push re-evaluates against the new head: files with unchanged diffs keep their read state, changed files start over.

Requiring the check

Without branch protection the check is informational. To gate merges, make it required on your default branch:

  1. GitHub repo SettingsBranches → edit the rule for your default branch.
  2. Enable Require status checks to pass before merging.
  3. Add Read PR / Review complete to the required list.
gh api repos/:owner/:repo/branches/main/protection \
  --field 'required_status_checks.contexts[]=Read PR / Review complete'

Rulesets work the same way: add the check by name to a required status checks rule.

Fail open, never closed

A billing problem is an amber event, not a red one. Trials that lapse, payments that fail past their 14-day grace window, and canceled subscriptions all move private-repo checks to neutral, which passes branch protection. Action required is reserved for one thing: files not yet read.