/Engine/Plugins/Runtime/GameplayAbilities/Source/GameplayAbilities/Public/Abilities/GameplayAbility.h
Latent/async actions are ok in this graph. Note that Commit and EndAbility calling requirements speak to the K2_ActivateAbility graph. In C++, the call toK2_ActivateAbility()may return without CommitAbility or EndAbility having been called. But it is expected that this will only occur when latent/async actions are pending. When K2_ActivateAbility logically finishes, then we will expect Commit/End to have been called.
[UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category=Ability, DisplayName="ActivateAbility", Meta=(ScriptName="ActivateAbility")) void K2_ActivateAbility()