State¶
Purpose¶
Owns lightweight preview-facing runtime state used by the live preview workflow.
This territory stores transient preview state required for interaction, animation playback coordination, and preview workflow continuity without owning rendering, scene lifecycle, or feature orchestration behaviour.
Owns¶
- Selected preview prefab state
- Preview interaction state
- Animation playback references
- Preview rotation request state
- Lightweight transient preview workflow state
Does NOT Own¶
- Rendering implementation
- Scene lifecycle management
- Export workflows
- Persistent preference storage
- Input event handling
- Panel UI
- Animation system ownership
Allowed Dependencies¶
State may depend on:
- Lightweight abstractions/contracts
- Unity primitives/types
State should avoid: - rendering dependencies - scene orchestration dependencies - feature workflow ownership - panel/UI dependencies
Notes¶
This folder exists to centralize transient preview workflow state that would otherwise become scattered across orchestration systems.
State systems should remain: - lightweight - predictable - transient - coordination-focused
They should not absorb: - workflow orchestration - rendering behaviour - feature logic - persistence responsibilities
The goal is to provide a stable preview-facing runtime state surface without turning state containers into service layers.
Future Candidates¶
- Continue keeping Preview.State lightweight and transient.
- Avoid allowing business logic or rendering behaviour into state containers.
- Maintain clear distinction between state ownership and workflow ownership.