Skip to main content

Architecture

Investors Center is a single deployment on Robinhood Chain: one token, one treasury, one governing body. This page is the high-level map. For what each contract is, see Contracts.

Identity

INVESTThe native token. 9 decimals. Minted only by the Treasury against reserves, and carries a 500 bps trading tax on the protocol's pool.
SHARESStaked INVEST. Rebasing — the balance grows each epoch.
gINVESTGovernance INVEST. Non-rebasing, and the only voting token.
The BoardroomThe governing body: an on-chain Governor plus a Timelock, voting on gINVEST.

The protocol runs on Robinhood Chain — chain ID 4663, mainnet only — an Arbitrum Orbit L2 that settles to Ethereum. See Robinhood Chain facts.

Everything is timed in seconds, not blocks

On Arbitrum Orbit, block.number reports an estimate of the L1 block number rather than the L2 one. Anything counting in blocks would have windows that jump unpredictably, so all timing — governance included — runs on timestamps. This is a correctness requirement of the chain, not a stylistic choice.

The subsystems

Five, and they meet at the Treasury.

The Treasury holds every reserve, marks them in USD, and is the only contract that can mint INVEST. Its backing target is 1 INVEST = $1.

Staking takes INVEST and issues SHARES or gINVEST, and distributes emissions once per epoch. See How to stake.

Bonds sell INVEST at a discount for reserve assets, with payouts vesting over a term. This is the mechanism that grows backing on purpose rather than as a side effect. See How to bond.

The fee flywheel taxes trading on the protocol-owned pool, converts the proceeds, and buys a governed basket of reserves with them. See The fee flywheel.

Governance owns all of it. The Timelock is the Treasury's authority and calls every privileged function directly — there is no admin key that can move funds. See How governance works.

Two smaller pieces sit at the edges: a reserve lister, a narrowly scoped delegate that lets an operator switch on assets governance has already vetted (see Reserves and listing), and a games lane that draws a bounded bankroll from the Treasury (see Treasury games).

Backing

excess reserves = total reserves − circulating supply (never below zero)

One INVEST is mintable per $1 of value above what already backs the supply. Both paths that create new INVEST — bond payouts and staking emissions — draw on that same gate.

Every reserve is valued live through a vetted price feed and discounted by a per-asset haircut before it counts, and the protocol never counts its own INVEST as backing. The mechanics are in Reserves and listing; the short version is that the Treasury prefers to understate what it owns, and the guards fail in that direction.

Parameters at launch

Trading tax500 bps, immutable — there is no setter and no disable path
Team share of the tax400 bps of the 500 at launch, decaying linearly to zero over 30 days
Epoch length8 hours
Reward rate2,000 ppm of supply per epoch
Warm-up periodnone at launch
Bond vesting5 days
Bond price floora bond can never sell INVEST below the greater of 1.1× backing and $0.90
Voting delay / period6 hours / 48 hours
Timelock delay24 hours
Quorum10% of eligible gINVEST
Registered reserves43

Everything above except the tax rate is movable by governance, within bounds fixed at deployment.

Deployment status

Nothing is deployed. Investors Center has not launched on Robinhood Chain, so this documentation carries no protocol addresses. The chain-level constants it builds on — USDG, WETH and the canonical Uniswap deployments — are real and listed in Contracts.

Two things are deliberately left unwired at launch and become the first governance proposals after it: the bond price band, whose reference would otherwise be a TWAP of a pool with no history, and the staking hook that keeps the tax oracle sampled, which needs the pool to exist first.