Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Email normalization

SourceOrigin normalizes an email by NFC-normalizing its local and domain components and lowercasing the domain only. The local part is otherwise preserved exactly: SourceOrigin does not strip + suffixes, remove dots, or apply provider-specific equivalence. Email is an optional verified contact attribute, never an account identifier; UserId is the downstream identity reference. The policy is sourceorigin_common::email::NormalizedEmail.

Only the hourly limit on verification emails to one address folds further: it counts an address by its mailbox(), the local part lowercased and without its + tag, so case and tag variants of one mailbox share a budget. That fold never decides equality or ownership.