pipe/commitlint.config.js
trvon edaaec0a94
chore: align the hooks, PR template, CODEOWNERS and commitlint with the repo
- The pre-push hook skipped on PIPE_SKIP_PREPUSH_CI_GATE while the gate
  script it runs skipped on PIPE_SKIP_PREPUSH_GATE, so each name worked in only
  one place. Both now use PIPE_SKIP_PREPUSH_GATE.
- The PR template asked for a hand-written CHANGELOG entry; release-please
  generates CHANGELOG.md from commit subjects, so the item now says that. It
  also asked for a "Stability note" the repo does not have; removed.
- CODEOWNERS listed /docs/**, which does not exist.
- commitlint accepted `merge` but rejected `security`, a type
  release-please-config.json maps to its Security section; `security` is now
  allowed.
2026-09-22 12:22:04 -06:00

29 lines
981 B
JavaScript

module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
// Allowed commit types
'type-enum': [
2,
'always',
[
'feat', // New feature
'fix', // Bug fix
'security', // Security fix (release-please "Security" section)
'perf', // Performance improvement
'docs', // Documentation
'chore', // Maintenance (deps, CI config, etc.)
'ci', // CI/CD changes
'test', // Tests
'refactor', // Code restructuring (no behaviour change)
'build', // Build system changes
'revert', // Revert a previous commit
'merge', // Merge commits
],
],
// Allow longer subjects for detailed commit messages
'header-max-length': [2, 'always', 120],
// Don't enforce body/footer rules strictly
'body-max-line-length': [0, 'always', Infinity],
'footer-max-line-length': [0, 'always', Infinity],
},
};