test: guard password verification cleanup and Edge errors

This commit is contained in:
pavlov346346-source 2026-09-11 10:15:34 +03:00
parent 3e38792f19
commit 83d99ed25d

View File

@ -12,7 +12,9 @@ check(!/user_metadata:\s*\{[^}]*must_change_password:\s*true/s.test(employee),'n
check(account.includes('user?.app_metadata?.must_change_password===true'),'client gate reads only app metadata marker'); check(account.includes('user?.app_metadata?.must_change_password===true'),'client gate reads only app metadata marker');
check(!account.includes('user_metadata?.must_change_password'),'client gate does not trust user metadata marker'); check(!account.includes('user_metadata?.must_change_password'),'client gate does not trust user metadata marker');
check(account.includes("c.functions.invoke('caterium-change-password'")||account.includes("c.functions.invoke(\"caterium-change-password\""),'client changes passwords through server edge'); check(account.includes("c.functions.invoke('caterium-change-password'")||account.includes("c.functions.invoke(\"caterium-change-password\""),'client changes passwords through server edge');
check(account.includes('result?.error?.context')&&account.includes('context.clone().json()'),'client surfaces safe structured Edge errors');
check(change.includes('caller.auth.getUser()')&&change.includes('signInWithPassword'),'password edge verifies JWT user and current password'); check(change.includes('caller.auth.getUser()')&&change.includes('signInWithPassword'),'password edge verifies JWT user and current password');
check(change.includes('verifier.auth.signOut({ scope: "local" })'),'temporary password-verification session is closed');
check(change.includes('auth.admin.updateUserById')&&change.includes('must_change_password: false'),'password edge atomically updates password and clears server marker'); check(change.includes('auth.admin.updateUserById')&&change.includes('must_change_password: false'),'password edge atomically updates password and clears server marker');
check(change.includes('current_password_invalid')&&change.includes('password_change_failed'),'password edge returns stable safe errors'); check(change.includes('current_password_invalid')&&change.includes('password_change_failed'),'password edge returns stable safe errors');
check(change.includes('npm:@supabase/supabase-js@2.116.0')&&changeMap.includes('npm:@supabase/supabase-js@2.116.0'),'password edge dependencies are pinned'); check(change.includes('npm:@supabase/supabase-js@2.116.0')&&changeMap.includes('npm:@supabase/supabase-js@2.116.0'),'password edge dependencies are pinned');