Codex is currently missing commit message guidelines. Specifically for faster orientation in Git log of a monorepo, we need to settle on and document those.
Previous convention
- WVUI has been using [component||type] commit message subject, component or type in square brackets, several combined as [type0][type1]
- This bracket subject treatment has been lone-standing in Wikimedia environment. Gerrit commit guidelines are using type: commit message title. There's even a validator tool available.
- WiKit hasn't had strict guidelines, but seemed to has at times followed a similar approach like Gerrit.
Outside Wikiverse
Body is mostly similar in conventions, footer needs to be Gerrit specific, focussing on subject:
- Vue <type>(<scope>): <subject> Matched by following regular expression /^(revert: )?(feat|fix|polish|doc|style|refactor|perf|test|workflow|ci|chore|types)(\(.+\))?: .{1,50}/ and oriented on Angular below.
- Angular: <type>(<scope>): <subject>, f.e. docs(changelog): update changelog to beta.5
Proposal
Orient on Gerrit commit guidelines:
- Subject starting with component or type & ending with colon, in case of multiple type0, type1:, separated by , . Closer to natural language and simpler for other Wikimedia devs to orient on.
- Special subject types are build, docs, styles, tests, types, possibly also themes, perf in future
- Body & footer follows Gerrit guidance