Why target variables have different values?

The possession happens (Possess event) only on the server so it doesn’t matter if the controller objects are different. They are replicated so even if the names differ the values are kept synchronized by the engine.

The server should automatically notify the client controller that the player pawn is changed and the above scheme should work.

Is there a specific problem coming out of this?