### Godot version

4.1???- 4.1.beta1 - 4.1.beta3 - 030c1a950e8cee19e72104b4fb79caba17a2d678

### System information

Tested only Linux versions.

### Issue description

**Regression from 4.0.3.stable:**
In the editor UI set the  `Node->process_mode` to `Disabled` or `When Paused`-> in the scene editor the subtree is grayed out. Save the scene and close the editor. 
It doesn*t need to be the current scene. 
Start it again, the subtree in the scene is no longer gray. The *.tscn file is updated correctly, e.g.:
```
  [node name="Node2D" type="Node2D"]
+process_mode = 4
```
 Workaround is to toggle the process mode again,
 close and open or reload the scene,
(or disable the `interface/scene_tabs/restore_scenes_on_load` option ...)

### Image gallery
![image](https://github.com/godotengine/godot/assets/4047289/b6a90b34-c9ec-4380-b953-f1e64cf72934)
![image](https://github.com/godotengine/godot/assets/4047289/978d4ab1-553b-49e6-bb76-6b18c22a942b)
![image](https://github.com/godotengine/godot/assets/4047289/4254f160-75d5-4186-9802-53b487d8d2f3)

hash = hash_djb2_one_64(p_node->get_instance_id(), hash);
	if (p_node->get_parent()) {
		hash = hash_djb2_one_64(p_node->get_parent()->get_instance_id(), hash); //so a reparent still produces a different hash
	}
	for (int i = 0; i < p_node->get_child_count(); i++) {
		_compute_hash(p_node->get_child(i), hash);
	}
}
void SceneTreeEditor::_test_update_tree() {
	pending_test_update = false;
	if (!is_inside_tree()) {
		return;
	}
	if (tree_dirty) {
		return; // don't even bother
	}
	uint64_t hash = hash_djb2_one_64(0);
	if (get_scene_node()) {
		_compute_hash(get_scene_node(), hash);
	}
	//test hash
	if (hash == last_hash) {
		return; // did not change
	}
	MessageQueue::get_singleton()->push_call(this, "_update_tree");
	tree_dirty = true;
}
void SceneTreeEditor::_tree_process_mode_changed() {