- new app_otp_cache table + OtpCache entity (ResourceEnum::OtpCache) - PostgresOtpRepository upsert/find/delete keyed by email - register/resend persist otp_hash+expiry after email sent (no orphan OTP) - verify_email validates via OtpManager::validate_otp_hash, single-use delete - 8 unit tests pass, e2e verified: wrong OTP 400, correct OTP 200
5 lines
105 B
Rust
5 lines
105 B
Rust
pub mod http;
|
|
pub mod persistence;
|
|
|
|
pub use persistence::postgres_otp_repository::PostgresOtpRepository;
|