There fundamentally is of course a way to do that (store.getattr['your_variable_name'] IIRC) but you don't do that because that makes the conditional dialogue code even more unreadable and complicated than it already is.
What you COULD do in this situation as a dev is to store the current savegames version in the savegame, compare it to the currently run game's version, and if there's a difference, throw either a warning that your savegame may break, or alternatively, run an alternate variable initializer. In this case, this would mean implementing a series of questions like this:> "In version X.Y an option to peep on your mom masturbating in the garage was added. Did you - Walk in on her - Peep on her - Masturbate furiously - Go away because, dude, she's your mom"
In this case a presumably customizeable name of some character is missing and you'd have to ask the player loading the savegame to name that character.
But other than the "just produce a warning", these "fixes" can easily cause more coding problems than what it's worth.
What I've seen done with some success was in Coceter Chronicles, where they added a "Do you just wanna skip the previous updates contents and jump directly to chapter 2 / 3" with some relevant options on what choices you took. That is already a lot more robust because you can develop such an "abbreviated path" quite easily along side the regular game. It still was full of bugs however (the abbreviated path offering options unavailable in the game and vice versa) and the latest version of Coceter didn't even have that option.
Basically... Do you want the game take twice as long to develop, or are you accepting that you just have to press CTRL for 2 minutes instead of getting to the new stuff with your old save?
Mind you, in strictly linear games, migrating old saves is conceptually easy, unless you want to have the option to rework older content. Which you do.