syntaqxThe code boxes sit in the middle of signing in and confirming an email, a code is sent once, and nothing says "Please fill out this field". On the sign-in's second step and email confirmation the six boxes, the recovery link, the hint and the error are centred under the heading that already says what to enter; the label is for screen readers only there. Two-factor settings keep the labelled field, aligned left. A password manager that fills the code often sends the form itself too, and with the boxes sending it at the sixth digit the same code went twice: identity takes each authenticator code once (two_factor.last_step), so the second was refused and said "That code is not right" even when the code was right. While one sending is on its way, any other is now dropped by a submit listener on the form, which runs before React Router's, and the boxes never send a code again while one is out. The boxes are no longer `required`, which drew the browser's bubble over invisible input; an empty code is refused by the server as before. A refused code still clears the boxes and focuses them, and the red goes as soon as something new is typed. Checked: apps/web tsc -b and npm test (993), and the sign-in form in headless Chrome driven over CDP with an action that counts what reaches it: a filled code, the filler's own submit, the boxes' submit and one more while it was out reached the action once; after the refusal the boxes were empty, focused and red, and one typed digit took the red away. Not tried with a real password manager.db67273History
- ..
- access.test.ts
- access.ts
- aliases.test.ts
- aliases.ts
- billing-actions.server.ts
- chart.test.ts
- chart.ts
- costs-route.server.ts
- costs.test.ts
- costs.ts
- credits.test.ts
- credits.ts
- deleted-accounts.test.ts
- deleted-accounts.ts
- deleted-workspaces.test.ts
- deleted-workspaces.ts
- forms.test.ts
- forms.ts
- guard.test.ts
- guard.ts
- incidents.test.ts
- incidents.ts
- invites.test.ts
- invites.ts
- latency.test.ts
- latency.ts
- ledgers.test.ts
- ledgers.ts
- money.test.ts
- money.ts
- nav.test.ts
- nav.ts
- postmortem.ts
- pricing.test.ts
- pricing.ts
- review.ts
- sales-actions.server.ts
- services.server.ts
- settle.ts
- signals.test.ts
- signals.ts
- staff.ts
- suspension.test.ts
- suspension.ts
- terms.test.ts
- terms.ts
- test-detach.server.ts
- test-detach.test.ts
- test-detach.ts
- theme.test.ts
- theme.ts
- time.test.ts
- time.ts
- workspaces.test.ts
- workspaces.ts