Skip to content

feat(onboarding): require a professional email on the personalize step#2798

Merged
jul-dan merged 2 commits into
stagingfrom
feat/onboarding-block-personal-emails
Jul 6, 2026
Merged

feat(onboarding): require a professional email on the personalize step#2798
jul-dan merged 2 commits into
stagingfrom
feat/onboarding-block-personal-emails

Conversation

@jul-dan

@jul-dan jul-dan commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Summary

Issue: QOV-2069

Summary

  • Reject sign-ups using free/personal/disposable email providers (Gmail, Yahoo, Outlook, iCloud, etc.) on the onboarding "Personalize" step — only professional email addresses are accepted now.
  • Fix a related UX issue: the email field was silently pre-filled with the user's Auth0 social login email, which could be a personal address — this failed validation with no visible error and left the "Continue" button permanently disabled. The field is now left empty in that case, and its label is renamed to "Professional email address" to set expectations upfront.

Changes

  • Added personal-email-domains.ts: a Set of ~4,768 known personal/free/disposable email domains, plus an isPersonalEmail() helper.
  • step-personalize.tsx: new validate rule on the user_email field, error message "Please enter your professional email address."
  • personalize.tsx: don't default user_email to the social-login email when it's a personal domain.
  • Exported isPersonalEmail fros public API (index.ts) so it's reusable across the flow.
  • Updated/added unit tests in step-personalize.spec.tsx.

Screenshots / Recordings

image

Testing

  • Changes tested locally in the relevant Console's pages and Storybooks
  • yarn test or yarn test -u (if you need to regenerate snapshots)
  • yarn format
  • yarn lint

PR Checklist

  • I followed naming, styling, and TypeScript rules (see .cursor/rules)
  • I performed a self-review (diff inspected, dead code removed)
  • I titled the PR using Conventional Commits with a scope when possible (e.g. feat(service): add new Terraform service) - required for semantic-release
  • I only kept necessary comments, written in English (watch for useless AI comments)
  • I involved a designer to validate UI changes if I am not a designer
  • I covered new business logic with tests (unit)
  • I confirmed CI is green (Codecov red can be accepted)
  • I reviewed and executed locally any AI-assisted code

jul-dan and others added 2 commits July 6, 2026 11:33
Reject sign-ups using free/personal/disposable email providers (Gmail, Yahoo, Outlook, etc.) so the onboarding form only accepts business email addresses.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The email field was silently pre-populated with the Auth0 social login email (e.g. a Gmail address), which fails the professional-email validation and left the Continue button disabled with no visible error. Now the field is left empty when the social email is a personal domain, and the label is renamed to "Professional email address" to make the requirement clear upfront.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@codecov

codecov Bot commented Jul 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 54.12%. Comparing base (c347652) to head (2d63eb5).

Additional details and impacted files
@@             Coverage Diff             @@
##           staging    #2798      +/-   ##
===========================================
+ Coverage    46.92%   54.12%   +7.20%     
===========================================
  Files         1251       13    -1238     
  Lines        26771      303   -26468     
  Branches      7804       65    -7739     
===========================================
- Hits         12562      164   -12398     
+ Misses       12052      128   -11924     
+ Partials      2157       11    -2146     
Flag Coverage Δ
unittests 54.12% <100.00%> (+7.20%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@jul-dan jul-dan merged commit 00f5946 into staging Jul 6, 2026
13 checks passed
@jul-dan jul-dan deleted the feat/onboarding-block-personal-emails branch July 6, 2026 12:38
@RemiBonnet

Copy link
Copy Markdown
Member

🎉 This PR is included in version 1.326.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants