Per-slot declaration. Flat record — round-trips through the default
Hydrator with no custom marshaller.
name — canonical internal slot name (e.g., 'hand:left',
'sit:1'). Colon-positional per decision #5.
accepts — a Mixins registry constant naming the mixin an
occupant must compose. Validated at setStaticSlots time.
capacity — max simultaneous occupants. Default 1. Use
UNBOUNDED_CAPACITY for unbounded.
postures — slot-side decoration; consumed by Postured / verbs.
Plain strings; no substrate-level validation (typo'd values
surface at use time).
userFacingDetail — keyword on the host's DetailedMixin map that
targets this slot via MQL (mount back, sit seat).
bodyPart — the anatomical part (a body.* key, Vitals) this slot
attaches at. Losing the part disables the slot (coarse, in
canOccupy). OPTIONAL: non-anatomical affordances (a cranial
implant bay, a saddle surface, a future magic aura) omit it — the
slot is its own axis that references anatomy where it has a home,
not a thing anatomy owns. See docs/subsystems/vitals.md.
covers — anatomical parts an occupant of this slot covers
(body.* keys). The coverage relation — for armor mitigation,
hit-location, "the wound is hidden under the coat". One slot may
cover many parts. Declared seam; no consumer this build.
Per-slot declaration. Flat record — round-trips through the default Hydrator with no custom marshaller.
name— canonical internal slot name (e.g.,'hand:left','sit:1'). Colon-positional per decision #5.accepts— aMixinsregistry constant naming the mixin an occupant must compose. Validated atsetStaticSlotstime.capacity— max simultaneous occupants. Default 1. UseUNBOUNDED_CAPACITYfor unbounded.postures— slot-side decoration; consumed by Postured / verbs. Plain strings; no substrate-level validation (typo'd values surface at use time).userFacingDetail— keyword on the host's DetailedMixin map that targets this slot via MQL (mount back,sit seat).bodyPart— the anatomical part (abody.*key, Vitals) this slot attaches at. Losing the part disables the slot (coarse, incanOccupy). OPTIONAL: non-anatomical affordances (a cranial implant bay, a saddle surface, a future magic aura) omit it — the slot is its own axis that references anatomy where it has a home, not a thing anatomy owns. See docs/subsystems/vitals.md.covers— anatomical parts an occupant of this slot covers (body.*keys). The coverage relation — for armor mitigation, hit-location, "the wound is hidden under the coat". One slot may cover many parts. Declared seam; no consumer this build.