Introduce a RunDataModel.
Queue an inital seek request in case the surface is not ready.
Initialize semaphore correctly.