-
Notifications
You must be signed in to change notification settings - Fork 8
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
baip-0002.md #9
baip-0002.md #9
Conversation
@@ -0,0 +1,62 @@ | |||
BAIP: 0002 | |||
Title: Reform of loopholes in feed price mechanism | |||
Authors: cn-vote [email protected] |
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.
The whole cn-vote committee authored this BAIP?
|
||
|
||
# Abstract | ||
This BAIP defines reforms to the current feed price mechanism vulnerability. The specific program is: The` feed price` is the highest between the `current price` and the ` two-day moving average price` . |
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.
Only one vulnerability reform? The title refers to multiple vulnerabilities (loopholes) being reformed by this BAIP?
# Abstract | ||
This BAIP defines reforms to the current feed price mechanism vulnerability. The specific program is: The` feed price` is the highest between the `current price` and the ` two-day moving average price` . | ||
# Motivation | ||
After the failure of [BSIP42](https://github.com/bitshares/bsips/blob/master/bsip-0042.md), the current feed price mechanism has major loopholes and serious negatives, many cex exchanges use our vulnerability to maliciously short,which seriously damaged the ecological balance, which caused us to suffer many unnecessary losses and hindered the development of the entire ecology. |
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.
the current feed price mechanism has major loopholes and serious negatives
Nothing is wrong with the price feeding mechanism within the Bitshares core/ui code base. There may be issues with the price feed scripts which provide values for the price feeding mechanism, but you have not defined them - please fully define the 'major loopholes and serious negatives' so we're all on the same page.
many cex exchanges use our vulnerability to maliciously short
Allegations have only been made against one CEX, which others do you claim are maliciously shorting? Name and shame them.
which seriously damaged the ecological balance
economic balance instead of ecological balance?
caused us to suffer many unnecessary losses
The author cn-vote has suffered unnecessary losses? Surely these were fully acknowledged risks when the debt positions were opened?
hindered the development of the entire ecology.
do you mean economy? Ecology is a branch of biology, not economics 🤔
This has only affected market pegged assets, not UIA/EBA/ABA/PMA so it hasn't affected everything.
This BAIP defines reforms to the current feed price mechanism vulnerability. The specific program is: The` feed price` is the highest between the `current price` and the ` two-day moving average price` . | ||
# Motivation | ||
After the failure of [BSIP42](https://github.com/bitshares/bsips/blob/master/bsip-0042.md), the current feed price mechanism has major loopholes and serious negatives, many cex exchanges use our vulnerability to maliciously short,which seriously damaged the ecological balance, which caused us to suffer many unnecessary losses and hindered the development of the entire ecology. | ||
When the vulnerability has been expanded to be intolerable, in an emergency, the passage and execution of [BSIP76](https://github.com/bitshares/bsips/blob/master/bsip-0076.md) has temporarily blocked the expansion of the vulnerability. However, the current feed price mechanism is still in urgent need of reform. |
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.
in an emergency, the passage and execution of BSIP76
This has the order of events wrong - it was executed prior to achieving any network consensus (both USD & CNY) through devious means.
Do you intend for this BAIP to be implemented without waiting for network consensus too?
temporarily blocked the expansion of the vulnerability
6 weeks (and counting) of fraudulent/fake price feeds doesn't feel temporary at all, especially when the exit conditions rely on the BTS price exceeding the threshold price (unknown/indefinite duration). Further it's failed to follow up with voted upon accurate threshold feed prices - rejecting the reality of the current BTS market rate is a thinly veiled bail out for bad debtors.
Arguably it 'blocked' the alleged risk of CEX short attacks by actively defrauding bitasset holders.
However, the current feed price mechanism is still in urgent need of reform.
The price feed scripts for select bitassets are in scope for reform, not core/ui based bitshares price feed mechanisms.
Given how BSIP76 is indefinite, there's really no urgency. Your price feed changes won't go live until BSIP76 is dead, so why the rush?
When the vulnerability has been expanded to be intolerable, in an emergency, the passage and execution of [BSIP76](https://github.com/bitshares/bsips/blob/master/bsip-0076.md) has temporarily blocked the expansion of the vulnerability. However, the current feed price mechanism is still in urgent need of reform. | ||
# Rational | ||
"The feed price is the highest between the ` current price` and the `two-day moving average price` ". | ||
This BAIP does not conflict with the previous consensus on the feed price of all the communities. The feed provider continue to collect the feed price according to the original community consensus, and the community consensus on the protection of the black swan([BSIP58](https://github.com/bitshares/bsips/blob/master/bsip-0058.md)) and the minimum feed price is continued([BSIP76](https://github.com/bitshares/bsips/blob/master/bsip-0076.md)). |
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.
This BAIP does not conflict with the previous consensus on the feed price of all the communities.
It does conflict with historic/original consensus & past price feed changes have not achieve network consensus prior to implementation - actions not supported by all communities.
The feed provider continue to collect the feed price according to the original community consensus
Cool, so back to feeding accurate price feeds immediately, right? 😂
That was the original consensus, remember? All debtors agreed to this when they opened their debt positions prior to BSIP76.
black swan
This is old/invalid terminology from when an MPA could not recover from global settlement, now a global settlement event does not qualify as a 'black swan' as there are multiple exit conditions/routes.
the minimum feed price is continued (BSIP76)
Why? Does your BAIP not fully address the CEX short attack concerns? You claim this is urgent, but then propose delaying implementation of the 'reformed' price feed scripts indefinitely? (The only exit clause for BSIP76 is BTS price raising above threshold price - circumstances which can be directly impeded by the "multiple malicious CEX").
What alternative designs & related works were considered?
What important objections/concerns have been raised during discussions?
# Specifications | ||
## Implementing measures | ||
```c | ||
If (current price > two-day moving average price) { |
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.
How does the threshold price factor into your equation? Like the following? Or would you consider the threshold permanently null once the threshold has been exceeded?
const threshold_price = fraudulent_price; // Must never change under any circumstances /s
if (current price > threshold price) {
if (current price > two-day moving average price) {
feed price = current price;
} else {
feed price = two-day moving average price;
}
} else if (current price < threshold_price) {
feed price = threshold_price;
}
``` | ||
|
||
|
||
## Noun explanation |
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.
Worth replacing "noun" with "terminology" since this section explains more than individual nouns?
|
||
|
||
## Noun explanation | ||
* ` Current price ` : The real-time feed price of the current feed price mechanism before the reform. |
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.
Before what reform? This BAIP or BSIP76? (or earlier bitasset focused BSIPs?)
day moving average price` every hour to sample once,;m = 2, ` two-day moving average price` half an hour to sample once, And so on. | ||
## supplementary explanation | ||
To decide whether to reform of loopholes in feed price mechanism, 2 poll worker proposals will be created for voting: | ||
* Poll-BAIP**- Reform of loopholes in feed price mechanism. |
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.
Why not provide a more descriptive and non leading question? Like "Approve implementing a 2 day moving average for bitasset reference asset price feeds?". IMO It's misleading to imply this solves everything (considering it doesn't invalidate BSIP76 & only delays price feed impact by 2 days) and loads the poll in favour of implementation.
* Poll-BAIP**- Reform of loopholes in feed price mechanism. | ||
* Poll-BAIP**-Not reform of loopholes in feed price mechanism. | ||
|
||
If the voting confirm the change, committee will announce the change at least 3 days before the change is implemented by feed provider. |
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.
3 days is an unrealistic time frame to expect all price feed scripts to be changed in. Further, you state in this BAIP that this change won't be implemented until the threshold price defined by BSIP76 has been exceeded, so it may be 3 months after not 3 days before your price feed mechanism changes have any effect.
If the voting confirm the change, committee will announce the change at least 3 days before the change is implemented by feed provider. | ||
|
||
# Summary for Shareholders | ||
This program is simple and effective, and can prevent malicious short-selling or increase malicious short-selling costs to a certain extent. |
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.
This program is simple and effective
Can you provide proof of effectiveness? This BAIP does not provide any statistical evidence to support this statement.
can prevent malicious short-selling or increase malicious short-selling costs to a certain extent
If a CEX has a zero cost short attack (which the implied ZB attack was) then it's not an effective prevention mechanism at all, BSIP76 has been active for approx 6 weeks - 2 days pales by comparison.
If this BAIP proposed to temporarily isolate misbehaving CEX from the reference asset price sources then it'd harden the feeds from malicious no-cost short attacks.
BAIP 1: This non-technical paragraph serves as a place which can be used to to interact with BTS holders and help them form their opinion. It is not meant to be a marketing driven paragraph to convince BTS holders to vote for or against a proposal, though.
The current summary endorses voting for the proposal, can you summarize without bias please? Thanks
# Summary for Shareholders | ||
This program is simple and effective, and can prevent malicious short-selling or increase malicious short-selling costs to a certain extent. | ||
|
||
# Discussion |
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.
The discussion section is not yet fit for purpose, please follow the BAIP guidelines.
Why did you merge this baip? Zero response to reviews has been given. This
is a clear abuse of repo privileges & a complete disregard for baip due
process.
…On Thu, 7 Nov 2019, 03:25 zhouxiaobao-2010, ***@***.***> wrote:
Merged #9 <#9> into master.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#9?email_source=notifications&email_token=ADZAOFZG56DYAMMEPJFS4CLQSODEPA5CNFSM4JJX6QAKYY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOUWHWQZY#event-2777639015>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADZAOF2BWKDKDR7BG43SV6LQSODEPANCNFSM4JJX6QAA>
.
|
@zhouxiaobao-2010 it's not good to merge a pull request when the discussion is still going on. Although this pull request has been merged, personally I don't think it's ready for voting. @grctest IMHO the process is still to be clearly defined. We should put it in BSIP-01. |
Although I agree with the essence/core content of the BAIP, I also agree with @grctest and @abitmore that it needs a bit more polishing and discussion before merging. Just because it can get approved/voted due to current stake distribution, doesn't mean we don't have to be completely clear/transparent and descriptive towards the community as a whole. |
BAIP 1 states:
The author is not responsible for merging their own BAIP.
The pull request was force merged by the author despite community members claiming it's not an appropriate solution.
No BAIP editors (abit, jerry nor fabian) publicly approved this PR before merger, nor the number, label, status.
The title does not accurately describe the content. Why does OP have merge rights? Clearly they're being used in bad faith, like how the last PR was closed and reopened to discard review comments. |
Just FWIW, the PR was created by @wenhuadream and merged by @zhouxiaobao-2010, AFAIK they're not the same person, although both are in the cn-vote union/group (in this sense, since the author is cn-vote, we can say the author approved and merged his own draft). @zhouxiaobao-2010 is currently an active committee member thus has write permissions in the repository. More info and discussion in #11. |
Now this BAIP has been put to a poll?! https://bitsharestalk.org/index.php?topic=31255.0 What a load of nonsense, this BAIP is not fit for purpose & the authors cannot accept any criticism/critique. |
@zhouxiaobao-2010 Why did you merge this PR when many comments in this review remain unanswered? |
Abstract
This BAIP defines reforms to the current feed price mechanism vulnerability. The specific program is: The
feed price
is the highest between thecurrent price
and thetwo-day moving average price
.Motivation
After the failure of BSIP42, the current feed price mechanism has major loopholes and serious negatives, many cex exchanges use our vulnerability to maliciously short,which seriously damaged the ecological balance, which caused us to suffer many unnecessary losses and hindered the development of the entire ecology.
When the vulnerability has been expanded to be intolerable, in an emergency, the passage and execution of BSIP76 has temporarily blocked the expansion of the vulnerability. However, the current feed price mechanism is still in urgent need of reform.
Rational
"The feed price is the highest between the
current price
and thetwo-day moving average price
".This BAIP does not conflict with the previous consensus on the feed price of all the communities. The feed provider continue to collect the feed price according to the original community consensus, and the community consensus on the protection of the black swan(BSIP58) and the minimum feed price is continued(BSIP76).
This BAIP only requires the introduction of the abstract described in the feed price script, which is
"The feed price is the highest between the
current price
and thetwo-day moving average price
".Specifications
Implementing measures
Noun explanation
Current price
: The real-time feed price of the current feed price mechanism before the reform.Two-day moving average price
:two-day moving average price
=(current price (1)
+current price (2)
+current price ( 3)
...+current price (n)
)/n.sampling frequency
, which is 48 times, that is, n = 48*m; m is positive: m = 1, 2, 3....current price (k)
is the current price at the time of sampling. Thecurrent price (1)
is thecurrent price at this moment. The
current price (n)
is the current price at the time of 48 hours ago.Sampling interval
(in hours):sampling interval
= 48 / n = 48 / (48 * m). That is: m = 1,two- day moving average price
every hour to sample once,;m = 2,two-day moving average price
half an hour to sample once, And so on.supplementary explanation
To decide whether to reform of loopholes in feed price mechanism, 2 poll worker proposals will be created for voting:
If the voting confirm the change, committee will announce the change at least 3 days before the change is implemented by feed provider.
Summary for Shareholders
This program is simple and effective, and can prevent malicious short-selling or increase malicious short-selling costs to a certain extent.
Discussion
bitshares/bsips#244
See Also
https://bitsharestalk.org/index.php?topic=29698.0
https://bitsharestalk.org/index.php?topic=29699.0
https://bitsharestalk.org/index.php?topic=29635.0
https://bitsharestalk.org/index.php?topic=28418.0
https://bitsharestalk.org/index.php?topic=29684.0
https://bitsharestalk.org/index.php?topic=29687.0
Copyright
This document is placed in the public domain.