Repository navigation
build: refresh and consolidate repository uv pins #1071
Copy link
Copy link
Open
Labels
buildBuild system and dependency updatesBuild system and dependency updatesgood first issueGood for newcomersGood for newcomerssecuritySecurity-related issues or fixesSecurity-related issues or fixes
Description
build: refresh and consolidate repository uv pins
Follow-up to #978. Repository-managed uv consumers use several pin forms, and the weekly binary-freshness workflow does not discover all of them. Consolidate the complete inventory on 0.12.8 and make future drift detectable without maintaining a per-file list in the workflow.
Required implementation
- Pin all 12 production consumers to
0.12.8:data-management/viewer/backend/Dockerfileevaluation/sil/scripts/osmo-lerobot-eval-entry.shinfrastructure/setup/optional/isaac-sim-vm/scripts/install-dev-deps.shsetup-dev.ps1setup-dev.shshared/ci/smoke-import.shtraining/il/scripts/lerobot-train-osmo-entry.shtraining/il/scripts/lerobot/azureml-train-entry.shtraining/il/scripts/lerobot/lerobot-azureml.shtraining/rl/scripts/setup_isaac_runtime.shworkflows/azureml/components/register.yamlworkflows/azureml/osmo-proxy-job.yaml
- Use these verified
0.12.8integrity values at direct-download and image sites:- Linux x86_64:
2e2b37e9811e17675a9e70bed5e1a58fc8c0388be63d751d72cc735188c149ff - Linux aarch64:
ba8661f4fd207c8e94814191598e619b355ac10d5014e851e21eb800f9ef2b00 - PowerShell installer:
c1c357b2945c4eb31f3380a6c0cb1c371f18b3c0d1856073f82d17cc52c892cb - OCI index:
sha256:d1cbaeadc234fe19c0d93daabcf5e98738cd93c6d1dd4918ef6aa30735feb23a
- Linux x86_64:
- Extend
scripts/security/Modules/PinnedToolVersions.psm1so tracked candidate discovery includes.sh,.ps1,.yml,.yaml,.json,.jsonc, andDockerfile*files. - Preserve shell and PowerShell assignment discovery and add:
- exact
pip install ... uv==<version>discovery in shell, YAML, JSON, and JSONC command content; - versioned and SHA-pinned
ghcr.io/astral-sh/uvdiscovery in Dockerfiles; - fail-closed errors when a configured package or image is present but malformed, dynamically versioned, unpinned, or not digest-pinned.
- exact
- Configure
.github/workflows/check-binary-freshness.ymlwith the uv shell variable, PowerShell variable, Python package, and container image identities. Do not retain obsolete per-file references such astraining/rl/scripts/train.sh. - In
data-management/viewer/backend/Dockerfile, declare the digest-pinned uv image as a namedFROMstage and copy/uvand/uvxfrom that stage. Dependabot observes DockerFROMdependencies but not an external image referenced only byCOPY --from=. - Expand
scripts/tests/security/PinnedToolVersions.Tests.ps1to cover all supported formats, malformed and unpinned consumers, exclusions, parser failure behavior, and an integration assertion for the exact 12-file inventory above with one version. - Update
scripts/tests/setup-dev.Tests.ps1expectations to0.12.8. - Update the pin-discovery documentation in:
scripts/README.mddocs/contributing/component-updates.mddocs/security/README.md
Acceptance criteria
- All 12 repository-managed uv consumers resolve to exactly
0.12.8; no production consumer is omitted. - Direct downloads and the Docker image use the matching integrity values listed above.
- Freshness discovery finds assignment pins, exact Python-package pins, and digest-pinned container images automatically across the supported tracked formats.
- A malformed, dynamic, unpinned, or non-digest-pinned configured consumer fails discovery rather than silently disappearing from the inventory.
- The backend Dockerfile exposes uv as a
FROMdependency for Dependabot. - The repository inventory test asserts the exact 12 paths and one unique version.
- Targeted Pester tests, the full Pester suite, ShellCheck, PowerShell analysis, YAML/actionlint, Markdown lint, spelling, Docker build checks, inline-pip compliance, and OCI digest resolution pass.
- Runtime smoke coverage confirms uv
0.12.8supports the repository's usedpython install,venv,sync,export, andpip installcommands. - Affected Azure ML IL lifecycle and pipeline E2E tests pass. OSMO tests may require a correctly aligned deployment storage configuration and workload-identity permission to read the target Azure ML workspace; report infrastructure blockers separately from uv failures.
Scope notes
- The issue deliberately targets
0.12.8. Dependabot applies a seven-day quarantine, so a newer release appearing during implementation does not change this issue's acceptance target. - Preserve existing download-and-verification behavior.
- Automated freshness issue security: binary dependency updates available (3 stale) #1119 tracks release drift; this issue establishes the complete inventory and scanner coverage needed to make that automation reliable.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
buildBuild system and dependency updatesBuild system and dependency updatesgood first issueGood for newcomersGood for newcomerssecuritySecurity-related issues or fixesSecurity-related issues or fixes
Activity
Allmight-456 commentedon Jul 1, 2026
Katrien De Graeve (@katriendg) Hi, I'd like to pick this up. I'll bump the uv pin to 0.11.25, refresh the SHA256 hashes in the affected files, and grep for any other stale uv references left outside #978's scope. I do backend/DevOps build tooling regularly — happy to open a PR.
katriendg commentedon Jul 1, 2026
Ishan Kumar (@Allmight-456) that would be great, thank you! We've assigned the issue to you so it's clear it's being picked up.
As you mention, grep any other references as well, things sometimes move fast and we may have missed one in the issue description.
[-]build: refresh uv pin to 0.11.25 and consolidate remaining stale uv reference[/-][+]build: refresh and consolidate repository uv pins[/+]algattik commentedon Sep 1, 2026
Ishan Kumar (@Allmight-456) I've updated the issue to account for changes in the meantime. Are you still up to implement this issue?
anvitha1633 commentedon Sep 18, 2026
Ishan Kumar (@Allmight-456) Are you still working on this issue?
Katrien De Graeve (@katriendg) is this issue free to work on?
katriendg commentedon Sep 18, 2026
Hello anvitha1633 - since we have not heard back from Ishan, please feel free to work on the issue. If you are unable to assign yourself, we will do so.
Update - I have assigned you.
algattik commentedon Sep 18, 2026
anvitha1633 I've expanded the description of the issue again so the full scope is hopefully clear. Don't hesitate to reach out and/or share a draft PR