fix(ci): build the Windows download artifact name in the right order - #4578
Merged
lanluo-nvidia merged 2 commits intoAug 26, 2026
Merged
Conversation
Every Windows test job on main fails at "Download artifacts" with
Artifact not found for name: pytorch_tensorrt__3.12_cu132__python_only_rtxx64
The build names its wheel artifact `<base>_<arch>` and then appends
`_python_only` and `_rtx`. The test job built the same name in a
different order: it asked setup-binary-builds for the base with
`arch: ${{ env.ARCH }}`, but ARCH is not set anywhere in this workflow,
so the architecture field came out empty; the two suffixes were then
appended to that, and the architecture was tacked onto the very end at
download time. That was harmless while the suffixes did not exist,
because the empty architecture field left a trailing separator for the
architecture to land after. It stopped working once the suffixes were
added, because they now sit between the base and the architecture.
Pass the architecture to setup-binary-builds the way build_windows.yml
does, so it is part of the base name before the suffixes are appended,
and download the artifact under that name unchanged.
Checked against the artifacts the last main run actually uploaded: all
40 names the fixed workflow composes (5 Python versions x 2 CUDA
versions x with/without each suffix) exist in that run. The unsuffixed
name is byte for byte what the old expression produced, so the passing
jobs keep downloading exactly what they downloaded before.
lanluo-nvidia
approved these changes
Aug 26, 2026
lanluo-nvidia
left a comment
Collaborator
There was a problem hiding this comment.
lgtm
wait for ci to pass
The repository lint job runs `black --check .` across the whole tree, so any file that does not match the formatter fails CI for every open pull request, not only the one that touched it. `tests/py/dynamo/conversion/test_cumsum_aten.py` is currently not black-conformant on main, which turns the Python Linting check red here. Reformat that one file with black. This is a formatting-only change: two statements that fit on a single line are un-wrapped. No test logic changes. Verified by running `black --check .` on the full tree: all files pass.
lanluo-nvidia
pushed a commit
that referenced
this pull request
Aug 26, 2026
…4578) Co-authored-by: shoumikhin <shoumikhin@users.noreply.github.com>
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 is broken
Every job in the
CI Windowsworkflow onmainfails at theDownload artifactsstep:170 of 300 jobs failed that way in the latest run, and every non-cancelled
mainrun since 2026-08-23 has ended the same way.Why
The build job builds the artifact name with the architecture inside the base name, then appends the two marks:
The test job put the same pieces together in a different order. It asked
setup-binary-buildsfor the base name witharch: ${{ env.ARCH }}, butARCHis not set anywhere inwindows-test.yml, so the architecture field came out empty and the base ended with a trailing separator. The two marks were appended to that, and the architecture was concatenated onto the very end at download time:This was harmless while the marks did not exist, because the empty architecture field left exactly the separator the architecture needed. It broke as soon as the marks were added, because they now sit between the base and the architecture.
Fix
Pass
inputs.architecturetosetup-binary-builds, the same valuebuild_windows.ymlpasses, so the architecture is part of the base name before the marks are appended. Then download the artifact underARTIFACT_NAMEunchanged.archis used by that action for one thing only, buildingARTIFACT_NAME, so nothing else in the test job changes.Verification
Windows CI cannot be run locally, so this was checked against real data instead: the list of artifacts the latest
mainrun actually uploaded, read through the Actions API. All 40 names the fixed workflow composes (5 Python versions, 2 CUDA versions, with and without each mark) are present in that run.For the case with no marks the fixed expression produces the same string as the old one, character for character, so the jobs that pass today keep downloading exactly what they downloaded before.