How many records the scan refused because their express id is outside the u32 storage contract (#3395).
Counted on every path but one. worker and tokenizer count here;
pre-scanned carries the count from the geometry pre-pass through the
set-entity-index handoff (PreScannedEntityIndex.oversizedIdCount),
which is the path the viewer takes for every SAB-backed worker load of a
file at or above 2 MB (useIfcLoader.ts's geometryWillEmitEntityIndex).
wasm reads it off the array scanEntitiesFast/scanEntitiesFastBytes
return (an own oversizedIdCount property, #7393). A wasm build from
before that property existed, or a caller-supplied wasmApi that returns
a plain array, reads as 0 -- not proof of none on that path.
0 or 1, never a count of how many: whether the scan stopped early because a quoted string or a block comment opened and never closed before end of buffer, or a
#id=TYPE(declaration was cut off before its own '(' was found. Once any of those happens there is no reliable place to resume, so the scan stops there rather than guessing -- every entity after that point, even a well-formed one later in an otherwise-intact file, is NOT inentityRefseither. Before this field existed, that stop was completely silent -- a shorterentityRefswith no signal that anything went wrong at all.pre-scannedcarries it when the producer reports one (PreScannedEntityIndex.malformedRecordCount, #3790) -- the geometry pre-pass path the viewer takes for every SAB-backed worker load at or above 2 MB. A producer built before that field sends none, and reads as0.wasmreads it off the returned array's ownmalformedRecordCountproperty (#7393), with the same older-build caveat asoversizedIdCount.