In my game, the player doesn’t actually “run” on the wall at all.
If the game detects that he should be able to wall run, it alters gravity’s effect to make him fall more slowly and simply uses launch commands configured orthogonal to the surface normal to send him forward. So technically, he’s in a “falling” state, but by making him fall slowly and also shoot forward, and changing the animation to look correct, I can fake a “wall run”.
Which, honestly, is probably what you WANT, since typically a “wall run” doesn’t give the player control over their movement. They can’t go slower or faster or change direction, it’s not handled the same way normal walk/run commands are. It’s simply propelling the player along a straight line (or curve) which touches the wall.