Skip to content

Releases: zeta-chain/node

v17.0.0

28 May 15:24
5d763d2
Compare
Choose a tag to compare

CHANGELOG

v17.0.0

Fixes

  • 2249 - fix inbound and outbound validation for BSC chain
  • 2265 - fix rate limiter query for revert cctxs

v16.0.0

Breaking Changes

  • Admin policies have been moved from observer to a new module authority.

    • Updating admin policies now requires to send a governance proposal executing the UpdatePolicies message in the authority module.
    • The Policies query of the authority module must be used to get the current admin policies.
    • PolicyType_group1 has been renamed into PolicyType_groupEmergency and PolicyType_group2 has been renamed into PolicyType_groupAdmin.
  • A new module called lightclient has been created for the blocker header and proof functionality to add inbound and outbound trackers in a permissionless manner (currently deactivated on live networks)

    • The list of block headers are now stored in the lightclient module instead of the observer module.
      • The message to vote on new block headers is still in the observer module but has been renamed to MsgVoteBlockHeader instead of MsgAddBlockHeader.
      • The GetAllBlockHeaders query has been moved to the lightclient module and renamed to BlockHeaderAll.
      • The GetBlockHeaderByHash query has been moved to the lightclient module and renamed to BlockHeader.
      • The GetBlockHeaderStateByChain query has been moved to the lightclient module and renamed to ChainState.
      • The Prove query has been moved to the lightclient module.
      • The BlockHeaderVerificationFlags has been deprecated in CrosschainFlags, VerificationFlags should be used instead.
  • MsgGasPriceVoter message in the crosschain module has been renamed to MsgVoteGasPrice.

    • The structure of the message remains the same.
  • MsgCreateTSSVoter message in the crosschain module has been moved to the observer module and renamed to MsgVoteTSS.

    • The structure of the message remains the same.

Refactor

  • 1511 - move ballot voting logic from crosschain to observer
  • 1783 - refactor zetaclient metrics naming and structure
  • 1774 - split params and config in zetaclient
  • 1831 - removing unnecessary pointers in context structure
  • 1864 - prevent panic in param management
  • 1848 - create a method to observe deposits to tss address in one evm block
  • 1885 - change important metrics on port 8123 to be prometheus compatible
  • 1863 - remove duplicate ValidateChainParams function
  • 1914 - move crosschain flags to core context in zetaclient
  • 1948 - remove deprecated GetTSSAddress query in crosschain module
  • 1936 - refactor common package into subpackages and rename to pkg
  • 1966 - move TSS vote message from crosschain to observer
  • 1853 - refactor vote inbound tx and vote outbound tx
  • 1815 - add authority module for authorized actions
  • 1976 - add lightclient module for header and proof functionality
  • 2001 - replace broadcast mode block with sync and remove fungible params
  • 1989 - simplify IsSendOutTxProcessed method and add unit tests
  • 2013 - rename GasPriceVoter message to VoteGasPrice
  • 2059 - Remove unused params from all functions in zetanode
  • 2076 - automatically deposit native zeta to an address if it doesn't exist on ZEVM.
  • 2160 - Limit zEVM revert transactions to coin type ZETA

Features

  • 1789 - block cross-chain transactions that involve restricted addresses
  • 1755 - use evm JSON RPC for inbound tx (including blob tx) observation.
  • 1884 - added zetatool cmd, added subcommand to filter deposits
  • 1942 - support Bitcoin P2TR, P2WSH, P2SH, P2PKH addresses
  • 1935 - add an operational authority group
  • 1954 - add metric for concurrent keysigns
  • 1979 - add script to import genesis data into an existing genesis file
  • 2006 - add Amoy testnet static chain information
  • 2045 - add grpc query with outbound rate limit for zetaclient to use
  • 2046 - add state variable in crosschain for rate limiter flags
  • 2034 - add support for zEVM message passing

Tests

  • 1767 - add unit tests for emissions module begin blocker
  • 1816 - add args to e2e tests
  • 1791 - add e2e tests for feature of restricted address
  • 1787 - add unit tests for cross-chain evm hooks and e2e test failed withdraw to BTC legacy address
  • 1840 - fix code coverage test failures ignored in CI
  • 1870 - enable emissions pool in local e2e testing
  • 1868 - run e2e btc tests locally
  • 1851 - rename usdt to erc20 in e2e tests
  • 1872 - remove usage of RPC in unit test
  • 1805 - add admin and performance test and fix upgrade test
  • 1879 - full coverage for messages in types packages
  • 1899 - add empty test files so packages are included in coverage
  • 1900 - add testing for external chain migration
  • 1903 - common package tests
  • 1961 - improve observer module coverage
  • 1967 - improve crosschain module coverage
  • 1955 - improve emissions module coverage
  • 1941 - add unit tests for zetabridge package
  • 1985 - improve fungible module coverage
  • 1992 - remove setupKeeper from crosschain module
  • 2008 - add test for connector bytecode update
  • 2060 - add unit test for rate limiter query
  • 2127 - add import data to e2e test

Fixes

  • 1861 - fix ObserverSlashAmount invalid read
  • 1880 - lower the gas price multiplier for EVM chains.
  • 1883 - zetaclient should check 'IsSupported' flag to pause/unpause a specific chain
  • 1633 - zetaclient should be able to pick up new connector and erc20Custody addresses
  • 1944 - fix evm signer unit tests
  • 1888 - zetaclient should stop inbound/outbound txs according to cross-chain flags
  • 1970 - remove the timeout in the evm outtx tracker processing thread

Chores

  • 1814 - fix code coverage ignore for protobuf generated files

CI

  • 2267 - Change publish-release to github action ubuntu runner.
  • 1958 - Fix e2e advanced test debug checkbox.
  • 1945 - update advanced testing pipeline to not execute tests that weren't selected so they show skipped instead of skipping steps.
  • 1940 - adjust release pipeline to be created as pre-release instead of latest
  • 1867 - default restore_type for full node docker-compose to snapshot instead of statesync for reliability.
  • 1891 - fix typo that was introduced to docker-compose and a typo in start.sh for the docker start script for full nodes.
  • 1894 - added download binaries and configs to the start sequence so it will download binaries that don't exist
  • [1953](https://github.com/zeta-chain/...
Read more

v16.0.0

15 May 16:43
7fa9ada
Compare
Choose a tag to compare
v16.0.0 Pre-release
Pre-release

CHANGELOG

v16.0.0

Breaking Changes

  • Admin policies have been moved from observer to a new module authority.

    • Updating admin policies now requires to send a governance proposal executing the UpdatePolicies message in the authority module.
    • The Policies query of the authority module must be used to get the current admin policies.
    • PolicyType_group1 has been renamed into PolicyType_groupEmergency and PolicyType_group2 has been renamed into PolicyType_groupAdmin.
  • A new module called lightclient has been created for the blocker header and proof functionality to add inbound and outbound trackers in a permissionless manner (currently deactivated on live networks)

    • The list of block headers are now stored in the lightclient module instead of the observer module.
      • The message to vote on new block headers is still in the observer module but has been renamed to MsgVoteBlockHeader instead of MsgAddBlockHeader.
      • The GetAllBlockHeaders query has been moved to the lightclient module and renamed to BlockHeaderAll.
      • The GetBlockHeaderByHash query has been moved to the lightclient module and renamed to BlockHeader.
      • The GetBlockHeaderStateByChain query has been moved to the lightclient module and renamed to ChainState.
      • The Prove query has been moved to the lightclient module.
      • The BlockHeaderVerificationFlags has been deprecated in CrosschainFlags, VerificationFlags should be used instead.
  • MsgGasPriceVoter message in the crosschain module has been renamed to MsgVoteGasPrice.

    • The structure of the message remains the same.
  • MsgCreateTSSVoter message in the crosschain module has been moved to the observer module and renamed to MsgVoteTSS.

    • The structure of the message remains the same.

Refactor

  • 1511 - move ballot voting logic from crosschain to observer
  • 1783 - refactor zetaclient metrics naming and structure
  • 1774 - split params and config in zetaclient
  • 1831 - removing unnecessary pointers in context structure
  • 1864 - prevent panic in param management
  • 1848 - create a method to observe deposits to tss address in one evm block
  • 1885 - change important metrics on port 8123 to be prometheus compatible
  • 1863 - remove duplicate ValidateChainParams function
  • 1914 - move crosschain flags to core context in zetaclient
  • 1948 - remove deprecated GetTSSAddress query in crosschain module
  • 1936 - refactor common package into subpackages and rename to pkg
  • 1966 - move TSS vote message from crosschain to observer
  • 1853 - refactor vote inbound tx and vote outbound tx
  • 1815 - add authority module for authorized actions
  • 1976 - add lightclient module for header and proof functionality
  • 2001 - replace broadcast mode block with sync and remove fungible params
  • 1989 - simplify IsSendOutTxProcessed method and add unit tests
  • 2013 - rename GasPriceVoter message to VoteGasPrice
  • 2059 - Remove unused params from all functions in zetanode
  • 2076 - automatically deposit native zeta to an address if it doesn't exist on ZEVM.
  • 2160 - Limit zEVM revert transactions to coin type ZETA

Features

  • 1789 - block cross-chain transactions that involve restricted addresses
  • 1755 - use evm JSON RPC for inbound tx (including blob tx) observation.
  • 1884 - added zetatool cmd, added subcommand to filter deposits
  • 1942 - support Bitcoin P2TR, P2WSH, P2SH, P2PKH addresses
  • 1935 - add an operational authority group
  • 1954 - add metric for concurrent keysigns
  • 1979 - add script to import genesis data into an existing genesis file
  • 2006 - add Amoy testnet static chain information
  • 2045 - add grpc query with outbound rate limit for zetaclient to use
  • 2046 - add state variable in crosschain for rate limiter flags
  • 2034 - add support for zEVM message passing

Tests

  • 1767 - add unit tests for emissions module begin blocker
  • 1816 - add args to e2e tests
  • 1791 - add e2e tests for feature of restricted address
  • 1787 - add unit tests for cross-chain evm hooks and e2e test failed withdraw to BTC legacy address
  • 1840 - fix code coverage test failures ignored in CI
  • 1870 - enable emissions pool in local e2e testing
  • 1868 - run e2e btc tests locally
  • 1851 - rename usdt to erc20 in e2e tests
  • 1872 - remove usage of RPC in unit test
  • 1805 - add admin and performance test and fix upgrade test
  • 1879 - full coverage for messages in types packages
  • 1899 - add empty test files so packages are included in coverage
  • 1900 - add testing for external chain migration
  • 1903 - common package tests
  • 1961 - improve observer module coverage
  • 1967 - improve crosschain module coverage
  • 1955 - improve emissions module coverage
  • 1941 - add unit tests for zetabridge package
  • 1985 - improve fungible module coverage
  • 1992 - remove setupKeeper from crosschain module
  • 2008 - add test for connector bytecode update
  • 2060 - add unit test for rate limiter query
  • 2127 - add import data to e2e test

Fixes

  • 1861 - fix ObserverSlashAmount invalid read
  • 1880 - lower the gas price multiplier for EVM chains.
  • 1883 - zetaclient should check 'IsSupported' flag to pause/unpause a specific chain
  • 1633 - zetaclient should be able to pick up new connector and erc20Custody addresses
  • 1944 - fix evm signer unit tests
  • 1888 - zetaclient should stop inbound/outbound txs according to cross-chain flags
  • 1970 - remove the timeout in the evm outtx tracker processing thread

Chores

  • 1814 - fix code coverage ignore for protobuf generated files

CI

  • 1958 - Fix e2e advanced test debug checkbox.
  • 1945 - update advanced testing pipeline to not execute tests that weren't selected so they show skipped instead of skipping steps.
  • 1940 - adjust release pipeline to be created as pre-release instead of latest
  • 1867 - default restore_type for full node docker-compose to snapshot instead of statesync for reliability.
  • 1891 - fix typo that was introduced to docker-compose and a typo in start.sh for the docker start script for full nodes.
  • 1894 - added download binaries and configs to the start sequence so it will download binaries that don't exist
  • 1953 - run E2E tests for all PRs
  • 2188 - Updated the e2e container tests for release pipeline to observe exit status of test orchestration container.

Version: v15.0.0

Features

*1912 - add reset chain nonces msg

Vers...

Read more

v15.0.0

20 Mar 17:02
a920614
Compare
Choose a tag to compare
v15.0.0 Pre-release
Pre-release

CHANGELOG

Version: v15.0.0

Features

*1912 - add reset chain nonces msg
*1913 - add upgrade handler for version v15.0.0

Version: v14

Fixes

  • 1817 - Add migration script to fix pending and chain nonces on testnet

Version: v13.0.0

  • zetaclientd start : 2 inputs required from stdin

Features

  • 1698 - bitcoin dynamic depositor fee

Docs

  • 1731 added doc for hotkey and tss key-share password prompts.

Features

*[1728] (#1728) - allow aborted transactions to be refunded by minting tokens to zEvm.

Refactor

  • 1766 - Refactors the PostTxProcessing EVM hook functionality to deal with invalid withdraw events
  • 1630 added password prompts for hotkey and tss keyshare in zetaclient
    Starting zetaclient now requires two passwords to be input; one for the hotkey and another for the tss key-share.
  • 1760 - Make staking keeper private in crosschain module

Fixes

  • 1678 - clean cached stale block to fix evm outtx hash mismatch
  • 1690 - double watched gas prices and fix btc scheduler
  • 1687 - only use EVM supported chains for gas stability pool
  • 1692 - fix get params query for emissions module
  • 1706 - fix CLI crosschain show-out-tx-tracker
  • 1707 - fix bitcoin fee rate estimation
  • 1712 - increase EVM outtx inclusion timeout to 20 minutes
  • 1733 - remove the unnecessary 2x multiplier in the convertGasToZeta RPC
  • 1721 - zetaclient should provide bitcoin_chain_id when querying TSS address
  • 1744 - added cmd to encrypt tss keyshare file, allowing empty tss password for backward compatibility.

Tests

  • 1584 - allow to run E2E tests on any networks
  • 1753 - fix gosec errors on usage of rand package
  • 1762 - improve coverage for fungibile module

CI

  • Adjusted the release pipeline to be a manually executed pipeline with an approver step. The pipeline now executes all the required tests run before the approval step unless skipped.
  • Added pipeline to build and push docker images into dockerhub on release for ubuntu and macos.
  • Adjusted the pipeline for building and pushing docker images for MacOS to install and run docker.
  • Added docker-compose and make commands for launching full nodes. make mainnet-zetarpc-node make mainnet-bitcoind-node
  • Made adjustments to the docker-compose for launching mainnet full nodes to include examples of using the docker images build from the docker image build pipeline.
  • 1736 - chore: add Ethermint endpoints to OpenAPI

Chores

  • 1729 - add issue templates
  • 1754 - cleanup expected keepers

Version: v12.2.4

Fixes

  • 1638 - additional check to make sure external chain height always increases
  • 1672 - paying 50% more than base gas price to buffer EIP1559 gas price increase
  • 1642 - Change WhitelistERC20 authorization from group1 to group2
  • 1610 - add pending outtx hash to tracker after monitoring for 10 minutes
  • 1656 - schedule bitcoin keysign with intervals to avoid keysign failures
  • 1662 - skip Goerli BlobTxType transactions introduced in Dencun upgrade
  • 1663 - skip Mumbai empty block if ethclient sanity check fails
  • 1661 - use estimated SegWit tx size for Bitcoin gas fee calculation
  • 1667 - estimate SegWit tx size in uinit of vByte
  • 1675 - use chain param ConfirmationCount for bitcoin confirmation

Chores

  • 1694 - remove standalone network, use require testing package for the entire node folder

Version: v12.1.0

Tests

  • 1577 - add chain header tests in E2E tests and fix admin tests

Features

  • 1658 - modify emission distribution to use fixed block rewards

Fixes

  • 1535 - Avoid voting on wrong ballots due to false blockNumber in EVM tx receipt
  • 1588 - fix chain params comparison logic
  • 1650 - exempt (discounted) system txs from min gas price check and gas fee deduction
  • 1632 - set keygen to KeygenStatus_KeyGenSuccess if its in KeygenStatus_PendingKeygen.
  • 1576 - Fix zetaclient crash due to out of bound integer conversion and log prints.
  • 1575 - Skip unsupported chain parameters by IsSupported flag

CI

  • 1580 - Fix release pipelines cleanup step.

Chores

  • 1585 - Updated release instructions
  • 1615 - Add upgrade handler for version v12.1.0

Features

  • 1591 - support lower gas limit for voting on inbound and outbound transactions
  • 1592 - check inbound tracker tx hash against Tss address and some refactor on inTx observation

Refactoring

  • 1628 optimize return and simplify code
  • 1640 reorganize zetaclient into subpackages

Refactoring

  • 1619 - Add evm fee calculation to tss migration of evm chains

Version: v12.0.0

Breaking Changes

TSS and chain validation related queries have been moved from crosschain module to observer module:

  • PendingNonces :Changed from /zeta-chain/crosschain/pendingNonces/{chain_id}/{address} to /zeta-chain/observer/pendingNonces/{chain_id}/{address} . It returns all the pending nonces for a chain id and address. This returns the current pending nonces for the chain.
  • ChainNonces : Changed from /zeta-chain/crosschain/chainNonces/{chain_id} to/zeta-chain/observer/chainNonces/{chain_id} . It returns all the chain nonces for a chain id. This returns the current nonce of the TSS address for the chain.
  • ChainNoncesAll :Changed from /zeta-chain/crosschain/chainNonces to /zeta-chain/observer/chainNonces . It returns all the chain nonces for all chains. This returns the current nonce of the TSS address for all chains.

All chains now have the same observer set:

  • ObserversByChain: /zeta-chain/observer/observers_by_chain/{observation_chain} has been removed and replaced with /zeta-chain/observer/observer_set. All chains have the same observer set.
  • AllObserverMappers: /zeta-chain/observer/all_observer_mappers has been removed. /zeta-chain/observer/observer_set should be used to get observers.

Observer params and core params have been merged into chain params:

  • Params: /zeta-chain/observer/params no longer returns observer params. Observer params data have been moved to chain params described below.
  • GetCoreParams: Renamed into GetChainParams. /zeta-chain/observer/get_core_params moved to /zeta-chain/observer/get_chain_params.
  • GetCoreParamsByChain: Renamed into GetChainParamsForChain. /zeta-chain/observer/get_core_params_by_chain moved to /zeta-chain/observer/get_chain_params_by_chain.

Getting the correct TSS address for Bitcoin now requires proviidng the Bitcoin chain id:

  • GetTssAddress : Changed from /zeta-chain/observer/get_tss_address/ to /zeta-chain/observer/getTssAddress/{bitcoin_chain_id} . Optional bitcoin chain id can now be passed as a parameter to fetch the correct tss for required BTC chain. This parameter only affects the BTC tss address in the response.

Features

  • 1498 - Add monitoring(grafana, prometheus, ethbalance) for localnet testing
  • 1395 - Add state variable to track aborted zeta amount
  • 1410 - snapshots commands
  • enable zetaclients to use dynamic gas price on zetachain - enables >0 min_gas_price in feemarket module
  • add static chain data for Sepolia testnet
  • added metrics to track the burn rate of the hotkey in the telemetry server as well as prometheus

F...

Read more

v14.0.1

07 Mar 19:23
Compare
Choose a tag to compare

CHANGELOG

Version: v14

hotfix note: v14.0.0 has a bug that cause panic upon start in zetacored. This v14.0.1 fixes that panic bug.

Fixes

  • 1817 - Add migration script to fix pending and chain nonces on testnet

Version: v13.0.0

  • zetaclientd start : 2 inputs required from stdin

Features

  • 1698 - bitcoin dynamic depositor fee

Docs

  • 1731 added doc for hotkey and tss key-share password prompts.

Features

*[1728] (#1728) - allow aborted transactions to be refunded by minting tokens to zEvm.

Refactor

  • 1766 - Refactors the PostTxProcessing EVM hook functionality to deal with invalid withdraw events
  • 1630 added password prompts for hotkey and tss keyshare in zetaclient
    Starting zetaclient now requires two passwords to be input; one for the hotkey and another for the tss key-share.
  • 1760 - Make staking keeper private in crosschain module

Fixes

  • 1678 - clean cached stale block to fix evm outtx hash mismatch
  • 1690 - double watched gas prices and fix btc scheduler
  • 1687 - only use EVM supported chains for gas stability pool
  • 1692 - fix get params query for emissions module
  • 1706 - fix CLI crosschain show-out-tx-tracker
  • 1707 - fix bitcoin fee rate estimation
  • 1712 - increase EVM outtx inclusion timeout to 20 minutes
  • 1733 - remove the unnecessary 2x multiplier in the convertGasToZeta RPC
  • 1721 - zetaclient should provide bitcoin_chain_id when querying TSS address
  • 1744 - added cmd to encrypt tss keyshare file, allowing empty tss password for backward compatibility.

Tests

  • 1584 - allow to run E2E tests on any networks
  • 1753 - fix gosec errors on usage of rand package
  • 1762 - improve coverage for fungibile module

CI

  • Adjusted the release pipeline to be a manually executed pipeline with an approver step. The pipeline now executes all the required tests run before the approval step unless skipped.
  • Added pipeline to build and push docker images into dockerhub on release for ubuntu and macos.
  • Adjusted the pipeline for building and pushing docker images for MacOS to install and run docker.
  • Added docker-compose and make commands for launching full nodes. make mainnet-zetarpc-node make mainnet-bitcoind-node
  • Made adjustments to the docker-compose for launching mainnet full nodes to include examples of using the docker images build from the docker image build pipeline.
  • 1736 - chore: add Ethermint endpoints to OpenAPI

Chores

  • 1729 - add issue templates
  • 1754 - cleanup expected keepers

Version: v12.2.4

Fixes

  • 1638 - additional check to make sure external chain height always increases
  • 1672 - paying 50% more than base gas price to buffer EIP1559 gas price increase
  • 1642 - Change WhitelistERC20 authorization from group1 to group2
  • 1610 - add pending outtx hash to tracker after monitoring for 10 minutes
  • 1656 - schedule bitcoin keysign with intervals to avoid keysign failures
  • 1662 - skip Goerli BlobTxType transactions introduced in Dencun upgrade
  • 1663 - skip Mumbai empty block if ethclient sanity check fails
  • 1661 - use estimated SegWit tx size for Bitcoin gas fee calculation
  • 1667 - estimate SegWit tx size in uinit of vByte
  • 1675 - use chain param ConfirmationCount for bitcoin confirmation

Chores

  • 1694 - remove standalone network, use require testing package for the entire node folder

Version: v12.1.0

Tests

  • 1577 - add chain header tests in E2E tests and fix admin tests

Features

  • 1658 - modify emission distribution to use fixed block rewards

Fixes

  • 1535 - Avoid voting on wrong ballots due to false blockNumber in EVM tx receipt
  • 1588 - fix chain params comparison logic
  • 1650 - exempt (discounted) system txs from min gas price check and gas fee deduction
  • 1632 - set keygen to KeygenStatus_KeyGenSuccess if its in KeygenStatus_PendingKeygen.
  • 1576 - Fix zetaclient crash due to out of bound integer conversion and log prints.
  • 1575 - Skip unsupported chain parameters by IsSupported flag

CI

  • 1580 - Fix release pipelines cleanup step.

Chores

  • 1585 - Updated release instructions
  • 1615 - Add upgrade handler for version v12.1.0

Features

  • 1591 - support lower gas limit for voting on inbound and outbound transactions
  • 1592 - check inbound tracker tx hash against Tss address and some refactor on inTx observation

Refactoring

  • 1628 optimize return and simplify code
  • 1640 reorganize zetaclient into subpackages

Refactoring

  • 1619 - Add evm fee calculation to tss migration of evm chains

Version: v12.0.0

Breaking Changes

TSS and chain validation related queries have been moved from crosschain module to observer module:

  • PendingNonces :Changed from /zeta-chain/crosschain/pendingNonces/{chain_id}/{address} to /zeta-chain/observer/pendingNonces/{chain_id}/{address} . It returns all the pending nonces for a chain id and address. This returns the current pending nonces for the chain.
  • ChainNonces : Changed from /zeta-chain/crosschain/chainNonces/{chain_id} to/zeta-chain/observer/chainNonces/{chain_id} . It returns all the chain nonces for a chain id. This returns the current nonce of the TSS address for the chain.
  • ChainNoncesAll :Changed from /zeta-chain/crosschain/chainNonces to /zeta-chain/observer/chainNonces . It returns all the chain nonces for all chains. This returns the current nonce of the TSS address for all chains.

All chains now have the same observer set:

  • ObserversByChain: /zeta-chain/observer/observers_by_chain/{observation_chain} has been removed and replaced with /zeta-chain/observer/observer_set. All chains have the same observer set.
  • AllObserverMappers: /zeta-chain/observer/all_observer_mappers has been removed. /zeta-chain/observer/observer_set should be used to get observers.

Observer params and core params have been merged into chain params:

  • Params: /zeta-chain/observer/params no longer returns observer params. Observer params data have been moved to chain params described below.
  • GetCoreParams: Renamed into GetChainParams. /zeta-chain/observer/get_core_params moved to /zeta-chain/observer/get_chain_params.
  • GetCoreParamsByChain: Renamed into GetChainParamsForChain. /zeta-chain/observer/get_core_params_by_chain moved to /zeta-chain/observer/get_chain_params_by_chain.

Getting the correct TSS address for Bitcoin now requires proviidng the Bitcoin chain id:

  • GetTssAddress : Changed from /zeta-chain/observer/get_tss_address/ to /zeta-chain/observer/getTssAddress/{bitcoin_chain_id} . Optional bitcoin chain id can now be passed as a parameter to fetch the correct tss for required BTC chain. This parameter only affects the BTC tss address in the response.

Features

  • 1498 - Add monitoring(grafana, prometheus, ethbalance) for localnet testing
  • 1395 - Add state variable to track aborted zeta amount
  • 1410 - snapshots commands
  • enable zetaclients to use dynamic gas price on zetachain - enables >0 min_gas_price in feemarket module
  • add static chain data for Sepolia testnet
  • added metrics to track the burn rate of the hotkey in the telemetry server as well as prometheus

Fixes

  • 1554 - Screen out unconfirmed UTXOs that are not cre...
Read more

v14.0.1-rc1

07 Mar 18:40
0ec62f9
Compare
Choose a tag to compare
v14.0.1-rc1 Pre-release
Pre-release

CHANGELOG

Version: v14

Fixes

  • 1817 - Add migration script to fix pending and chain nonces on testnet

Version: v13.0.0

  • zetaclientd start : 2 inputs required from stdin

Features

  • 1698 - bitcoin dynamic depositor fee

Docs

  • 1731 added doc for hotkey and tss key-share password prompts.

Features

*[1728] (#1728) - allow aborted transactions to be refunded by minting tokens to zEvm.

Refactor

  • 1766 - Refactors the PostTxProcessing EVM hook functionality to deal with invalid withdraw events
  • 1630 added password prompts for hotkey and tss keyshare in zetaclient
    Starting zetaclient now requires two passwords to be input; one for the hotkey and another for the tss key-share.
  • 1760 - Make staking keeper private in crosschain module

Fixes

  • 1678 - clean cached stale block to fix evm outtx hash mismatch
  • 1690 - double watched gas prices and fix btc scheduler
  • 1687 - only use EVM supported chains for gas stability pool
  • 1692 - fix get params query for emissions module
  • 1706 - fix CLI crosschain show-out-tx-tracker
  • 1707 - fix bitcoin fee rate estimation
  • 1712 - increase EVM outtx inclusion timeout to 20 minutes
  • 1733 - remove the unnecessary 2x multiplier in the convertGasToZeta RPC
  • 1721 - zetaclient should provide bitcoin_chain_id when querying TSS address
  • 1744 - added cmd to encrypt tss keyshare file, allowing empty tss password for backward compatibility.

Tests

  • 1584 - allow to run E2E tests on any networks
  • 1753 - fix gosec errors on usage of rand package
  • 1762 - improve coverage for fungibile module

CI

  • Adjusted the release pipeline to be a manually executed pipeline with an approver step. The pipeline now executes all the required tests run before the approval step unless skipped.
  • Added pipeline to build and push docker images into dockerhub on release for ubuntu and macos.
  • Adjusted the pipeline for building and pushing docker images for MacOS to install and run docker.
  • Added docker-compose and make commands for launching full nodes. make mainnet-zetarpc-node make mainnet-bitcoind-node
  • Made adjustments to the docker-compose for launching mainnet full nodes to include examples of using the docker images build from the docker image build pipeline.
  • 1736 - chore: add Ethermint endpoints to OpenAPI

Chores

  • 1729 - add issue templates
  • 1754 - cleanup expected keepers

Version: v12.2.4

Fixes

  • 1638 - additional check to make sure external chain height always increases
  • 1672 - paying 50% more than base gas price to buffer EIP1559 gas price increase
  • 1642 - Change WhitelistERC20 authorization from group1 to group2
  • 1610 - add pending outtx hash to tracker after monitoring for 10 minutes
  • 1656 - schedule bitcoin keysign with intervals to avoid keysign failures
  • 1662 - skip Goerli BlobTxType transactions introduced in Dencun upgrade
  • 1663 - skip Mumbai empty block if ethclient sanity check fails
  • 1661 - use estimated SegWit tx size for Bitcoin gas fee calculation
  • 1667 - estimate SegWit tx size in uinit of vByte
  • 1675 - use chain param ConfirmationCount for bitcoin confirmation

Chores

  • 1694 - remove standalone network, use require testing package for the entire node folder

Version: v12.1.0

Tests

  • 1577 - add chain header tests in E2E tests and fix admin tests

Features

  • 1658 - modify emission distribution to use fixed block rewards

Fixes

  • 1535 - Avoid voting on wrong ballots due to false blockNumber in EVM tx receipt
  • 1588 - fix chain params comparison logic
  • 1650 - exempt (discounted) system txs from min gas price check and gas fee deduction
  • 1632 - set keygen to KeygenStatus_KeyGenSuccess if its in KeygenStatus_PendingKeygen.
  • 1576 - Fix zetaclient crash due to out of bound integer conversion and log prints.
  • 1575 - Skip unsupported chain parameters by IsSupported flag

CI

  • 1580 - Fix release pipelines cleanup step.

Chores

  • 1585 - Updated release instructions
  • 1615 - Add upgrade handler for version v12.1.0

Features

  • 1591 - support lower gas limit for voting on inbound and outbound transactions
  • 1592 - check inbound tracker tx hash against Tss address and some refactor on inTx observation

Refactoring

  • 1628 optimize return and simplify code
  • 1640 reorganize zetaclient into subpackages

Refactoring

  • 1619 - Add evm fee calculation to tss migration of evm chains

Version: v12.0.0

Breaking Changes

TSS and chain validation related queries have been moved from crosschain module to observer module:

  • PendingNonces :Changed from /zeta-chain/crosschain/pendingNonces/{chain_id}/{address} to /zeta-chain/observer/pendingNonces/{chain_id}/{address} . It returns all the pending nonces for a chain id and address. This returns the current pending nonces for the chain.
  • ChainNonces : Changed from /zeta-chain/crosschain/chainNonces/{chain_id} to/zeta-chain/observer/chainNonces/{chain_id} . It returns all the chain nonces for a chain id. This returns the current nonce of the TSS address for the chain.
  • ChainNoncesAll :Changed from /zeta-chain/crosschain/chainNonces to /zeta-chain/observer/chainNonces . It returns all the chain nonces for all chains. This returns the current nonce of the TSS address for all chains.

All chains now have the same observer set:

  • ObserversByChain: /zeta-chain/observer/observers_by_chain/{observation_chain} has been removed and replaced with /zeta-chain/observer/observer_set. All chains have the same observer set.
  • AllObserverMappers: /zeta-chain/observer/all_observer_mappers has been removed. /zeta-chain/observer/observer_set should be used to get observers.

Observer params and core params have been merged into chain params:

  • Params: /zeta-chain/observer/params no longer returns observer params. Observer params data have been moved to chain params described below.
  • GetCoreParams: Renamed into GetChainParams. /zeta-chain/observer/get_core_params moved to /zeta-chain/observer/get_chain_params.
  • GetCoreParamsByChain: Renamed into GetChainParamsForChain. /zeta-chain/observer/get_core_params_by_chain moved to /zeta-chain/observer/get_chain_params_by_chain.

Getting the correct TSS address for Bitcoin now requires proviidng the Bitcoin chain id:

  • GetTssAddress : Changed from /zeta-chain/observer/get_tss_address/ to /zeta-chain/observer/getTssAddress/{bitcoin_chain_id} . Optional bitcoin chain id can now be passed as a parameter to fetch the correct tss for required BTC chain. This parameter only affects the BTC tss address in the response.

Features

  • 1498 - Add monitoring(grafana, prometheus, ethbalance) for localnet testing
  • 1395 - Add state variable to track aborted zeta amount
  • 1410 - snapshots commands
  • enable zetaclients to use dynamic gas price on zetachain - enables >0 min_gas_price in feemarket module
  • add static chain data for Sepolia testnet
  • added metrics to track the burn rate of the hotkey in the telemetry server as well as prometheus

Fixes

  • 1554 - Screen out unconfirmed UTXOs that are not created by TSS itself
  • 1560 - Zetaclient post evm-chain outtx has...
Read more

v13.0.0

20 Feb 18:04
Compare
Choose a tag to compare

CHANGELOG

Version: v13.0.0

Breaking Changes

  • zetaclientd start: now requires 2 inputs from stdin: hotkey password and tss keyshare password
    Starting zetaclient now requires two passwords to be input; one for the hotkey and another for the tss key-share.
    More information can be found in zetaclient migration doc.

Features

  • 1698 - bitcoin dynamic depositor fee

Docs

  • 1731 added doc for hotkey and tss key-share password prompts.

Features

*[1728] (#1728) - allow aborted transactions to be refunded by minting tokens to zEvm.

Refactor

  • 1766 - Refactors the PostTxProcessing EVM hook functionality to deal with invalid withdraw events
  • 1630 added password prompts for hotkey and tss keyshare in zetaclient
    Starting zetaclient now requires two passwords to be input; one for the hotkey and another for the tss key-share.
  • 1760 - Make staking keeper private in crosschain module

Fixes

  • 1678 - clean cached stale block to fix evm outtx hash mismatch
  • 1690 - double watched gas prices and fix btc scheduler
  • 1687 - only use EVM supported chains for gas stability pool
  • 1692 - fix get params query for emissions module
  • 1706 - fix CLI crosschain show-out-tx-tracker
  • 1707 - fix bitcoin fee rate estimation
  • 1712 - increase EVM outtx inclusion timeout to 20 minutes
  • 1733 - remove the unnecessary 2x multiplier in the convertGasToZeta RPC
  • 1721 - zetaclient should provide bitcoin_chain_id when querying TSS address
  • 1744 - added cmd to encrypt tss keyshare file, allowing empty tss password for backward compatibility.

Tests

  • 1584 - allow to run E2E tests on any networks
  • 1753 - fix gosec errors on usage of rand package
  • 1762 - improve coverage for fungibile module

CI

  • Adjusted the release pipeline to be a manually executed pipeline with an approver step. The pipeline now executes all the required tests run before the approval step unless skipped.
  • Added pipeline to build and push docker images into dockerhub on release for ubuntu and macos.
  • Adjusted the pipeline for building and pushing docker images for MacOS to install and run docker.
  • Added docker-compose and make commands for launching full nodes. make mainnet-zetarpc-node make mainnet-bitcoind-node
  • Made adjustments to the docker-compose for launching mainnet full nodes to include examples of using the docker images build from the docker image build pipeline.
  • 1736 - chore: add Ethermint endpoints to OpenAPI

Chores

  • 1729 - add issue templates
  • 1754 - cleanup expected keepers

Version: v12.2.4

Fixes

  • 1638 - additional check to make sure external chain height always increases
  • 1672 - paying 50% more than base gas price to buffer EIP1559 gas price increase
  • 1642 - Change WhitelistERC20 authorization from group1 to group2
  • 1610 - add pending outtx hash to tracker after monitoring for 10 minutes
  • 1656 - schedule bitcoin keysign with intervals to avoid keysign failures
  • 1662 - skip Goerli BlobTxType transactions introduced in Dencun upgrade
  • 1663 - skip Mumbai empty block if ethclient sanity check fails
  • 1661 - use estimated SegWit tx size for Bitcoin gas fee calculation
  • 1667 - estimate SegWit tx size in uinit of vByte
  • 1675 - use chain param ConfirmationCount for bitcoin confirmation

Chores

  • 1694 - remove standalone network, use require testing package for the entire node folder

Version: v12.1.0

Tests

  • 1577 - add chain header tests in E2E tests and fix admin tests

Features

  • 1658 - modify emission distribution to use fixed block rewards

Fixes

  • 1535 - Avoid voting on wrong ballots due to false blockNumber in EVM tx receipt
  • 1588 - fix chain params comparison logic
  • 1650 - exempt (discounted) system txs from min gas price check and gas fee deduction
  • 1632 - set keygen to KeygenStatus_KeyGenSuccess if its in KeygenStatus_PendingKeygen.
  • 1576 - Fix zetaclient crash due to out of bound integer conversion and log prints.
  • 1575 - Skip unsupported chain parameters by IsSupported flag

CI

  • 1580 - Fix release pipelines cleanup step.

Chores

  • 1585 - Updated release instructions
  • 1615 - Add upgrade handler for version v12.1.0

Features

  • 1591 - support lower gas limit for voting on inbound and outbound transactions
  • 1592 - check inbound tracker tx hash against Tss address and some refactor on inTx observation

Refactoring

  • 1628 optimize return and simplify code
  • 1640 reorganize zetaclient into subpackages

Refactoring

  • 1619 - Add evm fee calculation to tss migration of evm chains

Version: v12.0.0

Breaking Changes

TSS and chain validation related queries have been moved from crosschain module to observer module:

  • PendingNonces :Changed from /zeta-chain/crosschain/pendingNonces/{chain_id}/{address} to /zeta-chain/observer/pendingNonces/{chain_id}/{address} . It returns all the pending nonces for a chain id and address. This returns the current pending nonces for the chain.
  • ChainNonces : Changed from /zeta-chain/crosschain/chainNonces/{chain_id} to/zeta-chain/observer/chainNonces/{chain_id} . It returns all the chain nonces for a chain id. This returns the current nonce of the TSS address for the chain.
  • ChainNoncesAll :Changed from /zeta-chain/crosschain/chainNonces to /zeta-chain/observer/chainNonces . It returns all the chain nonces for all chains. This returns the current nonce of the TSS address for all chains.

All chains now have the same observer set:

  • ObserversByChain: /zeta-chain/observer/observers_by_chain/{observation_chain} has been removed and replaced with /zeta-chain/observer/observer_set. All chains have the same observer set.
  • AllObserverMappers: /zeta-chain/observer/all_observer_mappers has been removed. /zeta-chain/observer/observer_set should be used to get observers.

Observer params and core params have been merged into chain params:

  • Params: /zeta-chain/observer/params no longer returns observer params. Observer params data have been moved to chain params described below.
  • GetCoreParams: Renamed into GetChainParams. /zeta-chain/observer/get_core_params moved to /zeta-chain/observer/get_chain_params.
  • GetCoreParamsByChain: Renamed into GetChainParamsForChain. /zeta-chain/observer/get_core_params_by_chain moved to /zeta-chain/observer/get_chain_params_by_chain.

Getting the correct TSS address for Bitcoin now requires proviidng the Bitcoin chain id:

  • GetTssAddress : Changed from /zeta-chain/observer/get_tss_address/ to /zeta-chain/observer/getTssAddress/{bitcoin_chain_id} . Optional bitcoin chain id can now be passed as a parameter to fetch the correct tss for required BTC chain. This parameter only affects the BTC tss address in the response.

Features

  • 1498 - Add monitoring(grafana, prometheus, ethbalance) for localnet testing
  • 1395 - Add state variable to track aborted zeta amount
  • 1410 - snapshots commands
  • enable zetaclients to use dynamic gas price on zetachain - enables >0 min_gas_price in feemarket module
  • add static chain data for Sepolia testnet
  • added metrics to track the burn rate of the hotkey in the telemetry server as well as prometheus

Fixes

  • 1554 - Screen out uncon...
Read more

v12.3.0-rc

13 Feb 23:54
95bdb7e
Compare
Choose a tag to compare
v12.3.0-rc Pre-release
Pre-release

CHANGELOG

Unreleased

  • zetaclientd start : 2 inputs required from stdin

Features

  • 1698 - bitcoin dynamic depositor fee

Docs

  • 1731 added doc for hotkey and tss key-share password prompts.

Features

*[1728] (#1728) - allow aborted transactions to be refunded by minting tokens to zEvm.

Refactor

  • 1630 added password prompts for hotkey and tss keyshare in zetaclient
    Starting zetaclient now requires two passwords to be input; one for the hotkey and another for the tss key-share.

Fixes

  • 1678 - clean cached stale block to fix evm outtx hash mismatch
  • 1690 - double watched gas prices and fix btc scheduler
  • 1687 - only use EVM supported chains for gas stability pool
  • 1692 - fix get params query for emissions module
  • 1706 - fix CLI crosschain show-out-tx-tracker
  • 1707 - fix bitcoin fee rate estimation
  • 1712 - increase EVM outtx inclusion timeout to 20 minutes
  • 1733 - remove the unnecessary 2x multiplier in the convertGasToZeta RPC
  • 1721 - zetaclient should provide bitcoin_chain_id when querying TSS address
  • 1744 - added cmd to encrypt tss keyshare file, allowing empty tss password for backward compatibility.

Tests

  • 1584 - allow to run E2E tests on any networks
  • 1753 - fix gosec errors on usage of rand package

CI

  • CI: adding pipeline to build and push docker images into dockerhub on release for ubuntu and macos.
  • Added docker-compose and make commands for launching full nodes. make mainnet-zetarpc-node make mainnet-bitcoind-node
  • 1736 - chore: add Ethermint endpoints to OpenAPI

Chores

  • 1729 - add issue templates

Version: v12.2.4

Fixes

  • 1638 - additional check to make sure external chain height always increases
  • 1672 - paying 50% more than base gas price to buffer EIP1559 gas price increase
  • 1642 - Change WhitelistERC20 authorization from group1 to group2
  • 1610 - add pending outtx hash to tracker after monitoring for 10 minutes
  • 1656 - schedule bitcoin keysign with intervals to avoid keysign failures
  • 1662 - skip Goerli BlobTxType transactions introduced in Dencun upgrade
  • 1663 - skip Mumbai empty block if ethclient sanity check fails
  • 1661 - use estimated SegWit tx size for Bitcoin gas fee calculation
  • 1667 - estimate SegWit tx size in uinit of vByte
  • 1675 - use chain param ConfirmationCount for bitcoin confirmation

Chores

  • 1694 - remove standalone network, use require testing package for the entire node folder

Version: v12.1.0

Tests

  • 1577 - add chain header tests in E2E tests and fix admin tests

Features

  • 1658 - modify emission distribution to use fixed block rewards

Fixes

  • 1535 - Avoid voting on wrong ballots due to false blockNumber in EVM tx receipt
  • 1588 - fix chain params comparison logic
  • 1650 - exempt (discounted) system txs from min gas price check and gas fee deduction
  • 1632 - set keygen to KeygenStatus_KeyGenSuccess if its in KeygenStatus_PendingKeygen.
  • 1576 - Fix zetaclient crash due to out of bound integer conversion and log prints.
  • 1575 - Skip unsupported chain parameters by IsSupported flag

CI

  • 1580 - Fix release pipelines cleanup step.

Chores

  • 1585 - Updated release instructions
  • 1615 - Add upgrade handler for version v12.1.0

Features

  • 1591 - support lower gas limit for voting on inbound and outbound transactions
  • 1592 - check inbound tracker tx hash against Tss address and some refactor on inTx observation

Refactoring

  • 1628 optimize return and simplify code
  • 1640 reorganize zetaclient into subpackages

Refactoring

  • 1619 - Add evm fee calculation to tss migration of evm chains

Version: v12.0.0

Breaking Changes

TSS and chain validation related queries have been moved from crosschain module to observer module:

  • PendingNonces :Changed from /zeta-chain/crosschain/pendingNonces/{chain_id}/{address} to /zeta-chain/observer/pendingNonces/{chain_id}/{address} . It returns all the pending nonces for a chain id and address. This returns the current pending nonces for the chain.
  • ChainNonces : Changed from /zeta-chain/crosschain/chainNonces/{chain_id} to/zeta-chain/observer/chainNonces/{chain_id} . It returns all the chain nonces for a chain id. This returns the current nonce of the TSS address for the chain.
  • ChainNoncesAll :Changed from /zeta-chain/crosschain/chainNonces to /zeta-chain/observer/chainNonces . It returns all the chain nonces for all chains. This returns the current nonce of the TSS address for all chains.

All chains now have the same observer set:

  • ObserversByChain: /zeta-chain/observer/observers_by_chain/{observation_chain} has been removed and replaced with /zeta-chain/observer/observer_set. All chains have the same observer set.
  • AllObserverMappers: /zeta-chain/observer/all_observer_mappers has been removed. /zeta-chain/observer/observer_set should be used to get observers.

Observer params and core params have been merged into chain params:

  • Params: /zeta-chain/observer/params no longer returns observer params. Observer params data have been moved to chain params described below.
  • GetCoreParams: Renamed into GetChainParams. /zeta-chain/observer/get_core_params moved to /zeta-chain/observer/get_chain_params.
  • GetCoreParamsByChain: Renamed into GetChainParamsForChain. /zeta-chain/observer/get_core_params_by_chain moved to /zeta-chain/observer/get_chain_params_by_chain.

Getting the correct TSS address for Bitcoin now requires proviidng the Bitcoin chain id:

  • GetTssAddress : Changed from /zeta-chain/observer/get_tss_address/ to /zeta-chain/observer/getTssAddress/{bitcoin_chain_id} . Optional bitcoin chain id can now be passed as a parameter to fetch the correct tss for required BTC chain. This parameter only affects the BTC tss address in the response.

Features

  • 1498 - Add monitoring(grafana, prometheus, ethbalance) for localnet testing
  • 1395 - Add state variable to track aborted zeta amount
  • 1410 - snapshots commands
  • enable zetaclients to use dynamic gas price on zetachain - enables >0 min_gas_price in feemarket module
  • add static chain data for Sepolia testnet
  • added metrics to track the burn rate of the hotkey in the telemetry server as well as prometheus

Fixes

  • 1554 - Screen out unconfirmed UTXOs that are not created by TSS itself
  • 1560 - Zetaclient post evm-chain outtx hashes only when receipt is available
  • 1516 - Unprivileged outtx tracker removal
  • 1537 - Sanity check events of ZetaSent/ZetaReceived/ZetaRevertedWithdrawn/Deposited
  • 1530 - Outbound tx confirmation/inclusion enhancement
  • 1496 - post block header for enabled EVM chains only
  • 1518 - Avoid duplicate keysign if an outTx is already pending
  • fix Code4rena issue - zetaclients potentially miss inTx when PostSend (or other RPC) fails
  • fix go-staticcheck warnings for zetaclient
  • fix Athens-3 issue - incorrect pending-tx inclusion and incorrect confirmation count
  • masked zetaclient config at startup
  • set limit for queried pending cctxs
  • add check to verify new tss has been produced when triggering tss funds migration
  • fix Athens-3 log print issue - avoid posting uncessary outtx confirmation
  • fix docker build issues with version: golang:1.20-alpine3.18
  • 1525 - relax EVM chain bl...
Read more

v12.2.6-testnet-only

13 Feb 00:22
965e366
Compare
Choose a tag to compare

What's Changed

What's Changed

Full Changelog: v12.2.5...12.2.6-testnet

Changelog

  • 965e366 skip Goerli BlobTxType transaction and Mumbai empty block

v12.2.1-testnet-hotfix

09 Feb 15:54
Compare
Choose a tag to compare

Full Changelog: v12.2.1...v12.2.1-testnet-hotfix

Changelog

  • bc33ce8 fix: setup handler to 12.2.1

Changelog

  • bc33ce8 fix: setup handler to 12.2.1

v12.2.5

06 Feb 20:46
54d7613
Compare
Choose a tag to compare

Full Changelog: v12.2.4...v12.2.5

Changelog

  • 54d7613 provide bitcoin_chain_id when query tss address