From 5e57fdcf66928f0cd17557fa5cf22e9805ebcf14 Mon Sep 17 00:00:00 2001 From: Dallas Gordon Date: Tue, 17 Feb 2026 07:33:41 -0600 Subject: [PATCH] ci: add semantic-pr workflow to enforce conventional commits (#2472) --- .github/workflows/semantic-pr.yml | 28 ++++++++++++++++++++++++++++ CONTRIBUTING.md | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/semantic-pr.yml diff --git a/.github/workflows/semantic-pr.yml b/.github/workflows/semantic-pr.yml new file mode 100644 index 00000000..06546033 --- /dev/null +++ b/.github/workflows/semantic-pr.yml @@ -0,0 +1,28 @@ +name: "Semantic PR" + +on: + pull_request_target: + types: + - opened + - reopened + - edited + - synchronize + +permissions: {} + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + main: + name: Validate PR Title + runs-on: ubuntu-slim + permissions: + contents: read + pull-requests: read + checks: write + steps: + - uses: amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50 # v6.1.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 730446b5..022b97bd 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -122,7 +122,7 @@ Steps: - If you are taking on an existing bug or feature ticket, please comment on the [issue](/../../issues) to avoid multiple people working on the same thing. - All commits **must** follow [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) - - Pull requests with commits not following this standard will **not** be merged. + - Pull requests with titles or commits not following this standard will **not** be merged. PR titles are automatically checked for compliance. - Please make meaningful commits, or squash them prior to opening a pull request. - Do not squash commits once people have begun reviewing your changes. - Always rebase your commit to the latest `develop` branch. Do **not** merge `develop` into your branch.