Repository navigation
CI: run the tests when the code comparison fails - issue #1750 - #1751
Merged
Merged
Conversation
The step comparing the PR's code between pushes ran with bash -e but without pipefail, so that a failing git merge-base or git diff gave two empty, hence equal, patch ids: the tests were then skipped whenever they had passed on the previous head, although the code may have changed. Set pipefail and compute each patch id in a checked command. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do and why?
The step added in #1749, which compares the PR's code between pushes, runs with GitHub's default
bash -e, withoutpipefail. A failinggit merge-baseorgit diffinsidepatch_idwas hidden by the pipe: both patch ids were empty, hence equal, and the tests were skipped whenever they had passed on the previous head, although the code may have changed.set -o pipefailin the script.How was this tested?
The step's script, extracted from the workflow, run locally with
bash -e(as on GitHub) on commits of #1745:skip=true), the fixed one runs them (skip=false);mainafter a fully tested push: still skipped;AI assistance
Claude Code found the problem while porting #1749 to disvis and powerfit, wrote the fix and checked it as described above. I reviewed the changes.
Checklist
CHANGELOG.mdupdated for user-facing changes (not user-facing)Related issues
Closes #1750
Notes for reviewers
Same fix as in haddocking/disvis#38 and haddocking/powerfit#155.
🤖 Generated with Claude Code