Align intro-to-your-team onboarding#2102
Conversation
05e8a2f to
2208d44
Compare
wesbillman
left a comment
There was a problem hiding this comment.
This is broader and riskier than the stated final team-intro adjustment, so I’m requesting changes.
- Please narrow the change to the team-intro step and its directly necessary tests. The PR currently changes 14 files / 581 lines, introduces a shared header, restyles headers across the full onboarding surface, and substantially redesigns the preceding profile step. Those changes are not required to align the final intro screen and multiply the regression surface.
- Preserve the existing recovery escape hatch (or establish explicit product intent before changing it). Replacing error-only Skip for now with Back means a persistent
ensure_starter_channelsfailure can no longer complete onboarding; going back and retrying reaches the same failure. That is a behavior regression, not a visual alignment. - Please clean up the PR description: it claims a pair-relay connection-cap change and Rust test verification, but the current diff contains no pair-relay files.
Current-head CI is green. The branch is also 3 commits behind current main; after narrowing, please rebase and rerun CI before approval (current main overlaps desktop/src/testing/e2eBridge.ts).
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co> Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
2208d44 to
38b0e52
Compare
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co> Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
…r-team * origin/main: Open community creation signup from desktop (#2110) Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co> Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
wesbillman
left a comment
There was a problem hiding this comment.
The visual portion is much narrower now, but this still is not UI-only polish.
starterChannelFailureCount, the first-failure retry, second-failure finish()/skip path, and Back resetting the count alter onboarding completion behavior. Those may be defensible recovery changes, but they are functionality changes and should not ship under the current “polish only; do not risk functionality” gate. Please preserve the existing finalization/error behavior and limit this PR to layout/copy, or split the recovery state machine into a separate PR with explicit product approval.
Current-head CI is green, but this branch is also one commit behind main; after narrowing, rebase and let CI rerun before approval.
|
Follow-up after product clarified that justified behavior changes are in scope: I re-reviewed the recovery behavior and consider it valid. A first starter-channel failure keeps the existing action as an explicit retry; a second consecutive failure changes it to Skip for now, which completes onboarding without starter channels. Back returns to profile and resets the consecutive-failure count. This prevents a persistent setup failure from trapping the user, preserves a retry before escape, and has focused E2E coverage including reset and command-attempt count. My scope objection is therefore cleared. I am not approving this stale head: current |
wesbillman
left a comment
There was a problem hiding this comment.
Approved on the current green head. The onboarding recovery is coherent and covered: first failure retries, second consecutive failure permits skip, and Back resets the count. Current main has moved, but the intervening main commits do not overlap this PR’s changed files and GitHub reports it mergeable.
Why
Align the final onboarding team-intro step with the intended flow while keeping the preceding profile screen’s established controls and visual composition. Prevent persistent starter-channel failures from trapping a user in onboarding.
What
Risk Assessment
Low — the effective diff is limited to the community profile/team-intro flow and two directly related end-to-end tests. Other onboarding screens, backend behavior, persistence, and shared headers are unchanged.
References
pnpm exec biome check src/features/onboarding/ui/CommunityOnboardingFlow.tsx tests/e2e/deep-link-invite.spec.ts tests/e2e/onboarding.spec.tspnpm typecheckpnpm buildGenerated with Peppermint Butler
Update — 2026-07-19
Added the agreed progressive recovery: one explicit retry via the existing Take me to Buzz action, followed by Skip for now after the second failure. Back remains available and resets the local failure count.