Store prefab in ScriptableObject causes issue with event emitter in Timeline

Sorry for my english in advance.’

I have CharacterSheet SO that store a prefab represented the specific character.
For example, character named Pear’s character sheet will store reference to Pear game object like in the follow images.

and when the game combat start, the system will look for the every party member in player’s team and Instantiate those character prefab

When any character attack, I play Timeline asset accordingly to the attack type ,and broadcast event signal to decrease enemy’s HP

the problem is when I Instantiate character that I get from the CharacterSheet, the signal won’t be sent at all. I try Debug.Log when ReceiveSignal() function is called like in the following image.

BUT
Creating ScriptableObject that store reference to every character prefab and instiate them work fine

Even though the problem was solved (I guess) I don’t really know what can possibily cause the issue and I would like some opinion from professional.

++