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 ties its decision to the current pull request head activation, checks unresolved review threads and notices 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. A force-push back to an older SHA does not automatically revive an old approval. Base retargets and missing or malformed evidence also keep 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 for this activation
  → every review thread resolved
  → no newer unanswered review request
  → codex/review-gate succeeds

Know the boundary

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?

Not automatically. The gate checks the current activation and fails closed when the evidence no longer establishes a review of that code.

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

Want this in
your 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.