[anneal] Add playground metadata - #2
Open
platonicsock wants to merge 53 commits into
Open
Conversation
Move the Zerocopy crate and its vendored Cargo configuration under `zerocopy/`, and update CI, docs, hooks, and helper scripts to run zerocopy commands from that directory. This keeps zerocopy in its own vendored Cargo world while allowing tools, Anneal, and future crates to use normal Cargo resolution and not require vendoring their dependencies. Also move `anneal/v2/exocrate` to the repository root. gherrit-pr-id: Ghuilhfh6h4womt35vc6domtloovmnnhl
Bumps the cargo group with 4 updates in the /anneal directory: [tar](https://github.com/composefs/tar-rs), [openssl](https://github.com/rust-openssl/rust-openssl), [rand](https://github.com/rust-random/rand) and [rustls-webpki](https://github.com/rustls/webpki). Updates `tar` from 0.4.45 to 0.4.46 - [Release notes](https://github.com/composefs/tar-rs/releases) - [Commits](composefs/tar-rs@0.4.45...0.4.46) Updates `openssl` from 0.10.76 to 0.10.80 - [Release notes](https://github.com/rust-openssl/rust-openssl/releases) - [Commits](rust-openssl/rust-openssl@openssl-v0.10.76...openssl-v0.10.80) Updates `rand` from 0.9.2 to 0.9.4 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/0.9.4/CHANGELOG.md) - [Commits](rust-random/rand@rand_core-0.9.2...0.9.4) Updates `rustls-webpki` from 0.103.10 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](rustls/webpki@v/0.103.10...v/0.103.13) --- updated-dependencies: - dependency-name: tar dependency-version: 0.4.46 dependency-type: direct:production dependency-group: cargo - dependency-name: openssl dependency-version: 0.10.80 dependency-type: indirect dependency-group: cargo - dependency-name: rand dependency-version: 0.9.4 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This cfg deactivates Debug and Display for floatting point numbers, this is particluarly useful in kernel context. The implementation is inspired by: rust-lang/rust@ec7292ad3c35 Fixes google#3426
- Add nix derivations for exocrate - Add `setup` sub-command to locate-or-install exocrate - Add integration test for "developer mode" `setup` that presumes local exocrate archive - Add github workflows to: - Warm nix cache - Locally link exocrate archive from nix, then run all tests gherrit-pr-id: Gwhroikc5idscowxamayknlke2uiddzv3
Share the exocrate installer between Anneal and v2, and have non-v2 Anneal install the same Nix-built omnibus archive that v2 already produces. The generated Lean workspace can then use the archive layout directly instead of cloning and rewriting Lake dependencies at runtime. Update Anneal CI to build the archive with Nix, install it before root tests and example checks, and run the Lean-heavy integration suite serially. The workflow no longer depends on a Docker image that pre-bakes the old setup output. gherrit-pr-id: Gefzjo7bqy3imk4ti4im5wep4jz3upvrm Co-authored-by: Mark Dittmer <markdittmer@google.com>
…3443) The installed Nix-built toolchain archive is read-only, and generated verification workspaces symlink vendored .lake/build directories back into that archive to avoid copying several GiB of prebuilt Lean artifacts per run. Normalize copied vendored Lake source/config mtimes to the Unix epoch so Lake --old treats the linked archive cache artifacts as reusable instead of trying to delete and rebuild read-only .olean files through those symlinks. gherrit-pr-id: Gqbvdpe5hujures6czytfxm2bfeoeddlx
Teach the Nix archive builder to construct all supported platform archives from platform-specific upstream artifacts, unpack Mathlib cache archives using a native leantar, and seed vendored Lake path packages from the unpacked cache layout. Run the archive verification build in Lake's old mtime mode with deterministic source/config mtimes so the prebuilt cache artifacts are replayed instead of invalidated and rebuilt in the Nix sandbox. gherrit-pr-id: Gvs2nuhwbbh5phbtjrqaw4uc7odrdp7ce
gherrit-pr-id: Gra3t2uewe7dw5cfr6mu3gnvggplikenc
gherrit-pr-id: Grl7i4qbjhlucgcy6c42kx2y65nxbk4dz
…google#3445) gherrit-pr-id: Gzd6gegpj7efpcjpnjedmkndsvpemo4x5
…w pins (google#3448) * Fix create-pull-request action pins * Ignore intentional Docker shell in zizmor * Limit blocking zizmor findings to medium severity
…#3416) Renames `zerocopy_unstable_derive_on_error` to `zerocopy_unstable_linux`. Adds unstable `derive(most_traits)` which attempts to quietly derive all zerocopy traits, but excludes traits like `Hash` for which zerocopy provides optimized derives. gherrit-pr-id: G713b9f3eb6365b11e4e1777ee69e75a6fae758d3
Fixes google#3428 Co-authored-by: Sagar Taunk <sagartaunk@proton.me>
Pass --diagnostic-width=100 to rustc in UI tests to ensure consistent error message line-wrapping regardless of the terminal width of the environment in which the tests are run. The flag is skipped for the 'msrv' toolchain (Rust 1.56.0) since it was only stabilized in Rust 1.70.0. The TERM/COLUMNS environment variables are retained since they can still influence other tools, but a comment is updated to clarify that --diagnostic-width is now the primary and more reliable mechanism. Fixes google#3113 Co-authored-by: Krish Sapru <ksapru@bu.edu>
Use XDG cache dir instead of home dir on `UserGlobal` installs, to prevent polluting user home directories. Fixes: google#3420
Findings: lake --old helps but is not enough if archive inputs have fresh mtimes, and without a root manifest Lake reconfigures path dependencies and writes locks into read-only package config trees; Lake manifest path entries can be relative to the generated workspace. In response, v1 generated workspaces now require Aeneas directly from the installed archive, write a locked relative lake-manifest.json, stop copying Aeneas/packages and symlinking .lake/build, and the archive build primes config caches, rewrites upstream trace prefixes, and makes Lake inputs older than prebuilt artifacts. gherrit-pr-id: Gf5g4ujwxwoivi2uce2w3zt2hemew6jfi
Findings: the symlink-free v1 contract depends on a fully read-only extracted Aeneas archive being usable by a fresh generated workspace with a complete relative manifest, lake --old, and no package reconfiguration or cache rebuild. In response, v1 and v2 integration tests now install the Nix-built archive, assert Aeneas is read-only, create a tiny generated Lake workspace with a relative locked manifest, then run lake --old build Generated and lake env lean --json against the archive to catch regressions. gherrit-pr-id: Gk6ir6ucgyyji67sqkhteqq3wjxijq7at
…oogle#3399) TAG=agy gherrit-pr-id: Gisb7egnyltdoxlay3of6lmsjbtlok7ct
Fixes google#3466 gherrit-pr-id: G304df306ff9b25d6a30a8c91906232a439cf2ba4
…oogle#3471) Bumps the all-actions group with 11 updates in the / directory: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `6.0.3` | `7.0.0` | | [rust-lang/crates-io-auth-action](https://github.com/rust-lang/crates-io-auth-action) | `1.0.4` | `1.0.5` | | [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action) | `3.21.0` | `3.21.2` | | [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `8.1.0` | `8.1.1` | | [actions/cache/restore](https://github.com/actions/cache) | `5.0.5` | `6.1.0` | | [actions/cache/save](https://github.com/actions/cache) | `5.0.5` | `6.1.0` | | [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) | `4.1.0` | `4.2.0` | | [docker/login-action](https://github.com/docker/login-action) | `4.2.0` | `4.4.0` | | [docker/build-push-action](https://github.com/docker/build-push-action) | `7.2.0` | `7.3.0` | | [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) | `0.5.6` | `0.5.7` | | [github/codeql-action/upload-sarif](https://github.com/github/codeql-action) | `4.36.2` | `4.36.3` | Updates `actions/checkout` from 6.0.3 to 7.0.0 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@df4cb1c...9c091bb) Updates `rust-lang/crates-io-auth-action` from 1.0.4 to 1.0.5 - [Release notes](https://github.com/rust-lang/crates-io-auth-action/releases) - [Commits](rust-lang/crates-io-auth-action@bbd8162...c6f97d4) Updates `DeterminateSystems/determinate-nix-action` from 3.21.0 to 3.21.2 - [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases) - [Commits](DeterminateSystems/determinate-nix-action@4eea0b3...629b284) Updates `peter-evans/create-pull-request` from 8.1.0 to 8.1.1 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](peter-evans/create-pull-request@c0f553f...5f6978f) Updates `actions/cache/restore` from 5.0.5 to 6.1.0 - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](actions/cache@27d5ce7...55cc834) Updates `actions/cache/save` from 5.0.5 to 6.1.0 - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](actions/cache@27d5ce7...55cc834) Updates `docker/setup-buildx-action` from 4.1.0 to 4.2.0 - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](docker/setup-buildx-action@d7f5e7f...bb05f3f) Updates `docker/login-action` from 4.2.0 to 4.4.0 - [Release notes](https://github.com/docker/login-action/releases) - [Commits](docker/login-action@650006c...af1e73f) Updates `docker/build-push-action` from 7.2.0 to 7.3.0 - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@f9f3042...53b7df9) Updates `zizmorcore/zizmor-action` from 0.5.6 to 0.5.7 - [Release notes](https://github.com/zizmorcore/zizmor-action/releases) - [Commits](zizmorcore/zizmor-action@5f14fd0...192e21d) Updates `github/codeql-action/upload-sarif` from 4.36.2 to 4.36.3 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@8aad20d...54f647b) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-actions - dependency-name: rust-lang/crates-io-auth-action dependency-version: 1.0.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: DeterminateSystems/determinate-nix-action dependency-version: 3.21.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: peter-evans/create-pull-request dependency-version: 8.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: actions/cache/restore dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-actions - dependency-name: actions/cache/save dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-actions - dependency-name: docker/setup-buildx-action dependency-version: 4.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions - dependency-name: docker/login-action dependency-version: 4.4.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions - dependency-name: docker/build-push-action dependency-version: 7.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions - dependency-name: zizmorcore/zizmor-action dependency-version: 0.5.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: github/codeql-action/upload-sarif dependency-version: 4.36.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
gherrit-pr-id: Ghyweelxm6wjg643tibrylyutabstm4eo
* Inline zerocopy layout helpers * Inline zerocopy layout helpers
* Add baseline inline annotations * Gate baseline inline annotations
gherrit-pr-id: Gd9e350a7c6d7eef44a2d2f32e00a2325b6413f7c
--- updated-dependencies: - dependency-name: DeterminateSystems/determinate-nix-action dependency-version: 3.21.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: step-security/harden-runner dependency-version: 2.20.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions - dependency-name: github/codeql-action/upload-sarif dependency-version: 4.37.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the all-actions group with 3 updates: [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action), [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) and [github/codeql-action/upload-sarif](https://github.com/github/codeql-action). Updates `DeterminateSystems/determinate-nix-action` from 3.21.5 to 3.21.7 - [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases) - [Commits](DeterminateSystems/determinate-nix-action@c70cb8a...2a0be24) Updates `zizmorcore/zizmor-action` from 0.5.7 to 0.6.0 - [Release notes](https://github.com/zizmorcore/zizmor-action/releases) - [Commits](zizmorcore/zizmor-action@192e21d...6599ee8) Updates `github/codeql-action/upload-sarif` from 4.37.0 to 4.37.1 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@99df26d...7188fc3) --- updated-dependencies: - dependency-name: DeterminateSystems/determinate-nix-action dependency-version: 3.21.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: zizmorcore/zizmor-action dependency-version: 0.6.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions - dependency-name: github/codeql-action/upload-sarif dependency-version: 4.37.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
) Support deriving `IntoBytes` on unmodified `repr(C)` structs whose fields are all `T`, `[T; N]`, or a final `[T]` for the same generic type parameter `T`. All such fields have the same alignment, and each field's size is a multiple of that alignment. Thus, `repr(C)` introduces neither inter-field nor trailing padding. Use an `Identity<Type = T>` bound to have rustc verify that each field's element type actually resolves to `T`. This guards against macro-generated identifiers which compare equal in the derive but have different hygiene contexts. gherrit-pr-id: Gsxxjwwhqbpepd5p73rd6libcy7n44svt
The vendored dependency graph makes resolver-only direct dependencies in testutil unnecessary. Remove them, relax exact requirements already fixed by Cargo.lock, and prune winapi-util and windows-sys once they leave the graph. With registry sources available locally, cargo-zerocopy no longer needs to generate a lockfile before resolving package IDs. Remove that call and an obsolete CI comment about using stable Cargo for metadata. gherrit-pr-id: G766m443zedlghi5gd5ww2n7egxarkoph
Bumps the all-actions group with 6 updates: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `7.0.0` | `7.0.1` | | [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action) | `3.21.7` | `3.21.8` | | [docker/login-action](https://github.com/docker/login-action) | `4.4.0` | `4.5.1` | | [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) | `0.6.0` | `0.6.1` | | [ossf/scorecard-action](https://github.com/ossf/scorecard-action) | `2.4.3` | `2.4.4` | | [github/codeql-action/upload-sarif](https://github.com/github/codeql-action) | `4.37.1` | `4.37.3` | Updates `actions/checkout` from 7.0.0 to 7.0.1 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@9c091bb...3d3c42e) Updates `DeterminateSystems/determinate-nix-action` from 3.21.7 to 3.21.8 - [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases) - [Commits](DeterminateSystems/determinate-nix-action@2a0be24...d966783) Updates `docker/login-action` from 4.4.0 to 4.5.1 - [Release notes](https://github.com/docker/login-action/releases) - [Commits](docker/login-action@af1e73f...abd2ef4) Updates `zizmorcore/zizmor-action` from 0.6.0 to 0.6.1 - [Release notes](https://github.com/zizmorcore/zizmor-action/releases) - [Commits](zizmorcore/zizmor-action@6599ee8...6fc4b00) Updates `ossf/scorecard-action` from 2.4.3 to 2.4.4 - [Release notes](https://github.com/ossf/scorecard-action/releases) - [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md) - [Commits](ossf/scorecard-action@4eaacf0...2d11466) Updates `github/codeql-action/upload-sarif` from 4.37.1 to 4.37.3 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@7188fc3...e4fba86) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: DeterminateSystems/determinate-nix-action dependency-version: 3.21.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: docker/login-action dependency-version: 4.5.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all-actions - dependency-name: zizmorcore/zizmor-action dependency-version: 0.6.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: ossf/scorecard-action dependency-version: 2.4.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions - dependency-name: github/codeql-action/upload-sarif dependency-version: 4.37.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Building zerocopy under Kani without the 'alloc' feature (e.g. plain
'cargo kani autoharness' on the crate) fails with:
error: unused extern crate
--> src/lib.rs:405:1
|
405 | extern crate alloc;
because the crate denies unused_extern_crates. Under cfg(kani) the crate is
not no_std (lib.rs gates no_std on 'not(any(test, kani, feature = "std"))'),
so the Kani proofs resolve Vec/vec! through the std prelude, and nothing
references the 'alloc' crate by name; the 'use alloc::...' imports are gated
on 'any(feature = "alloc", test)' only. Hence the 'kani' predicate in the
'extern crate alloc' gate declares a crate that is never used unless the
'alloc' feature is (also) enabled -- and CI always enables it via the stable
feature set, which is why this never showed up there.
Drop 'kani' from the gate. Verified all configurations compile: 'cargo kani
--only-codegen -Z function-contracts' with no features (previously broken)
and with the stable feature set, plus 'cargo check' with no features
(no_std), with 'alloc', and with '--tests'.
The v2 stack previously introduced util.rs in a merged PR but declared the module only when the Charon integration started using it. Declare the module as soon as it exists so later PRs can add users without making earlier files look inert. The temporary dead_code allowance is needed because this bottom-of-stack commit only wires in the module; subsequent generate/Charon changes remove the allowance once the utilities have production call sites. gherrit-pr-id: Ga2l5vkuio57w6b4kafskxw2bg4ri57gr
gherrit-pr-id: Gusk7sfx53btetxh4h4ew4mg24cjvtya6
…gle#3400) TAG=agy gherrit-pr-id: Gbbpbt76nsgp2ohpclea46vot5joxx7b5
…ic (google#3401) TAG=agy Resolve Cargo requests into explicit package, target, and target-kind artifacts instead of preserving only user-facing Cargo flags for later Charon invocation. This keeps downstream stages from relying on Cargo output conventions whose shape depends on flags and workspace configuration. A future single `charon cargo` invocation strategy would need to account for these hazards: - one `--dest-file` is unsafe when Cargo selects multiple primary units, since multiple Charon driver invocations can race on that path; - Charon directory output is named by Rust crate name, so workspace packages can collide when they share `[lib] name`; - target selectors such as `--tests`, `--bins`, and default selection can produce extra or multiple artifacts; - Charon options such as `--start-from` and `--opaque` are invocation-wide and would be applied to every selected target; - lib+bin package builds may compile a sibling library under `RUSTC_WRAPPER`, which can fail if that library is translated instead of producing the rlib the bin needs. gherrit-pr-id: Gjnh4bziqtksdvg43zzll4732lxlcuss3
…tifacts (google#3402) TAG=agy gherrit-pr-id: G2xsxxkfz5kle6aunmehujqcrly3rjr4f
gherrit-pr-id: G3ub4smvhm3rbp6d53jhwn3knjeaw7ugn
gherrit-pr-id: Gaso4is5l3ore5u3xhbeclucymmqjxqz7
gherrit-pr-id: Gpaak2r3mpajdigm5vcopjcopsv6gcuxr
Retry Buildx setup, registry authentication, and Anneal artifact downloads up to three times, with increasing jitter between attempts. Clean up only the expected partial artifact before a download retry. Enable bounded Cargo and rustup client-native retries for recognized transient downloads, and propagate them through the CI image build and runtime container boundary. Keep every retry below the build and test command boundary so deterministic compilation, test, Miri, and Anneal failures are never retried. gherrit-pr-id: G5v4j2xq7m3n6c9kptwfhzr8dsaeybluq
Build and export the CI Docker image once, upload its gzip-layer archive directly, and have every matrix cell select that exact artifact by the producer-generated ID. Load and validate the image locally, then remove the archive immediately. This eliminates per-cell Buildx setup, registry login, and cache reconstruction while preserving fork behavior. Apply the same immutable-ID contract to the Anneal toolchain fan-out. Upload both already-compressed files without a redundant ZIP, centralize their filenames, and validate upload metadata, download selectors, file shape, digest, and rerun overwrite behavior in shared local actions. The current Docker cache contains 1,275,967,148 compressed bytes. A representative 60-cell hosted PR spent 3,265 aggregate seconds in per-cell Buildx and cache loading, averaging 54.4 seconds per cell. This change should remove repeated BuildKit bootstrap and cache-solve overhead; artifact transfer and docker load remain and require hosted follow-up measurement. gherrit-pr-id: Gr7m2v9k4x6c3p8s5d1f0h2j4l6n8q0w2
Treat the PR-local Anneal Nix cache as a fallback for an exact miss in the trusted main cache. Skip its restore, population, and save when `main` already supplies the same archive inputs. This removes a redundant 1.465 GB cache transfer or publication from ordinary pull requests while preserving branch-local reuse for archive-changing PRs. gherrit-pr-id: G8b5ff74785cf1dfeef62eb4ce695116cac0e9290
gherrit-pr-id: G65mwqxbdjmwi2jj4gocgwsitq76ek3dh
This was referenced Aug 3, 2026
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.
⬇️ Download this PR
Branch
git fetch origin refs/heads/G65mwqxbdjmwi2jj4gocgwsitq76ek3dh && git checkout -b pr-G65mwqxbdjmwi2jj4gocgwsitq76ek3dh FETCH_HEADCheckout
git fetch origin refs/heads/G65mwqxbdjmwi2jj4gocgwsitq76ek3dh && git checkout FETCH_HEADCherry Pick
git fetch origin refs/heads/G65mwqxbdjmwi2jj4gocgwsitq76ek3dh && git cherry-pick FETCH_HEADPull
Stacked PRs enabled by GHerrit.