import fs from 'node:fs';
const msgFile = process.argv[2];
const msg = fs.readFileSync(msgFile, 'utf8').split('\n')[0].trim();
if (/^(Merge|Revert)/.test(msg)) process.exit(0);
const pattern =
/^(feat|fix|docs|chore|test|refactor|perf|ci|build|style)(\([a-z0-9-]+\))?!?: .{1,72}$/;
if (!pattern.test(msg)) {
console.error(`Commit message does not follow the convention:
<type>(<scope>): <short description>
types: feat fix docs chore test refactor perf ci build style
example: feat(slack): add channel history endpoint
yours: ${msg}`);
process.exit(1);
}