Fix hideous async bug because CurrentState was resolving before the visitor was running