Skip to content

GPOS Changes

Compare
Choose a tag to compare
@mseaward mseaward released this 17 Dec 20:01
· 33 commits to master since this release
983bf99

PeerplaysJS-lib 0.6.4 Beta Release Notes

As part of the GPOS enabled Peerplays Wallet 1.5.x beta release to public TESTNET, and supporting updates to the Peerplays blockchain, some additional changes were made to PeerplaysJS-lib library..

This release is the first implementation of many of the features proposed in PIP #002

About GPOS

The Peerplays blockchain uses Gamified Proof of Stake (GPOS) as the means to maintaining blockchain security while incorporating the human design elements necessary for effective voting mechanics.

By participating in GPOS you are staking your PPY for a period of 30 days. After the 30 day time period, you may request to withdraw the staked PPY.

During the staking period, you will be capable of participating in the voting of node operators and other important functions within the Peerplays ecosystem. Advisors, Witnesses, new Proposals, SONs, and other types of nodes and providers that make up the Peerplays ecosystem will benefit from your votes.

For your contribution in helping secure the blockchain, you will receive Participation Rewards. These rewards are based on the amount of PPY you have staked relative to the rest of the network distribution. Participation Rewards are given out each month and are based on the collective activity (i.e. blockchain fees) on the Peerplays blockchain. As more value comes into the network, this is sent to you as a reward for helping make it happen.

Updates

Security

Updates to some packages in use by the peerplaysjs-lib have been upgraded in a prior release. To view the changes due to security, please see this pull request.

Added

Two changes have been made to the serializer operations:

Last Vote Time

This is a new boolean parameter (account_update_last_voting_time) that must be provided when performing an account_update transaction. Providing true will update the account owner of the transactions update_last_voting_time. This parameter must be passed in the extensions object within the transaction for account_update.

extensions: {
  value: {
    update_last_voting_time: true | false
  }
}

Balance Type

This is a new enumeration parameter (vesting_balance_type) that must be provided when performing a vesting_balance_create and vesting_balance_withdraw transaction. Supported values are: "normal" and “gpos”.

The addition of the parameter allows the blockchain to differentiate whether or not the transaction to create/withdraw a vesting balance is of GPOS type.

balance_type: 'normal' | 'gpos'