Maps trust scores to privacy tiers, fees, and settlement targets.
Based on the Xochi whitepaper Glass Cube model. Higher trust scores unlock deeper privacy at lower fees. Users can always opt into less privacy than their score allows.
Tiers
| Score | Tier | Fee (bps) | Settlement |
|---|---|---|---|
| -- | Open | -2 | public |
| -- | Public | 0 | public |
| 0-24 | Standard | 30 | public |
| 25-49 | Stealth | 25 | stealth |
| 50-74 | Private | 20 | shielded |
| 75+ | Sovereign | 15 | shielded |
Summary
Functions
List all tiers in ascending privacy order.
Required attestation proof types for a given tier.
Determine privacy tier from a trust score.
Get tier info for a named tier.
Check if a settlement type requires PXE bridge.
Types
@type settlement() :: :public | :stealth | :shielded
@type t() :: %{ tier: tier(), fee_bps: integer(), settlement: settlement(), data_retention: :full_analytics | :full | :amounts | :ranges | :wallet | :nothing }
@type tier() :: :open | :public | :standard | :stealth | :private | :sovereign
Functions
@spec all() :: [t()]
List all tiers in ascending privacy order.
Required attestation proof types for a given tier.
@spec from_trust_score( non_neg_integer() | nil, keyword() ) :: t()
Determine privacy tier from a trust score.
Options
:tier_override-- force a specific tier (user opts into less privacy)
Get tier info for a named tier.
Check if a settlement type requires PXE bridge.