jason810496 opened a new pull request, #61626:
URL: https://github.com/apache/airflow/pull/61626

   related: https://github.com/apache/airflow/pull/61043#issuecomment-3861068570
   
   ## Why
   
   As in the case of 
https://github.com/apache/airflow/pull/61043#issuecomment-3861068570, we might 
forget to add the milestone before/after merging the PR. This might cause the 
PR not to be included in the release and create additional work for the Release 
Manger.
   
   ## How
   
   After sharing the context of 
https://github.com/apache/airflow/pull/61043#issuecomment-3861068570 with 
@guan404ming, he mentioned that maybe we could have a GitHub Bot as a automated 
process to avoid the manual mistakes like the one above.
   
   ## What
   
   Add the first version of the Milestone Tag Assistant, which will only be 
triggered when there’s a merged PR without a milestone into ‎`main` or 
‎`v3-1-test`.
   
   The bot will try to determine the correct milestone based on the following 
rules, but if the bot cannot find the matching milestone, it will still leave a 
comment to reminder the person who merge the PR.
   
   From my perspective, this kind of "fail fast" pattern should make our 
release process more reliable.
   Compared to relying on Release Manager to double-check the missing PRs that 
should be included the current release, having Bot to always reminder 
Committers to add the missing milestone should be more reliable and efficient, 
and should make the Release Manager’s life easier.⁠
   
   ## Rules 
   
   There are three cases:
   
   1. CI-related: no need to set milestone
   2. Patch release: default to the latest patch-release milestone  
       - has a label like `backport-to-v3-1-test`
       - is merged to `v3-1-test` version branch
   3. Next feature release: default value as latest milestone
        - is merged to `main` without backport label
   
   ## Verification 
   
   Run the following script for the first time (when the milestone wasn't set):
   ```bash
   #!/bin/bash
   
   export GH_TOKEN=$(gh auth token)
   export GITHUB_REPOSITORY="apache/airflow"
   export PR_NUMBER=61619
   export PR_TITLE="[v3-1-test] fix: correct typo in function name 
_set_runing_task (#61496)"
   export PR_LABELS='["area:API"]'      # Must be a JSON formatted string array
   export BASE_BRANCH="v3-1-test"       # The branch the PR was merged into
   export MERGED_BY="jason810496" 
   
   breeze ci set-milestone
   ```
   
   
   <img width="693" height="221" alt="Screenshot 2026-02-08 at 4 28 48 PM" 
src="https://github.com/user-attachments/assets/1b174174-246d-4f7e-a894-c730b16b5343";
 />
   
   <img width="730" height="374" alt="Screenshot 2026-02-08 at 4 29 13 PM" 
src="https://github.com/user-attachments/assets/e3b24346-3046-4b74-a2e2-7fd7b1442feb";
 />
   
   The second time should not leave a comment as the milestone was already set.
   
   <img width="678" height="161" alt="Screenshot 2026-02-08 at 4 33 29 PM" 
src="https://github.com/user-attachments/assets/f53c2942-3a53-4476-a6f0-d3fdcf12f494";
 />
   
   
   ##### Was generative AI tooling used to co-author this PR?
   
   <!--
   If generative AI tooling has been used in the process of authoring this PR, 
please
   change below checkbox to `[X]` followed by the name of the tool, uncomment 
the "Generated-by".
   -->
   
   - [x] Yes, GitHub Copilot with Claude Ops 4.5
   


-- 
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]

Reply via email to