Repository navigation
ci: skip workflows whose inputs did not change - #1397
Merged
Merged
Conversation
Tile jobs ran on every push because any_changed was never declared. CodeQL and the naming guard now run only when the files they read change. Signed-off-by: Roman Ivanov <rivanov@nvidia.com>
roivanov
requested review from
binarybana,
cryos,
elibol,
kkraus14,
nihalpasham and
rparolin
as code owners
October 7, 2026 22:42
This was referenced Oct 7, 2026
roivanov
force-pushed
the
ci/split-workflow-changes
branch
from
October 7, 2026 23:06
fbeaa86 to
5a55011
Compare
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.
Summary
Skip Tile, CodeQL, and the naming guard when a change cannot affect what those jobs read.
Changes
any_changedfilter so a non-Tile diff skips the Tile jobs, while a push with no detectable diff still runs them. The job condition already readany_changed, butdorny/paths-filteronly sets an output for a filter that is declared. That name was not declared, so the output stayed empty. Empty is not'true', and the condition wasany_changed != 'true', so it was always true and every Tile job ran on every push..github/, shell, or Python files change. The weekly schedule still scans the whole tree.cuda-oxide/crates/, its script, and its workflow. The comment records whycutile-rsand the shared host crates stay out: the script'sSEARCH_ROOTSdoes not read them.Testing
Workflow configuration only. No crate, example, or guard behavior changed, so
just checkandcargo oxide runwere not run.just -f cuda-oxide/Justfile checkpasses (the local mirror of CI: fmt, clippy, tests, guards, docs)cargo oxide run <example>passes, orcuda-oxide/scripts/smoketest.sh -o '^<example>$'Checklist
git commit -s)