Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Setra Registry

Canonical asset registry for tokenized securities on Robinhood Chain.

Overview

The Setra Registry is the authoritative on-chain registry for all tokenized equity (sEquity) tokens deployed on Robinhood Chain. Every tokenized security must be registered here before it can participate in the Setra settlement protocol.

Key Features

  • UUPS Upgradeable — Future-proof architecture with owner-controlled upgrades
  • Authorized Issuers — Only whitelisted issuers can register new assets
  • Registration Fees — Configurable fee for asset registration (anti-spam)
  • ISIN/CUSIP Identifiers — Full support for international securities identification
  • Pagination — Gas-efficient paginated queries for large registries
  • Reverse Lookups — Token address → ISIN and ISIN → token address mappings
  • Batch Queries — Check registration status of multiple ISINs in a single call

Architecture

┌──────────────────┐
│  RegistryProxy   │ ← ERC1967 Proxy (immutable address)
│  (ERC1967)       │
└────────┬─────────┘
         │ delegatecall
         ▼
┌──────────────────┐
│  RegistryV2      │ ← Current implementation
│  (UUPS)          │
├──────────────────┤
│  RegistryStorage │ ← Shared storage layout
├──────────────────┤
│  IRegistry       │ ← Interface
└──────────────────┘

Quick Start

# Install dependencies
forge install

# Build
forge build

# Run tests
forge test -vvv

# Deploy (set env vars first)
forge script script/DeployRegistry.s.sol --rpc-url $RPC_URL --broadcast

# Upgrade to V2
forge script script/UpgradeToV2.s.sol --rpc-url $RPC_URL --broadcast

Environment Variables

DEPLOYER_PRIVATE_KEY=     # Deployer private key
ROBINHOOD_RPC_URL=        # Robinhood Chain RPC endpoint
REGISTRY_PROXY=           # Proxy address (for upgrades)
ETHERSCAN_API_KEY=        # For contract verification

Contract Addresses

Contract Address Network
RegistryProxy TBD Robinhood Chain
RegistryV2 (impl) TBD Robinhood Chain
RegistryStorage (inherited)

V2 Features

  • Paginated asset queries (getAssetsPaginated, getActiveAssetsPaginated)
  • Batch registration checks (batchIsRegistered)
  • Duplicate token address prevention
  • Custom errors throughout (no string reverts)
  • Reinitializer pattern for safe upgrades

Security

  • Only the contract owner can authorize/deauthorize issuers
  • Only the contract owner can upgrade the implementation
  • Only the contract owner can deactivate/reactivate assets
  • ISIN validation enforces 12-character format
  • Registration requires payment of the configured fee

License

BUSL-1.1

About

Canonical asset registry for sEquity tokens - on-chain master list of tokenized securities

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages