Onboarding: advance makeDefaultSingle step on native's onSetAsDefaultComplete#2834
Draft
noisysocks wants to merge 6 commits into
Draft
Onboarding: advance makeDefaultSingle step on native's onSetAsDefaultComplete#2834noisysocks wants to merge 6 commits into
noisysocks wants to merge 6 commits into
Conversation
…ent types Co-authored-by: Robert Anderson <[email protected]>
…SetAsDefaultComplete Co-authored-by: Robert Anderson <[email protected]>
…nce flag Co-authored-by: Robert Anderson <[email protected]>
…nce flag Co-authored-by: Robert Anderson <[email protected]>
… dev Co-authored-by: Robert Anderson <[email protected]>
…e step Co-authored-by: Robert Anderson <[email protected]>
Contributor
Build Branch
Static preview entry points
QR codes (mobile preview)
Integration commandsnpm (Android / Extension): Swift Package Manager (Apple): .package(url: "https://github.com/duckduckgo/content-scope-scripts.git", branch: "pr-releases/cursor/onboarding-auto-advance-default-browser-bb92")git submodule (Windows): git -C submodules/content-scope-scripts fetch origin pr-releases/cursor/onboarding-auto-advance-default-browser-bb92
git -C submodules/content-scope-scripts checkout origin/pr-releases/cursor/onboarding-auto-advance-default-browser-bb92Pin to exact commitnpm (Android / Extension): Swift Package Manager (Apple): .package(url: "https://github.com/duckduckgo/content-scope-scripts.git", revision: "2c5d89fe13f6314987e9435adb2a7d80eccf30b9")git submodule (Windows): git -C submodules/content-scope-scripts fetch origin pr-releases/cursor/onboarding-auto-advance-default-browser-bb92
git -C submodules/content-scope-scripts checkout 2c5d89fe13f6314987e9435adb2a7d80eccf30b9 |
Contributor
[Beta] Generated file diffTime updated: Fri, 03 Jul 2026 03:44:26 GMT AppleFile has changed IntegrationFile has changed WindowsFile has changed |
Contributor
|
This PR requires a manual review and approval from a member of one of the following teams:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Asana Task/Github Issue: https://app.asana.com/1/137249556945/task/1216255190183430 (parent: 1215435204288345)
Description
On the onboarding
makeDefaultSinglestep (Comparison Chart / "Make DuckDuckGo Your Default" screen), the frontend now advances to the next step automatically when native pushes a newonSetAsDefaultCompletesubscription message — equivalent to clicking "Next" today. While waiting for that message, the screen keeps showing "Make DuckDuckGo Your Default" and "Skip"; the "Next" button never appears on this step.All new behaviour is gated behind an
autoAdvanceflag that native supplies per-step in theinitresponse (stepDefinitions.makeDefaultSingle.autoAdvance), so nothing changes for native builds that don't opt in.Changes:
app/messages.js— newonSetAsDefaultComplete(callback)subscription (no JSON schema needed, same asonConfigUpdate).app/types.js—MakeDefaultSingleStep.autoAdvance?: boolean, newAutoAdvanceEventadded toGlobalEvents.app/global.js— reducer handlesauto-advanceat the top level (before thestatus.kindswitch) so it works even mid-request;GlobalProvidersubscribes toonSetAsDefaultCompleteand dispatchesauto-advancevia a ref-backed proxy call (mirrorsadvance's side effects —stepCompleted+row_showntelemetry — via a sharednotifyStepAdvancedhelper).app/v3/data/data.js/app/v4/components/MakeDefaultContent.js— whenautoAdvanceis on, the step never renders "Next": Skip + "Make Default" stay visible, and (v4) the success-title bounce animation is skipped since the outcome isn't known until the push arrives.src/mock-transport.js—?autoAdvance=trueURL param for local dev/manual testing vianpm run serve-special-pages.pushSetAsDefaultComplete()page-object helper covering: no "Next" while waiting, advance-on-push (+stepCompleted), no-op on other steps, and Skip still works — for both v3 and v4.Testing Steps
npm run build,npm run lint,npm run test-unitall pass.npm run test-int -- pages/onboarding --reporter list— all onboarding v3/v4 integration tests pass (macOS + Windows projects), including the newautoAdvancecases.npm run serve-special-pages, open onboarding with?env=app&page=makeDefaultSingle&autoAdvance=true, then drivewindow.__playwright_01.publishSubscriptionEvent({ subscriptionName: 'onSetAsDefaultComplete', params: {} })from the console.Checklist