You are viewing a single comment's thread from:

RE: Discord chat transcript: Handling of our core consensus model (VIVA - Sept. 20, 2017)

in #vivaconomy7 years ago (edited)

This transcript is too raw and should not have been released as-is. My raw train of thought should not be posted copy/paste style to steemit.

We have a marketing department to ELI5 it, but at the end of the day this isn't a proposal that is up for debate. It is an explanation of new tech and why we are changing certain things. It was intended for initial digestion of people inside discord because they are the ones most likely to be see any impact at all.

Please never do this again, it's bloody painful to read all the typos and mistakes I've made in the language and honestly if I feel like my stream of consciousness in discord is going to be trotted out without my signoff, I'm just going to crawl under a rock and release periodic statements through Press Releases.

Ok so multi-paragraph ELI5 version.

We found a structural problem in our initial consensus model.
This resulted in an issue in coming to final consensus within existing nodes.

Which all makes sense if you understand that we use something called "soft consensus", in otherwords numbers don't have to be perfect, just close enough that every player is able to act in their own self interest with some degree of assurance that the network will collectively back their actions and activities.

So let's back this up...

Every day each mint generates a "page", an intermediate snapshot demonstrating their understanding of certain critical numbers called "network parameters". These pages are collected over the course of a 7 day window and every Sunday at midnight the worker nodes search for the shortest path of settlement between mints using the last 7 pages as a guide. The path with the shortest number of hops to full settlement wins and becomes the block generated for the week. Remember VIVA only generates a single block each week and the prize for generating a block is your very own VIVA Crown.

Nothing in the above changes. It is as it always has been.

In VIVA we do not have "difficulty", our replacement for difficulty is just supply. You cannot mine or mint VIVA unless you are a Crown Holder with an established mint.

There is only so much coin that exists and our goal here is to optimize it's usage, not to mint the coin to oblivion.

So supply vs peg is actually the primary network parameter we care about. The only thing we can do to control price is to increase or decrease supplies. We have perfect control of supply because the network always has 100% perfect credit and it has many different tools on tap to make adjustments depending on the severity of the adjustment required.

Again this doesn't change, per se.

The purpose of a "page" is just to show all the other nodes you're still alive and you have some goal within the system. You do this by producing a report showing claimed funds, unclaimed funds and total supply as well as whatever you're trying claim the peg should be. In addition to this, you effectively staple all new contracts to the page to demonstrate you know about other activity the network needs to back and by stapling in new contracts you consent to this activity or at least you aren't opposing it.

This works because everything in VIVA is a contract that either creates VIVA, destroys VIVA or moves VIVA around while tracking ownership of some other asset. This means even if a contract is showing a USD face value, it is recorded in VIVA terms.

Nothing there has really changed either. This is how we have always worked.

In the old model, each mint could declare any quantity of unclaimed funds. They could then use this to fund new contracts. At that point the unclaimed funds would convert to claimed funds as of the next page.

The supply, claimed and unclaimed funds did not need to come to consensus until the weekly settlement window.

This fell down because they do need to come to consensus at the end of 7 days and that consensus doesn't work if everyone isn't running off the same page at the start of business each day.

In the old model, each mint produced it's own page. It would burn a TR if there were new contracts being stapled in, but each mint exclusively dealt with it's own contracts and thus each mint would see a different unclaimed funds number on it's own page.

That part is what did not work out.

So the change is as follows...
The default is for each mint to not produce a daily page anymore. This is a resource intensive activity and it makes more sense to have only mints that want to change the supply number somehow, produce a new page.

Thus each that wants to declare a supply change must produce a page, but only if they are proposing we change supplies. When they do this, they burn a TR as they always have when they perform this function.

The other change is that mints now include not only their own contracts, but the contracts of their peers as well. All outstanding contracts are supposed to go on all pages generated.

In exchange for doing this, a mint can reasonably expect that other mints will also burn a TR onto that page.

Since there can now only be a single canonical page each day. In an instance where there are 2 or more competing pages, he with the most TRs burnt, will win the day. If you are good about including other mint's contracts they should have no reason to produce a competing page.

If you have something vitally serious in a page you have generated and you really want to make sure the network accepts it as gospel, you simply buy more TRs and burn them on the contract.

This makes perfect sense from an engineering and economics standpoint and I hope it's easy enough for everyone to understand.

Almost every other change, is a reversion to our base design. We had certain hacks in place to allow TRs to act fungibly, and we are removing those hacks in favor of an engineering solution, that actually makes them fungible.

TRs now, no longer expire. They are valid forever with the caveat that we always define "forever" as 18 months with an additional 6 month window to fix things if something goes awry (mint got hacked etc).

Another addition is that TRs can now be redeemed "on demand", rather than waiting the 90 days for them to sink. This will allow a proper market to develop for TRs that will hopefully allow them to be priced closer to their actual value.

Keep in mind, that as a Crown Holder, a TR is effectively a blank check you are signing over. You should not sell them to mints you do not explicitly understand the activity of. This is why we will now add a whitelist & blacklist option to the stage that allows you to generate TRs.

The final option is to not generate a TR at all. We are adding the option to simply sink 1 TR's worth of VIVA as VIP every 90 days, for each VIVA Crown you own. This will allow you to build up a healthy reserve of VIP without any direct action on your part.

These changes are especially useful if you plan to start a mint with your Crowns and you only have one to a handful, since you will be able to do more with your Crowns and you do not need to burn a TR with your mint unless you are proposing a change to supply and/or overall allocation. You still may have to burn one once in awhile, but you don't need to burn one each day just to acknowledge the state of the network and you don't need to produce your own page as long as you are in agreement with the pages currently circulating.

I hope that clears everything up. Please clean this up and run it as the official notice of what is changing and why and realize that this isn't slated for VIVA 1.x it goes into VIVA 2.x which has many exciting new features to make VIVA an even more powerful tool for change.

Sort:  

Similar to WIlliam, I would appreciate if my chat room participation was removed from this post