The method find_node has an bool parameter “owned” which has default variable true.
You can take a look at Godot Doc, it says that “If owned is true, this method only finds nodes whose owner is this node. This is especially important for scenes instantiated through a script, because those scenes don’t have an owner.”
In your case, root = get_tree().get_root() don’t have owner, so you get “Object : null”.