### Godot version

9f12e7b52d944

### System information

arch linux

### Issue description

Attempting to edit from the editor a typed array exported from a tool script fails, any value is immediately reset, setters are never called.

### Steps to reproduce

Create a script such as follows and try to add and then change items of the array in the inspector.


```gdscript
@tool
extends Node

@export var x: Array[String]
```

### Minimal reproduction project

n/a
if (ccb) {
					binds = ccb->get_binds();
					base_callable = ccb->get_callable();
				}
				CallableCustomUnbind *ccu = dynamic_cast<CallableCustomUnbind *>(c.callable.get_custom());
				if (ccu) {
					unbinds = ccu->get_unbinds();
					base_callable = ccu->get_callable();
				}
			} else {
				base_callable = c.callable;
			}
			
			Node *common_parent = target->find_common_parent_with(p_node);
			ERR_CONTINUE(!common_parent);
			if (common_parent != p_owner && common_parent->get_scene_file_path().is_empty()) {
				common_parent = common_parent->get_owner();
			}
			bool exists = false;
			
			while (common_parent) {
				Ref<SceneState> ps;
				if (common_parent == p_owner) {
					ps = common_parent->get_scene_inherited_state();
				} else {
					ps = common_parent->get_scene_instance_state();
				}
				if (ps.is_valid()) {
					NodePath signal_from = common_parent->get_path_to(p_node);
					NodePath signal_to = common_parent->get_path_to(target);