contrib-check: failed git status publishes a clean commit label

Closed Beginner friendly
#381 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@Burntgogi is already working on this.

Since Oct 17, 2026.

  • #398 by @Burntgogi — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
84/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
bash, git
Domain
tooling

Research direction

Read tools/contrib-check.sh around line 209, where the script checks Git status and prints the evidence header. Reproduce the failure with a readable HEAD and corrupt index, then check that the script reports the tree and Git exit code and stops before the header; a successful run should still label evidence with +local when the tree is dirty.

Written by the indexing model from the issue text.

Description

review-bot

A tree with a readable HEAD and a corrupt index reaches the evidence header. git status exits 128 with no stdout, but the -n test discards that failure and the header prints HEAD without +local. A run restricted to fmt can still succeed and attribute its evidence to that commit. Isolated execution of the cited production line with Git exit 128 confirms the unchanged label and continued execution. Capture and check the status assignment, report the tree and Git exit code, and stop before printing the evidence header on failure.

Evidence (at the base of #379):

Filed by Shingler, the review bot, while reviewing #379; the defect is outside that pull request.

Dominant language
Rust
Stars
21
Forks
4
Avg merge
2h 32m
Merged PRs (30d)
803

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from midagedev/bloomery

All issues in midagedev/bloomery

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.