Resolve the Material at detailKey, falling through to the bulk
default when no per-Detail override is set. Omit detailKey to
read the bulk default directly.
OptionaldetailKey: stringSet the Stuff's mass. Strict on Quantity<'kg'>; callers
holding a raw number wrap via Quantity.of(n, 'kg'). YAML
authoring shapes (tag string, alt-unit literal, bare number)
are absorbed by the QuantityMarshaller for kg, not by this
runtime API.
Set the Material at detailKey, or the bulk default when
detailKey is omitted. setMaterial(null, detailKey) removes the
per-Detail override (later reads at that key fall through to the
bulk default again). setMaterial(null) clears the bulk default
AND every per-Detail override.
OptionaldetailKey: string
Read the Stuff's mass as a
Quantity<'kg'>. Strict on the runtime type — the marshaller absorbs persistence-shape coercion at the hydration boundary.