TechTeamer’s vuer repos enforce a GitHub repository ruleset on commit metadata: a push is rejected unless every commit subject in it matches a conventional-commit pattern. Two traps bite in practice — a default git revert message, and the 100-character subject cap.
For Agents
Before pushing to any TechTeamer vuer repo, check every commit subject in the range, not just the last one. A single non-conforming subject anywhere in the push rejects the whole push, and the fix is a history rewrite (
rebase/commit --amend), which is far more expensive than getting the message right the first time.
The pattern
^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test)(!)?(\([^)]+\))?: [^\n]{1,100}
Reading it out:
- One of the 11 allowed types, lowercase.
- Optional
!(breaking change) and optional(scope). - Then a literal
": ". - Then 1–100 characters of subject, no newline.
Trap 1: git revert default messages are rejected
git revert <sha> generates:
Revert "feat: something"
That starts with Revert — not an allowed type — so the push is rejected. Use the revert type instead:
git revert --no-commit <sha>
git commit -m 'revert: feat: something'
# or: git revert -n <sha> && git commit -m 'revert(entrypoints): drop the .js shims'Trap 2: the subject after the prefix is capped at 100 characters
The {1,100} applies to the text after type(scope): , so a long descriptive subject that would be fine under plain Conventional Commits still fails. Keep subjects short and push detail into the body.
Also enforced: branch naming
The same rulesets enforce branch names of the shape chore/FKITDEV-NNNN-… / feat/FKITDEV-NNNN-… (ticket-prefixed, conventional type). See nusz-1.9.11.47 for the first recorded hit.
Related
- FKITDEV-8387 — hit both traps during the entrypoint rename
- nusz-1.9.11.47 — branch-naming half of the same ruleset
- release-process · vuer_oss · vuer_css · portal_css