From 7de5ef5f67b66d4bcc005f4625e0e30270e39dd2 Mon Sep 17 00:00:00 2001 From: Shirley Ugwa Date: Fri, 19 Dec 2025 00:42:41 +0000 Subject: [PATCH] feat: Add workflow to require closing keywords on PRs --- .github/workflows/require-issue-link.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/require-issue-link.yml diff --git a/.github/workflows/require-issue-link.yml b/.github/workflows/require-issue-link.yml new file mode 100644 index 0000000..201a847 --- /dev/null +++ b/.github/workflows/require-issue-link.yml @@ -0,0 +1,21 @@ +name: Require Closing Keyword + +on: + pull_request: + branches: + - master + types: [opened, edited, synchronize, reopened] + +jobs: + check: + runs-on: ubuntu-latest + steps: + - name: Ensure PR closes an issue + uses: actions/github-script@v7 + with: + script: | + const body = context.payload.pull_request.body || ''; + const keywordPattern = /(close[sd]?|fix(e[sd])?|resolve[sd]?)\s+((#[0-9]+)|([\w.-]+\/[\w.-]+#\d+))/i; + if (!keywordPattern.test(body)) { + core.setFailed('Add a closing keyword like "Closes #123" to the PR description.'); + }