common/app/conf/switches/ABTestSwitches.scala (56 lines of code) (raw):

package conf.switches import conf.switches.SwitchGroup.ABTests import java.time.LocalDate import conf.switches.Expiry.never trait ABTestSwitches { Switch( ABTests, "ab-sign-in-gate-main-control", "Control audience for the sign in gate to 9% audience. Will never see the sign in gate.", owners = Seq(Owner.withGithub("coldlink")), safeState = Off, sellByDate = Some(LocalDate.of(2025, 12, 1)), exposeClientSide = true, highImpact = false, ) Switch( ABTests, "ab-sign-in-gate-main-variant", "Show sign in gate to 90% of users on 3rd article view, variant/full audience", owners = Seq(Owner.withGithub("coldlink")), safeState = Off, sellByDate = Some(LocalDate.of(2025, 12, 1)), exposeClientSide = true, highImpact = false, ) Switch( ABTests, "ab-auxia-sign-in-gate", "Experimental use of Auxia to drive the client-side SignIn gate", owners = Seq(Owner.withEmail("growth@guardian.co.uk")), safeState = Off, sellByDate = Some(LocalDate.of(2026, 1, 30)), exposeClientSide = true, highImpact = false, ) Switch( ABTests, "ab-a9-bid-response-winner", "The test will enable checking the A9 bid response and determining a winning ad", owners = Seq(Owner.withEmail("commercial.dev@theguardian.com")), safeState = Off, sellByDate = Some(LocalDate.of(2025, 5, 30)), exposeClientSide = true, highImpact = false, ) Switch( ABTests, "ab-prebid-id5", "Test enabling the ID5 module in prebid.js", owners = Seq(Owner.withEmail("commercial.dev@theguardian.com")), safeState = Off, sellByDate = Some(LocalDate.of(2025, 5, 30)), exposeClientSide = true, highImpact = false, ) }