Repository navigation
Single-reviewer approval gate and clearer awaiting-review status - #4639
Conversation
…iew as action_required Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: f280c771-d797-4eb1-a96f-ada49c076e86
🚦 Submission status: 👀 Ready for reviewRisk tier: Why this tier
Automated checks
Review
Commands
Updated for |
|
🟡 Contributor Reputation Check: MEDIUM risk
Maintainers: please review this contributor before merging. |
There was a problem hiding this comment.
🔵 Needs a closer look
It weakens a security-sensitive review policy and therefore requires explicit maintainer review.
1 open finding
What changed in this PR
This PR reduces high-risk approval requirements and distinguishes review-waiting states from automation failures.
Changes:
- Requires one core-maintainer approval for high-risk PRs.
- Publishes
action_requiredwhen only approval is missing. - Updates tests and maintainer documentation.
| File | Description |
|---|---|
.github/risk-tiers.yml |
Reduces high-risk approvals to one. |
eng/submission-gate.mjs |
Adds conclusion-selection logic. |
eng/submission-gate.test.mjs |
Tests approval and conclusion behavior. |
docs/maintainers/submission-gate.md |
Documents the revised policy. |
🧠 Review effort: Balanced
Give feedback about Copilot approvals in this survey to enter a drawing for a $150 gift card.
| const fields = pending | ||
| ? { status: "in_progress", output } | ||
| : { status: "completed", conclusion: evaluation.passed ? "success" : "failure", completed_at: new Date().toISOString(), output }; | ||
| : { status: "completed", conclusion: gateConclusion(evaluation), completed_at: new Date().toISOString(), output }; |

Pull Request Checklist
npm startand verified thatREADME.mdis up to date.mainbranch for this pull request.Description
Only one maintainer reviews, so the two-approval requirement is dropped and the gate result is made clearer when a PR is just waiting on review.
merge-risk:highnow needs 1 approval from a core maintainer (or an admin/maintain user while the core pool is empty), down from 2. Low and medium already needed 1.submission-gatecheck now concludesaction_requiredinstead offailurewhen the only blocker is a missing approval. It still blocks merging as a required check, but reads as "waiting for a reviewer" rather than a broken workflow. Failed checks, infrastructure failures, pending checks and requested changes still reportfailure. Implemented via a newgateConclusion()ineng/submission-gate.mjs.docs/maintainers/submission-gate.md) and tests updated.Validation:
node --test eng/submission-gate.test.mjspassed (48/48).npm run buildwas not run.Type of Contribution
Additional Notes
The Submission Gate workflow run itself is unchanged; only the published
submission-gatecheck conclusion differs.By submitting this pull request, I confirm that my contribution abides by the Code of Conduct and will be licensed under the MIT License.