Premium messaging during active trial experiment - Part 1

What does this MR do and why?

Add an experiment to change combined trial widget title. This is only the first part. The second one will also include project banner for multiple pages.

References

Screenshots or screen recordings

Before After
Screenshot_2025-10-23_at_14.42.21 Screenshot_2025-10-23_at_14.41.55

How to set up and validate locally

  • Apply patch:
Click to expand
diff --git a/ee/app/services/gitlab_subscriptions/create_lead_service.rb b/ee/app/services/gitlab_subscriptions/create_lead_service.rb
index ebfbe3de9d4a..58b7324d5bce 100644
--- a/ee/app/services/gitlab_subscriptions/create_lead_service.rb
+++ b/ee/app/services/gitlab_subscriptions/create_lead_service.rb
@@ -3,6 +3,7 @@
 module GitlabSubscriptions
   class CreateLeadService
     def execute(company_params)
+      return ServiceResponse.success
       company_params.merge!(with_add_on: true, add_on_name: 'duo_enterprise')
 
       response = client.generate_trial(company_params)

562184.patch

bin/rails c

Group.last.gitlab_subscription.update(hosted_plan: Plan.find_by(name: 'ultimate_trial'), trial: true, trial_starts_on: 0.days.ago, trial_ends_on: 30.day.from_now)

GitlabSubscriptions::AddOnPurchase.create(subscription_add_on_id: GitlabSubscriptions::AddOn.find_by(name: 'duo_enterprise').id, namespace: Group.last, started_at: 0.days.ago, expires_on: 30.day.from_now, trial: true, quantity: 1, purchase_xid: '1', organization_id: 1)
  • Reload the page.

MR acceptance checklist

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

Related to #562184

Edited by Serhii Yarynovskyi

Merge request reports

Loading