Envelope
- Tier
- envelope
- Surfaces
- page
- Fallback
- code
- State
- settled
The carrier for everything the four native tiers cannot spell: one fenced
shtukbase-block holding one JSON object.
```shtukbase-block
{"type": "kir/tools/decision", "version": 1, "props": {"standing": "settled"}}
```
type is the kind and is the whole of what a payload must carry: a bare word
for the product's own kinds, a namespaced identity for one a dropped file
defines. version and props are written only when the block has them — a
block with no values carries no props at all, which is not an empty one.
Absent is accepted; present-but-wrong is refused. A version that is not a
finite number, or a props that is not an object, has no typed form at all;
guessing at one is how a foreign fence becomes ours by accident.
The bytes in the fence are the authority. The typed form is a read view of them and is never written back over them. A key this build never heard of survives a save untouched, and a payload it cannot parse is kept verbatim.
An unknown type draws an honest card: the kind named in plain words, never
the internal type value or the version as its label, the exact source shown
on request, read-only.