chore: bootstrap repo scaffolding (M0.1)
Adds the §1.2 scaffolding required by IMPLEMENTATION_PLAN.md M0.1: README, CONTRIBUTING, CODEOWNERS, CHANGELOG, PR + issue templates, CI workflow, release workflow, LICENSE, commitlint, cliff config, .editorconfig, .gitignore, .env.example. Refs: M0.1
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
// commitlint.config.cjs — Conventional Commits enforcement for every repo.
|
||||
// Used by .gitea/workflows/ci-*.yaml `wagoid/commitlint-github-action`.
|
||||
|
||||
module.exports = {
|
||||
extends: ['@commitlint/config-conventional'],
|
||||
rules: {
|
||||
'type-enum': [2, 'always', [
|
||||
'feat', // new feature
|
||||
'fix', // bug fix
|
||||
'docs', // documentation
|
||||
'chore', // tooling, deps, no production code change
|
||||
'refactor', // refactor with no behavior change
|
||||
'test', // tests only
|
||||
'perf', // performance
|
||||
'build', // build system, Dockerfile
|
||||
'ci', // CI config
|
||||
'revert', // revert a prior commit
|
||||
]],
|
||||
'subject-case': [2, 'always', 'sentence-case'],
|
||||
'subject-max-length': [2, 'always', 72],
|
||||
'body-max-line-length': [1, 'always', 100],
|
||||
'footer-leading-blank': [2, 'always'],
|
||||
'references-empty': [1, 'never'], // warn if no Refs: M1.2 footer
|
||||
},
|
||||
parserPreset: {
|
||||
parserOpts: {
|
||||
// Capture milestone references: "Refs: M5.2" or "Closes: M5.2"
|
||||
referenceActions: ['close', 'closes', 'closed', 'fix', 'fixes', 'fixed', 'refs', 'ref'],
|
||||
issuePrefixes: ['M', '#'],
|
||||
},
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user