Skip to content

Commit 329f10c

Browse files
authored
Merge pull request #85849 from Expensify/marco/revert-85273-onboarding-variant-d
Revert "Add rhpHomePage variant (D) to onboarding A/B/C/D test" (#85273)
2 parents 345f3b5 + cb93dd2 commit 329f10c

7 files changed

Lines changed: 14 additions & 47 deletions

File tree

src/CONST/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6427,7 +6427,6 @@ const CONST = {
64276427
ONBOARDING_RHP_VARIANT: {
64286428
RHP_CONCIERGE_DM: 'rhpConciergeDm',
64296429
RHP_ADMINS_ROOM: 'rhpAdminsRoom',
6430-
RHP_HOME_PAGE: 'rhpHomePage',
64316430
CONTROL: 'control',
64326431
},
64336432
ACTIONABLE_TRACK_EXPENSE_WHISPER_MESSAGE: 'What would you like to do with this expense?',

src/components/SidePanel/RHPVariantTest/index.native.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ import type {HandleRHPVariantNavigation, ShouldOpenRHPVariant} from './types';
33
/**
44
* Side Panel is not supported on native platforms, so we always return false.
55
*/
6-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
7-
const shouldOpenRHPVariant: ShouldOpenRHPVariant = (_variantOverride) => false;
6+
const shouldOpenRHPVariant: ShouldOpenRHPVariant = () => false;
87

98
/**
109
* No-op on native platforms since Side Panel is not supported.
1110
*/
12-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
13-
const handleRHPVariantNavigation: HandleRHPVariantNavigation = (_onboardingPolicyID, _variantOverride) => {};
11+
const handleRHPVariantNavigation: HandleRHPVariantNavigation = () => {};
1412

1513
export {shouldOpenRHPVariant, handleRHPVariantNavigation};

src/components/SidePanel/RHPVariantTest/index.ts

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -29,38 +29,22 @@ Onyx.connectWithoutView({
2929
/**
3030
* Determines if the user should be navigated to the RHP variant side panel after onboarding.
3131
* The RHP variant is only shown to micro companies that are part of the RHP experiment.
32-
*
33-
* Accepts an optional variantOverride to bypass the module-level Onyx variable, avoiding a race
34-
* condition where the Onyx callback hasn't fired yet when this is called immediately after the
35-
* CompleteGuidedSetup API response.
3632
*/
37-
const shouldOpenRHPVariant: ShouldOpenRHPVariant = (variantOverride) => {
38-
const variant = variantOverride ?? onboardingRHPVariant;
33+
const shouldOpenRHPVariant: ShouldOpenRHPVariant = () => {
3934
const isMicroCompany = onboardingCompanySize === CONST.ONBOARDING_COMPANY_SIZE.MICRO;
40-
const isRHPConciergeDM = variant === CONST.ONBOARDING_RHP_VARIANT.RHP_CONCIERGE_DM;
41-
const isRHPAdminsRoom = variant === CONST.ONBOARDING_RHP_VARIANT.RHP_ADMINS_ROOM;
42-
const isRHPHomePage = variant === CONST.ONBOARDING_RHP_VARIANT.RHP_HOME_PAGE;
35+
const isRHPConciergeDM = onboardingRHPVariant === CONST.ONBOARDING_RHP_VARIANT.RHP_CONCIERGE_DM;
36+
const isRHPAdminsRoom = onboardingRHPVariant === CONST.ONBOARDING_RHP_VARIANT.RHP_ADMINS_ROOM;
4337

44-
return isMicroCompany && (isRHPConciergeDM || isRHPAdminsRoom || isRHPHomePage);
38+
return isMicroCompany && (isRHPConciergeDM || isRHPAdminsRoom);
4539
};
4640

4741
/**
4842
* Handles navigation for RHP experiment:
4943
* - Control: navigate to the last accessed report on small screens, do not open side panel
5044
* - RHP Concierge DM: navigate to the workspace overview and open the side panel with the Concierge DM
5145
* - RHP Admins Room: navigate to the workspace overview and open the side panel with the Admins Room
52-
* - RHP Home Page: navigate to the Home page and open the side panel with the Concierge DM
53-
*
54-
* Accepts an optional variantOverride for the same race-condition reason as shouldOpenRHPVariant.
5546
*/
56-
const handleRHPVariantNavigation: HandleRHPVariantNavigation = (onboardingPolicyID, variantOverride) => {
57-
const variant = variantOverride ?? onboardingRHPVariant;
58-
if (variant === CONST.ONBOARDING_RHP_VARIANT.RHP_HOME_PAGE) {
59-
Navigation.navigate(ROUTES.HOME);
60-
SidePanelActions.openSidePanel(true);
61-
return;
62-
}
63-
47+
const handleRHPVariantNavigation: HandleRHPVariantNavigation = (onboardingPolicyID) => {
6448
Navigation.navigate(ROUTES.WORKSPACE_OVERVIEW.getRoute(onboardingPolicyID));
6549
SidePanelActions.openSidePanel(true);
6650
};
Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import type {OnboardingRHPVariant} from '@src/types/onyx';
2-
3-
type ShouldOpenRHPVariant = (variantOverride?: OnboardingRHPVariant | null) => boolean;
4-
type HandleRHPVariantNavigation = (onboardingPolicyID?: string, variantOverride?: OnboardingRHPVariant | null) => void;
1+
type ShouldOpenRHPVariant = () => boolean;
2+
type HandleRHPVariantNavigation = (onboardingPolicyID?: string) => void;
53

64
export type {ShouldOpenRHPVariant, HandleRHPVariantNavigation};

src/libs/navigateAfterOnboarding.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import {handleRHPVariantNavigation, shouldOpenRHPVariant} from '@components/SidePanel/RHPVariantTest';
22
import ROUTES from '@src/ROUTES';
3-
import type {OnboardingRHPVariant} from '@src/types/onyx';
43
import {setDisableDismissOnEscape} from './actions/Modal';
54
import shouldOpenOnAdminRoom from './Navigation/helpers/shouldOpenOnAdminRoom';
65
import Navigation from './Navigation/Navigation';
@@ -51,12 +50,11 @@ function navigateAfterOnboarding(
5150
onboardingPolicyID?: string,
5251
onboardingAdminsChatReportID?: string,
5352
shouldPreventOpenAdminRoom = false,
54-
onboardingRHPVariant?: OnboardingRHPVariant | null,
5553
) {
5654
setDisableDismissOnEscape(false);
5755

58-
if (shouldOpenRHPVariant(onboardingRHPVariant)) {
59-
handleRHPVariantNavigation(onboardingPolicyID, onboardingRHPVariant);
56+
if (shouldOpenRHPVariant()) {
57+
handleRHPVariantNavigation(onboardingPolicyID);
6058
return;
6159
}
6260

@@ -85,7 +83,6 @@ function navigateAfterOnboardingWithMicrotaskQueue(
8583
onboardingPolicyID?: string,
8684
onboardingAdminsChatReportID?: string,
8785
shouldPreventOpenAdminRoom = false,
88-
onboardingRHPVariant?: OnboardingRHPVariant | null,
8986
) {
9087
Navigation.dismissModal();
9188
Navigation.setNavigationActionToMicrotaskQueue(() => {
@@ -97,7 +94,6 @@ function navigateAfterOnboardingWithMicrotaskQueue(
9794
onboardingPolicyID,
9895
onboardingAdminsChatReportID,
9996
shouldPreventOpenAdminRoom,
100-
onboardingRHPVariant,
10197
);
10298
});
10399
}

src/pages/OnboardingInterestedFeatures/BaseOnboardingInterestedFeatures.tsx

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ import type {TranslationPaths} from '@src/languages/types';
3636
import ONYXKEYS from '@src/ONYXKEYS';
3737
import ROUTES from '@src/ROUTES';
3838
import SCREENS from '@src/SCREENS';
39-
import type {OnboardingRHPVariant} from '@src/types/onyx';
4039
import type {BaseOnboardingInterestedFeaturesProps, Feature, SectionObject} from './types';
4140

4241
function BaseOnboardingInterestedFeatures({shouldUseNativeStyles}: BaseOnboardingInterestedFeaturesProps) {
@@ -220,7 +219,7 @@ function BaseOnboardingInterestedFeatures({shouldUseNativeStyles}: BaseOnboardin
220219
setOnboardingPolicyID(policyID);
221220
}
222221

223-
const response = await completeOnboarding({
222+
await completeOnboarding({
224223
engagementChoice: onboardingPurposeSelected,
225224
onboardingMessage: onboardingMessages[onboardingPurposeSelected],
226225
adminsChatReportID,
@@ -236,11 +235,6 @@ function BaseOnboardingInterestedFeatures({shouldUseNativeStyles}: BaseOnboardin
236235
betas,
237236
});
238237

239-
// Extract the RHP variant directly from the API response to avoid a race condition
240-
// where the Onyx callback hasn't fired yet when navigateAfterOnboarding is called.
241-
const rhpVariantUpdate = (response?.onyxData as Array<{key: string; value: unknown}> | undefined)?.find((update) => update.key === ONYXKEYS.NVP_ONBOARDING_RHP_VARIANT);
242-
const rhpVariant = rhpVariantUpdate?.value as OnboardingRHPVariant | undefined;
243-
244238
// Avoid creating new WS because onboardingPolicyID is cleared before unmounting
245239
// eslint-disable-next-line @typescript-eslint/no-deprecated
246240
InteractionManager.runAfterInteractions(() => {
@@ -259,7 +253,6 @@ function BaseOnboardingInterestedFeatures({shouldUseNativeStyles}: BaseOnboardin
259253
// Onboarding tasks would show in Concierge instead of admins room for testing accounts, we should open where onboarding tasks are located
260254
// See https://github.com/Expensify/App/issues/57167 for more details
261255
(session?.email ?? '').includes('+'),
262-
rhpVariant,
263256
);
264257
} catch (error) {
265258
Log.warn('[BaseOnboardingInterestedFeatures] Error completing onboarding', {error});
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
/**
2-
* The variant of the onboarding RHP for A/B/C/D testing
2+
* The variant of the onboarding RHP for A/B/C testing
33
* @description 'control' - The variant with the Concierge DM
44
* @description 'rhpConciergeDm' - Admin of workspace with Concierge DM
55
* @description 'rhpAdminsRoom' - Admin of workspace with the admins room
6-
* @description 'rhpHomePage' - Navigate to Home page with Concierge Anywhere accessible in #admins room
76
*/
8-
type OnboardingRHPVariant = 'rhpConciergeDm' | 'rhpAdminsRoom' | 'rhpHomePage' | 'control';
7+
type OnboardingRHPVariant = 'rhpConciergeDm' | 'rhpAdminsRoom' | 'control';
98

109
export default OnboardingRHPVariant;

0 commit comments

Comments
 (0)