Feature Flags is a concept that helps to enable or disable a feature on an app. Example you would want to roll out a new button on app for a certain set of users,
A naive and simplified implementation would look like something below
flags = server.getFlags() // Fetch/Compute feature flags
if (flags.FeatureA == true) {
// show button
}
So, main issue is that users of old version can use new feature, but they should not? On a desktop app? But why they sould not be able to do it in the first place?
I mean idea is good, but situation described in article looks like completely fictitious or incomplete..
Another use case: It could be useful for one software deployed in more than one server and if admins want to enable/disable features specifically for every server.
Similarly, you can leverage this to wire traffic to DB replicas for instance. This if you need to handle traffic to DBs under specific scenarios (DB problems, burst of traffic, bugs, etc).
So basically a purely technical feature flag (paying attention to authorization as always)
I am not sure what implies your tech stack (I know nothing about it) but I think you don't really need feature flags, just better project planning and structure