fn add_voter(
env: soroban_sdk::Env,
voter: soroban_sdk::Address,
) -> Result<(), UpgradeError>
Cast a vote for the currently active proposal.
Auth:
Effects:
fn cast_vote(
env: soroban_sdk::Env,
voter: soroban_sdk::Address,
wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), UpgradeError>
Return the current admin address.
Notes:
fn get_admin(env: soroban_sdk::Env) -> Option
Return the configured registry contract address.
Notes:
fn get_registry(env: soroban_sdk::Env) -> Option
fn remove_voter(
env: soroban_sdk::Env,
voter: soroban_sdk::Address,
) -> Result<(), UpgradeError>
Update the factory admin address.
Auth:
Effects:
fn update_admin(env: soroban_sdk::Env, new_admin: soroban_sdk::Address)
Initialize the factory and its core dependencies.
Auth:
Effects:
Notes:
fn __constructor(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
registry: soroban_sdk::Address,
social_router: soroban_sdk::Address,
fee_manager: soroban_sdk::Address,
rpid: soroban_sdk::String,
wasm: soroban_sdk::BytesN<32>,
) -> Result<(), UpgradeError>
Execute a passed upgrade proposal.
Auth:
Effects:
fn apply_upgrade(
env: soroban_sdk::Env,
) -> Result, UpgradeError>
Deploy and initialize a new wallet instance.
Verifies:
Effects:
fn create_wallet(
env: soroban_sdk::Env,
passkey: soroban_sdk::BytesN<65>,
passkey_sig: PasskeySignature,
bls_keys_pop: soroban_sdk::Vec,
nonce: soroban_sdk::BytesN<32>,
network: soroban_sdk::Symbol,
external_wallet: Option,
) -> Result
Cancel the currently active proposal.
Auth:
Effects:
fn cancel_proposal(env: soroban_sdk::Env) -> Result<(), UpgradeError>
Return the configured fee manager contract address.
Notes:
fn get_fee_manager(env: soroban_sdk::Env) -> Option
Create a new upgrade proposal.
Auth:
Effects:
fn propose_upgrade(
env: soroban_sdk::Env,
proposal_type: soroban_sdk::String,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), UpgradeError>
Update the registry dependency used by the factory.
Auth:
Effects:
fn update_registry(env: soroban_sdk::Env, registry: soroban_sdk::Address)
Returns the deterministic wallet-creation proof challenge.
The challenge is derived from the configured RP ID hash, network, and nonce. It is used off-chain by the passkey and BLS signers so all parties sign the same wallet-creation intent.
fn get_pop_challenge(
env: soroban_sdk::Env,
nonce: soroban_sdk::BytesN<32>,
network: soroban_sdk::Symbol,
) -> Result, WalletError>
Update the fee manager dependency used by the factory.
Auth:
Effects:
fn update_fee_manager(env: soroban_sdk::Env, fee_manager: soroban_sdk::Address)
Return the currently approved wallet version hash.
Notes:
fn get_wallet_wasm_hash(env: soroban_sdk::Env) -> Option>
Update the social router dependency used by the factory.
Auth:
Effects:
fn update_social_router(env: soroban_sdk::Env, social_router: soroban_sdk::Address)
Returns the currently configured protocol dependency contracts.
SECURITY:
Returns:
fn get_protocol_dependencies(
env: soroban_sdk::Env,
) -> Result