# CMVR-ES Proto Contract This module maintains a one-way mirror of protobuf definitions from the `xtkuang_dev` branch of the CMVR-ES repository. During Maven's `initialize` phase, the build performs a shallow sparse clone of the upstream `protos/cmvr/api`, `protos/cmvr/msgs`, and `protos/cmvr/common` directories. These directories replace the local `src/main/proto/cmvr` mirror, and Java/gRPC sources are regenerated under `src/main/java/cmvr` so Maven and IDE compilation use the same files. The build machine must have `git` installed and read access to the CMVR-ES SSH repository. The upstream repository and ref can be overridden when needed: ```shell mvn -Dcmvr.es.repository= -Dcmvr.es.proto.ref= compile ``` Do not edit local proto or generated Java files. The next Maven build replaces them with the current upstream definitions.