Skip to content

Implementing Trial Discover Page Experiment Stage 1

What does this MR do and why?

Issue: https://gitlab.com/gitlab-org/gitlab/-/issues/412715

Implementing Trial Discover Page Experiment Stage 1

I've split this work up into more than one MR. This is just the first one.

This MR

Adds an experiment feature flag called trial_discover_page.

When enabled, users on a trial should see a new link called "Learn about features" in the trial widget. This link should direct to http://gdk.test:3000/groups/<group_name>/-/discover.

This URL will return 404 if:

  • user is not experiment candidate
  • doesn't have permission to admin the group
  • the group does not have an active trial

New users are assigned either Control or Candidate when signing for a trial. Existing users or new users not signing up for a trial are excluded and will not see anything.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Before After
Screenshot_2024-01-25_at_17.15.42 Screenshot_2024-01-25_at_17.15.05
Screenshot_2024-01-25_at_17.16.01 Screenshot_2024-01-25_at_17.16.52

How to set up and validate locally

  1. Setup GDK to simulate SaaS
  2. Setup and run Customers Dot
  3. Enable feature flag by running echo "Feature.enable :trial_discover_page" | gdk rails c

Free Registration (Just me)

  1. Create a user at http://gdk.test:3000/users/sign_up
  2. On http://gdk.test:3000/users/sign_up/welcome, select Just me under Who will be using GitLab?
  3. Finish creating user
  4. Confirm user is not on trial
  5. Confirm http://gdk.test:3000/groups/<group_name>/-/discover return 404

Free Registration (My company)

  1. Create a user at http://gdk.test:3000/users/sign_up
  2. On http://gdk.test:3000/users/sign_up/welcome, select My company or team under Who will be using GitLab?
  3. Finish creating user
  4. Confirm user is on trial
  5. Confirm Learn about features link is on trial widget and popup
  6. Confirm http://gdk.test:3000/groups/<group_name>/-/discover renders page

Trial Registration

  1. Sign out and navigate to http://gdk.test:3000/-/trial_registrations/new
  2. Follow the trial registration flow and create a user
  3. Confirm user is on trial
  4. Confirm Learn about features link is on trial widget and popup
  5. Confirm http://gdk.test:3000/groups/<group_name>/-/discover renders page

Finally

  1. Confirm change isn't visible with feature flag disabled
  2. Disable feature flag by running echo "Feature.disbale :trial_discover_page" | gdk rails c

Related to #412715

Edited by Ross Byrne

Merge request reports