Skip to content

Repository files navigation

XRT Claim Contracts

Solidity contracts for the XRT migration claim, built with Foundry.

Agreement.sol lets holders listed in the migration snapshot choose what happens to their balance. Eligibility is proven with a Merkle proof against a snapshot root fixed at deployment, and each address can act exactly once:

Call Effect
agree(proof, amount) Holder accepts the migration and receives their amount plus a 20% bonus
disagree(proof, amount) Holder declines; the amount goes to the payback address (the Robonomics DAO multisig)

transferOwned is a rescue function for tokens sent to the contract by mistake, callable only by the payback address.

Related: the snapshot and address lookup tool lives in XRT-snapshot-Feb26-exploit, and the XCM bridge UI in xrt-token-bridge.

License

Apache-2.0 — see LICENSE.

Usage

Build

$ forge build

Test

$ forge test

Format

$ forge fmt

Gas Snapshots

$ forge snapshot

Anvil

$ anvil

Deploy

$ forge script script/Deploy.s.sol --rpc-url <your_rpc_url> --private-key <your_private_key>

Cast

$ cast <subcommand>

Help

$ forge --help
$ anvil --help
$ cast --help

About

Solidity contracts for the XRT migration claim — Merkle-proof agree/disagree flow for snapshot holders (Foundry)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages