Skip to content
BETAGuardrails are in beta. The library, the configuration format and the CLI command can still change.

Guardrails

git

6 guardrails, all at version v1.

GuardrailDefault severityWhat it checks
git/author-identity-domainwarningEvery commit in the build range was authored and committed by an address on a domain the organisation controls.
git/changed-files-budgetinfoThe build range changes few enough files that a reviewer can hold the whole change in their head.
git/conventional-commitserrorEvery commit message in the build range follows the Conventional Commits specification: the subject line, the blank line before the body, and the BREAKING CHANGE footer.
git/no-merge-commitswarningThe build range contains no merge commits.
git/no-wip-commitswarningThe build range carries no commit that says it was never meant to be merged.
git/work-item-referencewarningEvery commit in the build range, or the branch it is on, names the change record it belongs to.

Shared inputs

Every git guardrail declares these inputs, and each one may add its own.

InputDescriptionDefault
baseRefRef the range starts at. The commits checked are <baseRef>..HEAD.origin/main

Shared collectors

Every git guardrail is handed the facts these collectors gather, and each one may ask for more of its own.

CollectorGathers
gitThe repository, HEAD, the remotes, and every commit between the base ref and HEAD with its message, author, parents and the files the range changed.

Every guardrail in this category is configured the same way, in the guardrails.checks array of buildnote.json. See Configuring guardrails for every option, and Guardrails to search the whole library.

Buildnote Limited
Registered in England and Wales, Reg: 16140412