Ruby
CA:0xe803…5167

How Ruby works

Two mechanisms, one loop. Anyone can cut a basket into a token; only locked holders decide which baskets the protocol pays attention to.

A gem

A gem is an ERC-20 backed by a fixed basket of tokenized shares plus a reserve that holds some of the gem itself. The weights are set when it is cut and do not drift: no manager rebalances them, and changing them is a vote rather than a decision.

Minting hands the basket in and the gem out. Burning does the reverse. Between those two, trades go through the reserve, which is why a gem holds a slice of itself — without it there is nothing to trade against inside the band.

The band

Each gem carries a peg and two edges. Above the upper edge the gem is worth more than the basket behind it, so minting is profitable: someone buys the shares, mints, and sells the gem, which pushes the price back down. Below the lower edge the same trade runs backwards. Inside the band nothing is forced and the reserve takes the trade.

A wide band drifts further before anyone is paid to close it. A narrow one is corrected constantly, and every correction is a fee somebody pays. The cutter picks; the clarity grade says what the pick costs.

Clarity

A basket is only as good as the pools underneath it. Ruby grades every plan — in the cutter, while you build, and on each gem's page afterwards — from four things it can measure rather than assert:

  • Spread. How many equal holdings the weights actually behave like, not how many tickers are in the list.
  • Fill. The largest order that never asks a single pool for more than 1% of what it holds. The thinnest facet sets it, and that facet is named.
  • Venues. A facet with one pool has one place to be repriced.
  • Band and reserve. How far the gem can drift, and how much of its own backing is itself.

The grade runs FL, IF, VVS, VS, SI, I, and every point it takes off is attached to a named inclusion. It is a read on mechanics, not a prediction about prices.

veRUBY

Locking RUBY gives weight equal to the amount times the fraction of the maximum lock still to run: four years counts one, two years counts a half, and it falls every block to zero at unlock. Weight is not transferable and cannot be delegated, so it cannot be rented for the length of a vote. Unlock times round down to a Thursday 00:00 UTC boundary, which is also when the epoch turns.

Gauges

Once a week the Minter mints the budget — 240,000 RUBY to start, falling 2% every 4 weeks to a floor of 20,000 — and splits it across gauges by relative weight. Locked holders set those weights.

The same weights push caps: each gem's share of the gem-gauge weights times the total deployed cap, floored at 1% and capped at 40%, and the protocol applies the lower of that and the ceiling the Bench allows. Votes can tighten a cap. They cannot loosen one past what governance already agreed.

Two governors, two timelocks

The Bench Governor handles parameters, listings and caps: 1 d delay, 5 d vote, 4% quorum, then 48 h in the Timelock. About eight days end to end.

The Vault Governor handles one thing: replacing an implementation. 7 d vote, 8% quorum, 7 d in the UpgradeTimelock, with both floors enforced in the contract. About fifteen days, and no shorter path exists.

The Assay Office is a guardian multisig that can cancel a queued operation and pause. It cannot propose, execute, unpause or move a single token. Its only power is to stop.

Where the numbers come from

ChainRobinhood Chain · 4663
RPChttps://rpc.mainnet.chain.robinhood.com
Explorerblockscout ↗
Catalogue67 listings · $25.31M deep
Catalogue read2026-09-12 from PoolCreated events
$RUBY0xe803…5167

Prices are read from each ticker's deepest USDG pool with a slot0 call, in integers, at page load. There is no price feed, no indexer and no subgraph anywhere in this site.

Modules

Nothing here is deployed yet. Each row gets an address the day its contract exists, read from the chain.

ContractReplaceable byAddress
Cutter

Deploys a gem from a plan. The only address that can create one.

UUPS · 7 d
GaugeController

Turns locked weight into next week's emissions and each gem's cap.

UUPS · 7 d
Minter

Mints the weekly budget once per week and splits it by gauge weight.

Immutable
veRUBY

Locks. Weight decays to zero at unlock and is not transferable.

Immutable
sRUBY

Staked RUBY. Unstakes 1:1 and can be locked like RUBY.

Immutable
BenchGovernor

Parameters, listings and caps. Executes through Timelock (48 h).

Immutable
VaultGovernor

Upgrades only. Executes through UpgradeTimelock (7 d).

Immutable
Timelock

48 hours between a passed proposal and anyone executing it.

48 h
UpgradeTimelock

Seven days, and the only path to an implementation swap.

7 d
Registry

Which module version each gem runs, and what the latest one is.

UUPS · 7 d
Treasury

Protocol fees. Moves only through the Bench and its timelock.

UUPS · 7 d
Assay Office

Guardian. Can cancel a queued operation and pause. Cannot move funds.

Multisig
Preview until deployment

What can go wrong

A tokenized share is not the share: it is a token that tracks one, and it can trade away from it. A pool can be drained, and a drained pool keeps whatever price it was abandoned at — which is why the catalogue drops anything holding less than $2,000 and why clarity names the thinnest facet in your basket.

A gem can trade below its basket for as long as nobody finds it worth closing. The band decides when that stops being true, not the protocol. Tokenized shares are not available to US persons, and nothing here is investment advice.

Ready? Cut a gem — it costs nothing until the last step.