1- name: 'Close stale issues '
1+ name: 'Issue and PR Maintenance '
22
33on:
44 schedule:
5- - cron: '0 10 * * *' # Runs daily at 10:00 AM UTC
5+ - cron: '0 0 * * *' # runs at midnight UTC
66 workflow_dispatch:
77
88permissions:
99 issues: write
10+ pull-requests: write
1011
1112jobs:
12- manage-stale-issues:
13+ lock-inactive:
14+ name: Lock Inactive Issues
15+ runs-on: ubuntu-24.04
16+ steps:
17+ - uses: klaasnicolaas/action-inactivity-lock@v1.1.3
18+ id: lock
19+ with:
20+ days-inactive-issues: 14
21+ lock-reason-issues: ""
22+ # Action can not skip PRs, set it to 100 years to cover it.
23+ days-inactive-prs: 36524
24+ lock-reason-prs: ""
25+ - name: 🔍 Display locked issues
26+ run: |
27+ echo "Locked issues: $(echo '${{ steps.lock.outputs.locked-issues }}' | jq)"
28+
29+ close-stale:
30+ name: Close Stale Issues
1331 runs-on: ubuntu-24.04
14-
1532 steps:
1633 - name: Close Stale Issues
1734 uses: actions/stale@v9
1835 with:
1936 repo-token: ${{ secrets.GITHUB_TOKEN }}
2037
21- # Stale messaging
38+ # Messaging
2239 stale-issue-message: >
2340 👋 This issue has been automatically marked as stale due to inactivity.
2441 If this issue is still relevant, please comment to keep it open.
@@ -32,17 +49,15 @@ jobs:
3249 days-before-issue-stale: 14
3350 days-before-issue-close: 7
3451
35- # Label management
52+ # Labels
3653 stale-issue-label: 'stale'
3754 remove-stale-when-updated: true
38-
39- # Targeting only `question`-labeled issues
4055 only-issue-labels: 'question'
4156 exempt-issue-labels: >
4257 bug, chore, confirmed, dependencies, help wanted,
4358 documentation, duplicate, feature, good first issue,
4459 needs review, wontfix
4560
46- # Skip assigned or milestone-tracked issues
61+ # Exemptions
4762 exempt-assignees: true
4863 exempt-milestones: true
0 commit comments