Rule
A raster Channel owns the truthful meaning and sampling path of its pixels through the validated, versioned pixel_delivery contract. The client derives one inspection schema from that contract. The Layer Fields panel and sampling scheduler consume that schema. Runtime samplers emit the same normalized field keys, after which generic hover/details presentation and field selection operate on the sampled section. None of these stages may infer capabilities from a renderer name or provider identity.
The normalized fields are stable across raster providers:
the frame, valid_time;
valid_time;
same categorical fields without becoming recolourable scalar data;
valid_time for a forecast frame;
- scalar pixels expose their declared inspection field and, when supplied by
- categorical pixels expose
categoryand, when supplied by the frame, - provider-coloured imagery with an exact
color_interpretationexposes the - ordinary imagery with frame-metadata sampling exposes
observed_at, or - imagery with
sampling.mode=noneexposes no invented value.
Category IDs such as flood are values of the single category field, not separate fields. Human-readable category names are localized by the semantic quantity plus category ID. Unknown, transparent, antialiased, or mixed colours remain unknown instead of being assigned to the nearest class.
Ownership boundary
An exact RGBA-to-category mapping in color_interpretation is decoding metadata for immutable provider imagery. It records what an existing provider colour means; it is not a Layer palette and does not authorize recolouring. Numeric and class-preserving palette presentation remains Layer-owned as described by numeric raster encoding and palettes.
Adding a new inspectable raster contract must extend the shared inspection schema and its tests. A provider-specific conditional in the Fields panel or map inspector is not a valid integration path.