Karolína Muchová ended Aryna Sabalenka's 12 match unbeaten run at Grand Slams to reach the French Open final.