-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BSIP83: Decouple BitAssets from Platform Governance Process #238
Changes from 3 commits
06657d3
9b208db
e02d4d8
d0db1a0
b80ac84
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
``` | ||
BSIP: 0083 | ||
Title: Decouple BitAssets from Platform Governance Process | ||
Authors: | ||
Alfredo Garcia | ||
Christopher Sanborn | ||
John M. Jones | ||
Michel Santos | ||
Nathan Hourt | ||
Peter Conrad | ||
Ryan R. Fox | ||
Status: Draft | ||
Type: Protocol | ||
Obsoletes: BSIP-0016, BSIP-0058, BSIP-0059, BSIP-0076 | ||
Created: 2019-10-07 | ||
Discussion: https://github.com/bitshares/bsips/issues/239 | ||
Worker: <TBD> | ||
``` | ||
|
||
# Abstract | ||
This BSIP separates the governance of the technical security of the blockchain from the governance of BitAssets. BitAssets are a collection of special case SmartCoin which conflate blockchain governance and market effectiveness. To best serve the BitShares protocol, the existing set of BitAssets must be reconfigured to separate the concerns of block production, price feeds, and market operations; that is to say: deterministic consensus, non-deterministic external data, and smart contract settings. | ||
|
||
Therefore, this BSIP defines a process for BitAssets management to ensure protocol security remains the singular focus of the block producer role, and give BitAssets the best chance for long-term viability by nominating a new custodian to quickly react to market conditions. | ||
|
||
# Motivation | ||
Block production is an essential component of the BitShares platform itself, and as such should be expected to take an agnostic and neutral view towards the products deployed within the platform. Therefore, this BSIP will define a process for BitAsset management to ensure protocol security remains the singular focus of the block producer role and give BitAssets the best chance for long-term stability by nominating a new custodian to quickly react to market conditions. In order for the distributed consensus mechanism of DPOS to achieve adequate decentralization, it is imperative that block producers maintain strict independence from the politics of individual products deployed on the platform. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If your proposed asset owner change for all bitassets passed, the witnesses wouldn't have a singular focus on block production as there are many user created smartcoins which can be fed by witnesses. I have 4 myself fed by several witnesses, configured in a private price feed publisher list. How was witness decentralization put at threat by the politics of bitassets? By having votes withdrawn if they didn't support rushed BSIPs targeting bitassets? Witnesses are an inherently political role, they have to campaign for their positions in the first place, so politics will always be at the forefront of their minds. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We have had block producers being voted out after reliably doing their job for years, because they didn't respond to price feed demands from debt holders within hours. This is endangering the stability of the blockchain. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I think you need carefully say that “demands from debt holders”. This is vote result. If your want to prevent witnesses being targeted because of the pricefeed, design a witnees of price feed mechanism. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Indeed the act of intimidating/coercing witnesses into implementing a BSIP prior to its WP activation (and before the BSIP left draft status) is deplorable (related bitsharestalk thread). Should the new asset owner position have been put to public bid, rather than nomination? Given the following most recent public cn-vote rep message on telegram threatening to replace core around the same time this bsip came out raises concerns.
It was activated in production prior to any WP activating: https://bitsharestalk.org/index.php?topic=29653.msg335831#msg335831 |
||
|
||
In short, this BSIP will put the BitAssets under the control of a new user account controlled by the stakeholders through a new type of voting. With this change, the newly appointed BitAssets manager will be able to independently maintain the parameters of their derivative asset without interference from the platform’s block producers and committee members. At the same time, the platform itself and its committee will not be unduly influenced by the demands of product management. An advantage gained by this is that the BitAsset manager will be able to react appropriately to rapidly changing market conditions, as may be required to properly maintain a successful derivative asset. | ||
|
||
# Rationale | ||
Because the BitAssets are currently controlled by platform-wide governance mechanisms, and because these are not well suited to the management of smart coins, which may at times need to respond quickly to market conditions, the authors propose to reorganize these assets to utilize a dedicated stakeholder-voted multisignature authority and thereby enable these assets to update in synchronization with market ebbs and flows. | ||
|
||
The block producers will no longer provide feeds for BitAssets. Instead another set of accounts will be authorized to provide feeds for BitAssets. These accounts will be elected through stake-weighted voting with a new voting token called BITASSET.MANAGEMENT. The initial distribution of this new voting token will be made equal to the current BTS distribution. Subsequently, tokens of this new asset can be freely transferred or traded. | ||
|
||
Stake-weighted voting will also be used to elect a BitAsset Manager account (bitasset-manager) who will have the authority to change the settings of any BitAsset that are currently changeable by the Committee through proposals. The Committee will retain full control over the manager account, but is expected to leave day-to-day operations to the new elected entity. | ||
|
||
# Specification | ||
The following technical changes are required: | ||
|
||
**Assignment of Accumulated Fees** | ||
|
||
At the hardfork date, the accumulated fees of the existing BitAssets will be transferred to the committee-account. | ||
|
||
**Creation of BITASSET.MANAGEMENT asset** | ||
|
||
At the hardfork date, a new BITASSET.MANAGEMENT asset will be created with the committee account as its owner and all flags and permissions disabled. The initial distribution will be made equal to the current BTS distribution. BTS that are locked up in open orders, in collateral positions, in HTLC objects or in vesting balances will be assigned to the owners of the respective positions. Other BTS positions are out of scope (e. g. stealth). | ||
Subsequently, tokens of this new asset can be freely transferred or traded. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also air drop to centralized exchanges, BEOS custodian accounts and etc? Great efforts on communications may be needed to make this protocol upgrade going smoothly. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes. It is up to the users who hold their BTS on CEXs or with BEOS to care about their voting rights. Most probably don't want to vote anyway, because otherwise they wouldn't do this. Also, this will not be the first time that users will be pre-warned to hold funds in their own account if they want to participate in a sharedrop. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't think the “Creation of BITASSET.MANAGER asset” is necessary. This will also push the bitasset to be a third party, it's no different with before words. What's the right method is which the stakeholder of BTS vote the price feeder and committee of bitasset. |
||
|
||
**Add a feeding_authority extension to BitAssets** | ||
|
||
An extension will be added to `asset_update_bitasset_operation` that allows specifying an elected authority (see BSIP-0084) for determining the list of feed producers. `asset_publish_feed_operation` will be adapted to check that authority if the extension is present on a BitAsset. | ||
|
||
**Addition of voting process through BITASSET.MANAGEMENT** | ||
|
||
Two new elected authorities (see BSIP-0084) will be created based on the BITASSET.MANAGEMENT asset with settings that match the current voting mechanism (regarding min/max_number and proxy_allowed). The first one is for controlling the new bitasset-manager account (see below), the second one for selecting price feeders. | ||
|
||
**Update to Committee-Controlled BitAsset Issuer Fields** | ||
|
||
At the hardfork date, a new bitasset-manager account will be created with its owner and active authorities controlled by the committee. | ||
The committee-controlled BitAsset objects' issuer fields will be updated to specify this new account. | ||
After the hardfork, the new account will be able to assign other feed producers at its discretion. | ||
|
||
**Disable the witness_fed_asset and committee_fed_asset Flags** | ||
|
||
At the hardfork date, the `witness_fed_asset` and `committee_fed_asset` flags will be unset from all BitAssets, and will be disabled from use in future assets. Afterwards, the witnesses will still be able to provide a pricefeed, but the list of price feeders is no longer tied to the witness role. Instead, the list will have to be managed manually by the asset issuer, until the new feeding_authority is defined. This ensures a smooth transition without interrupting operations. | ||
|
||
**Activate elected authorities** | ||
|
||
By approving this BSIP, the shareholders instruct the committee to set the active authority of the bitasset manager account to the entity elected to act as the bitasset-manager account, and to set the feeding_authority extension of all BitAssets controlled by the bitasset-manager account to the entity elected for the curation of the price feed list, after sufficient shareholders have voted on the new entities, but no later than two weeks after the hardfork date. | ||
|
||
**Enable Remittance of Worker Proposals in Core Asset** | ||
|
||
Escrow agents administering existing worker proposals presently denominated in BitAssets shall be authorized to remit worker payments in BitShares core asset, or in a BitAsset selected at the discretion of the workers and escrow agents. | ||
pmconrad marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
# Discussion | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Would be great to add:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The "Discussion" section is meant for including a condensed version of discussion that has taken place elsewhere. As in "We have also considered X but decided to go with Y because Z." There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The risks and stakeholder impact can be estimated without a prior discussion having taken place. In some of my past BSIPs I've used the discussions section to preemptively cover both for/against perspectives for issues informally raised outwith Github. |
||
|
||
## Worker Proposals | ||
|
||
Worker proposals were originally denominated in BitAssets with the intent to add liquidity in their respective markets. With BitAssets now being placed under user control, liquidity is no longer the concern of the platform. A further implication of placing BitAssets under custodian control is that workers being paid in BitAssets would be exposed to the risk of devaluation and/or de-pegging at the custodian's discretion. This BSIP aims to remedy this by allowing different payout methods deemed less risky. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The stability promise of BitAssets has been destroyed by BSIP-76. bitCNY is effectively pegged to 0.22 BTS/bitCNY now, with the same volatility as BTS. The goal of this BSIP is to decouple platform governance (including worker proposals) from BitAsset governance. Demanding payout in BitAssets for platform workers means they remain coupled. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. When the MSSR=110%, the bitasset still have the same volatility as BTS, but i didn't find someone say that. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That is not true. Only the spread was higher. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why is not true, when MSSR=110%, we have 20% volatility in bitasset. |
||
|
||
## Comparison with Recent Committee Proposal | ||
|
||
The BitShares Committee has recently [assumed the selection of price feeders for some BitAssets](https://bitsharestalk.org/index.php?topic=29702.0). This change shifts the selection of feed price providers from direct voting by BTS holders for block producers, who also provide feed prices, to indirect voting by BTS holders for Committee members. This is an applaudable first step. | ||
|
||
This BSIP goes further in that it decouples not only the selection for block producers from feed price providers, it also decouples the BitAsset ownership and management from the current committee. BTS holders will still be able to vote directly for Committee members and block producers. In addition, current BTS holders will be able to vote directly for feed price providers using their new BITASSET.MANAGEMENT tokens. | ||
|
||
# Summary | ||
|
||
In this BSIP the authors provide a unified solution to advance the project forward most efficiently. This proposal will decouple BitAssets from the rest of the BitShares platform with regard to governance. Instead, BitAssets can be controlled independently by a new BitAsset manager elected by interested parties. The platform will be governed by the elected witnesses and committee, as before. This BSIP does not impact non-BitAsset Smart Coins. | ||
|
||
# Copyright | ||
This document is placed into the public domain. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are the 'must have' bitasset reconfigurations which the committee is unable to perform?
Is the committee unable to achieve deterministic consensus on bitasset settings? What proof is there for this?
Why can't non-deterministic external data be a pull request for witness price feeds instead of requesting asset ownership transfer?