The renderer should receive primitive draw data, not gameplay meaning.
Good viewport vocabulary:
- mask sprite
- text
- line
- arc
- reticle
- trail
- particle burst
- pick id
- layer
Bad renderer vocabulary:
- asteroid mining logic
- faction war rules
- NPC behavior
- mission beacon semantics
- station ownership decisions
Gameplay meaning lives in the server projection and world repository. The viewport turns already-authorized projection data into pixels and local input.