An easy-to-host PDS on the ATProtocol, iPhone and MacOS. Maintain control of your keys and data, always.
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat(identity-wallet): add claim_state to AppState

- Add claim_state field to AppState using tokio::sync::Mutex<Option<ClaimState>>
- Initialize claim_state in AppState::new() to None
- tokio::sync::Mutex allows holding lock across .await points (necessary for async claim commands)
- claim_state is set by resolve_identity and used by subsequent claim flow commands
- Verified: cargo check passes without errors

authored by

Malpercio and committed by
Tangled
97811e0d 98ade832

+6
+6
apps/identity-wallet/src-tauri/src/oauth.rs
··· 31 31 /// PDS client for discovery and XRPC operations against arbitrary PDS endpoints. 32 32 /// Stateless and cheap to construct; available to Phase 4 Tauri commands. 33 33 pds_client: crate::pds_client::PdsClient, 34 + /// Claim flow state persisted across multi-step claim commands. 35 + /// Set by `resolve_identity`; used by subsequent `start_pds_auth`, 36 + /// `request_claim_verification`, `sign_and_verify_claim`, `submit_claim`. 37 + /// Uses tokio::sync::Mutex because claim commands hold the lock across .await points. 38 + pub claim_state: tokio::sync::Mutex<Option<crate::claim::ClaimState>>, 34 39 } 35 40 36 41 impl AppState { ··· 40 45 oauth_session: Mutex::new(None), 41 46 relay_client: OnceLock::new(), 42 47 pds_client: crate::pds_client::PdsClient::new(), 48 + claim_state: tokio::sync::Mutex::new(None), 43 49 } 44 50 } 45 51