Iga Swiatek continued her march towards a second French Open title in three years when she demolished Russian Daria Kasatkina 6-2, 6-1 to reach the final and extend her winning streak to a jaw-dropping 34 on Thursday.
The world number one conceded an early break, but made the most of Kasatkina's string of unforced errors, peppering court Philippe Chatrier with winners.
Swiatek, the 2020 champion, has not lost since February and has matched Serena William's winning run from 2013, having now lost only two sets in her last four tournaments.
She will meet either American teenager Coco Gauff, the 18th seed, or Italy's Martina Trevisan in Saturday's showdown.
Poland's Swiatek again played with a ribbon in the colours of the Ukrainian flag pinned to her hat against her Russian opponent.
Russian and Belarusian players are allowed to compete at Roland Garros but will have to sit out Wimbledon as All England Club officials barred competitors from the two countries due to Russia's invasion of Ukraine, which Moscow calls a "special military operation".
Belarus has been a key staging area for the invasion.
Gauff blitzes Trevisan to reach French Open final
American teenager Coco Gauff crushed Italy's Martina Trevisan 6-3, 6-1 to become the youngest French Open finalist in 21 years and set up a showcase clash with world number one Iga Swiatek.
The 18-year-old, who was already in unknown Grand Slam territory with her first semi-final spot, will next face Polish top seed Swiatek, who cruised into Saturday's final with a 6-2 6-1 demolition of Russian Daria Kasatkina to stretch her winning run to 34 matches.
Gauff, who has yet to drop a set in the tournament and is the youngest finalist at any Grand Slam in 18 years, needed time to find her range, trading two early breaks each with Trevisan.
Once she found a way to neutralise the left-hander's punishing forehand, however, Gauff breezed through the first set by winning the last three games.
The 28-year-old Trevisan, bidding to become the lowest ranked finalist in the event's history, took a medical break to strap up her right calf.
But things just got worse for her as she piled up 35 errors by the middle of the second set.
Ranked 23rd in the world, Gauff broke her again in a game lasting 14 minutes to go 3-1 up and never looked back, sealing her biggest career win on her first match point.