Skip to content
Back to skills

Commit Message Completion Eval

ASecurity

Evaluates how well models generate or complete commit messages given code diffs and optional historical context. It probes the model's ability to follow coding conventions, match ground truth exactly, and maintain semantic similarity under varying context lengths. Use when the user wants to benchmark on CMG_test, or asks about evaluating this task. Reports ExactMatch@1.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 11, 2026
researchpythongogit

Security analysis

A100/100

Scanned September 11, 2026

npx -y skills add qhjqhj00/research-skills-pool --skill commit-message-completion-eval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Commit Message Completion Eval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Commit Message Completion Eval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/qhjqhj00-commit-message-completion-eval/badge)](https://www.skillsdirectory.com/skills/qhjqhj00-commit-message-completion-eval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: commit-message-completion-eval
description: Evaluates how well models generate or complete commit messages given code diffs and optional historical context. It probes the model's ability to follow coding conventions, match ground truth exactly, and maintain semantic similarity under varying context lengths. Use when the user wants to benchmark on CMG_test, or asks about evaluating this task. Reports ExactMatch@1.
metadata:
  skill_kind: dataset_eval
  source_arxiv: 2308.07655
  bibtex_key: [REDACTED]
  confidence: high
---

# commit-message-completion-eval

> From Commit Message Generation to History-Aware Commit Message Completion — Eliseeva et al. (2023) (arXiv:2308.07655, 2023)

## What this evaluates

Evaluates how well models generate or complete commit messages given code diffs and optional historical context. It probes the model's ability to follow coding conventions, match ground truth exactly, and maintain semantic similarity under varying context lengths.

## Datasets

- **CMG_test** — total ?; splits: test (-1); repo https://github.com/JetBrains-Research/commit_message_generation

## Metrics

- `B-Norm` — range: [0, 1]
  - Normalized BLEU score variant measuring n-gram overlap between predicted and ground truth commit messages.
- `Edit Similarity` — range: [0, 1]
  - Ratio of matching characters or tokens after optimal alignment, measuring surface-level string similarity.
- `ExactMatch@1` **(primary)** — range: [0, 1]
  - Fraction of instances where the top-1 generated commit message exactly matches the ground truth.
- `ExactMatch@2` — range: [0, 1]
  - Fraction of instances where the ground truth appears in the top-2 generated candidates.

## Input / output format

**Input**: Code diff (and optionally previous commit messages for history) plus a user-typed commit message prefix (for completion) or empty prefix (for generation).

**Output**: A single commit message string.

## Scoring recipe

```python
def compute_metrics(predictions, golds):
    em1 = sum(1 for p, g in zip(predictions, golds) if p == g) / len(golds)
    em2 = sum(1 for p, g in zip(predictions, golds) if g in p or p in g) / len(golds)
    b_norm = compute_normalized_bleu(predictions, golds, n=4)
    ed_sim = compute_edit_similarity(predictions, golds)
    return {'B-Norm': b_norm, 'EdSim': ed_sim, 'EM@1': em1, 'EM@2': em2}
```

## Common pitfalls

- Evaluating on filtered subsets (e.g., First Sentence, Verb-Direct Object) inflates metrics and fails to reflect real-world commit diversity.
- Confusing the generation setting (0% context) with the completion setting (25% context), as metrics trend differently and completion is inherently easier.

## Evidence (verbatim from paper)

> From Table III, we observe that B-Norm and Edit Similarity metrics across all the models and settings increase when adding history.

## Citation

```bibtex
@misc{eliseeva2023commit,
  title={From Commit Message Generation to History-Aware Commit Message Completion},
  author={Eliseeva et al. (2023)},
  year={2023},
  note={arXiv:2308.07655}
}
```

- arXiv: 2308.07655

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.