Teenager Dayana Yastremska surprised herself by beating Aryna Sabalenka to ensure she will face Caroline Garcia in the Internationaux de Strasbourg final.
Yastremska claimed a first title of the year in Hua Hin three months ago and could head into the French Open on the back of another after a 6-4 6-4 defeat of second seed Sabalenka.
The 19-year-old from Ukraine struck 36 winners and did not face a break point in the second set as she claimed the scalp of the heavy-hitting world number 11 on Friday.
"I didn't really expect to be in the final, because I had a tough period before. I was doing the work, I was trusting in myself, took a little bit of confidence, and I'm ready to compete," said the 42-ranked Yastremska.
Garcia also advanced in straight sets, winning an all-French semi-final against Chloe Paquet 6-3 6-4.
Fourth seed Garcia, the champion in Strasbourg three years ago, claimed a break in each set to stay in the hunt to regain the title.
There will be a first-time WTA singles champion at the Nuremberg Cup after Tamara Zidansek and Yulia Putintseva came through their semi-finals.
The unseeded Zidansek overcame Katerina Siniakova 7-6 (7-4) 6-2, while top seed Putintseva saw off Sorana Cirstea 6-4 7-5.