Files
architectandClaude Fable 5 9bfbd24461
test / test (pull_request) Successful in 4s
v2: fail (exit 1) on naming violation
The four wired repos flip the naming job to a required status check
(agenthub#557 WS6); a check that always exits 0 can never gate. v2 makes
the script exit nonzero with FAIL lines; warn-only stays available via
job-level continue-on-error or the legacy @v1 tag. dfritz break-glass
exemption unchanged.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 18:05:26 +00:00

40 lines
1.3 KiB
YAML

name: Check branch/PR naming
description: |
Validates that a PR's head branch and title follow the fritzlab naming
standard. Fails (exits 1) on any violation, with FAIL log lines naming
it. Warn-only wiring is the consumer's choice: set
continue-on-error: true on the job (or pin @v1, which never fails).
Standard:
branch: <role>/bug-<id>/<kebab> e.g. dev/bug-x7k2m9/fix-terminal-resize
chore: chore/<kebab> bug-less trivia only
title: [bug-<id>] Description (chore PRs: no [bug-id] prefix)
Role must be a roster handle: dev | ux | ops | security | perf | architect | support
Break-glass: PRs authored by dfritz are exempt.
inputs:
head-branch:
description: Head branch name — github.head_ref on pull_request events.
required: true
pr-title:
description: PR title — github.event.pull_request.title.
required: true
pr-author:
description: |
PR author login — github.event.pull_request.user.login.
dfritz is exempt from all checks.
required: false
default: ''
runs:
using: composite
steps:
- name: Validate naming
shell: bash
env:
HEAD_BRANCH: ${{ inputs.head-branch }}
PR_TITLE: ${{ inputs.pr-title }}
PR_AUTHOR: ${{ inputs.pr-author }}
run: bash "${{ github.action_path }}/check.sh"