Skip to content

Elysium testnet. Tokens have no value.

DanakeDanake
Safety

Why it cannot be farmed

A Fare pays only for a loss proven from history before the Fare existed, burned once, by the wallet that bought; each known farming strategy hits one of those rules.

The attacks#

AttackWhy it fails
Buy the dead token after the Fare is announcedThe snapshot must be in the past when the Fare opens (SnapshotNotPast). Buys after the snapshot are not in the Roll. A dead token bought cheap is also worth about what was paid, so there is no loss.
Receive a bag by transferTokens received by transfer cost zero in the Roll. A gifted bag has no proven loss. Moving a bag between your own wallets moves the tokens but not the loss: the sender's cost falls in proportion, the receiver's stays at zero.
Sell, then claimSelling is an outflow: the cost basis falls in proportion to what was sold, and the HYPE received is no longer counted as lost. To cross you must also burn the tokens, so you cannot sell them and burn them. With the Stay clause, selling the payout ends the stream.
Claim twiceOne crossing per wallet per Fare (AlreadyCrossed). Across Fares on the same token, lossUsedAt lets a loss count again only in a Fare whose snapshot is later than the crossing, and that later Roll already reflects the burn (LossAlreadyUsed).
Sniper with a cheap, large bagPayment is by proven loss, not balance. A sniper who paid 0.3 HYPE for a bag worth 0.42 HYPE has a loss of zero and gets nothing, however large the bag.
Wash-trade a fake loss between two walletsPartly mitigated, not prevented. See below.

Wash-trading: the honest part#

On a bonding curve, one person controlling two wallets can create a loss on paper. Wallet A pumps the price, wallet B buys high, then A sells into B's demand. B now holds a bag bought at a high price and worth little. B's loss is real on-chain, but the HYPE went to A, so the person lost almost nothing overall.

Three rules reduce this. None eliminates it.

  • Snapshot in the past. The fake loss must be built before the Fare's snapshot, so before anyone knows which token a payer will target and when. Farming every dead token in advance costs fees and slippage on every one.
  • Per-wallet cap. maxLossPerWallet limits what one wallet can claim. Splitting a fake loss across many wallets multiplies the setup cost.
  • Minimum purchase age. With minAge in the rollURI, buys made shortly before the snapshot cost zero. A wash-trade must be set up well in advance, while the token still trades.

A payer can also look at the Roll before opening: the app and the CLI list every wallet, what it paid and what it holds. A cluster of wallets that bought in the same blocks from the same source is visible.

Limit

A patient attacker who wash-trades a token early, waits, and spreads the loss under the cap can still collect from a Fare on that token. The rules make this cost time and HYPE; they do not make it impossible.