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.
This guide uses the general SIG triage guide as a base.
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.
Process aims to ensure that:
- Issues are appropriate for SIG-Network. Confirms that issues are actual issues, rather than requests for help or issues for another SIG.
- Issues have clear information to enable SIG-Network to address the problem or request.
- Issues are regularly maintained and updated until they are resolved.
- Issue load is balanced across SIG maintainers when action is required.
- All the SIG-Network community can participate.
SIG-Network triages issues once a week on Thursdays. 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.
- Open issues with
needs-sig
label: https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-sig - Main O3DE repository: https://github.com/o3de/o3de/issues?q=is%3Aissue+is%3Aopen+label%3Aneeds-triage+label%3Asig%2Fnetwork
- Multiplayer Sample: https://github.com/o3de/o3de-multiplayersample/labels/needs-triage
- NetSoak Test: https://github.com/o3de/o3de-netsoaktest/issues
- Multiplayer template issues in: https://github.com/o3de/o3de-extras/labels/sig%2Fnetwork
- Join the SIG-Network discord voice channel
- Announce yourself as the Triage Leader and wait a few minutes for others to join the call.
- Use the Individual Issue Triage guide below to process all new issues for SIG:
- Review any open issues with needs-sig that may be for SIG network
- Remove
needs-sig
and addsig/network
. These items will now show up when reviewing issues below.
- Remove
- Process all new main repository issues
- Process all the new MultiplayerSample and NetSoak issues in a similar way.
- Look for issues less than 14 days old that do not have priorities attached.
- Note: NetSoakTest and MultiplayerSample repositories do not have the full set of labels, so parts of individual issue triage process may not apply directly.
- Review any open issues with needs-sig that may be for SIG network
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.
- (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.
- Ensure issue is for SIG-Network (od3de/o3de issues only)
- 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. - 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.
- If the issue is not for SIG-Network, remove the
- Review the issue and any comments to see if it can be accepted by SIG.
- If issue is a bug: Check that report has enough information for someone to reproduce or understand the issue.
- If issue is a feature request: Review the technical implications of the request.
- 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.
- If issue can be accepted then:
- If issue is a bug, add the
kind/bug
label. - If issue is for a feature request, add either
kind/feature
orkind/enhancement
. Addfeature/networking
orfeature/cloud-service
as appropriate. - Set a priority for issue based on impact (ask other SIG members on call for guidance).
- Mark the issue as
triage/accepted
.
- If issue is a bug, add the
- If the issue requires more information or is rejected, then:
- Assign a reviewer, if required, to handle follow-up comments, to reproduce the issue or ask for further clarifying information.
- If issue is rejected: Reviewer/triage leader should reject issue and provide reason for rejection.
- Mark the issue as
triage/declined
.
- Mark the issue as
- If issue needs more information: Reviewer/triage leader should add clear comments requesting the additional information.
- 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.
- Mark the issue with
- Remove the
needs-triage
label from issue if SIG/network is only assigned SIG.- See general guidance for issues requiring input from multiple SIGs.
- 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.
If time permits select one or more of the following tasks:
- Review all open bugs without acceptance and ensure they have
triage/accepted
.- Ensures issue that have been assigned to SIG have been triaged correctly.
- Review any open blocker and critical 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 PRs for the SIG that are more than 30 days old.
- Ensures PRs are progressing and are not blocked on contributor or maintainer action.
- Review issues open for more than 90 days old.
- Ensures issues are still relevant to SIG.
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.
- Can work with SIG-Chair(s) to add
triage/accepted
labels and define priority or wait for next issue triage meeting.
- Can work with SIG-Chair(s) to add
- 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 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.
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.
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.
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.
- What should I do if triage rejects my issue?
- 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.
- If you still do not support SIG-Network's decision, then please raise with the O3DE TSC.
- What should I do if I have an urgent issue that cannot not wait for public issue triage?
- Please raise the issue in SIG-Network chat and ask for triage, this is so all SIG has visibility.
- SIG-Chair(s) can appoint a reviewer to ensure issue is triaged as soon as possible.
- If the intent is for you to work on the issue immediately, then please self-assign or work with a maintainer to assign.
Part of this guide was informed by the Kubernetes Triage Guide and by the O3DE SIG Issue Triage guidelines, originally written by ForHalle.