Mavna

Trust models

Who a sender trusts to deliver a transfer is a field on every route, so routes can be compared by it.

Every adapter and every route carries a trustModel. The widget shows it on each route in plain words, beside the amount and the time.

type TrustModel = "native-mint" | "validator-set" | "solver-network" | "liquidity-pool" | "dvn-stack";
Trust modelRailShown asWho you trust
native-mintCircle CCTPIssuer mint & burnthe issuer, Circle, which burns on one chain and mints on Stellar; nobody holds the money in between
validator-setAxelar ITSValidator setAxelar's named set of validators, which attests to the transfer
dvn-stackLayerZero OFTIssuer-chosen verifiersthe verifiers the token's owner chose for it; two tokens on this rail can have different verifiers
solver-networkNEAR IntentsCompeting solvers, HOT Bridge payoutthe solvers that fill the trade, NEAR Intents' settlement, and the HOT Bridge that pays out on Stellar

liquidity-pool exists in the type for rails where a pool holds both sides and swaps between them. No adapter in the repository uses it.

dvn-stack is kept apart from validator-set because the party that decides who verifies is different: the token's deployer rather than the network.