From 280247ac32c0c66abfe41219257af751df6f6009 Mon Sep 17 00:00:00 2001 From: Andy Mills <61879371+CloudBeard@users.noreply.github.com> Date: Thu, 28 Mar 2024 11:02:42 -0400 Subject: [PATCH] chore(workflows): add triage label workflow (#184) * feat: add triage label automation * add triage label doc * fix(generate)!: embedded optional structs changed to pointers (#170) * #131. fix(generate): now uses pointers for optional fields. update: all types. * #131. refactor(generate): extract the pointer string logic into addPointerIfOptional method in generate_utils * #131. update(generate): Primitives are no longer prefixed as pointers. * chore(generate): #131. Add tests to ensure no additional json fields are being added when marshalling and unmarshalling using the generated types. * docs(adr). #174. instantiated adr directory in docs. Add ADR for using pointers for non-primitive types * docs(readme): update readme w/ pointer example. * chore(release-please-action): #178 fix release-please-config for v4 (#179) * chore(release-please): Update config with release-please-action v4 config options * fix release-please-config * fix release-please-config to follow v4 pattern * Update release-please-action to latest version * chore(main): release 0.3.0 (#180) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: Cole (Mike) Winberry <86802655+mike-winberry@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: mike-winberry --- .github/workflows/triage-label.yaml | 24 ++++++++++++++++++++ docs/triage-label.md | 34 +++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 .github/workflows/triage-label.yaml create mode 100644 docs/triage-label.md diff --git a/.github/workflows/triage-label.yaml b/.github/workflows/triage-label.yaml new file mode 100644 index 0000000..8ef721f --- /dev/null +++ b/.github/workflows/triage-label.yaml @@ -0,0 +1,24 @@ +name: Issue Triage Label + +on: + issues: + types: [opened, reopened] + +permissions: + issues: write + +jobs: + triage: + runs-on: ubuntu-latest + steps: + - name: Add triage label + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea + with: + script: | + const issueNumber = context.issue.number; + github.rest.issues.addLabels({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: issueNumber, + labels: ['triage'] + }); diff --git a/docs/triage-label.md b/docs/triage-label.md new file mode 100644 index 0000000..1b27af4 --- /dev/null +++ b/docs/triage-label.md @@ -0,0 +1,34 @@ +## Using the Triage Label for Effective Issue Tracking + +### Overview + +In our efforts to streamline the management and resolution of issues, we introduce the use of the **triage** label. This label is an integral part of our issue tracking system, aimed at improving the efficiency and effectiveness with which we handle reported issues, feature requests, and other tasks within our projects. + +### Purpose of the Triage Label + +The **triage** label serves several key purposes: + +- **Prioritization:** It helps in quickly identifying new issues that need to be assessed for their urgency and impact. This initial sorting ensures that critical issues are addressed promptly. +- **Clarity:** Applying the triage label to new issues clarifies that they are awaiting review. It prevents duplication of work and ensures that every issue is considered by the appropriate team members. +- **Efficiency:** By categorizing issues into different priorities and types during the triage process, we can allocate our resources more effectively, focusing on what matters most. +- **Tracking:** The triage process allows us to better track the progress of issues from their inception through to resolution, offering clear visibility into the status and handling of every report. + +### Process + +1. **Applying the Triage Label:** + - All newly created issues should automatically receive the **triage** label. If not, team members are encouraged to manually apply the label when they encounter an unlabelled new issue. + +2. **Label Adjustment:** + - Following the triage by a dev, the **triage** label will be replaced or supplemented with additional labels reflecting the issue's priority, type (bug, feature request, etc.), and the assigned owner, team, or appropriate category. + +3. **Issue Resolution:** + - As work progresses, the assigned individuals will update the issue with their findings, solutions, and any other relevant labels until the issue is resolved. + +### Best Practices + +- **Prompt Labeling:** Ensure all new issues are promptly labeled with **triage** to avoid delays in their review and handling. +- **Clear Communication:** Use the issue comments to provide clear and concise updates, including any changes in priority or additional labels added post-triage. + +### Conclusion + +The **triage** label is a cornerstone of our issue tracking system, designed to enhance our team's ability to manage issues efficiently and effectively. By following this process, we can ensure that all issues receive the attention they need, resources are allocated optimally, and our projects move forward smoothly.