HANS SocietyDocs

Security

Audits #

All core contracts (HANS, UBAI, governance, staking, merge offers and payouts) have been audited in multiple rounds, including reviews by independent auditors. Findings are fixed before mainnet deployment. The test suite includes fuzzed invariants and mutation tests.

Staking v3 and the voting contracts (voting, the ballot market and the mint adapter) are not covered by the paragraph above: they had internal multi-agent audits at every build stage and no external audit. See Voting.

Contract guarantees #

  • No upgradeable contracts.
  • No admin, pause or blacklist on the tokens, staking or merge offers. Staking v3's one setting, the voting contract it uses, changes only through the governance timelock.
  • No pause, upgrade or fee on voting, the ballot market or the mint adapter. Voting's settings (who may propose, the rules for future proposals) change only through the governance timelock.
  • New supply only through the governance timelock, only to the treasury, with a public delay and a guardian veto.
  • Swapped-in merge-offer tokens are retired permanently.

Who holds which power #

RoleCanCannot
Treasury SafeHold and move treasury funds; create merge offersMint; swap into offers; change an open offer; vote or trade votes
Governance Safe (via timelock)Mint to the treasury, with or without a vote; change governance settings, after the public delay; propose merger votes and cancel them before voting opens; cancel a queued mint, including one a vote approvedAct without the delay; change a proposal or its result
Guardian SafeCancel queued governance proposals, including mints a vote approvedPropose, mint or move funds
Stakers (sHANS)Vote on merger proposals; buy and sell votes during a vote weekMint; skip the delay or the veto
Mint adapter (contract)Schedule exactly the HANS mint a passed vote approvedSchedule anything else; cancel; act on a vote that failed or expired
Distributor (hot wallet)Pay Earn bounties from its public UBAI floatMint; access the treasury
Keeper (hot wallet)Call public maintenance functions (finalize offers, weekly releases, open a week's votes, return expired offers, schedule and execute passed mints)Anything privileged

Always check the contract address in your wallet against Contracts & addresses before signing.

Esc