Thanks for your response. In my game I have a custom action task that plays a playableDirector, and the task ends when the director finishes. playableDirector has an OnDirectorStop callback, from which EndAction() of the task is triggered. However in Unity, OnDirectorStop is always triggered before the director starts playing, causing EndAction happens before start.