Skip to content

Improve signup-to-first-session conversion - #157

Open
ohong wants to merge 4 commits into
mainfrom
codex/improve-first-sync-conversion
Open

Improve signup-to-first-session conversion#157
ohong wants to merge 4 commits into
mainfrom
codex/improve-first-sync-conversion

Conversation

@ohong

@ohong ohong commented Sep 5, 2026

Copy link
Copy Markdown
Owner

New users must pass two onboarding screens before seeing the sync command. CLI users who need to sign in also lose their authorization return URL when login starts OAuth or sends a magic link. Both obstacles interrupt signup-to-first-sync conversion (#19).

Success means the command is visible immediately, interrupted checks offer recovery, and sign-in returns CLI users to explicit authorization. Copying the command or exploring the feed must not complete onboarding.

The change puts the command and live status on the first onboarding screen, moves optional profile editing to Settings, and adds manual copying plus status/completion retries. It preserves validated local return paths through login, signup, and callbacks. The success view uses actual spend, tokens, model, and date, without treating daily usage counts as individual coding sessions. We chose this smaller web change over a separate CLI-first signup funnel; existing three-day backfill and the collector remain in place.

Validation:

  • bun run test: 776 web tests and 205 CLI tests passed, including 48 new onboarding/auth regression tests.
  • bun run typecheck, bun run lint, and bun run build: passed.
  • Targeted Chromium Playwright checks: 8 passed across onboarding-first-sync and CLI verification (PLAYWRIGHT_USE_DEV_SERVER=1, line reporter, temporary local config selecting installed Chromium 1234). Real local auth, usage reads, completion writes, skip behavior, and retry after a controlled failure were verified; desktop/mobile screenshots were inspected.
  • autoreview --mode local --engine codex: clean, no actionable findings. Rebased onto current main (7ee21a7); only a documentation conflict required resolution, and full checks were rerun.
  • git diff --check: passed.

Issue triage also records the decision to retain ccusage and preserves the remaining model-presentation/source-attribution ideas from #28 in the roadmap. #99's collector replacement is not planned, and #144's nightly report tracker is obsolete. Thank you to @alexesprit, @rube-de, @darthShadow, @jqueguiner, and everyone who contributed ideas and feedback.

This PR has not been merged or released to production, and it does not establish a conversion lift. Production OAuth/magic-link delivery has not been exercised; it still depends on the project's configured callback URL allowlist. Compare the existing signup, first-sync-confirmed, and activation-completed events after release. Local browser verification uses a local test account and controlled failure responses.

Authored with Codex, with implementation delegated to coding agents and verification/review coordinated by the main agent.

ohong and others added 4 commits September 4, 2026 17:09
Keep validated local return paths through OAuth, magic links, auth retries, and login/signup navigation. New accounts can return to explicit CLI approval before optional profile setup.

Co-authored-by: Codex <noreply@openai.com>
Move optional profile editing to Settings. Add manual-copy fallback and bounded, non-overlapping usage checks with retry and sign-in recovery. Complete setup only after confirmed usage and a successful save, and show accurate usage totals.

Co-authored-by: Codex <noreply@openai.com>
Document observable first-sync success conditions, retain ccusage, and carry forward source-attribution and model-presentation questions from the superseded provider review.

Co-authored-by: Codex <noreply@openai.com>
Cover immediate access and skipping, real usage confirmation and completion, and retry after a failed save. Use isolated loopback-only test accounts and capture desktop/mobile evidence without storing sessions in the repository.

Co-authored-by: Codex <noreply@openai.com>
@vercel

vercel Bot commented Sep 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
straude Ready Ready Preview Sep 5, 2026 12:17am UTC

Request Review

@coderabbitai

coderabbitai Bot commented Sep 5, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 37 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Team

Run ID: d2b1149b-d690-443c-ab99-90cb3ae13e81

📥 Commits

Reviewing files that changed from the base of the PR and between 7ee21a7 and 9ae41a5.

📒 Files selected for processing (14)
  • apps/web/__tests__/api/auth-callback.test.ts
  • apps/web/__tests__/components/AuthReturnPath.test.tsx
  • apps/web/__tests__/components/OnboardingPage.test.tsx
  • apps/web/app/(auth)/callback/route.ts
  • apps/web/app/(auth)/login/page.tsx
  • apps/web/app/(auth)/signup/page.tsx
  • apps/web/app/(onboarding)/layout.tsx
  • apps/web/app/(onboarding)/onboarding/page.tsx
  • apps/web/e2e/golden-path/cli-verify.spec.ts
  • apps/web/e2e/onboarding-first-sync.spec.ts
  • apps/web/lib/supabase/redirect.ts
  • docs/CHANGELOG.md
  • docs/DECISIONS.md
  • docs/ROADMAP.md

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant