State machine
Three states, one toggle: HYDRATED earns from trading activity, TUN earns an escalating weight for staying put, and breaking tun resets your clock to zero, permanently.
Three states. One toggle. Everything else in the protocol hangs off this.
HYDRATED — default
Transferable, listable, loan-eligible, extinction-event-eligible. Accrues from the Activity pool (§5).
TUN
The specimen dehydrates and vitrifies. Soul-bound: cannot transfer, list, deposit to vault, or post as collateral. Accrues from the Cryptobiosis pool at an escalating weight based on continuous time in state:
| Continuous time in tun | Weight |
|---|---|
| 0–7 days | 1.00× |
| 7–30 days | 1.25× |
| 30–90 days | 1.60× |
| 90 days+ | 2.00× (cap) |
Weight is evaluated at distribution time from the on-chain tunSince timestamp. Breaking tun resets tunSince to zero. Permanently. No partial credit, no grandfathering, no admin override.
REHYDRATING — exit, 48 hours
Still non-transferable. Accrues zero from both pools. This is the anti-sniping valve: you cannot watch a fat epoch queue up, flip in, collect, and dump. Commitment must precede reward, structurally, not by policy.
Why this beats a paid tier
- Removes sell pressure by construction instead of taxing it after the fact.
- Costs nothing but time, so it does not filter out small holders — a 0.1 ETH specimen and a 10 ETH specimen earn the same tun weight.
- Creates an on-chain flex that cannot be bought:
TUN — DAY 094. - Compresses effective float, tightening the floor with zero buyback spend.
tunSince is a single on-chain timestamp, not a log of prior tun stretches — that is the entire mechanism behind "no partial credit." The weight table is looked up at the moment distribute() runs, using block.timestamp - tunSince for every eligible specimen in one pass, so the schedule above is not a curve to fit, it's four fixed thresholds and a cap. The 48-hour REHYDRATING window was sized to be longer than one weekly epoch's queue-and-flip window but short enough not to feel punitive for someone who genuinely needs liquidity — see §15 for whether it should accrue at a base rate instead of zero.