I have only worked in large codebases with monorepo, so I'm curious.
Jenkins creates all the protobuf definitions and pushes them to their dependent repos.
A better way would be with a package repository for them, and having it versioned; and running multiple versions of the backend.