Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prototype: Move goals step to front of onboarding if onboarding/goals-first flag #96866

Merged
merged 3 commits into from
Dec 8, 2024

Conversation

p-jackson
Copy link
Member

@p-jackson p-jackson commented Nov 28, 2024

Closes #96756

Proposed Changes

Uses an onboarding/goals-first feature flag to move the goals step to the very beginning of the onboarding flow. This PR allows you to prototype the change, but it is far from complete.

CleanShot.2024-11-28.at.21.02.46.mp4

Why are these changes being made?

We want to start moving more onboarding tasks in front of the paywall. This creates a skeleton of that change. Once this PR is merged—hidden behind a feature flag—we can add tasks for each of the TODOs I've left in the code and have multiple people working on it.

CC @Automattic/vertex this PR is adding a feature flag to the onboarding flow as mentioned here p1732691488986329-slack-C02T4NVL4JJ

Testing Instructions

  • The prototype flow
    • Start at /setup/onboarding?flags=onboarding/goals-first
    • Confirm you can create a new site, however most of the branching is broken. To be completed in follow up PRs.
  • The onboarding flow
    • This PR shouldn't have made any changes to the flow beginning at /setup/onboarding
    • It's not currently used by any users, but might be soon
  • The production flow
    • Do not break the flow beginning at /start
    • This PR should not cause any changes to the main flow starting at /start
    • The main flow eventually lands in the site-setup stepper flow, that's the only place this might make unintentional changes to that flow.

Pre-merge Checklist

  • Has the general commit checklist been followed? (PCYsg-hS-p2)
  • Have you written new tests for your changes?
  • Have you tested the feature in Simple (P9HQHe-k8-p2), Atomic (P9HQHe-jW-p2), and self-hosted Jetpack sites (PCYsg-g6b-p2)?
  • Have you checked for TypeScript, React or other console errors?
  • Have you used memoizing on expensive computations? More info in Memoizing with create-selector and Using memoizing selectors and Our Approach to Data
  • Have we added the "[Status] String Freeze" label as soon as any new strings were ready for translation (p4TIVU-5Jq-p2)?
    • For UI changes, have we tested the change in various languages (for example, ES, PT, FR, or DE)? The length of text and words vary significantly between languages.
  • For changes affecting Jetpack: Have we added the "[Status] Needs Privacy Updates" label if this pull request changes what data or activity we track or use (p4TIVU-aUh-p2)?

@p-jackson p-jackson requested a review from a team as a code owner November 28, 2024 08:07
@matticbot matticbot added the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Nov 28, 2024
@p-jackson p-jackson added [Status] In Progress and removed [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. labels Nov 28, 2024
@p-jackson p-jackson self-assigned this Nov 28, 2024
@matticbot matticbot added the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Nov 28, 2024
@p-jackson p-jackson removed the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Nov 28, 2024
@matticbot
Copy link
Contributor

matticbot commented Nov 28, 2024

Here is how your PR affects size of JS and CSS bundles shipped to the user's browser:

Sections (~5598 bytes added 📈 [gzipped])

name             parsed_size             gzip_size
onboarding-flow     +56754 B  (+314.5%)    +5379 B  (+86.3%)
site-setup-wg         +594 B    (+0.5%)     +219 B   (+0.9%)
site-setup-flow       +594 B    (+0.5%)     +219 B   (+0.9%)

Sections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to.

Legend

What is parsed and gzip size?

Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory.
Gzip Size: Compressed size of the JS and CSS files. This much data needs to be downloaded over network.

Generated by performance advisor bot at iscalypsofastyet.com.

@matticbot matticbot added the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Nov 29, 2024
@p-jackson p-jackson force-pushed the update/add-goals-first-flag branch from 01507d6 to c7e10a6 Compare November 29, 2024 02:22
@p-jackson p-jackson requested a review from a team November 29, 2024 03:05
@p-jackson p-jackson force-pushed the update/add-goals-first-flag branch from c7e10a6 to ab74f20 Compare December 7, 2024 15:21
@matticbot
Copy link
Contributor

This PR modifies the release build for the following Calypso Apps:

For info about this notification, see here: PCYsg-OT6-p2

  • notifications

To test WordPress.com changes, run install-plugin.sh $pluginSlug update/add-goals-first-flag on your sandbox.

@p-jackson p-jackson force-pushed the update/add-goals-first-flag branch from ab74f20 to af0199d Compare December 8, 2024 04:58
Copy link
Contributor

@candy02058912 candy02058912 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested and can access the Goals step in logged out state 👍
The original /start flow is not affected by the changes in this pr

@p-jackson p-jackson merged commit 7249149 into trunk Dec 8, 2024
11 checks passed
@p-jackson p-jackson deleted the update/add-goals-first-flag branch December 8, 2024 16:48
@github-actions github-actions bot removed [Status] In Progress [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. labels Dec 8, 2024
@@ -170,6 +170,7 @@
"onboarding/trail-map-feature-grid-structure": false,
"onboarding/trail-map-feature-grid": false,
"onboarding/user-on-stepper-hosting": true,
"onboarding/goals-first": true,
Copy link
Contributor

@arthur791004 arthur791004 Dec 9, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmmm...it seems the default value should be false on both dev and staging since it is far from complete and it changed the behavior after creating a new site with proxy...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proposed #97219

p-jackson added a commit that referenced this pull request Dec 9, 2024
The goals step was unintentionally removed from all flows on staging in
#96866. But we only want it removed when the user began on the
`onboarding` flow.
p-jackson added a commit that referenced this pull request Dec 9, 2024
The goals step was unintentionally removed from all flows on staging in
#96866. But we only want it removed when the user began on the
`onboarding` flow.
p-jackson added a commit that referenced this pull request Dec 9, 2024
The goals step was unintentionally removed from all flows on staging in
#96866. But we only want it removed when the user began on the
`onboarding` flow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create skeleton of flow with Goals and Design Picker at the front
5 participants