That's usually not needed. The general use case is to have only errorMessages. That's actually why the creation of input filter result is delegated to a buildInputFilterResult so it can be easily overridable.

You cannot serialize this because data potentially contains things like Doctirne collections...