-
[OPIK-7476] [FE] feat: A/B test guided mobile onboarding flow (#7597)
发布于
2026-07-28 10:45:32 +00:00 - [OPIK-7476] [FE] feat: A/B test guided mobile onboarding flow
Split the phone onboarding branch behind the PostHog experiment
"guided-mobile-onboarding-flow" (experiment 387337):- "test" (Group B) -> guided MobileOnboarding flow (no Run button)
- "control" (Group A) -> legacy onboarding flow, falling through to the
standard desktop logic which carries the Run button
Details:
- Add GUIDED_MOBILE_ONBOARDING_FLOW_FEATURE_FLAG_KEY + variant constants.
- NewQuickstart holds rendering behind a Loader until the experiment bucket
resolves, to avoid flashing one flow then re-bucketing; restores the
#manual step hash for the control arm (parity with the pre-mobile flow). - Force the CodeExecutor (Run button) on for the control arm regardless of
the separate run-button-activation-test rollout, so Group A reliably
matches "old flow WITH run button". - Extend NewQuickstart tests with test/control/loading/desktop coverage.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com
- fix(onboarding): fall back to control when mobile experiment flag is unresolved
useFeatureFlagVariantKey returns undefined permanently when PostHog is
never initialized (self-hosted/OSS, where initPosthog returns early
without a key/host) or when flags are ad-blocked on cloud. Gating render
on that left phone users on an infinite loader with no way to finish
onboarding.Resolve undefined to the control arm at both call sites instead, matching
how every other PostHog flag in the app treats an unresolved variant.Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com
Co-authored-by: Claude Opus 4.8 (1M context) noreply@anthropic.com
Co-authored-by: Jacques Verre jverre@gmail.com下载附件