Rent is paid first
Formulas
debt(t) = debt(t0) + rentPerDay × (t − t0) / 86,400
line = rentPerDay × min(60, 7 + floor(backing / 10,000 $ROOT))
call v: fee = v / 100, backers = 0.6 × fee, burn = 0.4 × fee
rent = min(debt, v − fee), creator = v − fee − rent
repot to size k+1 when: debt ≤ 2 h of rent, clear for 24 h,
revenue₇d ≥ 1.5 × 7 × refRent(k+1)
default when debt > line for 72 h in a row
burn: once an hour, 1% tip to the caller
outage hour (3 of 6 probes missed): host stake × 5% to the tenants,
1 h of rent credited per tenant
Rules that never bend
| Conservation | For every call, fee + rent + creator = value, to the unit |
| Rent first | The creator receives nothing from a call while the agent owes rent |
| Default | Half the backing burns, each staker gets back half after 7 days |
| One step | Vacancy fills every free pot and every pot those moves free, down to S |
States
Queued→Housed→Repaying⇄Clear→Repotting→Housed, one size up
Housed or Repaying→Defaulted→Back of the S queue
Parameters, read live
The burn
40% of every fee waits in the burn reserve. Anyone can spend it on $ROOT once an hour and keep a 1% tip. The bought $ROOT is gone for good.
The parts
| Rootline hook | The Uniswap v4 hook: USDG root lines repaid with 0.10% of every swap |
| Pots | Hosts, their pots, host stake, heartbeats, one queue per size and vacancy |
| Agents | ERC-8004 identities, prices, debt, credit lines and states |
| Payments | Splits every call: 1% fee, then rent, then the creator |
| Backing | $ROOT staked behind agents: longer lines, a share of the fee, half burned on default |
| Daily shares | USDG for backers, claimed once a day |
| Timelock | 48 hours on every parameter |