Author Topic: BSIP-18: How to easily revive a BitAsset after Black Swan - read for comment  (Read 18393 times)

0 Members and 1 Guest are viewing this topic.

Offline Taconator

  • Newbie
  • *
  • Posts: 18
    • View Profile
seems you hired another fuck worker task
a core fork development even without code review and test.
you need to hired another fuck test worker and another review worker.
consider hire another fuck requirement worker
maybe a custom service worker.

blockchain fucker
Testers (other than myself) are not paid through the proposal, see http://www.bitshares.foundation/workers/2017-07-peter-conrad .

You must not have seen the units tests that were prepared by pc for this worker. In particular, see the completely new tests under swan_tests.cpp file, along with updates to existing tests in order to support the black swan revival.

Additionally, I do not think the words "fuck" and "fucker" means what you think it does. In this context it is both offensive and vulgar (and probably physically impossible). Surely, another word would be more appropriate.

Offline pc

  • Hero Member
  • *****
  • Posts: 1530
    • View Profile
    • Bitcoin - Perspektive oder Risiko?
  • BitShares: cyrano
Please rethink your wording.

Code review is one of the responsibilities of Alfredo, our paid developer. In return, I have reviewed other contributions, and the hardfork includes a lot more than just bsip-18. The bsip-18 code has been reviewed by several other volunteers as well. It's all on github if you really care.
I think the shareholders are getting very good value for this worker.

My opinion about witness responsibilities have been expressed in the proposal from the beginning. The shareholders have approved this. I don't know what you're complaining about.
Bitcoin - Perspektive oder Risiko? ISBN 978-3-8442-6568-2 http://bitcoin.quisquis.de

Offline alt

  • Hero Member
  • *****
  • Posts: 2821
    • View Profile
  • BitShares: baozi
seems you hired another fuck worker task
a core fork development even without code review and test.
you need to hired another fuck test worker and another review worker.
consider hire another fuck requirement worker
maybe a custom service worker.

blockchain fucker
Testers (other than myself) are not paid through the proposal, see http://www.bitshares.foundation/workers/2017-07-peter-conrad .
« Last Edit: October 03, 2017, 12:59:30 am by alt »

Offline pc

  • Hero Member
  • *****
  • Posts: 1530
    • View Profile
    • Bitcoin - Perspektive oder Risiko?
  • BitShares: cyrano
one question, if testing is part of the BSIP18 work, should the testers be paid from the fund of the worker proposal?

Testers (other than myself) are not paid through the proposal, see http://www.bitshares.foundation/workers/2017-07-peter-conrad .

Quote
My work includes the following milestones:

* 20% specification (already delivered, see BSIP-0018)
* 30% implementation (mostly finished)
* 10% integration into testnet (*)
* 10% testing (*)
* 10% bugfixes
* 10% integration into mainnet, including release (*)
* 5% supervision of hardfork (*)
* 5% supervision of initial coordinated MPA revival after hardfork (*)

I expect the current witnesses to actively assist in the items marked with (*). It is their responsibility to maintain the operation of the chain, and ultimately it is their decision which version of bitshares-core they use to produce blocks. With the current price of BTS, witness pay should be sufficient reward for their efforts.
Bitcoin - Perspektive oder Risiko? ISBN 978-3-8442-6568-2 http://bitcoin.quisquis.de

iHashFury

  • Guest
Great work @pc

I was able to:
  • reset SETTLE on the test-net
  • blackswan SETTLE again
  • then reset SETTLE using "bid_collateral" cli command
I look forward to seeing this code forked into bitshares-core
 8)

Offline bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1928
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
seem I need to go through my witness votes and kick out some of those that aren't as active as they are supposed to be for the amount of money they get.
By reducing the number of active witnesses we also reduce the operational costs of the blockchain ... let's see when people start complaining real hard ..

reducing the number of active witnesses is not a good idea, and this do not reduce the costs of the blockchain as block generating speed is not reduced.

one question, if testing is part of the BSIP18 work, should the testers be paid from the fund of the worker proposal?
Email:bitcrab@qq.com

Offline Fox

Thank you @pc for providing the CLI commands.

I was able to utilize these for testing FOXUSD (1.3.366) on the TESTNET. I am confident with the functionality of the code implemented therein.

Please note my APPROVAL of the code for release to MAINNET.
Witness: fox

Offline pc

  • Hero Member
  • *****
  • Posts: 1530
    • View Profile
    • Bitcoin - Perspektive oder Risiko?
  • BitShares: cyrano
In order to make testing easier for everyone, here are a few example CLI commands for creating a bitasset and generating a black swan. Also see http://docs.bitshares.eu/api/wallet-api.html#asset-calls .

Issuer "crn" creates an asset with symbol "CLOSED.USD", 4 decimals and the given asset options (all permissions, override_authority flag, core exchange rate of .1 CLOSED.USD / 1 TEST) and bitasset options (1 hour pricefeed lifetime, 1 hour settlement delay, 50% maximum settlement ratio):
Code: [Select]
create_asset crn CLOSED.USD 4 {"issuer_permissions":511,"flags":4,"core_exchange_rate":{"base":{"amount":1000,"asset_id":"1.3.1"},"quote":{"amount":100000,"asset_id":"1.3.0"}}} {"feed_lifetime_sec":3600,"force_settlement_delay_sec":3600,"maximum_force_settlement_volume":5000} true

Show the new asset (note its ID, it is required for publishing feeds):
Code: [Select]
get_asset CLOSED.USD

Set the list of feed producers to the issuer account only (alternatively, set the witness_fed_asset or the committee_fed_asset flag):
Code: [Select]
update_asset_feed_producers CLOSED.USD ["crn"] true

Publish a feed price of .1 CLOSED.USD / .00001 TEST and a core exchange rate of .0001 CLOSED.USD / .01 TEST (you have to substitute the ID of your own asset in two places!). Warning: with these settings someone can cheaply borrow CLOSED.USD and use them to empty the fee pool!
Code: [Select]
publish_asset_feed crn CLOSED.USD {"settlement_price":{"base":{"asset_id":"1.3.341","amount":1000},"quote":{"asset_id":"1.3.0","amount":1}},"maintenance_collateral_ratio":1750,"core_exchange_rate":{"base":{"amount":1,"asset_id":"1.3.341"},"quote":{"amount":1000,"asset_id":"1.3.0"}}} true

Account "crn" borrows 1000 CLOSED.USD from the blockchain, providing 0.2 TEST as collateral:
Code: [Select]
borrow_asset crn 1000 CLOSED.USD 0.2 true

Account "crn" settles 10 CLOSED.USD:
Code: [Select]
settle_asset crn 10 CLOSED.USD true
You have to wait for the settlement delay, i. e. 1 hour in the example, provided that there is a valid pricefeed at that time. If executed after a black swan, settlement happens immediately.

Account "crn" places a sell order of 10 CLOSED.USD for .01 TEST (no expiration, no fill-or-kill flag) on the market. The subsequent price feed update triggers the black swan (again, you have to substitute your asset ID twice):
Code: [Select]
sell_asset crn 10 CLOSED.USD .01 TEST 0 false true

publish_asset_feed crn CLOSED.USD {"settlement_price":{"base":{"asset_id":"1.3.341","amount":1000},"quote":{"asset_id":"1.3.0","amount":10}},"maintenance_collateral_ratio":1750,"core_exchange_rate":{"base":{"amount":1,"asset_id":"1.3.341"},"quote":{"amount":100,"asset_id":"1.3.0"}}} true

For the black swan it is required that the short position is margin called AND a sell order exists AND the short has insufficient collateral to cover the debt at the best sell price.
Bitcoin - Perspektive oder Risiko? ISBN 978-3-8442-6568-2 http://bitcoin.quisquis.de

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Any update in regards to the new software on testnet?  Is there any criteria in place to verify before scheduling a fork on the production network?

A very good questions. Yesterday I have asked the witnesses about the progress with their testing, but have yet to receive an answer.
Of course anyone is welcome to test on testnet, but the responsibility really lies with the witnesses, IMO.

Perhaps this is something the BitShares foundation can accomplish.  How do we hold witnesses to a higher standard?  Have a web page dedicated to witness feedback on items requiring testing?
thats exactly what the mailing lists there are supposed to do .. they need to grow in their traffic anyways, but i really cannot do everything in my own

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
seem I need to go through my witness votes and kick out some of those that aren't as active as they are supposed to be for the amount of money they get.
By reducing the number of active witnesses we also reduce the operational costs of the blockchain ... let's see when people start complaining real hard ..

Offline Brekyrself

  • Hero Member
  • *****
  • Posts: 512
    • View Profile
Any update in regards to the new software on testnet?  Is there any criteria in place to verify before scheduling a fork on the production network?

A very good questions. Yesterday I have asked the witnesses about the progress with their testing, but have yet to receive an answer.
Of course anyone is welcome to test on testnet, but the responsibility really lies with the witnesses, IMO.

Perhaps this is something the BitShares foundation can accomplish.  How do we hold witnesses to a higher standard?  Have a web page dedicated to witness feedback on items requiring testing?

Offline pc

  • Hero Member
  • *****
  • Posts: 1530
    • View Profile
    • Bitcoin - Perspektive oder Risiko?
  • BitShares: cyrano
Any update in regards to the new software on testnet?  Is there any criteria in place to verify before scheduling a fork on the production network?

A very good questions. Yesterday I have asked the witnesses about the progress with their testing, but have yet to receive an answer.
Of course anyone is welcome to test on testnet, but the responsibility really lies with the witnesses, IMO.
Bitcoin - Perspektive oder Risiko? ISBN 978-3-8442-6568-2 http://bitcoin.quisquis.de

Offline Brekyrself

  • Hero Member
  • *****
  • Posts: 512
    • View Profile
The hardfork on testnet went well today. We successfully revived some bitassets after artificially created black swans.

The bad news is that, so far, witness participation leaves much to be desired:
* Of the 25 active witnesses on mainnet, only 12 are currently active on testnet.
* During and after the hardfork only rnglab, bhuz and lafona showed up on telegram. Later, wackou and thom (aka verbaltech) showed up. (Xeroc and myself were also present, but we're not witnesses.)
* I'm not aware of any witnesses preparing and/or executing significant tests.

Witnesses, please perform any acceptance tests you deem necessary on testnet. Report any bugs you find on github, or here in this thread if you don't have a github account. If no showstoppers turn up, I plan to prepare the main release in about a week, with the hardfork date at least one month in the future (this is open to discussion of course).

Any update in regards to the new software on testnet?  Is there any criteria in place to verify before scheduling a fork on the production network?

Offline Brekyrself

  • Hero Member
  • *****
  • Posts: 512
    • View Profile
very happy to hear the revive asset process had worked in the testnet. will be nice to paste some output so the users can get familiar with the process commands needed.

in regards to the addition of testnet to the explorer proposed by @Brekyrself , it is definitely possible but will need a new server to run the testnet and the explorer backend. i think it is good to have the explorer working in the production and testnet side by side. i am not sure however if this will help knowing what witnesses are diligent, please explain me more about that.

thanks.

As far as data metrics, I was thinking just mirroring the production explorer.  Witnesses should be testing the latest and greatest to make sure no block production issues arise before hitting production.

The basics such as seeing if the production witnesses are even running a node on testnet?
How many blocks they have missed? 
Perhaps even blocks missed/last 24 hours?
Statistics around publishing feeds and how often?


Offline oxarbitrage

very happy to hear the revive asset process had worked in the testnet. will be nice to paste some output so the users can get familiar with the process commands needed.

in regards to the addition of testnet to the explorer proposed by @Brekyrself , it is definitely possible but will need a new server to run the testnet and the explorer backend. i think it is good to have the explorer working in the production and testnet side by side. i am not sure however if this will help knowing what witnesses are diligent, please explain me more about that.

thanks.