wallet
wallet copied to clipboard
Deliver specific remote config values to internal testers
For context: https://valora-app.slack.com/archives/C025Q9QG8JG/p1646691758174369
Background
- Many features are launched behind feature flags or as experiments, controlled by a remote config value.
- During internal testing or when the support team needs to assist users, it is helpful to be able to turn features on and off. (e.g. Biometrics was rolled out as an experiment for 50% of users, so not everyone involved in internal testing was able to test this feature)
- It seems remote config does not offer user specific values out of the box, which is expected since we do not track users individually.
AC Internal testers should always be able to test new features that are launched behind feature flags or as experiments.
ENG Choosing to build a UI for this rather than using a condition on the remote config value because it's more difficult for users to get the right value. We would need to surface some value to identify the user (.e.g installation id) which the user would then need to ask someone with firebase access to update the remote config value every time.
- [ ] Hidden gesture to expose new screen (3 taps with 5 fingers, on all screens)
- [ ] The new screen should look similar to the firebase remote config webpage. Display all remote config values and a way to change their value (e.g. a textbox for string and number, a toggle for booleans)
- [ ] Create new redux variable to track if we should use user selected remote config values. This variable should be true when they user is in "remote config override mode" and false when they user exits this mode by doing 3 taps with 5 fingers again
- [ ] If in "remote config override mode" then do not fetch the remote config values
- [ ] "remote config override mode" persists across sessions until the user does the 3 taps with 5 fingers again
@ellenwoconnor had some feedback that we should delay this, let's discuss?
TODO remove retention label if we pick this up