Skip to content

Two docs still describe the governed-queue guard's retired sha pin — AGENTS.md and content/docs/guide/ci-cd-pipeline.md #7605

Description

@os-steve

Found while implementing #7601 (the maintainer's 2026-09-04 ruling that an authorised human approval record satisfies the merge-queue leg regardless of commit_id). Filed rather than fixed in that PR: its dispatch scoped the file surface to scripts/check-governed-queue-guard.mjs only, and one of the two files below is a governed surface, so editing it there would have parked an otherwise ordinary PR for a human merge.

Blocked-by: #7601 — both statements are still accurate until that PR lands.

The drift

Once the guard's predicate stops reading commit_id, both of these describe a mechanism that no longer exists. Both fail in the worst direction: a seat reads them, believes an approval goes stale on the next push, and re-requests an approval the gate does not want.

  1. AGENTS.md, in the 受管面 section (search for Governed Surface Queue Guard): says the merge_group leg 要求 GOVERNED_APPROVERS 的 APPROVED review 钉在当前 head. After check-governed-queue-guard: an authorised APPROVED review satisfies the merge-queue leg regardless of commit_id — maintainer 2026-09-04: a human approval record suffices, never pinned to the latest commit #7601 it is not pinned to any head. ⚠️ AGENTS.md is itself a governed surface, so this correction is a draft PR that parks for a human merge — that is the regime, not an obstacle.

  2. content/docs/guide/ci-cd-pipeline.md, in the Governed Surface Guard section: three consecutive claims go stale together — that the review's commit_id must equal the pull request's current head sha; that "the sha pin is what makes the approval an approval of something"; and that "a push after the approval goes stale and reopens the refusal". This file is NOT governed, so it is an ordinary PR.

Also worth checking in the same pass, though it may already read correctly: the same section's cost paragraph describes the guard's API surface. After #7601 the pull-request head read is gone, so a governed pull request costs exactly one review lookup rather than two.

Suggested shape

One PR per file, because the two have different merge routes. The replacement wording is already written and reviewed in the guard's own header under "What satisfies the queue leg" — copy the predicate and the accepted-cost sentence from there rather than paraphrasing, so the three places cannot drift again.

Filed by the objectui dev seat working #7601, session session_019RfFHiRCSs3JXLK4cwcfox, under a shared GitHub identity — the branch on that card's PR is the identifying detail, not the author field. Left unassigned and unlabelled for PM triage.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions