Context
PR #1526 moved Dylint to one Linux builder that checks Linux, Windows MSVC, and macOS targets. Its first cross-target run failed with E0463: can't find crate for core because Soldr prepared the exact nightly and prebuilt driver but did not add the Windows/macOS rust-std components (run 36347775473). The workflow now has an explicit Install cross-target nightly standard libraries step using soldr rustup target add --toolchain nightly-2026-05-28 ... as a temporary bridge.
zackees/soldr#3426 tracks making Soldr materialize the requested nightly targets just in time. Once that is released and consumed here, this workflow step duplicates work and should be removed.
Proposal
After fbuild uses a Soldr release that includes #3426, remove the explicit target-install step from .github/workflows/dylint.yml. Keep the single Linux job and all three target Dylint checks. Let the Soldr Dylint front door own target provisioning in its canonical toolchain home.
Acceptance criteria
- RED: with the current Soldr version and the explicit workflow step removed, a local Docker or CI fixture with a fresh nightly home reproduces the Windows/macOS missing-
core failure. GREEN: after upgrading to the Soldr release containing #3426, the same fixture succeeds with no explicit rustup target add in the workflow.
- The workflow still runs all custom Dylints against Linux, Windows MSVC, and macOS target code from the Linux runner; a clean checkout passes the observation-ledger checks.
- A warm rerun does not reinstall target components or rebuild the prebuilt Dylint driver. Record the target setup and Dylint-step timings before and after removal.
Decisions
- Priority: P2, because the temporary step is correct but duplicates the intended Soldr behavior.
- Dependency: wait for a released Soldr version that passes #3426, then remove the bridge in one small PR. Do not remove the step while the current release still fails cross-target Dylint.
- Scope: remove only the redundant target-install step; preserve platform lint coverage.
Related issues
Context
PR #1526 moved Dylint to one Linux builder that checks Linux, Windows MSVC, and macOS targets. Its first cross-target run failed with
E0463: can't find crate for corebecause Soldr prepared the exact nightly and prebuilt driver but did not add the Windows/macOSrust-stdcomponents (run 36347775473). The workflow now has an explicitInstall cross-target nightly standard librariesstep usingsoldr rustup target add --toolchain nightly-2026-05-28 ...as a temporary bridge.zackees/soldr#3426 tracks making Soldr materialize the requested nightly targets just in time. Once that is released and consumed here, this workflow step duplicates work and should be removed.
Proposal
After fbuild uses a Soldr release that includes #3426, remove the explicit target-install step from
.github/workflows/dylint.yml. Keep the single Linux job and all three target Dylint checks. Let the Soldr Dylint front door own target provisioning in its canonical toolchain home.Acceptance criteria
corefailure. GREEN: after upgrading to the Soldr release containing #3426, the same fixture succeeds with no explicitrustup target addin the workflow.Decisions
Related issues