-
Notifications
You must be signed in to change notification settings - Fork 360
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
Actions: add Repo gardening action #6244
Conversation
More details about the action here: https://github.com/Automattic/action-repo-gardening The action is already used in the Calypso and Jetpack repos. I've enabled 5 of the tasks the action offers so far: 1. Assign Issues (`assignIssues`): Adds assignee for issues which are being worked on, and adds the "In Progress" label. 2. Clean Labels (`cleanLabels`): Removes Status labels once a PR has been merged. 3. Flag OSS (`flagOss`): flags entries by external contributors, adds an "OSS Citizen" label to the PR, and sends a Slack message to the #themes channel. 4. Triage New Issues (`triageNewIssues`): Adds labels to new issues based on issue content. 5. Gather support references (`gatherSupportReferences`): Adds a new comment with a list of all support references on the issue. More details about this in pcLjiI-Rb-p2
- Prompt to reply to customers when an issue is finally closed after having gathered a lot of tickets. Reference: pcLjiI-Ro-p2 - Slack message when an opened issue starts gathering a lot of tickets. Reference: pciE2j-1iy-p2
2718f40
to
22f4d17
Compare
Perhaps we should roll the mark stale action into the gardening action. |
Thank you @jeherve ! I appreciate the effort to standardize our issue reporting and follow up across repos and teams. Some thoughts on each action added in this PR:
We use a project board for tracking issues in progress, so I think the In Progress label might be a bit redundant.
What other status labels exist?
👍
Will the bug report template be used by default when creating a new issue, or can we still create issues that do not follow this template?
This seems very useful.
There are existing mechanisms to follow up with customers built into platforms via zendesk and HC, so I'm wondering if this action will create more noise than anything. |
👍 I removed the task in 3b7944f
For this repo, this would only apply to one status label:
It will not be used by default. Instead, you will be able to choose whether you want to use that template or open a blank issue (that blank issue will use your existing template: https://github.com/Automattic/themes/blob/bae583f0aaecacbefb2a9eb651aae90b8e9a13b4/.github/ISSUE_TEMPLATE.md ) You can see how issue forms look like in Jetpack, for example: In this repo, and since this PR only offers to add one form, you would only get one option instead of 5.
I definitely don't want to add noise, so happy to remove it if it's not needed! Could you tell me more about your existing mechanisms? I could see if I could plug into that with our task / rely on them for other repos too. Feel free to ping me in Slack, I'll be happy to chat about this!
That's a good point. Since it runs on a schedule and not on specific events, the 2 workflows are a bit different from one another. We would consequently need to add some logic to only run the gardening tasks when not on a scheduled run; I'm not sure that added logic is worth it, it may be cleaner to keep the 2 workflows separated for now, it would make them easier to understand and edit imo. |
From my view, issues and PRs that affect customers directly typically fall into one of three categories:
My understanding is this is mostly relevant to the first case, is that correct? So with this action, does the person who opened the ticket get notified to reply to the customer when the issue is closed? And under what circumstances? Since many issues do not fall into this category, I mainly want to ensure the use case is helpful to HEs, since they are most often the ones replying. For example, would we need to add a label like "Needs Customer Reply" for the issue author to get the ping? |
That's correct, it only impacts that first use-case.
The task will post a Slack reminder to notify customers, that will ping the WordPress.com Product Quality Squad in Happiness, under 3 conditions:
This is triggered automatically, without the need to add a label manually. This is mostly meant to ensure HEs can coordinate to send a bulk-reply to all impacted customers, on important issues where a lot of folks are impacted. Does that make sense? |
Gotcha, that makes sense! Yeah I don't think many issues would meet all 3 criteria so that mitigates my concern about noisy notifications. Let's try it out. |
Changes proposed in this Pull Request:
This PR introduces a new action that will run on all issues and PRs in this repo.
More details about the action here:
https://github.com/Automattic/action-repo-gardening
The action is already used in the Calypso and Jetpack repos.
I've enabled 6 of the tasks the action offers so far:
assignIssues
): Adds assignee for issues which are being worked on, and adds the "In Progress" label.cleanLabels
): Removes Status labels once a PR has been merged.flagOss
): flags entries by external contributors, adds an "OSS Citizen" label to the PR, and sends a Slack message to the #themes channel.triageNewIssues
): Adds labels to new issues based on issue content. For this to work, I've also added a new "Bug Report" issue template, similar to the ones in use in the Calypso and the Jetpack repos, and that should help gathering information when issues are opened.gatherSupportReferences
): Adds a new comment with a list of all support references on the issue, and message in Slack when an issue starts getting a lot of tickets. More details about this in pcLjiI-Rb-p2 and pciE2j-1iy-p2replyToCustomersReminder
): sends a Slack message about closed issues to remind Automatticians to update customers. Reference: pcLjiI-Ro-p2What do you think about the changes?
I think we could start with those, and either add more or remove some of them in the future depending on how this first experiment goes.
I'm hoping this will help standardize some of the repo experience of both developers and HEs, with tools and automations that are similar in the different Automattic repos.
Here are a few screenshots of the tools in action in other repos; we cannot test this easily in this repo until this PR gets merged.
Internal reference: p1657879153257599-slack-C029FM1EH