Skip to content

Experiment: Ultimate Trial Benefit Modal

Roy Liu requested to merge 424502-ultimate-trial-benefit-modal into master

What does this MR do and why?

Implement the ultimate_trial_benefit_modal experiment, which shows either the control (current path) or the candidate experience to user upon completion of trial registration.

Related to #424502

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Control Candidate
Screenshot_2023-10-04_at_9.15.51_AM Screenshot_2023-10-04_at_9.13.09_AM

How to set up and validate locally

note: apply trial to group requires local customersDot setup, so to validate the experiment, please comment out the line to check active trial in learn_gitlab_helper.rb

def show_ultimate_trial_benefit_modal?(project)
  # return unless project.root_ancestor.trial_active?

  experiment(:ultimate_trial_benefit_modal, group: project.root_ancestor) do |e|
    e.candidate { true }
  end.run
end
  1. Setup to simulate SaaS and restart GDK.
  2. In rails console, run Feature.enable(:ultimate_trial_benefit_modal)
  3. Register as a new user.
  4. On the welcome page, select any role and Just me.
  5. Chose Create a new project
  6. Click Continue
  7. Fill out fields to create a group and project on the next page.
  8. Click Create project
  9. Verify you get to the onboarding and page refreshes to provide a Ok, let's go button.
  10. Click the button and verify you are dropped into the learn gitlab page and the candidate modal pops up with confetti.
  11. (You can create a cookie manually in dev tool: confetti_post_signup with value true, and refresh the learn gitlab page to experience it again)

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Roy Liu

Merge request reports