Nesta página
O que cada contrato pode e não pode fazerOwner, guardião e timelockContratos anterioresStatus da auditoriaContratos e poderes de administração
Estes são os contratos que a GiwaTerminal usa. Eles são open source e verificados no explorador: cada endereço abre lá, onde qualquer pessoa pode ler o código e cada transação.
| GiwaRouter · router de trading Compra e vende tokens em pools Uniswap V2 / V3 e cobra a taxa na mesma transação. Sem owner, sem funções de administração. | 0x623C8E37D90e0e0A47abC9d1786fB233F88A53AB |
| GiwaV4Router · router Uniswap V4 Negocia os pools Uniswap V4 de qualquer launchpad. Sem owner, sem taxa, não guarda fundos: a taxa é cobrada pela sua carteira (GiwaDelegate) na mesma transação. | 0x4e765D83CAC71294FA0d326B7A67aBcc95101403 |
| GiwaDelegate · EIP-7702 Permite que uma carteira do terminal negocie em um launchpad e pague a taxa em uma só transação, e executa as ordens 24/7 dela. Só a própria carteira pode chamar execute; as ordens precisam da assinatura da própria carteira. Sem owner. | 0x49587E204c7C26eD4E14294DACCEBd03b49FB71A |
| GiwaExecutor · executor de ordens Executa o trade de uma ordem 24/7 apenas com o valor da ordem e devolve tudo para a sua carteira na mesma transação. Sem owner, sem permissões sobre a sua carteira, sem armazenamento. | 0xb7FB4a6B5d902C3219ee1554E86fD2896014c7Fc |
| GiwaKeepers · registro de keepers Os keepers autorizados a executar ordens 24/7. Um keeper não pode tirar fundos: ele só pode executar o que cada carteira assinou. | 0x7c481CC0bA7055d1F9085B778dCbEDDDf579E292 |
| GiwaRefVault · cofre de recompensas Guarda as recompensas de indicação até você resgatá-las. Os pagamentos para ele nunca podem ser pausados. | 0x4120ECbfb2f790356aFE70cf226ee25E255463ED |
| Rede: GIWA Sepolia (testnet), chain ID 91342. | |
O que cada contrato pode e não pode fazer
GiwaRouter (router de trading)
- Sem owner, sem funções de administração, não atualizável. Ninguém pode alterá-lo, pausá-lo ou tirar fundos dele.
- A taxa (1% / 0.9%) e a divisão das indicações (25% / 3%) são constantes no código. A tesouraria e o cofre de recompensas para os quais ele paga são imutáveis.
- Ele só pega tokens da carteira que o chama, confere o seu mínimo de saída em cada trade e devolve a quem chama apenas o que pertence àquela mesma transação: ele nunca fica com seus fundos.
- Tokens que alguém deixar no router por engano só podem ser varridos (
sweep, que qualquer pessoa pode chamar) para a tesouraria, nunca para um usuário. - Se o cofre de recompensas algum dia rejeitar o pagamento da indicação, a taxa inteira vai para a tesouraria e o evento
RefSkippedregistra isso, para que os trades nunca travem.
GiwaV4Router (router Uniswap V4)
- Sem owner, sem taxa, sem funções de administração, não atualizável, e não guarda fundos entre as chamadas.
- Ele negocia os pools Uniswap V4 de qualquer launchpad (cada um com o próprio PoolManager e hook). A taxa do terminal é cobrada pela sua carteira (GiwaDelegate) na mesma transação.
- Só a carteira que o chama paga, e o seu mínimo de saída é verificado como o aumento do seu próprio saldo, já contando as taxes dos tokens.
GiwaDelegate (EIP-7702)
- Sem owner, sem funções de administração. A tesouraria, o cofre de recompensas, o registro de keepers e o executor são imutáveis; a taxa e a divisão das indicações são constantes. A única coisa que ele armazena na sua carteira é quais das suas ordens já foram usadas.
executesó funciona quando quem chama é a própria carteira: ninguém mais — nem a GiwaTerminal — pode usá-la para mover seus fundos. Ela executa o trade no launchpad e cobra a taxa sobre o que realmente se moveu, medido on-chain. Se algo falhar, a transação inteira é revertida.executeOrderexecuta uma ordem 24/7: só um keeper listado no GiwaKeepers pode chamá-la, só com uma ordem assinada pela própria chave da sua carteira, uma vez por ordem, e nunca por menos que o mínimo que você assinou (veja Ordens limitadas). Só a sua carteira pode cancelar uma ordem on-chain.- Uma carteira delegada continua aceitando pagamentos em ETH que venham com dados, e as verificações de assinatura ERC-1271 dela só aceitam assinaturas feitas pela própria chave da carteira, então apps como o Permit2 continuam funcionando.
GiwaExecutor (executor de ordens)
- Sem owner, sem permissões sobre nenhuma carteira e sem nada armazenado entre transações. Ele é criado pelo GiwaDelegate.
- Só uma carteira delegada ao GiwaDelegate, durante uma das próprias ordens, pode chamá-lo. Sua carteira entrega a ele apenas o valor da ordem; ele executa o trade e devolve tudo para aquela carteira na mesma transação. Sua carteira nunca o aprova para gastar seus tokens.
GiwaKeepers (registro de keepers)
- A lista de keepers autorizados a executar ordens 24/7. O owner pode adicionar ou remover keepers; o guardião só pode removê-los.
- Um keeper não pode tirar fundos: ele só pode executar ordens dentro do que cada carteira assinou.
GiwaRefVault (cofre de recompensas)
- A divisão das indicações (25% / 3%) é fixa no código. Os pagamentos para o cofre nunca podem ser pausados: a parte das indicações não pode ser desviada.
- O owner só pode definir o resgate mínimo (nunca acima de 0.01 ETH), ligar ou desligar o modo de emergência (a emergência remove o mínimo), sacar o excedente (ETH no cofre além do que é devido aos usuários), trocar o guardião e transferir o ownership em duas etapas.
- As recompensas devidas a você só podem ser resgatadas por você. Ninguém pode tirá-las.
- Qualquer pessoa pode pagar para o cofre, de propósito: creditar alguém significa enviar ETH de verdade, que então passa a pertencer a essa pessoa.
Owner, guardião e timelock
- GiwaRouter, GiwaV4Router, GiwaDelegate e GiwaExecutor não têm owner nenhum.
- Na testnet atual, o owner do GiwaRefVault e do GiwaKeepers é diretamente a carteira de administração da equipe, então as mudanças do owner têm efeito imediato. Cada uma delas é uma transação on-chain que qualquer pessoa pode ver.
- Na mainnet, o owner será o GiwaTimelock, com um atraso de pelo menos 1 dia: cada ação do owner é publicada on-chain primeiro e só pode ser executada depois do atraso, para que qualquer pessoa a veja chegando.
- Um guardião pode agir sem atraso, mas apenas para proteger os usuários: remover um keeper ou colocar o cofre de recompensas em modo de emergência (resgates sem mínimo). Ele nunca pode tocar nos seus fundos nem nas suas recompensas.
Contratos anteriores
Estes contratos substituíram versões anteriores. As ordens criadas nos contratos de ordens anteriores (GiwaOrdersV2, GiwaOrdersV3) continuam listadas no terminal e podem ser canceladas. Carteiras delegadas a um delegate anterior passam para o GiwaDelegate dentro do próximo trade em um launchpad ou da primeira ordem 24/7. Qualquer saldo em um cofre de recompensas anterior ainda pode ser resgatado pela página Indicações.
Status da auditoria
Os contratos são open source, verificados no explorador, testados em um fork da blockchain e revisados nas nossas próprias auditorias internas, mas não passaram por uma auditoria externa. Tenha isso em mente; veja Riscos.