Agreed, do you think that it is the responsibility of encode! method to handle this?

Currently the encode! method does not raise the expected InvalidByte error