ci(codegen): Check 3 sweeps both directions — canonical protos missing a vendored copy now fail
This commit is contained in:
@@ -28,11 +28,13 @@ tarball, where the rest of the mxaccessgw repo does not exist. The vendored
|
||||
copies are shipped in the published `.crate` via `Cargo.toml`'s `include`
|
||||
list, which is what makes the crate buildable standalone; they are build
|
||||
inputs only, never a second source of truth. **Refresh rule:** any commit
|
||||
that edits a Contracts proto (`mxaccess_gateway.proto`, `mxaccess_worker.proto`,
|
||||
`galaxy_repository.proto`) must copy the changed file(s) into
|
||||
`clients/rust/protos/` in that same commit — `scripts/check-codegen.ps1`
|
||||
Check 3 fails the build on byte drift between the vendored copies and the
|
||||
canonical Contracts protos. `tonic`/`prost` bindings are generated into
|
||||
that edits *or adds* a Contracts proto (today `mxaccess_gateway.proto`,
|
||||
`mxaccess_worker.proto`, `galaxy_repository.proto`) must copy the changed or
|
||||
new file(s) into `clients/rust/protos/` in that same commit —
|
||||
`scripts/check-codegen.ps1` Check 3 fails the build on byte drift between the
|
||||
vendored copies and the canonical Contracts protos, and equally on a canonical
|
||||
proto that has no vendored copy (which an in-repo build cannot catch, since
|
||||
`build.rs` reads the canonical directory here). `tonic`/`prost` bindings are generated into
|
||||
Cargo build output. `src/generated.rs` declares the Rust modules that
|
||||
include those generated files. `src/generated` remains reserved for checked-in
|
||||
generator output if the crate later changes to source-tree generation.
|
||||
|
||||
Reference in New Issue
Block a user