StateTree Bug - Binding to a UPROPERTY held by a Output UObject

I have a scenario which seem related to this.
For some reason a binding to a property of an output object is considered an invalid type. Even though the UStateTree match.

UCLASS(BlueprintType)
class UMyGameRuntimeResource
{
	GENERATED_BODY()

public:
...
	UPROPERTY(EditAnywhere, Category = "MyGame")
	UStateTree* StateTree = nullptr;
};

USTRUCT()
struct FMyGameResourceProviderTaskData :
{
	GENERATED_BODY()

	UPROPERTY(EditAnywhere, Category = "Output")
	UMyGameRuntimeResource* OutResource;
};

USTRUCT()
struct FMyGameResourceProviderTask
	: public FCourageStateTreeResourceProviderTaskBase
{
	GENERATED_BODY()
...
};

USTRUCT()
struct COURAGE_AI_API FCourageStateTreeRunInstanceData
{
	GENERATED_BODY()
...
	UPROPERTY(EditAnywhere, Category = "Input", meta=(DisplayPriority=0))
	UStateTree* InStateTree = nullptr;
};

USTRUCT(BlueprintType, meta = (Category = "Courage", DisplayName = "State Tree Runner Task"))
struct COURAGE_AI_API FCourageStateTreeRunTask : public FStateTreeTaskCommonBase
{
	GENERATED_BODY()
...
};