Skip to content

v2.0.16

Choose a tag to compare

@zenzenless zenzenless released this 14 Aug 08:23
· 6 commits to main since this release
c75403b

Meta Earth v2.0.16 Version Upgrade

Meta Earth v2.0.16 includes more than 50 updates, covering core modules such as Wstaking, Kyc, Gravity, DiD, Eibc, Sequencer, Rollapp, Wbank, Wdistri, Tron, and EVM,Involving new feature launch, Bug fix, security check enhancement, governance rule adjustment and performance optimization.


1. New Features

1.1 Tron cross-chain:

  • Added request-batch-confirm command-line transaction support.

1.2 NFT:

  • The class-address query interface adds a paging function;

  • The new paging function is added to the nft-filter query interface.

1.3 KYC:

  • Added the CreateSubAccount transaction to support the creation of sub-accounts.

2. Bug fixes

2.1 WStaking:

  • Fix the problem that the sum of the pledged interest of users in the whole region is not checked when the user interest is settled by MsgDelegate transaction: Check whether the sum of the pledged interest of all users in the region is sufficient before settlement, report an error if it is insufficient, and deduct the current user settlement interest if it is sufficient;

  • Fixed the verification logic error between the total pledge amount of the verifier and the reduced pledge amount of the user in the Undelegate transaction;

  • Fixed  /cosmos/staking/v1beta1/fixed_deposit_by_region query Interface。

2.2 Verifier Update:

  • Fixes an issue where the EndBlock BlockValidatorUpdates method does not eliminate duplicate Validator updates.

2.3 DID:

  • Repair the Genesis data verification function.

2.4 IBC:

  • Fix the OnRecv Packet method of transfergenesis. When the returned ack is nil or success, you can enable Transfers Enabled.

2.5 Gravity:

  • Fixed the problem that the chainName of the gravity/v1/last_observed_relayer query interface is written as bsc. Now both bsc and tron can be queried normally;

  • Fix the problem of repeatedly calculating the number of pending state extraction in the AddToOutgoingPool method;

  • Fixed the problem that when the MsgIncreaseBridge Fee transaction increases the cross-chain transaction Fee, the bridgeFee is not deducted from the Supply of bridgeToken.

2.6 KYC:

  • Fix the problem that inactive Service is incorrectly set as active when Genesis imports status data;

  • Fix the problem that the accumulated unsettled interest in the region is not deducted when the user interest of KYC transaction settlement is removed;

  • Fix the problem that the settlement interest of users with pledge in the experience area is not deducted from the accumulated unsettled interest in the experience area when executing the authentication KYC transaction;

  • Fix the problem that regions slices are initialized to empty data when QueryProtocol queries all regions.

2.7 District Treasury:

  • Fix the problem that transactions that withdraw money from the regional vault to the specified address do not verify the lock status of the receiving address-the locked address cannot receive tokens.

2.8 Rollapp:

  • Fixes the problem that the parameter is incorrectly passed by NewHeight in the freezeClientState method.

2.9 WBank:

  • Fix the problem that the input/output verification in the FeeToReceivers method is only executed after the transfer. Now it has been adjusted to the verification before the transfer.

2.10 WDistri:

  • Fix the common problem caused by forced conversion when the zone vault address type conversion fails in the EndBlock AllocateBlockReward method. Now, the error log is printed instead.

2.11 Eibc:

  • Fixed the problem that the query interface of QueryDemandOrdersByStatus incorrectly uses fulfiller and Recipient comparison. Now, it is changed to fulfiller and fulfileraddress comparison;

  • Fix the problem that the MsgUpdateDemandOrder interface is not registered in the codec.

2.12 Transaction Type:

  • Fixed legacy message types of MsgLeaveGroupRequest, MsgFreeGasAccount, MsgUpdateDao, MsgUpdateDidStatus and MsgTransferRegion transactions.

2.13 EVM:

  • Repair EVM-related functions to ensure that the EVM contract can be used normally.

3. Security Hardening

3.1 Gas fee:

  • Before deducting gasfee.

3.2 Verifier Creation:

  • When creating a verifier, it is prohibited to use the same public key as the ReplaceConsensusPubKey transaction.

3.3 Rollapp:

  • When executing an UpdateRollapp transaction, check whether the rollapp is being used;

  • When you execute an UpdateRollapp transaction, check whether the rollapp status is frozen;

  • Do not use the "/" character in the chain ID of the rollapp.

3.4 VC:

  • When executing the RemoveVC transaction, verify whether the VC certificate already exists.

3.5 DelayAck:

  • The RollappPacket is used to check whether the RollappId is consistent with the incoming rollappID.

3.6 NFT:

When casting NFT, check whether the current casting quantity exceeds the total issued quantity.

3.7 Gravity:

  • Check whether the relayer is online during the MsgConfirm Batch and MsgRelayerSetConfirm transaction;

  • The tryatteststation method rejects the request whose totalPower is 0, and adds the relayer online verification;

  • The query request whose req is nil is rejected.

3.8 WStaking:

  • The interface checks whether req is nil and blocks empty query requests.

  • The MsgSetFixedDepositCfgStatus transaction increases the status value verification.

  • The optimized msgnew -- ratemust be greater than 0 and within the [0.0001, 10000] interval.

3.9 Sequencer:

  • For the msgreplaceposer transaction, check whether the incoming rolappid is consistent with the rolappid corresponding to the old and new projecers.

3.10 DID:

  • Limit the size of the Data field in MsgCreateVC and msgupdateevc transactions.

3.11 Tron:

  • Optimize the ValidateTronAddress method to verify the address of the Tron chain.

3.12 KYC:

  • When creating an SBT for MsgCreateSBT transaction, check whether the SBT corresponding to the did already exists to prevent repeated creation.

3.13 Gas Account:

  • Reject requests with req = nil in the FreeGasAccounts and Is FreeGasAccount queries.

4. Rule Adjustment

4.1 Gas fee allocation mechanism:

  • When the transaction contains only one wasm type msg, 40% of the handling fee is allocated to the contract creator; When the transaction contains multiple msg, 40% of the handling fee is allocated to the feel_pool module account (the original 30% handling fee income of the feel_pool remains unchanged).

4.2 Gravity:

  • Remove the verification of the amount of the MsgBondedRelayer and MsgAddDelegate transactions.

  • Adjust the number of cross-chain bridge relay slash, adjust the amount limit;

  • umec tokens are prohibited from being transferred out during cross-chain transfer out.

4.3 KYC:

  • Remove the restriction that the same inviter can only issue invitation rewards once.

4.4 CreateRollapp:

  • Remove the restriction that the creator must be a whitelist address when the whitelist is not empty.

4.5 UpdateRollapp:

  • Removes the creator whitelist verification. Added only the creator of the rollapp can update the permission verification of the rollapp.

5. Performance Optimization

5.1 WStaking:

  • Optimize the interest calculation logic of beginBlock-skip directly when the pledge quantity in the area is 0;

  • Optimize the calculation method of pledge interest-return 0 reward directly when the pledge quantity is 0.

5.2 DelayAck:

  • Optimize  finalizeRollappPacket method。

5.3 Sequencer:

  • Optimize the verification between the msg.Bond parameter and the minBond parameter in the MsgCreateSequencer transaction.

5.4 Chain start:

  • Optimize the processing of the EIP155 chain ID.

5.5 EVM:

  • Adjust the name of the EVM Chain ID.

What's Changed

New Contributors

Full Changelog: v2.0.15...v2.0.16