pub fn validate_pin(pin: &str) -> Result<(), String>
A PIN must be 4–8 digits. Rejecting non-digits here rather than in the pad keeps the rule where the rule is enforced.
TRACES: UR-083 | DR-268