//! Public-safe and internal error types (RFC-012/021).
use Error;
/// The single public authentication failure response (INV-8, RFC-012 §14.3).
///
/// All internal failure states — not found, expired, revoked, already used,
/// purpose mismatch, binding mismatch, scope mismatch — collapse to
/// `InvalidOrExpiredCode`. This prevents enumeration attacks by ensuring the
/// caller cannot distinguish record existence from expiry from prior use.
/// Internal store failure, not for public display.