To put this bluntly this won’t really prevent a client from adjusting their speed. This is because the local script can just be deleted and thus won’t trigger your anti exploit.(It can also be spoofed by Metatables)
However, if you are adamant about having walk speed detection you could move all these checks onto the Server and use math to figure out if a client is moving too fast this would bypass the whole client side mess. This has its own set of pros/cons and ill let you do the research to figure out if its even worth it.
If you want some more resources on this topic here is a great post that goes into details about exploting and what you can do to prevent it. How you should secure your game - A beginner guide for secure networking and developing anticheats
This is correct most of the time any change a client does locally will not replicate. However because the player is given Network Ownership of their character they are free to modify values such as speed/health and it will replicate to the server. You can read about Network Ownership here