diff --git a/.github/ISSUE_TEMPLATE/v1-capability-proposal.yml b/.github/ISSUE_TEMPLATE/v1-capability-proposal.yml index 99ab78c8..4c3657a4 100644 --- a/.github/ISSUE_TEMPLATE/v1-capability-proposal.yml +++ b/.github/ISSUE_TEMPLATE/v1-capability-proposal.yml @@ -1,7 +1,7 @@ name: v1 capability proposal description: Propose a user-facing capability for the Silo v1 scope lock title: "[v1] " -labels: ["epic", "v1-proposed"] +labels: ["v1-proposed"] body: - type: markdown attributes: diff --git a/.github/workflows/v1-proposal-labeler.yml b/.github/workflows/v1-proposal-labeler.yml new file mode 100644 index 00000000..0b5788bc --- /dev/null +++ b/.github/workflows/v1-proposal-labeler.yml @@ -0,0 +1,26 @@ +name: v1 proposal labeler + +# The issue form applies `v1-proposed` automatically, but only for submissions +# through the web form. Contributors filing via the API/CLI (or from a fork) +# cannot apply labels without triage/write access, so their proposals would land +# unlabeled and never auto-add to the Silo v1 project. This stamps `v1-proposed` +# on any issue whose title starts with `[v1]`, regardless of who filed it. + +on: + issues: + types: [opened] + +permissions: + issues: write + +jobs: + label: + if: startsWith(github.event.issue.title, '[v1]') + runs-on: ubuntu-latest + steps: + - name: Apply v1-proposed + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ISSUE_NUMBER: ${{ github.event.issue.number }} + REPO: ${{ github.repository }} + run: gh issue edit "$ISSUE_NUMBER" --repo "$REPO" --add-label v1-proposed