Used by parse_bulk_json(). Known dot-notation paths
map to English names; unknown paths get auto snake_case, made unique
on collision. Type coercion follows field_dict$type through
coerce_column(), the same rule the live path uses, so every
dictionary type (including numeric) is invariant across sources.
Parse failures are attached as a brreg_parse_problems attribute.