manifoldfinance / mevETH2

mevETH LST Protocol - Repo has migrated see link
https://github.com/MEV-Protocol/meveth
27 stars 2 forks source link

Ops: Validator Activiation Workflow #47

Closed sambacha closed 1 year ago

sambacha commented 1 year ago

We can coordinate at 14:30 UTC/GMT+8 Taipei Standard Time That is 8:30 AM CEST UTC+02 (Central European Time)

Depositing

In the event log you can see the data of DepositEvents with withdrawal_credentials being where withdrawals will be sent to.

https://etherscan.io/address/0x617c8dE5BdE54ffbb8d92716CC947858cA38f582|0x617c8dE5BdE54ffbb8d92716CC947858cA38f582 https://etherscan.io/address/0x617c8dE5BdE54ffbb8d92716CC947858cA38f582

https://app.safe.global/home?safe=eth:0x617c8dE5BdE54ffbb8d92716CC947858cA38f582

Signers (4/6) eth:0xC66C8aa97065f327fe94B6c845ACd7E5aA6f6117 eth:0x285b7EEa81a5B66B62e7276a24c1e0F83F7409c1 eth:0xCe883e3531de09968853e2C56E705CfF9E113364 eth:0x13aB2941254ae3c22DFa6E6a83A3ff8C090dD6bD eth:0xc163A9a7615e4d3Bde785328168b75879bE65047 eth:0xA0766B65A4f7B1da79a1AF79aC695456eFa28644

Batch Deposit

You can interact with the batchDeposit function of the contract to deposit multiple validator keys deposit data, with the multiple of 32 ETH as transaction value. We recommend you use it to send N deposit data with N * 32 ETH where N < 150.[^1]

> send N deposit data with N * 32 ETH where N < 150

>Warning > Batch sizes should therefore not exceed 4_800 ETH (150 Validators)

>Note > Gas costs for batch deposit of 100 is Gas: 3049083

Submit deposit

In Phase 0, all incoming validator deposits originate from the Ethereum proof-of-work chain defined by DEPOSIT_CHAIN_ID and DEPOSIT_NETWORK_ID. Deposits are made to the deposit contract located at DEPOSIT_CONTRACT_ADDRESS.

To submit a deposit:

Note: Deposits made for the same pubkey are treated as for the same validator. A singular Validator will be added to state.validators with each additional deposit amount added to the validator's balance. A validator can only be activated when total deposits for the validator pubkey meet or exceed MAX_EFFECTIVE_BALANCE.

Process deposit

Deposits cannot be processed into the beacon chain until the proof-of-work block in which they were deposited or any of its descendants is added to the beacon chain state.eth1_data. This takes a minimum of ETH1_FOLLOW_DISTANCE Eth1 blocks (~8 hours) plus EPOCHS_PER_ETH1_VOTING_PERIOD epochs (~6.8 hours). Once the requisite proof-of-work block data is added, the deposit will normally be added to a beacon chain block and processed into the state.validators within an epoch or two. The validator is then in a queue to be activated.

https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/deposit-contract.md#withdrawal-credentials

DEPOSIT_CONTRACT_ADDRESS: 0x00000000219ab540356cBB839Cbe05303d7705Fa

https://github.com/ethereum/consensus-specs/blob/f1aabcd718eba26f83210b2545c9bfaa6531ea15/configs/mainnet.yaml#L99

Slack Message

sambacha commented 1 year ago

We should be done by this coming Wednesday

sambacha commented 1 year ago

This was completed on July 12th.