Git Hooks
Enable git hooks:
chmod +x .githooks/*
git config core.hooksPath .githooksUse the Node.js and pnpm versions pinned in package.json. The hook also
requires gitleaks and jq in PATH.
pre-commit stops at the first failure:
Secret scan— Gitleaks on staged changes; missing Gitleaks rejects the commit.Contracts— local catalog and referenced JSON/protobuf checks.Type check— TypeScript check of the whole package.Unused code— Knip.Lint— ESLint on the whole package.
Checks other than the secret scan use the working tree, including unstaged
changes. CI checks PRs to main and also builds the package.
This package has no unit or integration test runner.
feat, fix, docs, refactor, perf, test, build, ci, chore, revert.
<type>(<scope>)?[!]: <subject>
Where:
<type>— one of the allowed prefixes above.<scope>— optional scope in parentheses, alphanumeric/-.!— optional breaking change marker.:— colon + space are required.<subject>— short description.
Total commit message length is limited to 70 characters.
Valid commit examples:
feat: add filters to user searchfix(auth): handle invalid jwt tokenrefactor(user-service)!: drop legacy ws implementationdocs: update api usage sectionchore(ci): tweak lint step
<type>/<slug>
<type>/<scope-or-id>/<slug>
Where:
<type>— one of the prefixes listed above./<scope-or-id>— optional part, alphanumeric/-./<slug>— short description, alphanumeric/_/-.
Valid branch examples:
feat/add-user-search-filtersfix/schedule-update-ws-eventrefactor/core-user-cleanupfeat/GOTEC-404/add-notifications-for-users
Exceptions:
dev,main,master.