Skip to main content

## save_pin_state

# Function save_pin_state

Source

    pub async fn save_pin_state(
        db: &Arc<RusqliteService>,
        user_id: &str,
        state: &PinState,
    ) -> Result<(), String>

Expand description

Persist the counter state produced by `super::pin::evaluate`.

This is what makes a lockout survive a restart: the deadline is on disk, not in a process-lifetime counter that closing the app would clear.

TRACES: UR-083 | DR-268