The /v1/systemone response as JSON-shaped structs.
These are boundary codecs generated by JSONCodec from the struct and type
declarations below. Jev.HTTP decodes a response body into a
Jev.Wire.Response, and Jev.reply/3 turns that into the plain reply map.
Nothing else in the library sees the wire shape, and nothing in your code
needs to.
The three answer kinds share one struct, Jev.Wire.Answer, because that is
how the API sends them: a type and the fields of that type. Numbers are
number() rather than float() since a server may send 1 for a
probability of one. Unknown keys are ignored, so servers that add fields
keep working; a missing answers, a non-numeric probability, or an unknown
type is a JSONCodec.Error with the path of the offending field.
Jev.Wire.Response.schema/0 is the JSON Schema of what the client accepts.