marzoukbaig14/committed-train
Committed — Conventional Commits dataset Filtered (diff -> Conventional Commits message) pairs derived from CommitChronicle, for fine-tuning small models to write commit messages from a diff. Built by the Committed project. Schema Field Type Notes diff string The code diff for a single-file change. message string Normalized Conventional Commits subject line (the training target). reasoning_trace string | null Reserved for v2 (reasoning… See the full description on the dataset page: https://huggingface.co/datasets/marzoukbaig14/committed-train.
Committed — Conventional Commits dataset
Filtered (diff -> Conventional Commits message) pairs derived from CommitChronicle, for fine-tuning small models to write commit messages from a diff. Built by the Committed project.
Schema
Composition
Languages (identified by file extension):
Commit types:
How it was built
Starting from CommitChronicle, a commit is kept only if:
- the subject line matches a relaxed Conventional Commits pattern (
feat|fix|refactor|docs|test|chore|perf|style|build|ci, optional scope, optional breaking!), then normalized (lowercase type,doc->docs, strip!, subject line only, trim, strip one trailing period); - the subject is 5-200 characters;
- it touches exactly one file, and that file is a recognized code file by extension (the per-repo language attribute is ignored because it mislabels polyglot repos);
- it is not a merge, revert, or bot commit (e.g. Dependabot, detected by message pattern);
- the diff is at most 2048 tokens (Qwen3-1.7B tokenizer); over-cap diffs are dropped, not truncated.
The pool is then balanced (each language capped to 6,000 rows, languages with fewer than 500 rows dropped) and split 90/5/5 train/validation/test, stratified by commit type so each split preserves the type distribution.
Provenance & license
Each row keeps its source repo and license. CommitChronicle aggregates permissively-licensed repositories (MIT, Apache-2.0, BSD-3-Clause); this derivative is redistributed under those source terms. Please cite CommitChronicle and its paper:
Eliseeva et al., From Commit Message Generation to History-Aware Commit Message Generation, arXiv:2308.07655.
Known limitations
- The source scan covered ~85-90% of CommitChronicle's train split, not a full pass, so the language mix is near-complete rather than exhaustive.
- Commit types are imbalanced (
fixis the plurality); a trivial always-predict-fixbaseline scores around its share, so read prefix-accuracy against that floor. - Description casing is not normalized (acronyms are preserved) — an accepted v1 limitation.
- No automated scrubbing of secrets/PII; the sensitive-data caveat from CommitChronicle is carried forward.
