Until you want to update a protobuf definition and then tear your hair out because you cannot atomically ship changes to clients and servers. Even if the code in your source tree says everything is a-okay that one service that hasn't been updated shits the bed when handed a proto with mismatched types.
Thus, proto definitions become an "only add, never modify or remove" thing. Not ideal.
Thus, proto definitions become an "only add, never modify or remove" thing. Not ideal.