### Godot version

v4.1.beta1.mono.official [828ec2c5d]

### System information

Godot v4.1.beta1.mono - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 Ti (NVIDIA; 31.0.15.3598) - 13th Gen Intel(R) Core(TM) i5-13600K (20 Threads)

### Issue description

After the recent refactoring (https://github.com/godotengine/godot/pull/75901), Node process priority seems to be unimplemented. `ComparatorWithPriority` is no longer used anywhere in the engine code.

Nodes behave as if they all had the same priority, and running with `--single-threaded-scene` makes no difference.

### Steps to reproduce

Run the MRP, look at the order in which the nodes print their names.

In Godot 4.0.3: First, Default, Last
In Godot 4.1-beta1: Default, First, Last

### Minimal reproduction project

[ProcessPriorityBug.zip](https://github.com/godotengine/godot/files/11693028/ProcessPriorityBug.zip)

_THREAD_SAFE_METHOD_
	SelfList<Node> *n = xform_change_list.first();
	while (n) {
		Node *node = n->self();
		SelfList<Node> *nx = n->next();
		xform_change_list.remove(n);
		n = nx;
		node->notification(NOTIFICATION_TRANSFORM_CHANGED);
	}
}
void SceneTree::_flush_ugc() {
	ugc_locked = true;
	while (unique_group_calls.size()) {
		HashMap<UGCall, Vector<Variant>, UGCall>::Iterator E = unique_group_calls.begin();
		const Variant **argptrs = (const Variant **)alloca(E->value.size() * sizeof(Variant *));
		for (int i = 0; i < E->value.size(); i++) {
			argptrs[i] = &E->value[i];
		}
		call_group_flagsp(GROUP_CALL_DEFAULT, E->key.group, E->key.call, argptrs, E->value.size());
		unique_group_calls.remove(E);
	}
	ugc_locked = false;
}
void SceneTree::_update_group_order(Group &g) {