fn admin(env: soroban_sdk::Env) -> soroban_sdk::Address
fn writer(env: soroban_sdk::Env) -> soroban_sdk::Address
fn get_lot(env: soroban_sdk::Env, lot_id: soroban_sdk::BytesN<32>) -> Option
Marca recall/descarte no ledger (0=ativo,1=recall,2=descartado).
fn set_status(env: soroban_sdk::Env, lot_id: soroban_sdk::BytesN<32>, status: u32)
Rotaciona a conta de plataforma custodial (admin-only).
fn set_writer(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
writer: soroban_sdk::Address,
)
Anexa um evento: recomputa o head ENCADEADO no contrato e incrementa count.
Retorna o novo head. É isto que torna omissão/reordenação detectáveis on-chain.
fn append_event(
env: soroban_sdk::Env,
lot_id: soroban_sdk::BytesN<32>,
payload_hash: soroban_sdk::BytesN<32>,
) -> soroban_sdk::BytesN<32>
Cria o lote: head = origin_hash, count = 1, status = ativo. Append-only
(guarda LotExists). Autoriza pelo Writer (custodial) ou pelo owner (auto-custódia).
fn register_lot(
env: soroban_sdk::Env,
lot_id: soroban_sdk::BytesN<32>,
assoc: soroban_sdk::BytesN<32>,
origin_hash: soroban_sdk::BytesN<32>,
)
Bootstrap: define admin (governança) e writer (conta de plataforma custodial).
fn __constructor(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
writer: soroban_sdk::Address,
)
fn get_association(
env: soroban_sdk::Env,
id: soroban_sdk::BytesN<32>,
) -> Option
Liga um owner (chave da própria associação) — migração p/ auto-custódia.
Exige aprovação do admin E prova de posse da chave pelo owner. Uma vez só.
fn claim_association(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
id: soroban_sdk::BytesN<32>,
owner: soroban_sdk::Address,
)
Registra uma associação verificada (admin-only). meta_hash = commit do cadastro.
fn register_association(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
id: soroban_sdk::BytesN<32>,
meta_hash: soroban_sdk::BytesN<32>,
)
Suspende/reativa uma associação (admin-only). Suspensa ⇒ não aceita novos lotes.
fn set_association_active(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
id: soroban_sdk::BytesN<32>,
active: bool,
)