Skip to content
d3 Wiki
03.04

Commit message conventions

History that explains itself and can generate changelogs.

Updated
Oct 3, 2026
On this page

Purpose

History that explains itself and can generate changelogs.

The standard

Conventional Commits:

type(scope): short imperative summary   (≤ 72 chars)

Optional body: what and why, not how. Wrap at 72.
Refs #123
  • Types: feat, fix, docs, chore, refactor, test, perf, build, ci.

  • Scope is optional and is the feature or module (auth, panels, installer).

  • Breaking changes: feat(api)!: … plus a BREAKING CHANGE: footer.

  • Squash-merge commit message = PR title, which follows the same format.

Examples

fix(auth): redirect to /admin after login · feat(rhino): add unitized panel generator · chore: bump supabase-js to 2.5

Anti-patterns

wip, fixes, updates, commit messages in the past tense.

Owner: Matt · Last reviewed: 2026-09