CA at launch

Contracts

Four contracts on Robinhood Chain. They are new. No owner, no admin, no pause, no upgrade, no sweep and no fee in any of them.

ContractAddressDoes
LockerTimeChestNot deployed yetVesting streams and fixed-date locks. Holds deposits until the rules release them.
LockerDropTreeNot deployed yetMerkle airdrops. Holds a drop's deposit until it is claimed, or reclaimed after the stated end.
LockerBulkRouteNot deployed yetBulk sends. Holds nothing: tokens go straight from the sender to each recipient.
LockerStakeYardNot deployed yetTeam-funded staking pools. Holds stakes and unspent budgets.

What the code guarantees

  • A balance moves only for the party the rules name: recipient, lock owner, claimant, staker, or sender and funder where stated.
  • What is credited is what actually arrived: at deposit, a token that delivers less than asked is refused. A tax switched on later is not stopped.
  • Every entry point is guarded against reentry, and state changes before tokens move.
  • Each token, stream and drop is accounted apart. A hostile token can only misbehave with itself.

What it cannot do

  • It cannot stop a token issuer from blocking an address, pausing a token or burning a balance.
  • It cannot see an airdrop list, so a sender's own row looks like any other.
  • It cannot rescue anything. See the risks.

Check a deployment yourself

cd contracts && ./setup.sh && forge test
forge build --force && cd .. && npm run contracts:artifacts -- --check
npm run verify-deployment -- --chest <address> --chest-tx <creation tx> ...

The script compares the code at each address, byte for byte, with this build. The list in a machine-readable form is at /contracts.json.