namespace AcDream.UI.Abstractions; /// /// Per-frame context passed to each call. /// Struct + record for zero-allocation per frame. Add fields here as new /// capabilities become panel-facing — e.g. a future IGameState /// handle once we need richer data than individual ViewModels can carry. /// /// /// Carried by value; cheap. Passed per-render; do not cache across frames. /// /// public readonly record struct PanelContext( float DeltaSeconds, ICommandBus Commands);