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]
