fn upgrade(env: soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>)
Get contract version. SECURITY: Also acts as a keep-alive for all governance keys (including Paused). This is unauthenticated, so anyone can call it to prevent TTL expiry while paused.
fn version(env: soroban_sdk::Env) -> u32
Register a new entry in the registry
fn register(
env: soroban_sdk::Env,
platform_data: CreatePlatformData,
) -> (u128, soroban_sdk::Address)
Get an entry from the registry (read-only)
fn get_entry(env: soroban_sdk::Env, id: u128) -> Platform
fn get_config(env: soroban_sdk::Env) -> EbioroFeeConfig
Pause/unpause the contract (owner only). SECURITY: Does NOT call ensure_not_paused, so owner can call set_paused(true) while paused to keep governance TTLs alive. Together with version(), prevents silent unpause.
fn set_paused(env: soroban_sdk::Env, paused: bool)
Constructor — runs only once (guaranteed by Stellar) No IsInit guard needed — __constructor cannot be called again after deploy
fn __constructor(
env: soroban_sdk::Env,
ebioro_config: EbioroFeeConfig,
escrow_wasm_hash: soroban_sdk::BytesN<32>,
)
Remove a platform from the registry
fn remove_platform(env: soroban_sdk::Env, platform_id: u128)
fn get_escrow_wasm_hash(env: soroban_sdk::Env) -> soroban_sdk::BytesN<32>
fn set_escrow_wasm_hash(env: soroban_sdk::Env, wasm_hash: soroban_sdk::BytesN<32>)
Update the Ebioro fee configuration in the registry.
This only persists the config locally. Use push_ebioro_config_to_escrows
to propagate the updated config to platform escrows in bounded batches.
fn update_ebioro_config(
env: soroban_sdk::Env,
fee_wallet: Option,
fee_bps: Option,
)
Push the current Ebioro config to a bounded range of platform escrows.
start_id and end_id are inclusive. The range is capped at MAX_PUSH_BATCH_SIZE
to stay within Soroban transaction budget. Call repeatedly with successive
ranges to update all platforms (e.g., 1–50, 51–100, …).
fn push_ebioro_config_to_escrows(env: soroban_sdk::Env, start_id: u128, end_id: u128)