Contribution Rules
September 10, 2026 · View on GitHub
This document defines how commits should be named and which ones appear in the changelog.
Consistent commit naming keeps release notes clear and meaningful for users, while avoiding noise from internal work.
Commit Message Format
Each commit message starts with one of the keywords below (all lowercase), followed by a short description in plain English.
All commit type prefixes must be lowercase.
Commit Types
| Type | Description | Changelog |
|---|---|---|
feat: | New features or major improvements visible to users | ✓ |
fix: | Bug fixes — things that were broken now behave correctly | ✓ |
change: | Non-breaking behavior or UX changes users will notice | ✓ |
dataset: | Changes to bundled datasets, prompts, or test seeds | ✓ |
dev: | Internal maintenance, refactors, or tooling changes with no user-facing impact | ✗ |
docs: | Documentation changes — READMEs, examples, or guides | ✓ |
Examples
feat: add --auto-resume flagfix: avoid crash when results folder is missingchange: enable language matching by defaultdataset: update base_user_inputs.jsonldev: refactor runner for simplicitydocs: clarify README usage examples
Pull Requests
- PR titles must follow the same
type: descriptionformat. - All PRs should be made to the
developbranch.
General Rules
- Keep commit messages under 80 characters.
- Use imperative mood (
add,fix,update, notaddedorfixed). - Write clear, self-contained commits — one logical change per commit.
- Avoid merging work with vague messages like "misc updates" or "wip".