CalvinKirs opened a new pull request, #70274:
URL: https://github.com/apache/doris/pull/70274

   ### Background
   
   The repository uses .asf.yaml to manage required CI checks and pull request 
reviews for master and seven release branches. ASF Infra currently reconciles 
these settings through GitHub's classic branch protection API.
   
   ### What problem does this PR solve?
   
   Issue Number: None
   Related PR: None
   PR Type: Bugfix
   
   Problem Summary:
   
   ASF Infra reported that GitHub's classic branch protection API fails with 
the number of required check contexts, without returning an actionable error. 
Migrate all eight protected branches to github.rulesets using the convenience 
syntax documented at 
https://github.com/apache/infrastructure-asfyaml/blob/main/README.md#rulesets. 
Preserve each branch's check names, non-strict status-check policy, stale 
review dismissal, approval count, and Code Owner requirement, with explicit 
deletion and force-push restrictions.
   
   ### Details
   
   - **Frequency:** When Infra reconciles branch protection settings affected 
by the GitHub API bug.
   - **Root cause:** The classic branch protection API cannot process the 
required check contexts reliably, as reported by Infra.
   - **Why existing tests missed it:** This failure occurs in GitHub's remote 
configuration API; Doris runtime tests do not exercise that API.
   - **Fix:** Replace protected_branches with eight named branch rulesets, 
using status-check name lists and required_status_checks_strict: false. 
Removing protected_branches lets ASF Infra remove the legacy rules during 
reconciliation.
   - **Other paths and branches:** Cover master and branch-4.2, branch-4.1, 
branch-4.0, branch-3.1, branch-3.0, branch-2.1, and branch-2.0. Leave 
repository metadata, merge buttons, collaborators, and notifications unchanged.
   - **Behavior change:** Configure branch protection through active rulesets 
instead of classic protection. No bypass teams are configured.
   
   ### Testing
   
   - ASF's asfyaml-validate --repo <worktree> --branch master passed locally 
using apache/infrastructure-asfyaml at ebc4a47.
   - Parsed the GitHub configuration through the official schema and normalized 
all eight rulesets through the official payload builder. Verified branch scope, 
active enforcement, deletion and force-push restrictions, exact check names and 
any-source integration IDs, non-strict policy, and review parameters against 
the original configuration.
   - git diff --check passed. No Doris build or runtime tests are needed for 
this configuration-only change.
   
   ### Notes for Reviewers
   
   Live GitHub reconciliation has not been performed; it occurs after the 
configuration is merged into the default branch. Rulesets have no implicit 
administrator bypass, and this configuration does not add bypass actors.
   
   ### Release note
   
   None
   
   ### Check List (For Author)
   
   - Behavior changed: Yes (see Details)
   - Does this need documentation: No
   - Pre-submission status: Partially verified: local schema and payload checks 
passed; live GitHub reconciliation has not been performed.
   
   ### AI Disclosure
   
   - Tool: Codex (GPT-6)
   - Generated: .asf.yaml migration and this pull request description.
   - Human review: Pending.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to