From d588477f9740c4ed2bc9f0e04fc2f3d0886ff14b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Oct 2025 21:00:12 +0000 Subject: [PATCH 1/2] Initial plan From e6db6f0d67621c0ef20f7c931a8a6b7f42214966 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Oct 2025 21:04:39 +0000 Subject: [PATCH 2/2] Add workflow to auto-close issues from non-maintainers Co-authored-by: TravisEz13 <10873629+TravisEz13@users.noreply.github.com> --- .../workflows/close-non-maintainer-issues.yml | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 .github/workflows/close-non-maintainer-issues.yml diff --git a/.github/workflows/close-non-maintainer-issues.yml b/.github/workflows/close-non-maintainer-issues.yml new file mode 100644 index 0000000..db0b134 --- /dev/null +++ b/.github/workflows/close-non-maintainer-issues.yml @@ -0,0 +1,61 @@ +name: Auto-close issues from non-maintainers + +on: + issues: + types: [opened] + +permissions: + issues: write + +jobs: + close-non-maintainer-issues: + runs-on: ubuntu-latest + steps: + - name: Check if user has maintainer rights + id: check_permission + uses: actions/github-script@v7 + with: + script: | + try { + const permission = await github.rest.repos.getCollaboratorPermissionLevel({ + owner: context.repo.owner, + repo: context.repo.repo, + username: context.payload.issue.user.login + }); + + const hasWriteAccess = ['admin', 'write', 'maintain'].includes(permission.data.permission); + core.setOutput('has_write_access', hasWriteAccess); + + return hasWriteAccess; + } catch (error) { + // If we can't check permissions (e.g., user is not a collaborator), assume no access + core.setOutput('has_write_access', false); + return false; + } + + - name: Close issue if user lacks maintainer rights + if: steps.check_permission.outputs.has_write_access == 'false' + uses: actions/github-script@v7 + with: + script: | + const message = `This repository is for announcements by the PowerShell team only. + + To file a bug or start a discussion, please find the appropriate repo in [PowerShell](https://github.com/PowerShell) and create a new issue. + + For general issue discussions, please go to [PowerShell/PowerShell](https://github.com/PowerShell/PowerShell/issues) and create a new issue. + + This issue has been automatically closed.`; + + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.payload.issue.number, + body: message + }); + + await github.rest.issues.update({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.payload.issue.number, + state: 'closed' + });