From 79ef41a53ddc8351f387ac1f7abd0ce0c7f1aa8a Mon Sep 17 00:00:00 2001 From: drizzlezyk Date: Tue, 17 Mar 2026 23:28:29 +0800 Subject: [PATCH] [CI] add scheduled stale issue management (#7354) ### What this PR does / why we need it? 1. issue with "resolved", 7 days stale, 14 days closed after stale with `stale` and `resolved` label. 2. issue with "awaiting-feedback", 7 days stale, 14 days closed after stale with `stale` and `awaiting-feedback` label. Change items: - Add a scheduled stale-management workflow to process resolved and awaiting-feedback issues independently. - Automatically mark inactive issues as stale , post tailored reminder messages, and close issues after a grace period. - Remove source labels when issues become active again, and disable PR stale handling so the automation remains issue-scoped. ### Does this PR introduce _any_ user-facing change? - No API or runtime behavior changes. - This PR only updates GitHub issue automation (labeling and stale management workflow). ### How was this patch tested? - Test locally - vLLM version: v0.17.0 - vLLM main: https://github.com/vllm-project/vllm/commit/4034c3d32e30d01639459edd3ab486f56993876d --------- Signed-off-by: drizzlezyk --- .github/workflows/schedule_stale_manage.yaml | 67 ++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 .github/workflows/schedule_stale_manage.yaml diff --git a/.github/workflows/schedule_stale_manage.yaml b/.github/workflows/schedule_stale_manage.yaml new file mode 100644 index 00000000..814d67fa --- /dev/null +++ b/.github/workflows/schedule_stale_manage.yaml @@ -0,0 +1,67 @@ +name: "Close stale resolved/awaiting-feedback issues" +on: + schedule: + - cron: '0 2 * * *' + +jobs: + stale: + runs-on: ubuntu-latest + permissions: + actions: write + issues: write + steps: + - uses: actions/stale@v10 + with: + # Process issues with the 'resolved' label + any-of-labels: 'resolved' + + # Mark as stale after a period of inactivity + days-before-stale: 7 + stale-issue-label: 'stale' + stale-issue-message: | + This issue has been marked as `resolved` but has not received any feedback for some time, so it is now labeled as `stale`. + If you feel this was a mistake, please leave a comment to have the `stale` label removed. + `Stale` issues will automatically be closed after 14 days of inactivity. + + # Close stale issues after a period of inactivity + days-before-close: 14 + close-issue-message: | + This issue is being closed due to a lack of recent activity. + If you have any further questions or requirements, please feel free to reopen this issue or create a new one. + + # Automatically remove the 'stale' label when the issue is updated (default is true) + remove-stale-when-updated: true + # Also remove the 'resolved' label + labels-to-remove-when-unstale: 'resolved' + + # Avoid accidental PR processing (PRs can be handled if needed; this is issue-only) + days-before-pr-stale: -1 + days-before-pr-close: -1 + - uses: actions/stale@v10 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + # Process issues with the 'awaiting-feedback' label + any-of-labels: 'awaiting-feedback' + + # Mark as stale after a period of inactivity + days-before-stale: 7 + stale-issue-label: 'stale' + stale-issue-message: | + This issue has been marked as `awaiting-feedback` but has not received any feedback for some time, so it is now labeled as `stale`. + To more accurately locate and resolve the issue, we need you to provide the relevant information mentioned above. + `Stale` issues will automatically be closed after 14 days of inactivity. + + # Close stale issues after a period of inactivity + days-before-close: 14 + close-issue-message: | + This issue is being closed due to a lack of recent activity. + If you have any further questions or requirements, please feel free to reopen this issue or create a new one. + + # Automatically remove the 'stale' label when the issue is updated (default is true) + remove-stale-when-updated: true + # Also remove the 'awaiting-feedback' label + labels-to-remove-when-unstale: 'awaiting-feedback' + + # Avoid accidental PR processing (PRs can be handled if needed; this is issue-only) + days-before-pr-stale: -1 + days-before-pr-close: -1 \ No newline at end of file