Skip to content

chore: improve triage process #576

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
May 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Bug Report
description: File a bug report
labels: [bug]
labels: ['bug', 'triage']
body:
- type: input
id: plugin_version
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/propose_new_rule.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Propose a new rule
description: Propose a new rule for the eslint-plugin-testing-library.
labels: [new rule]
labels: ['new rule', 'triage']
body:
- type: input
id: name_for_new_rule
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/request_general_change.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Request a general change
description: Request a general change for the eslint-plugin-testing-library.
labels: [enhancement]
labels: ['enhancement', 'triage']
body:
- type: input
id: plugin_version
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/request_rule_change.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Request a rule change
description: Request a rule change for the eslint-plugin-testing-library.
labels: [enhancement]
labels: ['enhancement', 'triage']
body:
- type: input
id: what_rule_do_you_want_to_change
Expand Down
8 changes: 7 additions & 1 deletion .github/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,17 @@
daysUntilStale: 60
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Only issues or pull requests with all of these labels are checked if stale
onlyLabels:
- 'awaiting response'
- 'new rule'
- enhancement
- invalid
# Issues with these labels will never be considered stale
exemptLabels:
- pinned
- security
- bug
- triage
# Label to use when marking an issue as stale
staleLabel: wontfix
# Comment to post when marking an issue as stale. Set to `false` to disable
Expand Down
46 changes: 46 additions & 0 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
This document outlines some processes that the maintainers should stick to.

## Issues Process

There are 3 types of issues that can be created:

- `"bug"`
- `"new rule"`
- `"enhancement"`

### Triage

The triage process is basically making sure that the issue is correctly reported (and ask for more info if not), and categorize it correctly if it belongs to a different type than initially assigned.

- When a new issue is created, they'll include a `"triage"` label
- If the issue is correctly reported, please remove the `"triage"` label, so we know is valid and ready to be tackled
- If the issue is **not** correctly reported, please ask for more details and add the `"awaiting response"` label, so we know more info has been requested to the author
- If the issue belong to an incorrect category, please update the labels to put it in the right category
- If the issue is duplicated, please close it including a comment with a link to the duplicating issue

## Pull Requests Process

### Main PR workflow

_TODO: pending to describe the main PR process_

### Contributors

When the PR gets merged, please check if the author of the PR or the closed issue (if any) should be added or updated in the [Contributors section](https://github.com/testing-library/eslint-plugin-testing-library#contributors-).

If so, you can ask the [`@all-contributors` bot to add a contributor](https://allcontributors.org/docs/en/bot/usage) in a comment of the merged PR (this works for both adding and updating). Remember to check the [Contribution Types table](https://allcontributors.org/docs/en/emoji-key) to decide which sort of contribution should be assigned.

## Stale bot

This repo uses [probot-stale](https://github.com/probot/stale) to close abandoned issues and PRs after a period of inactivity.

They'll be considered inactive if they match all the following conditions:

- they have been 60 days inactive
- they have at least one of the following labels:
- `"awaiting response"`: we are waiting for more details but the author didn't react
- `"new rule"`: there is a proposal for a new rule that no one could handle
- `"enhancement"`: there is a proposal for an enhancement that no one could handle
- `"invalid"`: something is wrong with the issue/PR and the author didn't take care of it

When flagged as a stale issue or PR, they'll be definitely closed after 7 more days of inactivity. Issues and PRs with the following labels are excluded: `"pinned"`, `"security"`, and "`triage"`. Use the first one if you need to exclude an issue or PR from being closed for whatever reason even if the inactive criteria is matched.