What great timing! I just started dabbling with some networking code in my spare time and am having the same issue!
Currently, I’m thinking about having a singleton RPC “router” that handles all RPC calls so I can add some extra logic, like checking to see if a node exists before sending the call. Then all network stuff can call the RPC router using normal RPC functions, where every function has to pass a node path relative to the RPC router so it knows what to execute where.
I think this may have the added benefit of making scene replication easier, as when an RPC call comes for a node that does not exist for a client, it should be able to detect it and respond (probably ask the server for node info or something?).
I’m not sure if its a good solution, if it will work, or cause any bottlenecks, but its what I’m currently thinking about trying for my project to fix the issue.