Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(message-system): add ab testing message #15281

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

adderpositive
Copy link
Contributor

@adderpositive adderpositive commented Nov 6, 2024

Description

  • Experiments would use a Message System to configure Feature Flags (i.e. there will be no UI to config experiments, deployment of the messaging system will be required - independent from Suite release though).
  • Experiment ID (e.g. rename-trade-section)
    • Multiple Variation IDs (e.g. control, buy-swap) - this may be unlimited, but in reality, we won’t use more than 4 for one experiment
    • Each would have an experiment distribution percentage between 0 - 100%

Example of experiments

experiments property is placed in the top level of config.v[version].json

  "experiments": [
      {
          "conditions": [
              {
                  "environment": {
                      "desktop": ">=24.5.1",
                      "mobile": "!",
                      "web": ">=24.5.1"
                  }
              }
          ],
          "experiment": {
              "id": "3bed56a4-ecd8-4e0f-2910-014b484c2aff",
              "groups": [
                  {
                      "variant": "A",
                      "percentage": 30
                  },
                  {
                      "variant": "B",
                      "percentage": 70
                  }
              ]
          }
      }
  ]

Related Issue

Resolve #15279
Resolve #15067

@adderpositive adderpositive added feature Product related issue visible for end user message-system Updates in secure message system config labels Nov 6, 2024
@adderpositive adderpositive self-assigned this Nov 6, 2024
Copy link

github-actions bot commented Nov 6, 2024

🚀 Expo preview is ready!

  • Project → trezor-suite-preview
  • Platforms → android, ios
  • Scheme → trezorsuitelite
  • Runtime Version → 10
  • More info

Learn more about 𝝠 Expo Github Action

@adderpositive adderpositive force-pushed the feat/ab-testing-on-message-system branch 6 times, most recently from c16f0f3 to e412009 Compare November 8, 2024 14:28
@adderpositive adderpositive force-pushed the feat/ab-testing-on-message-system branch 5 times, most recently from c5db5a1 to cd14491 Compare November 14, 2024 10:40
@adderpositive adderpositive marked this pull request as ready for review November 14, 2024 11:15
@MiroslavProchazka
Copy link
Contributor

Hello @adderpositive , please let's wait for @tomasklim and let's discuss this in more broader context. Personally I do not like the idea to mix it with message system, so lets discuss.

@adderpositive
Copy link
Contributor Author

Hello @adderpositive , please let's wait for @tomasklim and let's discuss this in more broader context. Personally I do not like the idea to mix it with message system, so lets discuss.

Yes, of course. We have been already discussing the extension of the system. I will go ahead and briefly describe it here.

  1. The first solution was implemented directly into the message-system messages. After brainstorming, I have refactored it to the solution in the PR.
  2. The next solution is to rename the system - message-system can be confusing if it manages more functionality than messages only. Examples of some names toggle-system, push-system, ...
  3. But @matejkriz had an excellent point of view the message system should provide a solution how to safely and unforgettably deliver a message to the Suite at runtime - the message can be distinguished as banner, feature or experiment, etc. It is different than it should display only some messages.

I hope it is understandable a little bit. :)

@adderpositive adderpositive force-pushed the feat/ab-testing-on-message-system branch from cd14491 to 4cb3aa7 Compare November 15, 2024 13:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Product related issue visible for end user message-system Updates in secure message system config
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Extend message system to include AB testing variant AB Testing capability
3 participants