### Godot version

v4.1.1.stable.official [bd6af8e0e]

### System information

Godot v4.1.1.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 6GB (NVIDIA; 31.0.15.3179) - Intel(R) Core(TM) i5-8500 CPU @ 3.00GHz (6 Threads)

### Issue description

When connecting the `animation_started` signal from an animation tree, the connected method is always called twice.
This only occurs with the `animation_started` signal, the `animation_finished` signal is only emitted once.

This unfortunately makes relying on the signal impossible.

### Steps to reproduce

(See minimal production project)
- Use `animation_started.connect()`
- Print something out in the connected method (the example project prints the `anim_name` parameter)
- method is called twice -> two prints in the console

### Minimal reproduction project

[anim_tree_signal_bug.zip](https://github.com/godotengine/godot/files/12229864/anim_tree_signal_bug.zip)

The animation tree travels to the 'move' animation when `ui_accept` is pressed (see `anim_tree.gd`) and has print statements inside the methods connected to both the `animation_started` and `animation_finished` signal.

for (int i = get_input_count(); i < p_inputs; i++) {
		add_input("state_" + itos(i));
	}
	while (get_input_count() > p_inputs) {
		remove_input(get_input_count() - 1);
	}
	pending_update = true;
	emit_signal(SNAME("tree_changed")); 
	notify_property_list_changed();
}
bool AnimationNodeTransition::add_input(const String &p_name) {
	if (AnimationNode::add_input(p_name)) {
		input_data.push_back(InputData());
		return true;
	}
	return false;
}
void AnimationNodeTransition::remove_input(int p_index) {
	input_data.remove_at(p_index);
	AnimationNode::remove_input(p_index);
}
bool AnimationNodeTransition::set_input_name(int p_input, const String &p_name) {
	pending_update = true;
	return AnimationNode::set_input_name(p_input, p_name);
}
void AnimationNodeTransition::set_input_as_auto_advance(int p_input, bool p_enable) {
	ERR_FAIL_INDEX(p_input, get_input_count());
	input_data.write[p_input].auto_advance = p_enable;
}
bool AnimationNodeTransition::is_input_set_as_auto_advance(int p_input) const {