MobilityData / mobility-feed-api

Apache License 2.0
9 stars 4 forks source link

Create bypass feature flag list #767

Closed davidgamez closed 1 month ago

davidgamez commented 1 month ago

Describe the problem

Allow a list of emails and emails domains to access to features that are in "development" mode. This will help the internal team(and c onstributors) QA in production and have pre-release access to in-development features. Similar to what we did with the metrics features, we can allow all users to have all features enabled. As a downside, allowed users will always see the features ON, meaning if it's needed to test the UI as a non-allowed user, login credentials different than our domain are needed.

Proposed solution

Create a UI utility service responsible for returning whether the user has access to a feature. This will consider the user's email and the remote config values.

Alternatives you've considered

We can consider an external tool to manage feature flags or an in-house implementation that involves a server-side service that controls the available features per user. These kinds of solutions are more generic and can cover more scenarios. However, the time and effort required are significantly large compared to the proposed solution. These alternatives can be considered as the next step in the future.

Proposed implementation

Create a remote config with the regex list of users' email and/or DNS domains.

Additional context

No response