feat(api): defer registration phone verification to community joins (#1709)

This commit is contained in:
Hampus authored and GitHub committed 2026-08-18 05:13:41 +02:00
1 parent 7e1ca9ed6a
commit d7b2e67c35
39 files changed
+1000 -32

No files matched your search

@@ -527,6 +527,11 @@ const InstancePolicyResponse = z.object({
youtube: z.boolean(),
bluesky: z.boolean(),
}),
deferred_phone_gate: z.object({
enabled: z.boolean(),
window_hours: z.number(),
member_threshold: z.number(),
}),
});
const CaptchaProviderSchema = z.enum(['hcaptcha', 'turnstile', 'none']);
@@ -735,6 +740,13 @@ export const InstanceConfigUpdateRequest = z.object({
bluesky_enabled: z.boolean().nullish(),
})
.nullish(),
deferred_phone_gate: z
.object({
enabled: z.boolean().optional(),
window_hours: z.number().positive().max(8760).optional(),
member_threshold: z.number().int().positive().max(1_000_000).optional(),
})
.nullish(),
})
.nullish(),
});
@@ -57,6 +57,9 @@ export const UserAdminResponseSchema = z.object({
'Suspicious activity indicators',
'SuspiciousActivityFlags',
),
phone_verification_deferred: z
.boolean()
.describe('Whether a stored phone requirement is deferred until the user joins a discoverable or large community'),
temp_banned_until: z.string().nullable(),
pending_deletion_at: z.string().nullable(),
pending_bulk_message_deletion_at: z.string().nullable(),