Trust Tiers
HIGH / MEDIUM / LOW
Trust scores are a 0-100 integer on chain. The tier mapping is fixed in the contract — the score determines the tier, the tier determines how a claim routes.
Tier mapping
Classification happens in TrustScoring.getTier(agent). The thresholds are hard-coded and cannot be changed without a contract redeploy — this is deliberate, so depositors can rely on the semantic meaning of a tier across time.
Routing
Instant transfer
Delay
None
Demo cap
$1,000 / tx
Immediate USDC transfer on claim. Reserved for agents with established track records.
Routing
24-hour time-lock
Delay
86,400 s
Demo cap
$100 / tx
Claim recorded with releaseTime = now + 24h. Depositor can cancel before release. Agent claims via release(claimId) after the window.
Routing
Escrow
Delay
Awaits approval
Demo cap
$10 / tx
Funds held until the depositor explicitly calls approveEscrow(claimId). Default for newly registered agents. Cancellation is always available.
Scoring inputs
The reference scoring oracle combines three signals before writing a score on chain: direct depositor attestations (explicit rate-ups and rate-downs), derived activity signals (successful vs cancelled claims), and external reputation sources where available. The algorithm itself is off-chain in this build — only the final integer score is posted.
FHE variant
On Zama-compatible chains, TrustScoring.sol stores scores as euint8 and exposes tier lookups through encrypted comparisons. Arc Testnet lacks the Zama coprocessor, so deployment on Arc uses TrustScoringPlaintext.sol — same interface, plaintext storage.