From 941c77d4c75b9a012decacb081c621da76b8fcbb Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Sat, 27 Jun 2026 19:06:12 -0400 Subject: [PATCH] ci: add Conventional Commits PR-title gate Adopt the shared semantic-pr reusable workflow from ci-workflows as a thin pr-title caller. Repos squash-merge with the squash title set to PR_TITLE, so the PR title becomes the default-branch subject; this gates a Conventional-Commits history. Emitted required check: pr-title / pr-title. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/pr-title.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/pr-title.yml diff --git a/.github/workflows/pr-title.yml b/.github/workflows/pr-title.yml new file mode 100644 index 00000000..e009ba14 --- /dev/null +++ b/.github/workflows/pr-title.yml @@ -0,0 +1,23 @@ +name: pr-title + +# Conventional Commits PR-title gate. Consumes the shared semantic-pr reusable +# workflow from ci-workflows. Repos are squash-only with the squash title set to +# PR_TITLE, so the PR title becomes the default-branch subject — this gates the +# Conventional-Commits history. `edited` re-validates on a re-title. The emitted +# required-check context is `pr-title / pr-title`. +on: + pull_request: + types: [opened, edited, reopened, synchronize] + +permissions: + pull-requests: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + pr-title: + permissions: + pull-requests: read + uses: melodic-software/ci-workflows/.github/workflows/semantic-pr.yml@f82733b00c623254e2d2d2407aca205ae58fb7e4