@Natanox I'm a massive believer in a singleton file and placing my signals in there.
eg I create: globals.gd and add it as a Globals (Project Settings->Globals). Inside globals.gd I have:
@signal immediate_broadcast_tilesize
In Box I do:
Globals.immediate_broadcast_tilesize.emit(my_data)
In Character _ready I do:
Globals.immediate_broadcast_tilesize.connect(handle_immediate_broadcast_tilesize)
I do this route because my code was spaghettifying connecting parents to children's children