Rulesets docs don't disclose that bypass_actors is not honored by auto-merge completion

未关闭 适合新手
#45,265 2 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
76/100
Issue 类型
文档
描述清晰度
描述清楚
活跃度
冷清
技术栈
github
领域
documentation

调研方向

从受影响的两个 Rulesets 页面开始:“Creating rulesets for a repository”和“Available rules for rulesets”,尤其是 bypass 列表和拉取请求规则部分。检查报告中的 auto-merge 行为,并添加一条清晰的限制说明,涵盖 bypass_actors 和 auto-merge 完成;当两个相关页面都准确解释这一行为时,该 issue 即完成。

由索引模型根据 Issue 内容生成。

描述

content needs SME repositories
Page(s) affected
What's wrong

The Rulesets documentation describes bypass_actors (a Team, Role, GitHub App/Integration, etc. added to a ruleset's bypass list) as being able to bypass a rule such as "Require a pull request before merging" / "Require review from Code Owners". It does not document an important limitation we've confirmed by testing: the bypass grant is only honored by a synchronous, direct merge call — it is not consulted by GitHub's async auto-merge completion process (gh pr merge --auto, enablePullRequestAutoMerge, or the "Merge when ready" UI button).

Repro / evidence
  • Ruleset: pull_request rule, require_code_owner_review: true, required_approving_review_count: 1, with a GitHub App added to bypass_actors (Integration type; tested both bypass_mode: "always" and "pull_request").
  • A PR approved by the bypass-listed actor with auto-merge enabled (gh pr merge --auto --squash) stayed mergeStateStatus: BLOCKED / reviewDecision: REVIEW_REQUIRED indefinitely — confirmed via a clean 10-minute poll (every 20s, 30/30 polls) with a fresh trigger event and zero manual intervention.
  • The same PR, same bypass-eligible actor, merged instantly when calling the merge endpoint directly instead:
    gh api repos/OWNER/REPO/pulls/N/merge -X PUT -f merge_method=squash
    

So the bypass mechanism works, but only for one of the two documented ways to merge a PR, and the docs don't call this out anywhere.

What we'd like to see

A note on the bypass_actors / rules pages clarifying that bypass grants are not currently honored by auto-merge completion, and that automation relying on bypass should call the merge endpoint directly rather than enabling auto-merge, until/unless this is fixed at the platform level.

Related reports (same underlying platform behavior, not a docs-only issue)
主要语言
TypeScript
星标
20.9k
派生
68.8k
平均合并
13 小时 55 分钟
30 天内合并 PR
105

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

github/docs 的其他 Issue

查看 github/docs 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。