Sfoglia il codice sorgente

Minor updates to SIG issue triage guide (#75)

Signed-off-by: Pip Potter <[email protected]>
Pip Potter 3 anni fa
parent
commit
164c7b9eb5
1 ha cambiato i file con 46 aggiunte e 35 eliminazioni
  1. 46 35
      TRIAGE_GUIDE.md

+ 46 - 35
TRIAGE_GUIDE.md

@@ -1,11 +1,14 @@
 # O3DE Network SIG - Issue Triage Guide
 
 ## Overview
-This guide covers how to triage GitHub issues for SIG-Network. Maintainers are encouraged to use and update this guide to ensure
-all contributors to SIG-Network understands how issues are handled and accepted by the SIG.
+This guide covers how to triage GitHub issues for SIG-Network.
 
+Maintainers are encouraged to reference and update this guide to ensure
+all contributors to SIG-Network understand how issues are handled and accepted by the SIG.
 
-##  Issue Triaging
+This guide uses the [general SIG triage guide](https://github.com/o3de/community/blob/main/sigs/docs/sig-issues-triage-guide.md) as a base.
+
+##  Issue triage
 Triaging is the process used to handle intake of issues into the SIG-network backlog. The process aims to ensure issues are both relevant to SIG-Network
 and contain sufficient information so that the community can take action.
 
@@ -16,98 +19,105 @@ Process aims to ensure that:
 * Issue load is balanced across SIG maintainers when action is required.
 * All the SIG-Network community can participate.
 
-# Process
+# Triage process
 SIG-Network triages issues once a week on [Thursdays](https://lists.o3de.org/g/o3de-calendar/viewevent?repeatid=39342&eventid=1263668&calstart=2022-01-20). Anyone is welcome to attend. Triage will be led by SIG chair, co-chair or maintainer (referred to below as *Triage Leader*)
 
 If time permits, prior to the start of meeting, the Triage Leader will create a new thread in the SIG-Network Discord channel and post the links from the *Triage Links* section.
 * Recommendation is that the Triage Leader sets the thread to automatically archive after 24 hours.
 
-## Triage Links
+## Links for triage
 1. Open issues with `needs-sig` label: https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-sig
 2. Main O3DE repository: https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-triage+label%3Asig%2Fnetwork 
 3. Multiplayer Sample: https://github.com/o3de/o3de-multiplayersample/labels/needs-triage
 4. NetSoak Test: https://github.com/o3de/o3de-netsoaktest/issues
 
-## Triage Leader Guide
+## Triage leader guide
 1. Join the SIG-Network discord voice channel
 2. Announce yourself as the Triage Leader and wait a few minutes for others to join the call.
 3. Use the *Individual Issue Triage* guide below to process all new issues for SIG:
    1. Review any open issues with [needs-sig](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-sig) that may be for SIG network
         1. Remove `needs-sig` and add `sig/network`. These items will now show up when reviewing issues below.    
-   3. Process all [new main repository issues](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-triage+label%3Asig%2Fnetwork)
-   4. Process all the new [MultiplayerSample](https://github.com/o3de/o3de-multiplayersample/labels/needs-triage) and [NetSoak](https://github.com/o3de/o3de-netsoaktest/issues) issues in a similar way.
+   2. Process all [new main repository issues](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-triage+label%3Asig%2Fnetwork)
+   3. Process all the new [MultiplayerSample](https://github.com/o3de/o3de-multiplayersample/labels/needs-triage) and [NetSoak](https://github.com/o3de/o3de-netsoaktest/issues) issues in a similar way.
       1. Look for issues less than 14 days old that do not have priorities attached. 
       2. Note: NetSoakTest and MultiplayerSample repositories do not have the full set of labels, so parts of individual issue triage process may not apply directly.
 
 If there are questions about what to do with an issue please raise questions with SIG Chair(s) or start a conversation in SIG-Network.
 
-### Individual Issue Triage
-1. (Recommendation) Announce issue number and title to those in Discord voice channel, so others can follow along. 
-2. (Main issues only) Ensure issue is for SIG-Network. 
+### Individual issue triage guide
+
+#### General triage guidance
+* (Optional but highly recommended) Share you screen so others can follow along.
+* Announce issue number and title to those in Discord voice channel, so those who are just listening can also follow along
+* Pause to let others read and process the information.
+* Always Add comments to issue, when appropriate, to capture issue triage decisions.
+
+#### Issue triage 
+1. Ensure issue is for SIG-Network ([od3de/o3de](https://github.com/o3de/o3de/issues) issues only)
    1. If the issue is not for SIG-Network, remove the `sig/network` label and comment on the issue as to reason why issue is not for SIG-Network. 
    2. If the correct SIG is known assign issue to that SIG. Otherwise, add the `needs-sig` label so the general O3DE issue triage meeting can find the appropriate owners. 
-3. Review the issue and any comments to see if it can be accepted by SIG
-   1. **If issue is a bug**: Check that report has enough information for someone to reproduce or understand the issue?
+2. Review the issue and any comments to see if it can be accepted by SIG.
+   1. **If issue is a bug**: Check that report has enough information for someone to reproduce or understand the issue.
    2. **If issue is a feature request**: Review the technical implications of the request. 
       1. If it's a large change then issue should become an RFC or be brought to SIG-Network meeting for discussion. Ask requestor to bring issue back as RFC or start a discussion topic. Add the issue to the next SIG-Network meeting agenda, if that would be more appropriate. 
 4. If issue can be **accepted** then:
    1. If issue is a bug, add the `kind/bug` label.
    2. If issue is for a feature request, add either `kind/feature` or `kind/enhancement`. Add `feature/networking` or `feature/cloud-service` as appropriate.
    3. Set a priority for issue based on impact (ask other SIG members on call for guidance).  
-   4. Mark the issue as `triage/accepted`. 
+   4. Mark the issue as `triage/accepted`.
 5. If the issue **requires more information** or is **rejected**, then:
    1. Assign a reviewer, if required, to handle follow-up comments, to reproduce the issue or ask for further clarifying information.
    2. **If issue is rejected**: Reviewer/triage leader should reject issue and provide reason for rejection. 
       1. Mark the issue as `triage/declined`.
    3. **If issue needs more information**: Reviewer/triage leader should add clear comments requesting the additional information. 
       1. Mark the issue with `triage/needs-information`. Its recommended that all issues in this state have an assigned reviewer who will track updates until all required information is received. Issue can then be reconsidered for acceptance.
-6. Remove the `needs-triage` label from issue.
-7. Add comments to issue, when appropriate, to capture issue triage decisions.
+6. Remove the `needs-triage` label from issue if SIG/network is only assigned SIG.
+   1. See [general guidance](https://github.com/o3de/community/tree/main/sigs/docs) for issues requiring input from multiple SIGs.
 
-### Additional Labels to Consider for Contributors
+### Additional Labels to consider for contributors
 * Consider adding the `good-first-issue` label to identify issues that have straightforward/simple fixes for new contributors to fix. Examples could include config, docs, comments and testing changes.
 * Consider adding the `help-wanted` label for issues that do not have immediate resourcing and contributions by others would be welcome.
 
-## Additional Triage Tasks
-If time permits (select some of these):
+## Additional triage tasks
+If time permits select one or more of the following tasks:
 
 * Review all open [bugs without acceptance](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Asig%2Fnetwork+-label%3Atriage%2Faccepted) and ensure they have `triage/accepted`.
-  * Ensures issue that have been assigned to SIG are captured.
-* Review any open [blocker](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Asig%2Fnetwork+label%3Apriority%2Fblocker) and [critical](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Asig%2Fnetwork+label%3Apriority%2Fcritical) issues in the main repository:
-  * Ensures priority is still valid. Ensures issues are still valid.
+  * Ensures issue that have been assigned to SIG have been triaged correctly. 
+* Review any open [blocker and critical](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Akind%2Fbug+label%3Apriority%2Fcritical%2Cpriority%2Fblocker+label%3Asig%2Fnetwork) issues in the main repository:
+  * Ensures priority is still valid. 
+  * Ensures issues are still valid.
   * Assign any required commentators or ask for updates.
-* Review any PR for the SIG thats more than [30 days old](https://github.com/o3de/o3de/pulls?q=is%3Apr+is%3Aopen+label%3Asig%2Fnetwork+sort%3Acreated-asc) old, ensure PR appears to be active or ask contributor for to update PR or close out. 
-  * Ensures PRs are still active and are not blocked on contributor or maintainer action.  
-* Review issues open for more than [90 days old](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Asig%2Fnetwork+sort%3Acreated-asc)
+* Review any PRs for the SIG that are more than [30 days old](https://github.com/o3de/o3de/pulls?q=is%3Apr+is%3Aopen+label%3Asig%2Fnetwork+sort%3Acreated-asc).
+  * Ensures PRs are progressing and are not blocked on contributor or maintainer action.
+* Review issues open for more than [90 days old](https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Asig%2Fnetwork+sort%3Acreated-asc).
   * Ensures issues are still relevant to SIG. 
 
 
 ## Issue Workflow
-If you are assigned an issue to validate, work with requestor to get enough information to validate the issue.
+If you are assigned an issue to validate or reproduce, work with requestor to get enough information to validate the issue.
 
 If it can be reproduced then:
-* Add comment to confirm reproduction and add `triage/accepted` labels.
-* Define priority with SIG Chair(s).
+* Add comment to confirm reproduction.
+    * Can work with SIG-Chair(s) to add `triage/accepted` labels and define priority or wait for next issue triage meeting.
 * Ensure issue is not a duplicate.
 
 If issue cannot be reproduced then:
 * Comment on the issue and ask the requester for more information to aid reproduction, add the `triage/needs-information` label.
-* Or close the issue if both parties agree that this is not an issue/not reproducible.
+* Or close the issue if both parties agree that this is no longer an issue or not reproducible.
 
 If the issue is not clear or needs more information:
 * Comment on the issue and add the `triage/needs-information` label to show that the requestor needs to provide more information.
 
-# Stale or Abandoned issues
+# Stale or abandoned issues
 SIG will periodically audit for stale items. If during triage, you encounter stale issues, use the guidance below to see if issue should be closed.
 
-## SIG Assigned But No Action
+## SIG assigned but no action
 If an issue with the SIG-Network label has had no updates for a while (14 days), follow-up with the SIG, either through Discord chat channel, triage or standard meeting. Consider attending a SIG-Network meeting to raise the issue for discussion.
 
-## No Activity for 90 days
-An issue can be removed if it has been abandoned by the requestor. Issues are considered abandoned if there has been no activity for *90* days, esp if issue has had `triage/needs-information` label applied and there has been no follow-up from issue reporter.
+## No activity for 90 days
+An issue can be removed if it has been abandoned by the requestor. Issues are considered abandoned if there has been no activity for *90* days, especially if issue has had `triage/needs-information` label applied and there has been no follow-up from issue reporter.
 
 ## FAQ
-
 1. What should I do if triage rejects my issue?
    1. Issues should be rejected with clear comments that provide reason for rejection. If you disagree or want to discuss the reason please start a chat in SIG-Network or add as an agenda item for SIG-Network's public meeting.
    2. If you still do not support SIG-Network's decision, then please raise with the [O3DE TSC](https://github.com/o3de/tsc).
@@ -117,4 +127,5 @@ An issue can be removed if it has been abandoned by the requestor. Issues are co
    3. If the intent is for you to work on the issue immediately, then please self-assign or work with a maintainer to assign.
 
 ## Acknowledgments
-Part of this guide was informed by the [Kubernetes Triage Guide](https://github.com/kubernetes/community/blob/master/contributors/guide/issue-triage.md)
+Part of this guide was informed by the [Kubernetes Triage Guide](https://github.com/kubernetes/community/blob/master/contributors/guide/issue-triage.md) and by 
+the [O3DE SIG Issue Triage guidelines](https://github.com/o3de/community/blob/main/sigs/docs/sig-issues-triage-guide.md), originally written by [ForHalle](https://github.com/forhalle).