[DO-NOT-MERGE] Demonstrate CI gating-check bug: build fail -> Check job status green#2209
Closed
leofang wants to merge 1 commit into
Closed
[DO-NOT-MERGE] Demonstrate CI gating-check bug: build fail -> Check job status green#2209leofang wants to merge 1 commit into
leofang wants to merge 1 commit into
Conversation
DO NOT MERGE. ci/tools/env-vars exits 7 in build mode to make every Build matrix entry fail. Demonstrates that Check job status reports success despite the failure. Refs: NVIDIA#2208
Contributor
Member
Author
|
/ok to test deddae4 |
Member
Author
|
Reproduced. Final state of this CI run (https://github.com/NVIDIA/cuda-python/actions/runs/27451928558):
The single required status check on |
leofang
added a commit
to leofang/cuda-python
that referenced
this pull request
Jun 16, 2026
Mirrors the NVIDIA#2209 reproducer on this branch's new aggregator. Expected outcome: - All Build * matrix entries fail at the env-vars build step. - Downstream Test * jobs are skipped (cascaded needs-failure). - Check job status now reports failure -- the symmetric, post-fix counterpart to NVIDIA#2209 (where Check job status reported success despite the same set of failures). DO NOT MERGE while this commit is present. Remove before merge. Refs NVIDIA#2208, NVIDIA#2209.
rwgk
pushed a commit
that referenced
this pull request
Jun 16, 2026
* ci: replace 'cancelled||failure' aggregator with CCCL-pattern check_result Fixes #2208. The previous `Check job status` body only treated a dep's `result == 'cancelled' || == 'failure'` as failure, letting `'skipped'` slip through silently. When a `build-*` job fails, the dependent `test-*` job is set to `'skipped'` by default needs-failure propagation, and the aggregator passes -- exactly the case demonstrated by #2209. Adopt CCCL's `check_result` pattern: explicit `expected="success"` per dependency, with `expected="skipped"` for legitimate `[doc-only]` skips, and an early short-circuit for `[no-ci]`. Now any deviation from the expected status (including `'skipped'` from a failed upstream) fails the aggregator. Reference: NVIDIA/cccl ci-workflow-pull-request.yml L463-L526. * [demo] Re-inject env-vars exit 7 to validate gating-check fix Mirrors the #2209 reproducer on this branch's new aggregator. Expected outcome: - All Build * matrix entries fail at the env-vars build step. - Downstream Test * jobs are skipped (cascaded needs-failure). - Check job status now reports failure -- the symmetric, post-fix counterpart to #2209 (where Check job status reported success despite the same set of failures). DO NOT MERGE while this commit is present. Remove before merge. Refs #2208, #2209. * Revert "[demo] Re-inject env-vars exit 7 to validate gating-check fix" This reverts commit 811388c.
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.
Do not merge. This is a demonstration of the bug described in #2208.
Injects
exit 7early inci/tools/env-varsso everyBuild *matrix entry fails at the env-vars step (before cibuildwheel runs). Tests downstream will beskippeddue to needs-failure propagation.Expected outcome:
Build linux-64,Build linux-aarch64,Build win-64→ failureTest linux-64,Test linux-aarch64,Test win-64,Test sdist *→ skippedCheck job status→ success ← the bug being demonstratedThis PR will be closed once CI confirms the reproduction.
Refs #2208