Skip to content

Releases: ParaState/SafeStakeOperator

v3.1-testnet

29 Mar 13:04
Compare
Choose a tag to compare

This release fixed the problem of querying future blocks and the timeout issue.

Upgrade steps:

  1. Run cd dvf
  2. Change IMAGE_TAG to v3.1-testnet in .env file
  3. Run the command to recreate the operator: sudo docker compose -f docker-compose-operator.yml up --force-recreate -d operator

v3.0-testnet

25 Mar 15:42
Compare
Choose a tag to compare

This release fixed a lot of major issues in holesky testnet so contract addresses are changed and holesky testnet is relaunched.

Upgrade steps:
you need to run the below commands to stop operator and delete old data:

sudo docker stop dvf-operator-1
sudo rm -rf /data/operator

then follow the operator document to run your operator from scratch. You don't need to recreate geth and lighthouse but can consider upgrade them to the latest version. You can remove the dvf directory and git clone to dvf again because contracts and configurations changed a lot.

Changes:

  1. Updated MEV timestamp configuration. Now OP can enable MEV for test.
  2. Adapt to SafeStake contract v3.
  3. Added the function of status reporting to backend.
  4. Increased the frequency of smart contract event query.
  5. Fixed the bug of occasional failure to decrypt key share.

v2.2-testnet

27 Feb 09:16
Compare
Choose a tag to compare

This release fixed an issue that operator node failed to get the latest events from smart contract, which made some newly registered validator inactive. Operators need to upgrade to this version as soon as possible.

Upgrade Steps

cd dvf
git pull
# then update IMAGE_TAG to v2.2-testnet in .env
nano .env
sudo docker compose -f docker-compose-operator.yml up --force-recreate -d operator

v2.1-testnet

04 Feb 08:54
Compare
Choose a tag to compare

This release is for Dencun upgrade on both Holesky and Goerli testnet. Operators running on Holesky need to upgrade before Feb 7 2024 @ 11:34:24 (GMT+0).
Geth version: v1.13.11
Lighthouse version: v4.6.0
Operator version: v2.1-testnet

Upgrade Steps

cd dvf
git pull
# then update IMAGE_TAG to v2.1-testnet in .env
nano .env
sudo docker compose -f docker-compose-operator.yml up geth -d
sudo docker compose -f docker-compose-operator.yml up lighthouse -d
sudo docker compose -f docker-compose-operator.yml up --force-recreate -d operator

Other changes:

  1. MEV_IP is now changed to MEV_ENDPOINT (should include port) in .env.
  2. NODE_IP is now recommended to set in .env for your machine's public ipv4 ip.
  3. FEE_RECEIPIENT is now removed in .env. Instead of setting it in operator level, it will be set in the validator level. Execution layer reward will be transferred to the address that registered the validator.

v2.0-testnet

15 Jan 13:06
8593583
Compare
Choose a tag to compare

This release is for Holesky testnet operator. A lot of bugs are fixed and operator becomes stable a lot.

Major updates:

  1. New feature: Initiator
  2. New feature: MEV
  3. Bug fix: OOM caused by too many websocket connections

v1.2-testnet

22 Jun 08:39
Compare
Choose a tag to compare

This release fixed the issue that operator will fail to attest when the ip of machine changed.

Operator need to do the following steps to do the upgrade:

  1. Run cd dvf
  2. Change IMAGE_TAG to v1.2-testnet in .env file
  3. Run the command to recreate the operator: sudo docker compose -f docker-compose-operator.yml up --force-recreate -d operator

v1.1-testnet

09 Jun 07:30
Compare
Choose a tag to compare

This release fixes the issue that newly added validators will wait for a long time before becoming active.

Operator need to do the following steps to do the upgrade:

  1. Run cd dvf
  2. Change IMAGE_TAG to v1.1-testnet in .env file
  3. Run the command to recreate the operator: sudo docker compose -f docker-compose-operator.yml up --force-recreate -d operator

v1.0-testnet

29 May 16:00
d1bb5f5
Compare
Choose a tag to compare

For this release, we changed our contract from STATE to DVT so operators need to do the following steps to run your new operator nodes if you are still running an old operator node:

cd dvf
git pull && git checkout main
mv .env.example .env
# update .env with your configuration
sudo docker stop dvf-operator-1
sudo mv /data/operator /data/operator-backup
sudo mkdir -pv /data/operator/
sudo docker compose -f docker-compose-operator.yml up dvf_key_tool
# Save the public key, which will be used later. Go to SafeStake website and Join As Operator.
# After you register an Operator on the Safestake website, you will be shown your OPERATOR ID, which is the unique identifier you need to start with. You will need to update the OPERATOR ID to the .env file before running the operator service.
sudo docker compose -f  docker-compose-operator.yml up --force-recreate -d operator

Change log

  • Change the way of monitoring contract events to actively synchronizing events from the contract, and persist all events to the local database. Even if the node is down, it can be recovered after restart.
  • Polling to handle all events. Failed events will remain local to increase fault tolerance
  • Added initiator role for State2 testing
  • Fix logics of VA add / delete
  • Fix issue: rocksdb never exit
  • Upgrade IP management in VA lifetime. Allow operators to update IP and reconnect. Allow non-responsive operators in registration
  • Fix issue: “Stop validator” didn’t delete VA from memory, causing the VA still running
  • Fix issue: When VA on OP1 stops, the DVF signer exits (and consensus exits), but handler is not destroyed. OP2 might keep running and sending messages to OP1 who will dispatch the messages as usual, and cause the thread to panic because the tokio receiver channel has been destroyed due to exit signal
  • Fix issue: activating validator doesn’t work because it calls “add” validator, which results in a duplicated key error
  • Fix issue: heavy logging messages. Add message handling delay to alleviate the issue