Esta página foi traduzida automaticamente. O original em inglês é a versão canônica. Ler em inglês →
Pular para o conteúdo principal

Contratos

Mainnet Alpha

Estes são os endereços atuais dos contratos da Hypercall Mainnet Alpha. O escopo do lançamento é intencionalmente restrito enquanto a plataforma se expande.

Os componentes on-chain da Hypercall estão implantados na HyperEVM (chain ID 999). Cada usuário recebe um contrato Account. O Exchange mantém o USDC da plataforma e a custódia das opções, e executa diretivas assinadas contra as Accounts. O Factory cria as Accounts. O Option Registry implanta e reconhece os tokens de opção.

Responsabilidades dos Contratos​

Exchange​

Proxy atualizável. Versão 0.6.1 na mainnet.

  • Mantém o USDC depositado na HyperCore em nome da plataforma (depositUsdcFor, depositPmLiquidityFor).
  • Queima os ERC20s de opção no depósito e emite Deposit para que o engine credite o valor (depositOption).
  • Registra as Accounts criadas pelo Factory e rastreia o manager de cada Account (getAccounts, getAccount, managers).
  • Executa diretivas assinadas. executeUserDirective encaminha à Account uma diretiva assinada pelo manager ou por uma API wallet. executeRsmDirective executa uma diretiva de sistema assinada pelo RSM (créditos, saques, estado de liquidação). Ambas só podem ser chamadas pelo sequencer da Hypercall: os usuários assinam e a Hypercall submete.
  • Rastreia os nonces usados por signatário (isNonceUsed).

Account​

Uma por usuário, implantada como BeaconProxy. Versão 0.2.4 na mainnet.

  • Detém os saldos e posições do usuário na HyperCore. Perpétuos e spot ficam no ledger da Account na HyperCore.
  • Tem um manager (a EOA que a criou) e qualquer número de API wallets nomeadas.
  • Verifica as assinaturas das diretivas. API wallets podem assinar ordens e cancelamentos; todo o resto exige o manager. Veja Assinatura EIP-712.
  • Chamadas diretas exclusivas do manager: transferTo(recipient, token, amount) move tokens da HyperEVM para fora da Account, e approveZeroFeeBuilder(builder) aprova um builder da Hyperliquid com taxa máxima de 0%. As ordens de perpétuos da Hypercall carregam o builder code da Hypercall, então essa aprovação é necessária uma vez antes da primeira ordem de perpétuo.
  • depositSpot faz a ponte de HYPE ou de um token spot suportado da HyperEVM para a Account na HyperCore.

Factory​

Cria Accounts com createAccount(uint96 salt). O endereço é determinístico por manager e salt; predictAccount(manager, salt) o retorna antes da criação. Veja Onboarding.

Router​

Auxiliar de depósitos. deposit(account, token, amount, isPerp) encaminha USDC para a HyperCore pela CoreDepositWallet da Circle, tokens spot pela Account e tokens de opção pelo Exchange. depositHype(account) faz a ponte de HYPE nativo.

Option Registry​

Implanta os ERC20s de opção e é a fonte de verdade sobre se um token é uma opção suportada (isSupportedOption).

Tipos de Diretiva​

DiretivaSignatárioDescrição
hl_limit_orderAPI walletOrdem limitada na Hyperliquid
hl_cancel_by_oidAPI walletCancelamento por ID de ordem da Hyperliquid
hl_cancel_by_cloidAPI walletCancelamento por ID de ordem do cliente
hc_update_api_walletManagerAdiciona, substitui ou remove uma API wallet nomeada na Account
hl_add_api_walletManagerAprova uma API wallet da Hyperliquid para a Account na HyperCore
hl_send_assetManagerEnvia ativos da Account na HyperCore
hl_set_abstractionManagerDefine o modo de conta da Account na HyperCore (somente unified)

As diretivas RSM (créditos, saques, início e fim de liquidação, ordens de recuperação reduce-only) são assinadas pelo signatário RSM e submetidas pelo sequencer. Os usuários nunca as assinam. Veja Diretivas RSM.

Liquidação​

A liquidação é executada no engine da Hypercall. Veja Liquidação. O Exchange tem hooks para que um contrato de leilão on-chain transfira o manager de uma Account para o licitante vencedor, mas nenhum leiloeiro está configurado na mainnet.

Confiança e Permissões​

Esta seção é a referência de quem pode fazer o quê on-chain. Para a versão curta, veja Modelo de confiança.

Submissão​

Apenas o sequencer da Hypercall tem o SEQUENCER_ROLE na Exchange, então ele é o único que chama executeUserDirective e executeRsmDirective. Você assina; a Hypercall submete. O sequencer não consegue forjar uma diretiva de usuário: a Account recupera o signatário por conta própria e aceita apenas o seu manager ou uma API wallet ativa.

Diretivas RSM​

Quando o estado do engine exige uma ação on-chain, o signatário RSM assina uma diretiva e o sequencer a submete. A Exchange rejeita qualquer diretiva RSM que não seja assinada pelo signatário RSM registrado (Exchange.rsmSigner). O signatário RSM atual é controlado pelo operador; o roadmap vai publicar como esse papel será descentralizado ou terá a necessidade de confiança reduzida de outra forma.

Diretivas que a própria Exchange executa:

  • Envios de USDC ou tokens spot a partir do saldo HyperCore da Exchange, incluindo saques padrão de USDC
  • Mint de ERC20s de opções para um endereço quando opções são sacadas
  • Início e encerramento da liquidação de uma Account

Diretivas que uma Account aceita do RSM, impostas pelo contrato Account:

  • Ordens IOC reduce-only, ou vendas spot IOC próximas ao mercado para USDC, sobre o saldo da Account na Hyperliquid
  • Envios de ativos a partir da Account na HyperCore, apenas para a Exchange (por exemplo, para cobrir um saldo negativo)
  • Cancelamentos de ordens

As diretivas RSM continuam sendo executadas enquanto uma Account está em liquidação. A liquidação de opções no vencimento não é uma diretiva RSM: ela é aplicada ao caixa no estado do engine. O endereço do signatário RSM e cada execução de diretiva ficam visíveis on-chain.

Upgrades​

  • Exchange e Option Registry são proxies atualizáveis.
  • Account e Option Token são BeaconProxies. Todas as Accounts rodam a mesma implementação, então um único upgrade do Account Beacon altera todas as Accounts de uma vez. O mesmo vale para os tokens de opção e o Option Token Beacon.
  • O Timelock controla o proxy admin da Exchange e os caminhos de upgrade da Account, do Option Token e do Option Registry, com atraso mínimo de 30 segundos.
  • A multisig Admin Safe detém os papéis de admin e governor da Exchange e o papel de owner da Factory.
  • O papel de governor, detido pela Admin Safe, pode substituir o signatário RSM e o auctioneer e movimentar o USDC da Exchange (rescueUsdcToEvm). Ele passará a ficar sob o timelock na etapa 1 do plano de confiança. Como admin padrão da Exchange, a Safe também pode conceder ou revogar SEQUENCER_ROLE e qualquer outro papel da Exchange diretamente, sem o timelock.

Os endereços estão na tabela de Configuração da Mainnet abaixo. A titularidade de uma Account só muda por meio de uma transação on-chain.

Endereços Implantados​

Mainnet Alpha​

ContratoEndereçoDescrição
Exchange0xE6b7FaA216cabb2b38B392f577C9c826378b2240Contrato principal da exchange
Exchange Implementation0xF7F0610aC612d140bdb34DCD2872828Bc67349cDImplementação do Exchange por trás do proxy
Account Implementation0xCD87F572bef2855c8Ffb69A6Da3D9785d6017791Implementação da Account
Account Beacon0x1b96D6a48d1fB34dC45953697414656D2851Ca93Beacon da Account
Fetcher0x8654912Eae1554662665C13EeD4f1D8A4b028aDBContrato auxiliar de leitura
Option Token Implementation0x6D0C7a116f9561A8De692c23c4C11682738ed206Implementação do token de opção
Option Token Beacon0xfb320352B25Dba7f139EA9Bf8966891CCa12dC35Beacon do token de opção
Factory0x2CeeAC2E032e4cCb05FF744619BfAb8cC75efE1bFactory de Accounts
Router0xF41FF41B6F007dE851ACc9F43Bd2f597Da741E2DAuxiliar de depósitos e roteamento
Option Registry0x8C8efdd5F78C25215d03c8BbD5D1f6f0F1BB0598Registro de tokens de opção
Option Registry Implementation0xF222421a93df1086E329503723b3cC4c30546C46Implementação do Option Registry por trás do proxy
Hypercall Fee Collector0x406ceBfC7063e55761007D1C4b66B29308016602Endereço de builder da Hyperliquid nas ordens de perpétuos (também hl_builder_address em GET /exchange-info)

Configuração da Mainnet​

ParâmetroEndereço ou ValorDescrição
USDC0xb88339CB7199b77E23DB6E890353E22632Ba630fUSDC da HyperEVM usado pela Hypercall
Core Deposit0x6B9E773128f453f5c2C60935Ee2DE2CBc5390A24Auxiliar de depósito da HyperCore
RSM Signer0x502E7fAbF34E84EeB115C34FE947b79A94dF886ESignatário RSM atual, controlado pelo operador
Sequencer0x56a2924217C91EB4d6989Cf4C7b4dF03020E8944Sequencer atual
Timelock0x96f17e6f7269cA4300a391514c109eBA70661674Detém o proxy admin do Exchange e os caminhos de upgrade da Account, do Option Token e do Option Registry. Atraso mínimo de 30 segundos.
Admin Safe0xF741246D2e0ADD4EFa7e88BE0961cccf3562b502Multisig que detém os papéis de admin e governor do Exchange e o papel de owner do Factory

Código-Fonte​

O código-fonte dos contratos será disponibilizado após a conclusão da auditoria.

Relacionados​