ref(forms): Migrate account security 2FA enrollment off JsonForm to scraps form - #119188
Draft
priscilawebdev wants to merge 1 commit into
Draft
ref(forms): Migrate account security 2FA enrollment off JsonForm to scraps form#119188priscilawebdev wants to merge 1 commit into
priscilawebdev wants to merge 1 commit into
Conversation
Contributor
📊 Type Coverage Diff
🔍 2 new type safety issues introduced
This is informational only and does not block the PR. |
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.
Summary
Migrates the account security 2FA/MFA enrollment form (
accountSecurityEnroll.tsx) from the legacyJsonForm/FormModel/sentry/components/formssystem to the new scraps form system (@sentry/scraps/form).Part of the ongoing JsonForm -> scraps form migration.
What changed
Form+JsonForm+FormModelwith three focused scrapsuseScrapsFormcomponents — one per authenticator type (TotpEnrollForm,SmsEnrollForm,U2fEnrollForm) — dispatched byauthenticator.id.POST {otp, secret}).Already enrolledredirect, relocation org-subdomain redirect, remove-authenticator confirm.authenticator.form, so copy is unchanged.WebAuthnEnroll(only consumer is this view) to be form-agnostic: it now reports the attestation result via anonEnrollcallback instead of mutating a legacyFormModel.useMutation+fetchMutationwith themutationFnpayload typed (no call-site generics).Form search
This form is not registered in SettingsSearch (no
src/sentry/data/formsentry; fields are server-driven on a dynamic route), so noFormSearchwrapper or field-registry regeneration is needed.Testing
pnpm run typecheck(whole project) passespnpm run lint:jspasses for changed filespnpm test-ci accountSecurityEnroll.spec.tsxpasses (5/5)No customer information is included in this change.