I'm not sure if that sounds like passive-aggressive ignorance, or a genuine ask for help, but I'll assume 2nd option.
(But how did you never wonder how other twine devs doing updates that don't break saves?)
The lazy option is to create a variable for the game version and put the check somewhere in the game like some hub location: if the variable is not initialized or indicates the previous version, you initialize all variables you introduced in the new update, and set the game version var to the new one.
A bit better is not only to update for the new version but have a function that initializes variables from all previous updates, depending on the version variable.
A cool and advanced method is not just to put this function in the game, but to trigger it with the event Save.onLoad.add
You must be registered to see the links
. You can read about Save API that sugar cube provides, as there is a lot of cool stuff you can do with saves.
Or, you can just see what others do. Download some games, maybe even copy some code. Not everyone provides save compatibility, but many do. And so should you and there are no excuses for engine, just for your skill.