Every state a consumer must render — these are contract, not decoration
Auth states
Email-availability, password-strength, Turnstile, submit-in-flight, and the field/form errors. If it isn't a frame here, the implementation isn't required to handle it.
Email availability · idle
We'll check availability as you type.
Email availability · checking (debounced)
Email availability · available
Email availability · already registered
That email has an account. Sign in instead?
Email availability · check unavailable
We'll confirm when you submit — this never blocks you from trying.
Password strength · weak
- 12+ characters
- Lowercase
- Uppercase
- Number
- Symbol
Password strength · strong
Confirm password · mismatch
Passwords don't match yet.
Turnstile · loading
Turnstile · verified
Turnstile · failed / please retry
Please complete the challenge to continue.
Submit · in flight
Button is disabled and shows a spinner until the request resolves.
Form error · invalid credentials
Signup · 409 already exists
Service · provider unavailable
Sign in · MFA required (handoff)
Gate · verify to continue