Public Registry
Rules
The public registry tells the transparency API which live contracts to read for each public network. Without a correct registry, the site may still render, but it must not be marketed as live production transparency.
01 Purpose
The registry is the bridge between the read-only public API and the actual contract addresses deployed on each supported network. It also lists the remote domains that should be consulted when aggregating supply.
/domainsdoes not require the registry./supply,/reserves,/proof, and/statusdo require it.- When the registry is absent, the API returns
503rather than fabricated default data.
02 File Shape
{
"networks": [
{
"network": "ethereum-mainnet",
"rpc_url": "https://ethereum-rpc.publicnode.com",
"token": "0x0000000000000000000000000000000000001000",
"reserve_oracle": "0x0000000000000000000000000000000000001001",
"global_supply_controller": "0x0000000000000000000000000000000000001002",
"mint_burn_controller": "0x0000000000000000000000000000000000001003",
"observer_start_block": 0,
"remote_domains": [2, 3, 4, 5],
"rpc_timeout_seconds": 10.0
}
]
}
| Field | Purpose |
|---|---|
| network | Phase 1 network key used by the public aggregator. |
| rpc_url | JSON-RPC endpoint for live reads. |
| token | USDX token contract address. |
| reserve_oracle | USDX reserve oracle contract address. |
| global_supply_controller | USDX global supply controller address. |
| mint_burn_controller | Optional pause signal for status derivation. |
| remote_domains | Domain IDs that should be queried as remote supply sources. |
03 Phase 1 Scope
The Phase 1 public registry covers all 11 EVM networks: Ethereum, Arbitrum One,
Polygon PoS, BNB Smart Chain, Base, Optimism, Celo, Avalanche C-Chain, Scroll,
Linea, and Unichain. Each network entry has a canonical domain_id
(1–11), a real deployed contract address for each of the six core contracts, an
RPC endpoint, and a remote domain list.
The example registry ships with placeholder contract addresses. It must be populated with real deployed addresses before the transparency hub can be published as a production surface. All 11 networks must pass the RPC smoke matrix before launch.
04 Publishing Rules
- Do not publish the transparency hub as production if the registry contains placeholder addresses.
- Do not suppress
onchain_partial, stale reserves, or read failures in the UI. - Do not hide
issuesreturned by the public API. - Do not invent reserve breakdown amounts when the API still returns
null.
05 Launch Checklist
- Populate the registry with real deployed contract addresses for all intended public networks.
- Run the live RPC smoke matrix before public launch.
- Verify
/supply,/reserves,/proof, and/statusmanually. - Exercise yellow and red dashboard states before launch.
- Confirm that no placeholder or mock value can be mistaken for production data.