Treasury
The treasury holds the protocol's assets and is the only contract permitted to mint ARW.
Address: 0x44cf190737aC4bd23191a971F05258a4174b9706
What it does
- Holds reserves. Assets acquired through bonding stay here.
- Values them. Each accepted reserve token is converted to a common nine-decimal accounting unit.
- Mints against them. ARW is minted only when backing exists for it.
- Tracks total reserves.
totalReservesis the running total of that valuation and is the number the dashboard displays.
The current reserve token is USDG, a six-decimal token. The treasury values a
reserve at amount * 1e9 / 10^decimals, so one USDG counts as one unit of
backing.
Treasury reserves and ARW supply are both currently zero. Bonding has not moved any assets into the treasury yet.
Permissions
The treasury is not open to the public. Every sensitive action is gated on a role that governance grants per address:
| Permission | Allows |
| --- | --- |
| RESERVEDEPOSITOR | Deposit a reserve and mint ARW against it |
| RESERVESPENDER | Withdraw a reserve from the treasury |
| RESERVETOKEN | Marks a token as counting toward backing |
| LIQUIDITYDEPOSITOR / LIQUIDITYTOKEN | The same, for LP positions |
| REWARDMANAGER | Mint ARW without a matching deposit — used by the distributor |
The bond depository holds depositor rights; that is how bonding mints. The distributor holds reward-manager rights; that is how rebases are funded.
Note that REWARDMANAGER mints ARW without adding backing. That is the
mechanism behind staking rewards, and it is why rebases dilute backing per token
rather than creating value from nothing.
Redeeming ARW
withdraw is restricted to RESERVESPENDER, which makes it an administrative
function rather than something a holder can call. To give holders a direct exit,
ArrowDAO adds a contract Olympus did not have: the Redeemer.
Address: 0xd6fDDaB1D404000445E9C6122f542Cf07c6b2cD0
The redeemer holds the spender permission itself and exposes it to anyone, on terms that cannot drain the treasury: every unit of reserve that leaves is matched by an equal value of ARW burned from the caller.
Redeeming n ARW:
- pulls
nARW from you into the redeemer - approves the treasury to burn exactly that amount
- the treasury burns it and releases the matching reserve
- the reserve is forwarded to your chosen recipient
Because ARW has 9 decimals and USDG has 6, the fixed ratio between them is
1000 — burning 1 ARW returns 1 USDG.
The redeemer is currently unpaused. Governance can pause it, and can sweep any tokens sent to the contract directly, since it is not designed to hold a balance between calls.
Redemption is available on the Redeem page.
What backing does and does not guarantee
Backing per token is a floor on what the protocol holds, not a floor on market price. ARW can trade below backing. The redeemer narrows that gap by giving anyone a way to convert ARW into reserves at the treasury's own valuation, but it depends on the treasury actually holding reserves to release — which, at present, it does not.
ArrowDAO