Skip to content

Fix weekly sweep masking the conflict-check exit code#271

Merged
mrpollo merged 1 commit into
mainfrom
fix/weekly-sweep-pipefail
Jun 24, 2026
Merged

Fix weekly sweep masking the conflict-check exit code#271
mrpollo merged 1 commit into
mainfrom
fix/weekly-sweep-pipefail

Conversation

@mrpollo

@mrpollo mrpollo commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

The weekly board conflict sweep was reporting success even when the check found a conflict. The check step pipes the script through tee to capture its output for the issue body, but the step ran under the default bash -e shell, which does not set pipefail. Without it the pipeline takes tee's exit code (0), so the script's exit 1 was swallowed and the job passed.

This is the same silent-failure class the check was built to catch. The manual dispatch right after merge made it obvious: the log printed Conflict detected: Value "88" ... and ERROR: 1 board ID conflict(s) detected, yet the job concluded success, the Report failure step was skipped, and no tracking issue was filed.

The fix sets shell: bash on the step, which GitHub runs with -o pipefail, so the script's exit code is no longer masked by tee. After this lands, a re-dispatch should fail on the existing id-88 conflict and open the tracking issue as intended.

The full-file check piped through `tee`, but the step ran under the
default `bash -e` shell without pipefail, so the pipeline took tee's
exit code (0) and the failing check was reported as success. This is
the same silent-failure class the check itself was meant to catch: the
manual dispatch printed the id-88 conflict yet the job passed and no
issue was filed. Set `shell: bash` so the step runs with pipefail.
@mrpollo
mrpollo merged commit a3d2df9 into main Jun 24, 2026
3 checks passed
@mrpollo
mrpollo deleted the fix/weekly-sweep-pipefail branch June 24, 2026 16:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant