Skip to main content

Commit checklist (edox-ops)

Use this checklist before every commit. Full rules: commit-messages.md.

Title

  • Format: [WIP: ]<type>[<scope>][!]: <Subject>
  • Allowed type: build, chore, ci, docs, feat, fix, perf, refactor, revert, style, test
  • Scope (optional): lowercase a-z, 0-9, ., _, /, - only
  • Subject: imperative mood, starts with uppercase after :, no trailing period
  • Title length ≤ 72 characters (including WIP:, type, scope, !)

Body and footers

  • Blank line between title and body (if body present)
  • Body lines ≤ 100 characters
  • If title has !, include BREAKING CHANGE: footer with migration notes
  • At most one AI: footer (yes, no, perplexity, copilot, mixed)
  • No WIP: prefix on protected branches (main, master, trunk, develop, release/*, hotfix/*)

Author and hooks

  • Author: AI <ai@libesys.org> (repo-local git config)
  • Run pre-commit run --all-files on staged changes where practical (includes ruff check and ruff format, same paths as the GitLab ruff job)
  • Do not bypass hooks unless explicitly approved
  • Fix hook/gitlint failures and create a new commit (do not amend failed commits)

Before push

  • Relevant unit/integration tests pass for the change
  • Commit message validated by gitlint (via pre-commit commit-msg hook)