meta: broaden stale bot

PR-URL: https://github.com/nodejs/node/pull/62658
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
This commit is contained in:
Aviv Keller authored and GitHub committed 2026-04-18 14:28:03 +00:00
1 parent 1266013d19
commit da92246ae9
4 files changed
+50 -155

No files matched your search

@@ -1,56 +0,0 @@
name: Close stale feature requests
on:
workflow_dispatch:
schedule:
# Run every day at 1:00 AM UTC.
- cron: 0 1 * * *
# yamllint disable rule:empty-lines
env:
CLOSE_MESSAGE: >
There has been no activity on this feature request
and it is being closed. If you feel closing this issue is not the
right thing to do, please leave a comment.
For more information on how the project manages
feature requests, please consult the
[feature request management document](https://github.com/nodejs/node/blob/HEAD/doc/contributing/feature-request-management.md).
WARN_MESSAGE: >
There has been no activity on this feature request for
5 months. To help maintain relevant open issues, please
add the https://github.com/nodejs/node/labels/never-stale
label or close this issue if it should be closed. If not,
the issue will be automatically closed 6 months after the
last non-automated comment.
For more information on how the project manages
feature requests, please consult the
[feature request management document](https://github.com/nodejs/node/blob/HEAD/doc/contributing/feature-request-management.md).
# yamllint enable
permissions:
contents: read
jobs:
stale:
permissions:
issues: write # for actions/stale to close stale issues
pull-requests: write # for actions/stale to close stale PRs
if: github.repository == 'nodejs/node'
runs-on: ubuntu-slim
steps:
- uses: actions/stale@b5d41d4e1d5dceea10e7104786b73624c18a190f # v10.2.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 180
days-before-close: 30
stale-issue-label: stale
close-issue-message: ${{ env.CLOSE_MESSAGE }}
stale-issue-message: ${{ env.WARN_MESSAGE }}
only-labels: feature request
exempt-issue-labels: never-stale
# max requests it will send per run to the GitHub API before it deliberately exits to avoid hitting API rate limits
operations-per-run: 500
remove-stale-when-updated: true
@@ -1,59 +0,0 @@
name: Close stale pull requests
on:
workflow_dispatch:
inputs:
endDate:
description: stop processing PRs after this date
required: false
type: string
# yamllint disable rule:empty-lines
env:
CLOSE_MESSAGE: >
This pull request was opened more than a year ago and there has
been no activity in the last 6 months. We value your contribution
but since it has not progressed in the last 6 months it is being
closed. If you feel closing this pull request is not the right thing
to do, please leave a comment.
WARN_MESSAGE: >
This pull request was opened more than a year ago and there has
been no activity in the last 5 months. We value your contribution
but since it has not progressed in the last 5 months it is being
marked stale and will be closed if there is no progress in the
next month. If you feel that is not the right thing to do please
comment on the pull request.
# yamllint enable
permissions:
contents: read
jobs:
stale:
permissions:
pull-requests: write # for actions/stale to close stale PRs
if: github.repository == 'nodejs/node'
runs-on: ubuntu-slim
steps:
- name: Set default end date which is 1 year ago
run: echo "END_DATE=$(date --date='525600 minutes ago' --rfc-2822)" >> "$GITHUB_ENV"
- name: if date set in event override the default end date
env:
END_DATE_INPUT_VALUE: ${{ github.event.inputs.endDate }}
if: ${{ github.event.inputs.endDate != '' }}
run: echo "END_DATE=$END_DATE_INPUT_VALUE" >> "$GITHUB_ENV"
- uses: mhdawson/stale@453d6581568dc43dbe345757f24408d7b451c651 # PR to add support for endDate
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
end-date: ${{ env.END_DATE }}
days-before-issue-stale: -1
days-before-issue-close: -1
days-before-stale: 150
days-before-close: 30
stale-issue-label: stale
close-issue-message: ${{ env.CLOSE_MESSAGE }}
stale-issue-message: ${{ env.WARN_MESSAGE }}
exempt-pr-labels: never-stale
# max requests it will send per run to the GitHub API before it deliberately exits to avoid hitting API rate limits
operations-per-run: 500
remove-stale-when-updated: true
+50
View File
@@ -0,0 +1,50 @@
name: Close stale
on:
workflow_dispatch:
schedule:
# Run every day at 1:00 AM UTC.
- cron: 0 1 * * *
# yamllint disable rule:empty-lines
env:
CLOSE_MESSAGE: >
This {0} has been automatically closed after 30 days of inactivity
following its stale status (no activity for a total of 240 days).
If this is still relevant, feel free to reopen it or leave a comment
with additional details so we can continue the discussion.
WARN_MESSAGE: >
This {0} has been marked as stale due to 210 days of inactivity.
It will be automatically closed in 30 days if no further activity occurs.
If this is still relevant, please leave a comment or update it to keep it open.
# yamllint enable
permissions:
contents: read
jobs:
stale:
permissions:
issues: write # for actions/stale to close stale issues
pull-requests: write # for actions/stale to close stale PRs
if: github.repository == 'nodejs/node'
runs-on: ubuntu-slim
steps:
- uses: actions/stale@b5d41d4e1d5dceea10e7104786b73624c18a190f # v10.2.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 210
days-before-close: 30
stale-issue-label: stale
exempt-issue-labels: never-stale, confirmed-bug
close-issue-message: ${{ format(env.CLOSE_MESSAGE, 'issue') }}
stale-issue-message: ${{ format(env.WARN_MESSAGE, 'issue') }}
stale-pr-label: stale
exempt-pr-labels: never-stale
close-pr-message: ${{ format(env.CLOSE_MESSAGE, 'pull request') }}
stale-pr-message: ${{ format(env.WARN_MESSAGE, 'pull request') }}
# max requests it will send per run to the GitHub API before it deliberately exits to avoid hitting API rate limits
operations-per-run: 500
remove-stale-when-updated: true
@@ -42,11 +42,6 @@ Individual collaborators review issues marked as `feature request`
along with other issues and may or may not decide to
work on an implementation or advocate on their behalf.
If a collaborator believes a feature request must be implemented
they can add the `never-stale` label to the issue and it will
be excluded from the automated feature request handling
as outlined below.
## Expressing support for a feature request
If you come across a feature request and want to add your
@@ -54,38 +49,3 @@ support for that feature please express your support
with the thumbs up emoji as a reaction. At some point in the
future we may use this as additional input in the automated
handling of feature requests.
## Automated feature request handling
Our experience is that most feature requests that are
likely to be addressed, will be addressed within the first
6 months after they are submitted.
Once there has been no activity on a feature request for
5 months, the following comment will be added
to the issue:
```markdown
There has been no activity on this feature request for
5 months and it is unlikely to be implemented.
It will be closed 6 months after the last non-automated comment.
For more information on how the project manages
feature requests, please consult the
[feature request management document](https://github.com/nodejs/node/blob/HEAD/doc/contributing/feature-request-management.md).
```
If there is no additional activity/discussion on the
feature request in the next month, the following
comment is added to the issue and the issue will be
closed:
```markdown
There has been no activity on this feature request
and it is being closed. If you feel closing this issue is not the
right thing to do, please leave a comment.
For more information on how the project manages
feature requests, please consult the
[feature request management document](https://github.com/nodejs/node/blob/HEAD/doc/contributing/feature-request-management.md).
```