VA-52: catch a stale Cargo.lock in the PR check (--locked) #56
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/VA-52-ci-locked-build"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
VA-52:
build-package.ymlrun #189 failed on the VA-9 merge (f747915a). Root cause: that commit addedwindows-servicetocrates/vervain-agent/Cargo.tomlbut the committedCargo.lockhad no entry for it (433 vs 503 packages now). The release build runscargo build --release --locked, which fails the lock-consistency check; the failure was 21s (a resolve error, not a compile failure).Why the PR check missed it:
oci-build/check.Dockerfilebuilt without--locked, so it resolved a fresh in-container lock and passed. The in-container resolution is discarded (COPY-in build), so the stale committed lock reachedmainand onlybuild-package.yml(which uses--locked) caught it - post-merge.Already healthy on main
The build itself is fine now: the VA-10 merge regenerated
Cargo.lock(a host-mounted build wrote the windows-service + webrtc entries back), and build-package run #194 is green. So this PR does not fix a current breakage - it prevents the recurrence.Change
Add
--lockedto the clippy / build / test / windows-cross-check steps inoci-build/check.Dockerfile. A staleCargo.locknow fails the PR check instead of leaking to the post-merge package build. Cargo resolves the whole-graph lock (all targets) regardless of build target, so the host-target steps also catch a missingcfg(windows)(or other target-gated) dependency.Validation
oci-build/check.Dockerfile(now--lockedthroughout) passes on current main: fmt, clippy --deny warnings, build, full test suite, and the Windows cross-check.Refs VA-52.