There's an action called "Enable FSM" that does exactly that.
Now, do you really have to check every frame if that feature has been unlocked?
This is basically a question about architecture. But "every frame" shouldn't be used most of the time. It's rather needed in combination with gameplay like controls, mechanics, etc.
For everything else, ask yourself, when do you need to know if that feature is unlocked? That's the moment you want to check the FSM that controls the unlocking.
Without really knowing what you're doing, you probably want to have a Unlock Controller and in that FSM you have a boolean called "isFeatureUnlocked". You would have it set to FALSE and the moment you unlock it, you set that bool to TRUE.
Now from wherever you need to, you can check that bool with GetFSMBool action and do with this information what you want to do.
Also, you most probably want to use PlayerPrefs to save that bool as well and when you start your game you want to load that data back in. So once it's TRUE, it's always TRUE (I actually recommend to use Easy Save plugin from the Asset Store for this purpose).
Hope that helps.