Problem editing and repacking a PackedScene

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By gd19fp

Jan2022
Hi,
I need help with editing and repacking a PackedScene, in the following code, why does the “deleteme” remain undeleted in a new instance after repack?

editme.tscn:

-tobeinstance
   -deleteme
   -keepthisnode

unpackrepack.gd:

static func own(node, new_owner):
    if not node == new_owner and (not node.owner or node.filename):
        node.owner = new_owner
    if node.get_child_count():
        for kid in node.get_children():
            own(kid, new_owner)
func _ready():
    #load as orphan
    var bi=load("editme.tscn").instance()
    #debug
    print("\n","bi new instance:")
    bi.print_tree()

    #delete one node
    var d=bi.get_node("deleteme")
    bi.remove_child(d)
    d.owner=null
    d.free()
    #debug
    print("\n","instance after node removal:")
    bi.print_tree()
    print("get_node('deleteme'): ",d)
    
    #wrap with new node
    var node = Node.new()
    node.add_child(bi)
    own(node,node) #recursive own
    
    #pack all
    var ps = PackedScene.new()
    ps.pack(node)
    #debug
    print("\n","bundled scene:")
    print(ps._bundled)
    
    #add new instance into tree
    add_child(ps.instance())
    #debug
    print("\n","why does 'deleteme' remain?:")
    get_tree().root.print_tree()

output:

bi new instance:
.
deleteme
keepthisnode

instance after node removal:
.
keepthisnode
get_node('deleteme'): [Deleted Object]

bundled scene:
{conn_count:0, conns:[], editable_instances:[], names:[, Node, tobeinstance, Spatial], node_count:2, node_paths:[], nodes:[-1, -1, 1, 0, -1, 0, 0, 0, 0, 3, 2, 0, 0, 0], variants:[[PackedScene:1266]], version:2}

why does 'deleteme' remain?:
.
unpackrepack
unpackrepack/@@2
unpackrepack/@@2/tobeinstance
unpackrepack/@@2/tobeinstance/deleteme
unpackrepack/@@2/tobeinstance/keepthisnode