Repository navigation
ci(cutile-rs): complete monorepo cleanup - #1610
Open
PavanaSakethaRam wants to merge 3 commits into
Open
PavanaSakethaRam wants to merge 3 commits into
PavanaSakethaRam wants to merge 3 commits into
Conversation
Signed-off-by: Chitta Sri Sankara Naga Pavana Saketha Ram <pavan.sakethram@gmail.com>
Signed-off-by: Chitta Sri Sankara Naga Pavana Saketha Ram <pavan.sakethram@gmail.com>
Signed-off-by: Chitta Sri Sankara Naga Pavana Saketha Ram <pavan.sakethram@gmail.com>
PavanaSakethaRam
marked this pull request as ready for review
October 22, 2026 18:31
PavanaSakethaRam
requested review from
binarybana,
cryos,
elibol,
kkraus14,
nihalpasham,
roivanov and
rparolin
as code owners
October 22, 2026 18:31
This branch has not been deployed
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
Complete the five cleanup items in #1573 after importing cuTile into the CUDA Rust monorepo. cuTile's dependency policy was not being run by the root workflows, its sources were excluded from the inventory and header guards, and its GitHub configuration still lived under
cutile-rs/.github.Changes
Run the Tile dependency checks in CI
Add a
cargo-denyjob to.github/workflows/cutile-rs.yml. It usescutile-rs/deny.tomland the committed Tile lockfile to check advisories, licenses, banned dependencies, and dependency sources.The command uses
--workspaceto include all eight members, includingcuda-tile-rs, which is outsidedefault-members. It uses--lockedso a stale lockfile fails instead of being updated during the check. The configured audit checks the default feature graph.The job also runs the dependency inventory and source-header guards. It runs on Ubuntu without CUDA or a GPU and follows the existing Tile/shared-host change gate, including manual dispatch and the fallback for mirrored pushes with no detectable diff.
Add and enforce the Tile dependency inventory
Add
cutile-rs/dependency-licenses.csvwith 43 unique workspace-member and direct-dependency names. Coverage includes the main Tile workspace and the four standalone paper benchmark workspaces: bimodal GEMMs, elementwise safety overhead, GEMM safety overhead, and launch overhead.Extend the existing inventory guard to check the Tile CSV alongside the Oxide inventory and remove the blanket Tile exclusion. Workspace discovery now requires each Tile workspace to be listed explicitly, so a newly added nested workspace cannot silently escape the check.
Use
cargo metadata --no-depsfrom each manifest's directory to inspect normal, development, build, optional, and target-specific dependency declarations with the owning toolchain. This checks inventory presence; it does not compare snapshot versions or build the historical paper benchmarks. Metadata failures stop the guard. UpdateCONTRIBUTING.mdto explain which inventory contributors should maintain.Include Tile sources in the header guard
Remove the blanket
cutile-rs/exclusion. Apply the repository's existing standard notices to 13 files that lacked them, covering Rust examples and UI fixtures, book styles/templates, and the Nix configuration.Adjust five UI diagnostic snapshots for the added header lines. Preserve the imported NVIDIA Sphinx theme's existing proprietary notice and check that notice explicitly. Existing third-party exceptions remain in place.
Move GitHub configuration to the repository root
.github/actions/setup-cutile/action.ymland update all six workflow references..github/actionlint.yamlfor automatic discovery by actionlint..github/dependabot.yml, where GitHub can discover its weekly, grouped GitHub Actions updates. Preserve the exclusions fortaiki-e/install-actionandswatinem/rust-cache, whose exact commits are managed through the organization's allowlist.These moves remove the remaining tracked files under
cutile-rs/.github.Validation
Validated locally on macOS ARM64 with Rust 1.98.0, cargo-deny 0.20.2, and actionlint 1.7.12:
Cargo.lockfiles are unchanged.Remaining validation and existing findings
CUDA-dependent compilation, the trybuild UI suite, assembler tests, and GPU tests still require the Linux CUDA environment. The UI snapshots have been checked for their line-number changes but have not been regenerated through the CUDA-dependent suite on this Mac.
An additional audit with
--all-featuresreports three existing advisories inzip 7.2.0, pulled in by the optional Candle examples throughcandle-core 0.9.2: RUSTSEC-2026-0367, RUSTSEC-2026-0368, and RUSTSEC-2026-0369. The configured default-feature audit passes. No advisory exceptions or dependency-policy changes were added.Fixes #1573.