@aljoscha I think it would be more elegant to just drop the enforcement of the type field, if there was really a need for messages with absolutely minimal overhead.
@dinosaur but if you want to make current applications easier to implement, wouldn't it not changing be easier? Otherwise, then you have to deal with the two ways of doing it, the worse way, and the better way. It seems to me that a far better response would be to just create a library that makes it easy to handle a particular nuance (such as the branch
field). Helper libraries also don't require consensus from protocol implementors!