Files
gh-greyhaven-ai-claude-code…/skills/commit-format/checklists/commit-checklist.md
2025-11-29 18:29:20 +08:00

1.4 KiB

Commit Message Checklist

Use before creating any git commit.

Format Validation

  • Type is one of: feat, fix, docs, style, refactor, test, chore, perf, ci, build, revert
  • Type is lowercase
  • Scope is meaningful and lowercase (if included)
  • Subject uses imperative mood ("add" not "added")
  • Subject is lowercase (NO capitals anywhere)
  • Full header (type + scope + subject) is under 100 characters
  • Subject doesn't end with a period

Body (if included)

  • Blank line after subject
  • Explains why the change was made
  • Wraps at 90 characters per line
  • Uses bullet points for lists
  • Written in present tense
  • Blank line before footer
  • Breaking changes start with "BREAKING CHANGE:"
  • Linear issues referenced as GREY-123
  • GitHub issues referenced as #123

Content Quality

  • Commit message is descriptive and specific
  • Change is atomic (single logical change)
  • No sensitive information (passwords, keys, tokens)
  • Multi-tenant changes mention tenant_id (if applicable)

Python Projects

  • Virtual environment activated (source .venv/bin/activate)
  • Pre-commit hooks will run (Ruff, mypy, pytest)

Before Pushing

  • Commits follow squash-merge strategy (if merging to main)
  • Breaking changes are clearly documented
  • Linear issues are referenced