Skip to content

Adds the experiment context for trial benefit modal to invite modal

Doug Stull requested to merge 429933-add-experiment-context-to-celebration into master

What does this MR do and why?

Adds the experiment context for trial benefit modal to invite modal

  • needed for control experiment analysis.
  • only valid to add this on when it is celebration as that is when the experiment runs during onboarding.
  • moves the tracking for render of the ultimate modal to be on shown instead of mount as ee/app/assets/javascripts/pages/projects/learn_gitlab/components/learn_gitlab.vue always mounts it, but only conditionally shows it and that is when we want to track.

Screenshots or screen recordings

no change

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.

Related to #429933

Edited by Doug Stull

Merge request reports