Hrm… I think that would break expected behaviour. If you’ve set a plugin to “Selected Preset” and you change the preset wouldn’t you expect any states using that preset to use the new preset, not the old one? That’s kinda the point of that behaviour.
What you’re describing is more like how entire bank works and in-fact that’s what it does - the banks are saved associated with a SHA256 so if two use the same bank they won’t be reloaded across state transition. Part of the problem here though is some plugins return different data every time you ask them to save. Not sure if they’re including some transient/random/working data or perhaps they save timestamp but it breaks the hashing - nothing I can do about it. From memory, I think Kontakt is guilty of this.