[ 
https://issues.apache.org/jira/browse/CALCITE-7871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18131883#comment-18131883
 ] 

Zhen Chen commented on CALCITE-7871:
------------------------------------

I’ve found a way to mark a CI item as "Required," which ensures that a merge 
cannot proceed if this item fails. I’m not entirely sure how to verify this 
within a PR, but I have already validated all other aspects; the current 
implementation aligns with the logic described in the Jira ticket. If you have 
some time, could you please take a look and review it?

> Validate pull request titles and require a single matching commit
> -----------------------------------------------------------------
>
>                 Key: CALCITE-7871
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7871
>             Project: Calcite
>          Issue Type: Wish
>    Affects Versions: 1.42.0
>            Reporter: Zhen Chen
>            Assignee: Zhen Chen
>            Priority: Minor
>              Labels: pull-request-available
>
> Calcite’s pull request template outlines contribution guidelines, but these 
> rules currently rely on manual review. Given the significant volume of 
> AI-generated contributions, manual oversight is prone to oversights; 
> therefore, we should implement automated PR checks to enforce consistent 
> titling and single-commit requirements.
> Expected behavior:
> The ruleset in `.asf.yaml` must require the following checks before merging 
> into `main`, with no bypass actors and enforced directly by GitHub: the 15 CI 
> jobs in `main.yml`, Gradle wrapper `Validation`, `SonarCloud` (code 
> scanning), `SonarCloud Code Analysis`, and the two PR metadata checks below. 
> `continuous-integration/jenkins/pr-head` is not required by this ruleset.
> - `Check PR title`: requires `[CALCITE-<digits>] <Jira summary>` to match the 
> complete PR title and at least one commit subject exactly. Other prefixes 
> skip this check. Title edits and pushes rerun it; Jira-only edits need a 
> rerun.
> - `Check single commit`: runs only with the `Approved` label. It verifies 
> that the label was applied by someone with write, maintain, or admin access, 
> then requires exactly one commit. GitHub Approve reviews are separate.
> Existing CI triggers and jobs are unchanged. If a required workflow does not 
> run (for example, `main.yml` ignores PRs changing only `site/**`), its 
> missing checks block merging. GitHub accepts success, skipped, and neutral 
> check conclusions; pending, failed, or cancelled checks block merging. Slow 
> tests and website builds are not added to the required list.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to