Implemented in ci-toolkit

A Codex review gate for GitHub pull requests

A green review from yesterday can describe code that is no longer on the branch. The ci-toolkit review gate requires evidence for the current PR head—the commit currently proposed for merge—and the latest time that commit became the head. It also checks unresolved threads and newer unanswered review requests. The merge requirement is an App-owned GitHub Check Run.

Supported in the private ci-toolkit GitHub App. Runnerless itself is in early development; signing up does not enable this feature.

How it works

01 /

Bind evidence to the current code

The gate verifies trusted Codex evidence for every open PR sharing the head SHA (Git’s commit identifier). Restoring an earlier commit with a force-push still requires fresh review evidence; it does not revive the old approval. Changing the target branch, or missing or malformed evidence, also keeps the gate from passing.

02 /

Wait for the conversation to finish

A clean verdict alone is insufficient when review threads remain unresolved or a newer authorized review request is unanswered. An unanswered request becomes a failure after the review window and the next reconciliation interval, giving a concrete failure state instead of an indefinite green assumption.

03 /

Record deliberate emergency exceptions

A maintainer or administrator can apply codex: bypass-review. The gate verifies the applying actor and records the authorization, with an optional incident reason posted within ten minutes. This bypass covers Codex and thread evidence; other CI, PR policy and strict base freshness still apply.

A concrete example

Workflow example

Current PR head
  → trusted Codex verdict since this commit became the head
  → every review thread resolved
  → no newer unanswered review request
  → codex/review-gate succeeds

Availability and limits

Current limits

The gate enforces review evidence; it cannot guarantee that an AI review finds every defect. The editable Codex summary card is not sufficient evidence by itself. App-authored, verified release PRs have a narrowly checked exception rather than a blanket label exemption.

Common questions

Does an old approval survive a force-push?

No. Restoring an earlier commit still requires fresh evidence for the latest time it became the PR head. The gate refuses to pass when that evidence is missing.

Does a bypass label skip every merge check?

No. It only bypasses the review and thread evidence after verifying a maintainer or administrator applied it.

Runnerless / early access

Interested in this workflow?

Get early access ↗

Register interest and tell us what slows your CI down. The optional follow-up questions come after your email is saved.