From 46788beb1463177660701155dff310d64ac0d991 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 7 Mar 2026 03:48:16 +0000 Subject: [PATCH 1/3] Initial plan From 109be1dcc1085f7d3ef18549e5cfcd592faa3a57 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 7 Mar 2026 03:52:27 +0000 Subject: [PATCH 2/3] Add confirm password field to registration form with validation Co-authored-by: sirily11 <32106111+sirily11@users.noreply.github.com> --- components/auth/register-form.tsx | 17 ++++++++- e2e/auth/register.spec.ts | 29 +++++++++++--- lib/validations/auth.test.ts | 63 +++++++++++++++++++++++++++++++ lib/validations/auth.ts | 4 ++ 4 files changed, 107 insertions(+), 6 deletions(-) create mode 100644 lib/validations/auth.test.ts diff --git a/components/auth/register-form.tsx b/components/auth/register-form.tsx index 50e8af8..e293ec3 100644 --- a/components/auth/register-form.tsx +++ b/components/auth/register-form.tsx @@ -18,6 +18,7 @@ export function RegisterForm({ whitelistOnly = false }: RegisterFormProps) { const router = useRouter(); const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); + const [confirmPassword, setConfirmPassword] = useState(""); const [displayName, setDisplayName] = useState(""); const [error, setError] = useState(null); const [isPending, startTransition] = useTransition(); @@ -27,7 +28,7 @@ export function RegisterForm({ whitelistOnly = false }: RegisterFormProps) { setError(null); startTransition(async () => { - const result = await register({ email, password, displayName: displayName || undefined }); + const result = await register({ email, password, confirmPassword, displayName: displayName || undefined }); if (result.success) { if (process.env.NEXT_PUBLIC_E2E_SKIP_EMAIL_VERIFICATION === "true") { router.push("/account"); @@ -114,6 +115,20 @@ export function RegisterForm({ whitelistOnly = false }: RegisterFormProps) {

+
+ + setConfirmPassword(e.target.value)} + required + minLength={8} + disabled={isPending} + /> +
+