Indeed, adding a new node in between other nodes will change the ID of the nodes and the son. Nodes are always sorted and the ID of the node is basically reflecting its index in the nodes list. The IDs are also required by the serializer to deserialize the connection node references. Due to the nodes being sorted (something that needs to be done), the json is also changing to insert the new node serialization (it is not simply added to the end for example). With that said and even with those changes made into json, have you tried typical 2-way merge with pretty json solution of pbpf? Prety Json should be possible to diff without conflicts.