Skip to content

[$175] Close the side panel after onboarding for all intents #104027

Open

Description

@neil-marcellini

Problem

(Neil's AI agent)

After onboarding, some paths still open the side panel (RHP) next to Home or Expenses. That onboards the user in two places at once: Getting started on Home, plus a chat in the side panel. Home's Getting started already supports these intents (useGettingStartedItems.ts), so the side panel isn't needed. We agreed the panel should stay closed for every intent, including new employees joining a workspace they were invited to.

Where each path lands today:

  • Track workspace / Track personal (trackExpensesWithConcierge): Home with the side panel open to Concierge on web (RHPVariantTest/index.ts). On small screens it opens the Concierge DM instead (navigateAfterOnboarding.ts).
  • Get paid back by my employer (Submit workspace) and joining an existing workspace during onboarding: Expenses with the side panel open to #admins (navigateAfterOnboarding.ts). The join path is called from BaseOnboardingWorkspaces.
  • Manage my team: new signups go to the onboarding experiment, whose inboxAdminsBespoke and homePageNoRHP arms both keep the side panel closed. Accounts already assigned the retired rhpHomePage, rhpAdminsRoom or rhpConciergeDm arms still open the panel.

Reported in Slack, and extended to all intents here.

Solution

(Neil's AI agent)

Never open the side panel automatically after onboarding:

  1. Track intents: land on Home with the side panel closed, on all screen sizes. Opening Concierge from Home still shows the Concierge DM.
  2. Employer / Submit workspace and joining a workspace: keep landing on Expenses, with the side panel closed. Which page Submit users land on is a separate A/B test (https://github.com/Expensify/Expensify/issues/671738), so don't move them to Home here.
  3. Manage my team: stop opening the side panel for the retired rhpHomePage, rhpAdminsRoom and rhpConciergeDm values. Don't change the live inboxAdminsBespoke / homePageNoRHP experiment, tracked in https://github.com/Expensify/Expensify/issues/679256.
  4. Invited employees: check every way an invited employee can join for the first time (invite link, auto-join by domain, the join-workspace step in onboarding) and confirm none of them open the side panel.
  5. Add unit tests covering where each intent and variant lands and that the side panel stays closed.
Upwork Automation - Do Not Edit

Activity

  1. added
    ExternalAdded to denote the issue can be worked on by a contributor
    Help WantedApply this label when an issue is open to proposals by contributors
    on Oct 14, 2026
  2. changed the title [-]Close the side panel after onboarding for all intents[/-] [+][$250] Close the side panel after onboarding for all intents[/+] on Oct 14, 2026
  3. melvin-bot commented on Oct 14, 2026

    @melvin-bot

    Triggered auto assignment to Contributor-plus team member for initial proposal review - @rojiphil (External)

  4. melvin-bot commented on Oct 14, 2026

    @melvin-bot
  5. Dip-G-Git commented on Oct 14, 2026

    @Dip-G-Git
  6. changed the title [-][$250] Close the side panel after onboarding for all intents[/-] [+][$175] Close the side panel after onboarding for all intents[/+] on Oct 14, 2026
  7. melvin-bot commented on Oct 14, 2026

    @melvin-bot
  8. github-actions commented on Oct 14, 2026

    @github-actions
    Contributor

    ⚠️ @Dip-G-Git Thanks for your interest. To be considered for this job, please post a proposal following the proposal template (note the mandatory sections). Comments claiming the job without one are not reviewed.

  9. changed the title [-][$175] Close the side panel after onboarding for all intents[/-] [+][$175] Close the side panel after onboarding for non-manage-team intents[/+] on Oct 14, 2026
  10. wildan-m commented on Oct 14, 2026

    @wildan-m
    Contributor

    🚨 Edited by proposal-police: This proposal was edited at 2026-10-14 18:08:29 UTC.

    Proposal

    Please re-state the problem that we are trying to solve in this issue.

    After onboarding, the Track (workspace/personal) and "Get paid back by my employer" intents still open the side panel next to the landing page, so the user is onboarded in two places at once (Getting started on Home plus a chat in the side panel). These intents should land on Home with the side panel closed, on every screen size, without touching the Manage my team experiment variants.

    What is the root cause of that problem?

    There are two separate paths that explicitly open the side panel after onboarding.

    1. Track intents (trackExpensesWithConcierge variant). shouldOpenRHPVariant() unconditionally returns true for this variant, regardless of company size:

    if (variant === CONST.ONBOARDING_RHP_VARIANT.TRACK_EXPENSES_WITH_CONCIERGE) {
    return true;
    }

    so navigateAfterOnboarding() routes it into handleRHPVariantNavigation(), whose track branch navigates to Home and then calls SidePanelActions.openSidePanel(true):

    if (variant === CONST.ONBOARDING_RHP_VARIANT.TRACK_EXPENSES_WITH_CONCIERGE) {
    const shouldPreserveRevealedReport = isReportTopmostSplitNavigator();
    if (!shouldPreserveRevealedReport) {
    Navigation.navigate(ROUTES.HOME, navigationOptions);
    }
    SidePanelActions.openSidePanel(true);
    return;
    }

    On small screens, before that, navigateAfterOnboarding() has a dedicated branch that sends the user straight into the Concierge DM instead of Home:

    if (isSmallScreenWidth && variant === CONST.ONBOARDING_RHP_VARIANT.TRACK_EXPENSES_WITH_CONCIERGE) {
    Navigation.navigate(ROUTES.REPORT_WITH_ID.getRoute(conciergeReportID), navigationOptions);
    return;
    }

    (The variant is assigned for Track intents in useAutoCreateTrackWorkspace:)

    let rhpVariant: OnboardingRHPVariant | undefined = isSidePanelReportSupported ? undefined : CONST.ONBOARDING_RHP_VARIANT.TRACK_EXPENSES_WITH_CONCIERGE;

    2. Employer / Submit workspace. navigateToSubmitWorkspaceAfterOnboarding() sets the variant to rhpAdminsRoom, navigates to Spend > Expenses, and then calls SidePanelActions.openSidePanel(!shouldUseNarrowLayout):

    function navigateToSubmitWorkspaceAfterOnboarding(policyID?: string, shouldUseNarrowLayout = false) {
    setDisableDismissOnEscape(false);
    if (!policyID) {
    Navigation.navigate(ROUTES.HOME);
    return;
    }
    setOnboardingRHPVariant(CONST.ONBOARDING_RHP_VARIANT.RHP_ADMINS_ROOM);
    Navigation.navigate(ROUTES.SEARCH_ROOT.getRoute({query: buildCannedSearchQuery({type: CONST.SEARCH.DATA_TYPES.EXPENSE}), searchKey: CONST.SEARCH.SEARCH_KEYS.EXPENSES}));
    SidePanelActions.openSidePanel(!shouldUseNarrowLayout);
    }

    It is called from both useAutoCreateSubmitWorkspace and BaseOnboardingWorkspaces (joining an existing workspace), so both entry points open the panel.

    The only arm that already behaves as desired is homePageNoRHP, which is handled first in navigateAfterOnboarding() and just navigates to Home (unless a report is already topmost) without opening the side panel:

    // The homePageNoRHP arm of the onboarding experiment lands on Home without opening the side panel, at every company size,
    // so it is handled before the variants that are limited to micro companies or that open the side panel.
    if (variant === CONST.ONBOARDING_RHP_VARIANT.HOME_PAGE_NO_RHP) {
    if (!isReportTopmostSplitNavigator()) {
    Navigation.navigate(ROUTES.HOME, navigationOptions);
    }
    return;
    }

    What changes do you think we should make in order to solve the problem?

    1. Track intents: in navigateAfterOnboarding(), handle trackExpensesWithConcierge together with homePageNoRHP in the early branch, so it lands on Home (preserving the existing "don't navigate if a report is already topmost" guard) and returns without opening the side panel, on all screen sizes. Remove the small-screen branch that navigates to the Concierge DM. Opening Concierge from Home afterwards keeps working through the normal Concierge entry points, which are untouched.
    2. Clean up the RHP variant helpers: remove the trackExpensesWithConcierge early-return in shouldOpenRHPVariant() and the corresponding branch in handleRHPVariantNavigation(), since that variant no longer reaches them. The micro-company rhpConciergeDm / rhpAdminsRoom / rhpHomePage logic is left exactly as is, so the Manage my team experiment is unaffected.
    3. Employer / Submit workspace: navigateToSubmitWorkspaceAfterOnboarding() already has a branch for a missing workspace ID that only navigates to Home, with no openSidePanel() call and no rhpAdminsRoom variant write. So the onboarding entry points stop passing the workspace ID to it: useAutoCreateSubmitWorkspace passes no ID when it is completing onboarding, and BaseOnboardingWorkspaces (joining an existing Submit workspace) calls it without one. Both now land on Home with the side panel closed. The helper itself is left unchanged because the same hook also serves already-onboarded callers (the Submit plan welcome modal and the submit-intent deep link), which intentionally go to their Submit workspace, and those keep their current behavior. If the outstanding decision is to keep employer users on Expenses, the change instead becomes dropping the openSidePanel() call (and the variant write) from the helper while keeping the Expenses navigation.
    4. Unit tests: extend tests/unit/navigateAfterOnboardingTest.ts (running the web implementation of the RHP variant helpers, where the side panel exists) to assert that Track lands on ROUTES.HOME and never on the Concierge report on both small and large screens, keeps a report that is already on top, also applies when the variant comes from Onyx rather than the API response, and never calls openSidePanel; and that the micro-company rhpHomePage / rhpAdminsRoom / rhpConciergeDm arms still open the side panel. Update tests/unit/hooks/useAutoCreateSubmitWorkspace.test.ts so onboarding callers navigate without a workspace ID (Home) while the welcome modal still navigates to the newly created or existing Submit workspace, and drop the Track cases from tests/unit/components/SidePanel/RHPVariantTest.test.ts since that branch is removed. The new Track and Submit assertions fail on main and pass with the change.

    Compare branch: https://github.com/Expensify/App/compare/main...wildan-m:App:wildan/104027-close-side-panel-after-onboarding?expand=1

    What alternative solutions did you explore? (Optional)

    Close the side panel after the fact (e.g. call closeSidePanel() once onboarding navigation finishes). Rejected because the panel would briefly flash open, and it leaves the variant code paths that open it in place, so the intent-specific behavior stays hard to reason about.

  11. github-actions commented on Oct 14, 2026

    @github-actions
    Contributor

    🤖 ProposalPolice™ is tracking duplicate proposals for this issue using an OpenAI Conversation. This comment stores that Conversation's ID and can be safely ignored.

  12. 63 remaining items

  13. github-actions commented on Oct 18, 2026

    @github-actions
    Contributor

    ⚠️ @RajGahoi Thanks for your interest. To be considered for this job, please post a proposal following the proposal template (note the mandatory sections). Comments claiming the job without one are not reviewed.

  14. Akopyan0 commented on Oct 18, 2026

    @Akopyan0

    Proposal

    What is the root cause of that problem?

    The post-onboarding navigation is split across several paths that still perform the older right-hand-panel (RHP) experiment's side effects:

    • RHPVariantTest treats trackExpensesWithConcierge and retired Manage-my-team variants as reasons to reveal the panel.
    • The small-screen Track path navigates directly to Concierge rather than leaving the user on Home.
    • The Submit-workspace and first-time workspace-join routes land on Expenses but also open #admins in the side panel.

    These behaviors conflict with the Getting Started experience already available on Home and with the desired single landing surface for each intent.

    What changes do you think we should make in order to solve the problem?

    1. Keep the intended destination for each intent: Track → Home, Submit/employer and workspace join → Expenses, and preserve the existing live Manage-my-team experiment destinations.
    2. Remove the automatic panel-opening behavior from Track, Submit, workspace-join, and the three retired Manage-my-team RHP variants. Make sure an already-open panel is closed during the transition, instead of only suppressing new openSidePanel(true) calls.
    3. For small-screen Track, navigate to Home without opening the Concierge DM automatically. The user should still be able to open Concierge manually afterward.
    4. Trace the invite-link, auto-join-by-domain, and onboarding workspace-selection paths to the shared navigation logic so no first-time employee join opens the panel.
    5. Add regression tests for the destination and closed-panel state across all intents, variants, narrow/wide layouts, and invited-employee entry points, while leaving the live Manage-my-team A/B behavior otherwise unchanged.

    What alternative solutions did you explore? (Optional)

    Only hiding the panel in the UI would leave the navigation side effects and mobile Concierge redirect in place. Moving Submit to Home would incorrectly change a separate experiment. The safer fix is to remove the outdated automatic RHP decisions at their sources while preserving existing destinations.

    I can start on implementation and tests if this proposal is approved.

  15. melvin-bot commented on Oct 18, 2026

    @melvin-bot

    📣 @Akopyan0! 📣
    Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
    Please follow these steps:

    1. Make sure you've read and understood the contributing guidelines.
    2. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
    3. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
    4. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
      Screen Shot 2022-11-16 at 4 42 54 PM
      Format:
    Contributor details
    Your Expensify account email: <REPLACE EMAIL HERE>
    Upwork Profile Link: <REPLACE LINK HERE>
    
  16. jdymitarai commented on Oct 19, 2026

    @jdymitarai

    Upwork Profile: https://www.upwork.com/freelancers/~01f541511c3fcd21d9
    Expensify Account: [email protected]

    Proposal

    What is the root cause of that problem?

    The post-onboarding navigation logic in src/libs/navigateAfterOnboarding.ts and the variant helper logic in src/components/SidePanel/RHPVariantTest/index.ts still contain legacy branching that explicitly opens the side panel (via SidePanelActions.openSidePanel) on large screens or navigates directly to the Concierge/workspace chat report on narrow layouts after navigating to Home. These triggers were originally built for earlier onboarding variants before the Home page's Getting Started section (useGettingStartedItems.ts) supported checklist items for all onboarding flows.

    What changes do you think we should make in order to solve the problem?

    Update src/libs/navigateAfterOnboarding.ts across all onboarding intent paths (including personal and workspace expense tracking, submitting expenses, managing a team, and joining an invited workspace) to remove calls that automatically open the side panel after onboarding.

    In src/libs/navigateAfterOnboarding.ts, remove post-onboarding redirects to the Concierge DM or workspace/admin chat reports on small screens so that both small and large screens consistently land on Home (or the primary destination route) with the side panel closed and Getting Started visible.

    Clean up src/components/SidePanel/RHPVariantTest/index.ts (and its callers in onboarding completion) to remove automatic side panel opening and Concierge report navigation triggers for onboarding variants, ensuring manual side panel usage and deep links outside onboarding remain unaffected.

    Update unit tests in tests/unit/navigateAfterOnboardingTest.ts to verify that completing onboarding across all intents and screen sizes lands on the expected page without opening the side panel or redirecting to chat reports.

    What alternative solutions did you explore? (Optional)

    An alternative would be to explicitly call SidePanelActions.closeSidePanel() after navigateAfterOnboarding finishes or inside the Home page mount lifecycle. However, that would be reactive, could cause a brief visual flash of the side panel opening and closing, and would leave dead onboarding navigation branching in navigateAfterOnboarding.ts. Preventing the side panel and chat routes from being opened at the navigation dispatch source directly addresses the root cause cleanly.

  17. pvaghasiya087-has commented on Oct 19, 2026

    @pvaghasiya087-has

    Proposal

    What is the root cause of that problem?

    The onboarding exit flow still treats legacy right-hand-panel (RHP) variants as instructions to open the panel. In the Submit-workspace path, navigateToSubmitWorkspaceAfterOnboarding explicitly saves the retired RHP_ADMINS_ROOM variant and then opens the panel after navigating to Expenses (navigateAfterOnboarding.ts, lines 198–212). Separately, shouldOpenRHPVariant still returns true for the Track-with-Concierge variant, and handleRHPVariantNavigation opens the panel (RHPVariantTest/index.ts, lines 43–49, lines 68–90). Removing only one open call would leave the remaining variant-based path able to reopen it.

    What changes do you think we should make in order to solve the problem?

    • Keep each intent's intended destination, but make “finish onboarding” leave the RHP closed: Track should land on Home, while Submit/workspace-join should land on Expenses.
    • In navigateToSubmitWorkspaceAfterOnboarding, remove the retired RHP_ADMINS_ROOM variant write and the automatic openSidePanel call, while preserving the Expenses navigation (source).
    • In shouldOpenRHPVariant and handleRHPVariantNavigation, prevent retired onboarding variants from triggering automatic panel navigation/opening, without changing active experiment variants (source).
    • Add regression tests for Track and Submit/workspace-join on narrow and wide layouts. Assert the expected destination, that the panel-opening action is not called, and that the retired variant is not persisted. The existing onboarding navigation tests are in tests/unit/navigateAfterOnboardingTest.ts; update assertions that currently encode legacy routing as needed.

    What alternative solutions did you explore? (Optional)

    Calling closeSidePanel() only after navigation would be reactive and could cause the panel to flash open. Removing the panel component entirely would be broader than necessary and could affect intentional panel use. The safer scope is to remove the onboarding-specific triggers at their source while preserving destinations and active experiment behavior.

    Upwork Profile: https://www.upwork.com/freelancers/~015e06e45c63820f13

  18. github-actions commented on Oct 19, 2026

    @github-actions
    Contributor

    ⚠️ @pvaghasiya087-has Thanks for your proposal. Please update it to follow the proposal template, as proposals are only reviewed if they follow that format (note the mandatory sections).

  19. pvaghasiya087-has commented on Oct 19, 2026

    @pvaghasiya087-has

    Proposal Updated

  20. RajGahoi commented on Oct 19, 2026

    @RajGahoi

    Contributor details
    Your Expensify account email: [email protected]
    Upwork Profile Link: https://www.upwork.com/freelancers/~014898525b9c53fc32

    Proposal

    Please re-state the problem that we are trying to solve in this issue.

    The post-onboarding navigation logic automatically opens the side panel (RHP) across several intents even after the onboarding flow finishes, preventing users from landing cleanly on the Home screen or intended target with the side panel closed.

    What is the root cause of that problem?

    In src/libs/navigateAfterOnboarding.ts and src/components/SidePanel/RHPVariantTest/index.ts:

    1. Legacy experiment branching retains calls to SidePanelActions.openSidePanel upon completing onboarding intents. Specifically,
      avigateToSubmitWorkspaceAfterOnboarding explicitly sets the retired RHP_ADMINS_ROOM variant and dispatches side-panel open calls.
    2. In shouldOpenRHPVariant and handleRHPVariantNavigation, obsolete variant paths still evaluate to true and trigger automatic panel navigation, reopening the panel after navigation to Home or Expenses.

    What changes do you think we should make in order to solve the problem?

    1. In src/libs/navigateAfterOnboarding.ts, remove all explicit calls to openSidePanel across onboarding completion paths so that completing onboarding consistently leaves the side panel closed.
    2. In src/components/SidePanel/RHPVariantTest/index.ts, remove automatic panel navigation for retired onboarding variants while preserving normal intentional manual side-panel opening.
    3. Update unit tests in ests/unit/navigateAfterOnboardingTest.ts to assert that completing onboarding navigates to the target screen without invoking openSidePanel.

    What alternative solutions did you explore? (Optional)

    Calling closeSidePanel reactively after navigation was explored, but rejected because it causes a noticeable visual flicker of the panel opening and closing. Removing the triggers directly at the navigation source provides a seamless user experience.

  21. melvin-bot commented on Oct 19, 2026

    @melvin-bot

    ✅ Contributor details stored successfully. Thank you for contributing to Expensify!

  22. rojiphil commented on Oct 19, 2026

    @rojiphil
    Contributor

    🎀👀🎀 @neil-marcellini
    @yuvrajangadsingh's proposal looks good to me: #104027 (comment)

    The root cause is the two onboarding exits that call openSidePanel: the RHP variant handler (Track, and the retired micro-company arms) and navigateToSubmitWorkspaceAfterOnboarding. The change keeps the current landing pages and closes the panel. Track lands on Home on every screen size. Submit and joining a Submit workspace stay on Expenses. The retired rhpHomePage, rhpAdminsRoom, and rhpConciergeDm arms keep their pages. inboxAdminsBespoke and homePageNoRHP stay as they are. rhpAdminsRoom is still stored for Submit, so a later manual open shows #admins.

    This is the earliest proposal that matches the final scope. Earlier ones send Submit to Home or leave the retired arms opening the panel.

    Two details:

    • The Submit helper is shared with the Submit-plan welcome modal and the intent=submit deep link, so those already-onboarded callers also stop opening the panel.
    • Ask to join and Skip, with a retired rhpAdminsRoom or rhpConciergeDm arm and a micro company size, can still land on workspaces/undefined/overview. The panel stays closed. That page can be a follow-up.
  23. melvin-bot commented on Oct 19, 2026

    @melvin-bot

    Current assignee @neil-marcellini is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new.

  24. nabi-ebrahimi commented on Oct 19, 2026

    @nabi-ebrahimi
    Contributor

    Hi @rojiphil, I’d appreciate another review of my proposal. I believe it addresses the issue’s full scope more reliably.

    The selected proposal routes Track users to Home when the Track variant is available. If completeOnboarding() fails on web, [the Track hook](

    // On mobile, hardcode trackExpensesWithConcierge since the web flow already works
    // with the CompleteGuidedSetup response and side panel isn't supported on native.
    let rhpVariant: OnboardingRHPVariant | undefined = isSidePanelReportSupported ? undefined : CONST.ONBOARDING_RHP_VARIANT.TRACK_EXPENSES_WITH_CONCIERGE;
    try {
    const response = await completeOnboarding({
    engagementChoice,
    onboardingMessage: onboardingMessages[engagementChoice],
    firstName,
    lastName,
    adminsChatReportID: newAdminsChatReportID,
    onboardingPolicyID: newPolicyID,
    shouldWaitForRHPVariantInitialization: isSidePanelReportSupported,
    personalTrackGoal: onboardingPurposeSelected === CONST.ONBOARDING_CHOICES.TRACK_PERSONAL && !!personalTrackGoal ? personalTrackGoal : undefined,
    introSelected,
    isSelfTourViewed,
    conciergeChat,
    selfDMReport,
    currentUserAccountID,
    delegateAccountID,
    });
    if (isSidePanelReportSupported) {
    rhpVariant = extractRHPVariantFromResponse(response);
    // Every Track onboarding choice should land in the Concierge RHP, but the backend
    // doesn't reliably return trackExpensesWithConcierge for all of them, so fall back to it
    // whenever the response omits a variant.
    if (!rhpVariant && isTrackOnboardingChoice(onboardingPurposeSelected)) {
    rhpVariant = CONST.ONBOARDING_RHP_VARIANT.TRACK_EXPENSES_WITH_CONCIERGE;
    }
    }
    } catch (error) {
    Log.warn('[useAutoCreateTrackWorkspace] Error completing onboarding', {error});
    } finally {
    setOnboardingAdminsChatReportID();
    setOnboardingPolicyID();
    navigateAfterOnboardingWithMicrotaskQueue(
    shouldUseNarrowLayout,
    isBetaEnabled(CONST.BETAS.DEFAULT_ROOMS),
    conciergeChatReportID,
    reportNameValuePairs,
    newPolicyID,
    mergedAccountConciergeReportID,
    false,
    {variantOverride: rhpVariant},
    ) can navigate without that variant, so Home is not guaranteed. My proposal passes the selected Track purpose directly to navigation and covers this failure path.

    The selected change also removes panel opening for already-onboarded callers of the shared Submit helper. My proposal keeps their existing behavior while closing the panel during onboarding. It also falls back to Home when a retired workspace variant has no policy ID, avoiding a possible workspaces/undefined/overview route.

    My proposal preserves the required landing pages and live experiment behavior, and specifies tests for these edge cases and invited-employee paths. For these reasons, I believe it is the more complete solution with less regression risk. Would you please take another look at my proposal against the issue’s final requirements?

  25. rojiphil commented on Oct 19, 2026

    @rojiphil
    Contributor

    @nabi-ebrahimi Thanks for the follow-up. I had already considered your proposal before.

    The failed Track request, the already-onboarded Submit callers, and the missing workspace id are real edges. yuvrajangadsingh's proposal covers the final requirements, and that text was in place on 16 Oct. Yours still sent Submit onboarding to Home and left the retired arms opening the panel until the 17 Oct edit.

    So, I'm still going with #104027 (comment) as that was the earliest proposal matching the final scope. The missing-policy page can be a follow-up. We'll keep the Submit welcome modal and the intent=submit deep link in mind during implementation. Having said thus, @neil-marcellini can take the final call on this.

  26. nabi-ebrahimi commented on Oct 19, 2026

    @nabi-ebrahimi
    Contributor

    91. @nabi-ebrahimi Thanks for the follow-up. I had already considered your proposal before.
    The failed Track request, the already-onboarded Submit callers, and the missing workspace id are real edges. yuvrajangadsingh's proposal covers the final requirements, and that text was in place on 16 Oct. Yours still sent Submit onboarding to Home and left the retired arms opening the panel until the 17 Oct edit.
    So, I'm still going with #104027 (comment) as that was the earliest proposal matching the final scope. The missing-policy page can be a follow-up. We'll keep the Submit welcome modal and the intent=submit deep link in mind during implementation. Having said thus, @neil-marcellini can take the final call on this.

    @rojiphil, thank you for explaining the timing. My October 17 update corrected the earlier Submit and retired-variant behavior.

    I manually checked the onboarding flows and updated my proposal to cover cases the selected proposal does not address: Track navigation when the completion request fails, the existing behavior of already-onboarded Submit callers, and a missing workspace ID producing an invalid route. My test plan also covers the different invited-employee paths.

    cc: @neil-marcellini

    Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

DailyKSv2ExternalAdded to denote the issue can be worked on by a contributorHelp WantedApply this label when an issue is open to proposals by contributors

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions