Structural equality for Record values: same set of fields, keyed by
label -- a record's fields form an unordered set at the model layer
(declaration order isn't semantically significant, per model.md ยง13).
Comparing label-keyed maps makes this order-independent for free, mirroring
Python's Record.__eq__ (omnist/schema.py), which compares its
label-keyed _by_label dicts directly. Duplicate labels are already
rejected by record(), so each map here has exactly one entry per
label.
Structural equality for
Recordvalues: same set of fields, keyed by label -- a record's fields form an unordered set at the model layer (declaration order isn't semantically significant, per model.md ยง13). Comparing label-keyed maps makes this order-independent for free, mirroring Python'sRecord.__eq__(omnist/schema.py), which compares its label-keyed_by_labeldicts directly. Duplicate labels are already rejected byrecord(), so each map here has exactly one entry per label.