A ValidationErrorInfo flattened to the plain shape that survives a JSON hop — a GraphQL
error's extensions, a remote-operation output payload — with Value reduced to something that
serialises predictably.
Exists because ValidationErrorInfo is a class: once it crosses the wire the receiving side gets a
plain object, and instanceof (or a method call) on it fails. Producers call
SerializeValidationErrors at the boundary; consumers call DeserializeValidationErrors
to get real instances back. Keeping both in one place is what stops the two sides drifting.
A ValidationErrorInfo flattened to the plain shape that survives a JSON hop — a GraphQL error's
extensions, a remote-operation output payload — withValuereduced to something that serialises predictably.Exists because
ValidationErrorInfois a class: once it crosses the wire the receiving side gets a plain object, andinstanceof(or a method call) on it fails. Producers call SerializeValidationErrors at the boundary; consumers call DeserializeValidationErrors to get real instances back. Keeping both in one place is what stops the two sides drifting.