Marketplace Testnet Part 1
On Thursday Igor made a hard stop and prepared the first testnet featuring the marketplace elements. The first feature included on the deck is the account registration. With this feature, people are able to create
safex accounts which contains a public key which is used throughout the application level of the marketplace part of the blockchain, and a description.
The testnet release binaries and description can be found at this github link
Awesomely, @Astralite participated and took the indication directly and created an ad hoc schema for the description field of the account. Essentially, you are allowed to store anything you want in the description field, however, we intend to provide a standardized format so that all marketplace interpreting websites conform to some kind of logical and reasonable system that we can all quickly recognize information stored about a seller account.
So bravo to @Astralite for taking the initiative and demonstrating how you can store a mass of data in the description field, and parse it out neatly on a GUI.
On the left side
Rawis what you can store in the blockchain, and on the right side
Parsedis an example of the start of what the data would look like on a GUI.
We will provide a standard, yet anyone can participate and give their input. This is the beautiful magic of the open source software community.
Last week Igor continued with the development of the safex purchase flow. This is the process of buying a
safex offer which is something that a
safex account is able to put into the blockchain for all to purchase. He merged core tests to the marketplace development branch and should be starting on merging the purchase into the cli this week.
Following purchase we will need to add the feedback path. So, once you purchased something, you will then be able to leave feedback on that item and that seller.
The price peg feature is last on the list in the safexcore, though you will be able to already sell without a price peg by hard setting the sfx price and it will be possible to update the listing price after the product has been listed, the price peg would serve to handle the exchange rate verifiable in closest to real time.
We are planning to do another hard stop next week with the next set of features to test. Those features should include at least listing offers, and we hope it will include the purchase flow.
Last week was a deep overhaul of the go rpc. Daniel and Edoardo have been going through all cases of the application to get it ready for mainnet release. This included optimizing the synchronization methods to reduce the time that it takes to download blocks from the network and scan them for transactions you own.
The privacy aspect of Safex is accomplished because only you can generate a private key for a transaction that was sent to you. So like everyone no one knows what belongs to anyone, unless you try to unlock it. So the program downloads the block, scans it with your key and checks if any of those transactions come up positive for you.
That being said, we must download the whole chain and scan every transaction until the top to make sure that the application has recorded every transaction that belongs to its user. This is a pretty immense scan. So far we have reduced the sync time from what was 30 hours to ~2 hours. Edoardo has additional ideas to implement to further reduce the sync time. We have implemented a top block rescan, so a new wallet that for sure has no transactions to retrieve can just start from the top and avoid a total rescan initially.
Finally, we have addressed many cases of crashing, because we have done extensive tests inducing a crash of the module. So far all of the usual usage paths are addressed and it does not crash any longer unexpectedly when under typical usage such as in the GUI application. This is all great news, and it is shaping up.
Mining Algorithm Update
Last week we discovered a minor bug in our merge of the mining algorithm that we have scheduled to address in this week.
In the previous update we mentioned two parameters we must set for the update: the block to start it on, and the difficulty target. We did not manage to fit this in due to the bug discovery and being already heavily invested in the gosafex refactoring.
However, we do expect the mining algorithm to be updated this month, and we will continue to keep the community up to date on its progress.
Remember the migration will take place tomorrow: November 5. The next one will be on November 10th. The last one on November 30.
Please download the
Sails Wallet v7 https://safex.io/downloads and migrate before the cut off date.
The Safex Development Community