chore(labs): one toolchain hash path, a leaner labs-fast, and a lockfile drift note - #25331
Merged
Merged
Conversation
…ile drift note Labs patch 0003: the toolchain hash no longer has a foundation-mode branch that probes bin/ (and refuses to run before a build). Both modes hash the directory's committed content and mix in the optional binaries expected on this machine — predicted from the pins in pinned mode and, in foundation mode, read from a new `optional=` line that scripts/labs_fnd_hashes.sh records alongside the provider hashes. The hash is computable before provisioning in both modes and the two branches collapse into one. labs-fast now runs what a foundation change can break — labs against the portals with its tests, and the contracts against this tree's nargo/bb; docs, spartan, playground and the claude tests move to labs-full with the benches. commit-use-local reports lockfile entries that changed outside the portal rewrite (yarn re-resolves tag ranges such as `latest`), so an unrelated bump is visible in the build log instead of silently moving every labs cache key. CLAUDE.md gains a <labs_build_tooling> block describing the make targets, the scripts under scripts/labs_*, the skip list and the cache identity.
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.
Review follow-ups for #25318, as a separate PR into
ad/delete-in-tree-labs.hashpath. Foundation mode no longer probesbin/(and no longer refuses to run before a build): both modes hash the directory's committed content plus the optional binaries expected on this machine — predicted from the pins in pinned mode, and in foundation mode read from a newoptional=line thatscripts/labs_fnd_hashes.shrecords with the provider hashes. Verified in the devbox: identical hash with and withoutbin/provisioned, a different hash when theoptional=record changes, pinned mode unchanged.labs-fastscope. Keepsyarn-project(+tests, e2e),aztec-nr,noir-contracts,contract-snapshots-tests— what a foundation change can break.docs,spartan,playground,claude-testsmove tolabs-fullwith the benches (the pin-bump PR should runci-full). Saves the ~3 min of upstream-uncached work (nargo checkin aztec-nr is kept; the docs example compile goes).commit-use-localnow lists lock entries that changed outside the portal rewrite. Yarn keeps existing resolutions for unchanged descriptors; the exception is tag ranges (latest), which it re-resolves — that is now visible in the build log rather than silently moving every labs cache key. The rewrite lives in the marker commit and is never exported.<labs_build_tooling>: the make targets,scripts/labs_env.sh/labs_test_cmds.sh/labs_fnd_hashes.sh,labs-patches/test_cmd_skipand the cache identity.Not changed, with reasons in the threads: the skip list stays in
labs-patches/(the whole directory is foundation-only tooling; only the.patchcontents go upstream), and patch 0002 stays (it exists for thecd labsprefix, which a test-pattern file cannot express).