ci: hold pull request titles to Conventional Commits - #55
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Holds pull request titles to Conventional Commits, as the runtime and gateway do. GitHub squash merge uses the title as the commit message whenever a pull request carries more than one commit, so a prose title lands a non-conventional commit on
mainafter every commit-level gate has passed.Adds
scripts/check_conventional_subject.pyand aPR titleworkflow, the same port as the gateway: the title is read from the environment rather than interpolated, actions are SHA-pinned, and the job runs onstep-security/harden-runner. The commit types match this repository's commit-msg hook.Left for the maintainer: adding
Conventional commit formatto the required checks onmain.Type of change
feat- new CLI command, output mode, bridge integration, or operator workflowfix- bug fix or command behavior correctiondocs- documentation onlytest- tests onlyrefactor- no behavior changesecurity- touches tokens, deploy keys, credentials, or local runtime authoritycontract-change- changes bridge, output JSON, cloud, Hub, or SDK contract usageRequired checklist
go test ./...passesgo vet ./...passes.gofile has the Apache-2.0 license header--output jsonis supportedCLI authority and safety checklist
ori.yamlindependentlyExternal integration checklist
Complete if this PR touches runtime bridge, cloud, Hub, or SDK integrations.
If you used AI assistance
Related issue
None.
Testing notes
pre-commit run --fileson both files and the supply-chain guard pass; the script acceptsci: hold pull request titles to Conventional Commitsand rejectsAdd stuff.