OptionalmalformedOptionaloversizedHow many records the pre-pass that produced these columns refused because their express id is outside the u32 storage contract (#3395).
It has to travel with the columns: a refused record is absent from ids
by construction, so this side cannot recount it. Optional because a host
on an older wasm build sends the three columns and nothing else — treat
undefined as "this producer does not report", which is not the same
claim as 0, and is why the wasm pre-pass now always sets it.
Whether the pre-pass that produced these columns stopped early at a malformed record -- a quoted string or block comment that never closed (#3790). 0 or 1, never a count: a scan that stops has no reliable place to resume, so every record from that byte on is missing from the columns too.
It has to travel with them for the same reason
oversizedIdCountdoes, only more so: the refusal drops one record, this drops the whole tail, and neither is recoverable fromidson this side.Optional because a host on an older build sends the three columns and nothing else --
undefinedmeans "this producer does not report", which is not the claim0makes.