Open BhuzOr opened 4 years ago
The threshold is X% of the whole voting stake that is currently voting for any worker proposal in the BitShares platform.
I have thought about this but where can we check the whole voting stake now and always up to date?
Someone suggested take the highest vote on committee, witnesses and worker proposals. This can gamed easily as well and create unnecessary drama outside of BitAssets.
The main purpose of creating BAIP-Threshold Worker is make governance of BitAssets independent from witnesses and workers. There is no point endanger the stability of mainnet just because of BitAssets.
BEOS proxy (and his ~300M BTS voting power) did not participate in BSIP76 voting, neither FOR, AGAINST, or in determining the threshold for proposal approving.
Even if BEOS proxy vote against , BSIP-76 will get voted in. BSIP76 supported by cn-vote, alt and b-dex. Just a simple math.
The specific percentage can be determined through worker-proposal voting: eg, setting up worker-proposals for 50%, 60%, 70%, 80% etc, the one with more votes is chosen.
Threshold = Minimum Vote Required, 40% will make more sense since there is another criteria 1. FOR worker get more voting power than AGAINST worker.
Threshold = Minimum Vote Required, 40% will make more sense since there is another criteria 1. FOR worker get more voting power than AGAINST worker.
Requiring the worker-proposals to have > 50% of the whole voting stake makes that criteria useless.
Imho my proposed solution is better. In fact, in the case where there is low participation and some proxies do not vote, their vote will basically be counted as if they are voting for the AGAINST worker. This will make it harder for a single/very few proxies to be able to push a baip that evidently fails to attract the attention of stakeholders/proxies.
Requiring the worker-proposals to have > 50% of the whole voting stake makes that criteria useless.
True. But the reason to have FOR and AGAINST is we want to hear the voice from both side. It does not matter if they have 100 Million BTS or 1 BTS.
In fact, in the case where there is low participation and some proxies do not vote, their vote will basically be counted as if they are voting for the AGAINST worker.
Bitshares is decentralized blockchain. We can't force every BTS Holders to cast their vote for any worker proposals. They are free to Agree, Disagree, Neutral, No Opinion or just Not Interested for a worker proposal. We can't do mind reading for them but they can exercise their right as BTS holders. They can vote FOR if they Agree, vote AGAINST if they Disagree, vote both FOR and AGAINST if they are neutral, not voting if they have no opinion or just not interested.
This will make it harder for a single/very few proxies to be able to push a baip that evidently fails to attract the attention of stakeholders/proxies.
IMHO 40% of whole voting stake as threshold is a very high threshold requirement. Voters turnout rate for US election only have approximate 60%. Even BSIPS proposed to community recently only have 61Million vote VS Refund400K 621Million Vote. Those BSIPS vote even lower than threshold-bsip 152Million vote.
True. But the reason to have FOR and AGAINST is we want to hear the voice from both side. It does not matter if they have 100 Million BTS or 1 BTS.
From a purely decisional standpoint, once the FOR side reaches the threshold, it doesn't matter how small or big the AGAINST side is, the proposal got enough to be activated/implemented (considering FOR > AGAINST ofc). That being said, I agree that we should still know how much people/stake do not agree with the proposal. We can still have both FOR and AGAINST, use the FOR+Threshold as a decision mechanism, and AGAINST for informational purposes.
Bitshares is decentralized blockchain. We can't force every BTS Holders to cast their vote for any worker proposals. They are free to Agree, Disagree, Neutral, No Opinion or just Not Interested for a worker proposal. We can't do mind reading for them but they can exercise their right as BTS holders. They can vote FOR if they Agree, vote AGAINST if they Disagree, vote both FOR and AGAINST if they are neutral, not voting if they have no opinion or just not interested.
You are perfectly right, we can't force them to vote, but we can still decide how much stake is required to consider the vote valid; a quorum. Obviously it doesn't make sense to impose a quorum that we know it will never be reached... I think it's a matter of finding the right balance: it should be possible to reach the quorum but at the same time it shouldn't be reached if, for example, only 2 big proxies participate in the vote.
Voters turnout rate for US election only have approximate 60%.
That's, I guess, 60% of the entire American population with voting rights. I was more on the line with considering only the "active" voters and not the whole BTS stake. We could even consider the "active voting stake in the last x months", and have the threshold being a percentage of that.
Anyway, these are just my opinion, I could be wrong and I am open to other solutions as well as keeping the current mechanism if the consensus stays with that.
I think it would be very helpful to have some actual numbers. What's the current total stake that has ever voted for a worker, or a witness, or a committee member? What's the current total stake that has ever voted for at least a worker proposal? What's the current stake as the two above but considering only the last 3-6 months?
If BitUSD is going to have a threshold for pricefeed modification, then it should not be called BitUSD on the first place, nor be marketed as stable. Also, if that happens to be the case, then it should not be emmited by the committee at all. For, why would the committee assume responsibility for the decisions of the holders?
By extension, if SmartAssets price is to be faked by their debtors whenever those smart assets are most needed, then they should not be called SmartAsset at all, but DebtorAssets, prone-to-be-fakedAssets, or whatever adjust best to reality.
If BitUSD is going to have a threshold for pricefeed modification, then it should not be called BitUSD on the first place, nor be marketed as stable. Also, if that happens to be the case, then it should not be emmited by the committee at all. For, why would the committee assume responsibility for the decisions of the holders?
By extension, if SmartAssets price is to be faked by their debtors whenever those smart assets are most needed, then they should not be called SmartAsset at all, but DebtorAssets, prone-to-be-fakedAssets, or whatever adjust best to reality.
BAIP stands for BitAssets Improvement Proposal but can also seen as an improvement consensus. BitAssets are smartcoins technically owned by the "committee-account" on the BitShares blockchain.
BAIP does not apply to all smartcoins. There are private smartcoins such as HERTZ and HERO. Recently HERTZ changes its price feed source to obtain more accurate price. You may reach him in Telegram if you wish.
We could even consider the "active voting stake in the last x months", and have the threshold being a percentage of that.
Anyway, these are just my opinion, I could be wrong and I am open to other solutions as well as keeping the current mechanism if the consensus stays with that.
I think it would be very helpful to have some actual numbers. What's the current total stake that has ever voted for a worker, or a witness, or a committee member? What's the current total stake that has ever voted for at least a worker proposal? What's the current stake as the two above but considering only the last 3-6 months?
Cryptofresh: Active voting stake: 46.0% https://cryptofresh.com/ballots
BitshareScan: Total active voting stake: 27.2% https://bitsharescan.com/voting
The highest vote is gdex-witness who have 1.1Billion votes at this moment and circulation supply of BTS is 2.747Billion. This indicate Active voting stake should be at least 40%(1.1Billion/2.747Billion). It show that Cryptofresh have more accurate number of active voting stake.
If no further comment, I will submit a PR to change 2nd criteria from:
Change to:
如果没有其他意见,我将提交PR来将第二个标准从: 2.使工人获得比BAIP阈值工人更大的投票权。
更改为:
- FOR工人获得比阈值更多的投票权(总活跃投票权益* 40%)
Agree
Total active voting stake * 40%, considering the data provided by cryptofresh, would mean ~18% of the total stake. According to the same data, BEOS total proxy + cn-vote proxy, reach ~19%. For this reason, I think the initial 40% is too low.
Anyway, I really think we need more people to speak their minds. I urge committee members, core team members, proxies and other stakeholders to participate in this discussion.
At a glance, 40% of active voting stake seems too low. I think 50% would be better?
As I mention above, Total active voting stake * 40% is very high threshold requirement. Recently MKR have a Poll for Stability Fee Adjustment and they only have 0.36% participation rate.
We are not MKR... Seems like MKR doesn't have proxies?
Above is considering the current situation where the three biggest proxies have ~300M voting stake each. (beos, cn-vote, ~aggregated baozi)
Active voting stake * 40% doesn't even prevent 2.
The committee approved the creation of Worker: 1.14.236 BAIP-Threshold.
Any BTS holders/Proxy can vote BAIP-Threshold to increase the number of votes required, one of the criteria to pass a BAIP(BitAssets Improvement Proposal).
We are not MKR... Seems like MKR doesn't have proxies?
1. Do we want baip to be pushed by a single proxy? If no, then required stake must be > ~300M 2. Do we want baip to be pushed by the two biggest proxies? If no, then required stake must be > ~600M 3. Do we want baip to be pushed by the three biggest proxies? If no, then required stake must be > ~900M
Above is considering the current situation where the three biggest proxies have ~300M voting stake each. (beos, cn-vote, ~aggregated baozi)
Active voting stake * 40% doesn't even prevent 2.
I don't think the description is right. Big proxies is which the stakeholder they want to trust, if a single proxy have ~1500M voting stake, no Threshold can stop this proxy.
We can check the votes of witness and the current supply from the blockchain. We can get the median of witness votes is 839,532,715 BTS, current supply is 2,747,481,263 BTS, median of witness votes/current supply=30.6%.
# | NAME | VOTES | STATUS |
---|---|---|---|
1 | gdex-witness | 1,087,719,728 | Active |
2 | magicwallet.witness | 1,080,949,381 | Active |
3 | zapata42-witness | 992,947,052 | Active |
4 | btspp-witness | 973,851,543 | Active |
5 | in.abit | 972,319,405 | Active |
6 | bhuz | 971,560,055 | Active |
7 | witness.hiblockchain | 946,786,759 | Active |
8 | abc123 | 911,343,777 | Active |
9 | bangzi | 909,651,570 | Active |
10 | roelandp | 860,495,910 | Active |
11 | witness.yao | 818,569,520 | Active |
12 | delegate-zhaomu | 815,406,894 | Active |
13 | xn-delegate | 782,826,810 | Active |
14 | delegate.freedom | 777,477,011 | Active |
15 | ioex | 756,920,007 | Active |
16 | liondani | 728,139,010 | Active |
17 | clockwork | 719,217,011 | Active |
18 | openledger-dc | 689,636,220 | Active |
19 | terradacs-bp | 684,695,302 | Active |
20 | xeldal | 490,508,569 | Active |
Big proxies is which the stakeholder they want to trust, if a single proxy have ~1500M voting stake, no Threshold can stop this proxy.
True
We can check the votes of witness and the current supply from the blockchain. We can get the median of witness votes is 839,532,715 BTS, current supply is 2,747,481,263 BTS, median of witness votes/current supply=30.6%.
Big whale/proxy can unvote witnesses to lower the threshold. The purpose of BAIP-Threshold Worker is avoid this kind of drama. We want to make sure BAIP voting independent from witnesses voting and worker proposals voting.
Anyway, the committee approved the creation of Worker: 1.14.236 BAIP-Threshold. Any BTS holders/Proxy can vote BAIP-Threshold to increase the number of votes required, one of the criteria to pass a BAIP(BitAssets Improvement Proposal).
Big proxies is which the stakeholder they want to trust, if a single proxy have ~1500M voting stake, no Threshold can stop this proxy.
True
We can check the votes of witness and the current supply from the blockchain. We can get the median of witness votes is 839,532,715 BTS, current supply is 2,747,481,263 BTS, median of witness votes/current supply=30.6%.
Big whale/proxy can unvote witnesses to lower the threshold. The purpose of BAIP-Threshold Worker is avoid this kind of drama. We want to make sure BAIP voting independent from witnesses voting and worker proposals voting.
Anyway, the committee approved the creation of Worker: 1.14.236 BAIP-Threshold. Any BTS holders/Proxy can vote BAIP-Threshold to increase the number of votes required, one of the criteria to pass a BAIP(BitAssets Improvement Proposal).
Total voting stake should include ALL voteable objects. Including BAIP polls and threshold worker. I.e. you can't lower threshold unless you don't vote for ANYTHING.
That adds a large anti-incentive.
Think about voter apathy. BTS holders who are voting for witnesses, committee or worker proposals may have no interest to vote on BAIPs. Requiring a high threshold may negatively impact the efficiency of BitAsset management.
According to BAIP-0001: BAIP Purpose and Guidelines:
This implies the creation of a worker to determine, by stakeholders vote, what the threshold level for a BAIP to be considered community-approved should be.
I argue that this mechanism is easily subject to "manipulation", especially in those cases where participation in voting is reduced due to abstaining of large proxies.
We partially saw this with BSIP-76: BEOS proxy (and his ~300M BTS voting power) did not participate in BSIP76 voting, neither FOR, AGAINST, or in determining the threshold for proposal approving. This could easily lead to the remaining proxies (or even a single proxy) to have full decision-making power about a BAIP/BSIP implementation by voting the FOR worker and unvoting the threshold to lower the required-approving-limit at the same time. This is, imho, something we should avoid.
Therefore, I would like to open a discussion about other ways we could determine the threshold for BAIPs.
The one that came to my mind is pretty simple: The threshold is X% of the whole voting stake that is currently voting for any worker proposal in the BitShares platform.
The specific percentage can be determined through worker-proposal voting: eg, setting up worker-proposals for 50%, 60%, 70%, 80% etc, the one with more votes is chosen. We may require a quorum.