A rebuild posts "not part of this build" success to the commit's failed `nix-build` gate and effects
Maintainers usually reply within 1 day
@Padraic-O-Mhuiris is already working on this.
Since Nov 12, 2026.
- #294 by @Padraic-O-Mhuiris — open
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
Research direction
Start with _post_attribute_statuses in nixbot/nixbot/status.py at the linked lines and trace how FailedCommitStatuses supplies failed commit contexts. Reproduce the restart scenario described in the issue and inspect the status updates for nixbot/nix-build and nixbot/effect. Done means attribute rebuilds no longer mark those checks successful when they have no matching attribute.
Written by the indexing model from the issue text.
Description
At 171a8c7 (current main).
When a build reports its whole attribute set, _post_attribute_statuses posts success, "not part of this build", to every stored failure of the commit that none of its attributes cover
(status.py#L788-L799). Those come from FailedCommitStatuses, which returns every failed context of the commit,
so they include the failed nixbot/nix-build gate and failed effects, which have no attribute.
Steps:
- Push a commit with an attribute that fails, so
nixbot/nix-buildfails. - Restart the build; it fails again.
Expected: nixbot/nix-build stays failed throughout.
Actual: nixbot/nix-build is posted success, "not part of this build", then failure again when the build's summary follows. In between, the required check is green. A failed effect on the
commit (nixbot/effect …) gets the same success and stays green until the effect runs again.
- Dominant language
- Python
- Stars
- 118
- Forks
- 22
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 13
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Mic92/nixbot
-
Restarted builds lose credentials when re-evaluating private flake inputsPossibly taken @Ramblurr claimed this 13 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
A per-attribute restart leaves the attribute's status pendingPossibly taken @Padraic-O-Mhuiris claimed this today. Open
Difficulty 3/5 1-2 days Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Effects that share a `lock` and are ordered with `after` deadlock unless their names sort in dependency orderPossibly taken @Padraic-O-Mhuiris claimed this today. Open
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 51/100
Maintainers usually reply within 1 day
Similar issues
-
fuzz fuzz-unconfirmed
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Switch to ruffOpen
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Qiskit/qiskit-aer#2533 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
etesync/etesync-dav#376 ·