Transform replicates to other clients but not the requesting client

I am messing around with a simple multiplayer test project to get grips with UE4’s networking capabilities. Going for the basics here — the player spawns with their pawn (just a box) and can move forwards and backwards, without any collisions. This project was made to test this issue.

Movement is triggered by two input events in the pawn to either go forward or back. These then continue on to custom events which are set to replicate on the server only, which does the actual movement.

My expected behaviour is that all clients, including the client that pressed the key, would see that client’s pawn move. Instead, everyone EXCEPT the client that pressed the key sees the pawn move.

I have managed to work around this issue by checking if the client has authority and then specifically moving it on that client. This works totally fine, but seems incorrect somehow.

Calling the server trigger, and then calling a multicast trigger there also worked, but that seemed even worse!

Am I doing something wrong here? Is my understanding of how replication should work incorrect? What is the right way to handle this? I have been trying to wrap my head around this all day so I would really appreciate the help!