Allow explicitly blocking actors and groups#952
Allow explicitly blocking actors and groups#952Vicentecorrea wants to merge 1 commit intoflippercloud:mainfrom
Conversation
|
hi @jnunemaker! can you review this? 👀 |
or maybe @bkeepers? |
|
Hi @Vicentecorrea, sorry for the slow response. I'll take a look and consider it. This would require changes to the adapters to fully work, correct? |
|
Hi @jnunemaker! nice, thank you. I tested this solution using the ActiveRecord adapter, and it works fine without any changes to it. As far as I know, it should also work fine with the other adapters without any necessary changes. |
|
Oh I see how. I forgot I changed the gates hash to be used in gates. I wasn't seeing where you added the gates, but I forgot that gates is powered by gates_hash. |
|
Yes, I added |
Hello everyone! 👋
I want to present a possible solution to the issue #514: a good way of explicitly enabling a feature with exceptions.
(It's just a draft PR to show my idea; it doesn't have any tests or documentation yet. If we decide to go ahead with this implementation, I'll do those stuff.)
Idea
My idea is to create blocking gates, and to check if a feature is enabled, there must be at least one open gate (as usual) AND no blocking gates.
Example
We have four users: two men Pepe and Juan, aged 15 and 79, and two women Mari and Cata, aged 18 and 22.
In our
config/initializers/flipper.rbwe have this:We will enable and block actors and groups, and after each action, we will execute this method to check whether the
:testfeature is enabled or not for each user:At time 0, the feature is not enabled for any user. Then, at time 1, we enable the feature for the
:teenagersgroup, and now the:testfeature is enabled for Pepe and Mari. And so on.It also works after fully enable a feature
User interface
I imagine the UI to be something like this:
