Skip to main content

ADR-002: Conventional Commits as the Commit Standard

Date: 2026-06-02
Status: Accepted

Context

The Society needed a commit message standard that could be:

  1. Enforced by automated tooling (hooks and CI)
  2. Parsed by release automation to determine semantic version bumps
  3. Understood by humans without consulting documentation
  4. Adopted without inventing proprietary conventions

Decision

The Society uses the Conventional Commits
specification as its commit standard, with a curated set of allowed types:
feat, fix, docs, test, refactor, ci, chore.

Alternatives Considered

OptionProsConsWhy Rejected
Custom commit formatTotal control over rulesNo ecosystem tooling; every adopter must learn a new formatReinventing a solved problem
Conventional Commits (chosen)Industry standard; semantic-release integration; commitlint support; human-readableSlightly verbose; requires type discipline
No standardZero frictionCommit history becomes archaeologyIncompatible with the Society's purpose
Emoji-based commits (gitmoji)Visually distinctNot machine-parseable; no tooling for semver bumpingNot suitable for automated release

Consequences

Easier: semantic-release can determine version bumps from commit history
automatically. The Scribe and The Herald can generate changelogs without
manual curation.

Harder: Contributors must learn the type(scope): subject format.
The Doorman enforces this at commit time, which creates friction for new
adopters until the format becomes muscle memory.

New risk: Scope can be omitted, which reduces the signal value of the
commit history. The Doorman enforces subject rules but does not require scopes.

References