### 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
String name = p_name;
	if (name == "new_item_key") {
		r_ret = new_item_key;
		return true;
	}
	if (name == "new_item_value") {
		r_ret = new_item_value;
		return true;
	}
	if (name.begins_with("indices")) {
		int index = name.get_slicec('/', 1).to_int();
		Variant key = dict.get_key_at_index(index);
		r_ret = dict[key];
		if (r_ret.get_type() == Variant::OBJECT && Object::cast_to<EncodedObjectAsID>(r_ret)) {
			r_ret = Object::cast_to<EncodedObjectAsID>(r_ret)->get_object_id();
		}
		return true;
	}
	return false;
}
void EditorPropertyDictionaryObject::set_dict(const Dictionary &p_dict) {
	dict = p_dict;
}
Dictionary EditorPropertyDictionaryObject::get_dict() {
	return dict;
}
void EditorPropertyDictionaryObject::set_new_item_key(const Variant &p_new_item) {