Implement motions and transaction fee voting in Peercoin

As most of you are aware, there is a great deal of overlap in the holders and the code base of Nu and Peercoin. I had long ago mentioned a synergy in development between Peercoin and Nu would emerge once Nu became established. I’d like to demonstrate this synergy beyond what we have done so far with Peerunity by proposing that we move the motions and transaction fee voting mechanisms present or planned in Nu into Peercoin. It can certainly be done, though it is not a minor change and will require a mandatory upgrade.

There have been a variety of protocol modification controversies in the Peercoin community that have gone unresolved because a clear consensus could not be achieved. Motions, while not creating consensus, can certainly measure it accurately. It would help Peercoin to evolve and change as Peercoiners see fit.

The transaction fee voting mechanism is not yet implemented in Nu, though a motion to implement it has been passed. Obviously, the motion mechanism in Nu is presently fully implemented.

These changes would need to be implemented by a developer with access to the NuBit code repository, which is carefully protected at the present time. For this reason and because a significant portion of Nu’s coding innovations would be open sourced in the Peercoin or Peerunity repository, Nu shareholders would need to approve this access to and transfer of Nu code. glv and sigmike are both developers that are qualified to do this. glv doesn’t have access to the NuBit code repository, but that could be negotiated if he is interested. In time other developers might become available as well.

Funding of this project is something else to be considered and negotiated. I would prefer it be funded with donations from Peercoin holders.

Others can explain to Peercoiners unfamiliar with the motion and transaction fee voting mechanisms in Nu how they operate. Additional details can be worked out if it becomes clear Peercoiners support this.

Please let the community know what you think of this proposal.

First of all, can we get a confirmation from Sunny whether he would allow this to be implemented if the community came to consensus that it was a good idea? We could talk about this all day long, but Sunny would need to ok it first.

Now a question from me. Most of the big Peercoin holders are people that were here when it was first released and got it really cheap. It’s a little different from Nu where the release of NuShares was controlled and only went to people who were positive about Nu and were going to be actively involved. Can we trust these early holders to act in Peercoin’s interest? I believe these early holders have more coins than the people who are actively engaged in this community right now. Of course that’s my assumption though. I just wonder whether we can trust these people.

Would the transaction fee voting automatically change the fee, or is it only a gauge of opinion and the core developers would have to change it manually based on the voting?

@Jordan
That is an interesting suggestion, but there’s an important that I think we should ask ourselves as peercoin holders.
NuBits is a DAC = Decentralized Autonomous Corporation

Peercoin is not intended as such, but as backbone currency or commodity.
In that sense, Implementing motions seems to me inappropriate.

If I buy peercoins today, I know for a fact the degree of dilution because of mint reward coin supply inflation. I can’t know the deflation caused by coin destruction due to fees and burning (or similar). Deflation reduce supply and should theoretically increase the price. Supply inflation the opposite.

It means that today I know for a fact how much the coin will stand to loose in value because of the protocol and any divergence should be pushing up the price.

If we introduce voting for the fee, the value of peercoins becomes even more of a speculation because now how much I will stand to loose because of the fee not being fixed.

Now… consider the implications of this. Basically we get fiat money all over again, where we can’t know the price of the asset in the future, because we dont know how people is going to vote.

All Peercoin derivatives, i.e. other contracts etc tied to Peercoin, will be affected by the volatility in the fee. That makes pricing of all of these potential future contracts a much more complicated project and Peercoin is a backbone currency less easy to work with.

Please dont do this guys n girls.

EDIT: I guess the good thing is that if this happens, I will see the fixes being implemented in the source code and vote with my wallet.

EDIT: If we really, really, really need the fee to change. Then just update the source code and convince enough people to migrate to the new source code. That’s the same thing but a much slower process and less prone to sharp crazy fee jumps because of someone with a lot money trying to attack the system economically or what not.

My first thought is that this is not necessary since you vote with the code you run.

Jordan
Can you please provide one or more examples?

Basically there are two choices: trust the holders of Peercoin to make decisions about its evolution or accept stagnation. I believe Peercoin must be nimble in its evolution if it is to remain competitive.

Furthermore, large stakeholders have the most at stake, so I can’t think of anyone better to trust.

If a portion of the community decides to change the fee it splits the network, destroying consensus. The voting mechanism NuShare holders have committed to permits opinions to be expressed and implemented that don’t carry any risk of splitting the network.

If the Peercoin price became quite high, the fee of 0.01 would be quite high, impairing adoption. On the other hand, it is quite possible to perform a denial of service attack if the transaction fee is too low. Voting for transaction fees would give Peercoin holders a quick way to halt a denial of service of attack on the network. Because the fee is 0.01 per kilobyte, a block can be bought and filled to capacity for about 10 Peercoins. This in turns means you could stage a successful denial of service that would make transactions very unreliable for 1440 Peercoins per day. You could disable the Peercoin network and bloat the blockchain at a rate of 144 MB per day for a little over a thousand US dollars per day right now. If transaction fee voting were available in Peercoin as it will function in Nu, you could change the fee in as little as a day, halting any such attack by raising the fee.

[quote=“pillow, post:4, topic:3030”]It means that today I know for a fact how much the coin will stand to loose in value because of the protocol and any divergence should be pushing up the price.

If we introduce voting for the fee, the value of peercoins becomes even more of a speculation because now how much I will stand to loose because of the fee not being fixed.

Now… consider the implications of this. Basically we get fiat money all over again, where we can’t know the price of the asset in the future, because we dont know how people is going to vote.

All Peercoin derivatives, i.e. other contracts etc tied to Peercoin, will be affected by the volatility in the fee. That makes pricing of all of these potential future contracts a much more complicated project and Peercoin is a backbone currency less easy to work with. [/quote]

The destruction of Peercoin via transaction fee has a very small effect on the value of Peercoin. Of much greater importance is the level of demand for Peercoins. They will have more value if the system is reliable (not vulnerable to denial of service attack or blockchain bloating) and fees are affordable and competitive. There is no way to know the value of Peercoin in the future regardless of whether this is implemented.

I don’t see how a variable transaction could negatively impact the use of Peercoin derivatives. Can you elaborate please?

Jordan
Can you please provide one or more examples?[/quote]

There has been much discussion and disagreement about whether to implement cold wallet minting. No action has been taken.

In December there was a great deal of discussion and controversy over the transaction fee and how we might make it adaptable. No action has been taken.

Sunny has indicated minting incentives are not optimized in Peercoin. I agree. We have evolved the minting incentives in the Nu code base. I haven’t taken the time to present the improvements that could be made to Peercoin minting incentives because I suspect no action will be taken.

When controversies emerge about the protocol there is always a wide array of opinions expressed, as it should be. The practice of the community seems to be 1 post = 1 vote with two thirds or three quarters support required to move forward with a change. This had made evolving Peercoin difficult. I’m proposing that forum posts only be used to shape the content of motions and then 1 Peercoin = 1 vote. It is a very precise and fair way of measuring consensus. That is all motions are, is a means of measuring of consensus. Why would anyone be opposed to measuring consensus? If consensus is proven, it provides a mandate for change, allowing us to agree to change the system despite a lack of unanimous support.

It looks like there is some controversy surrounding the practice of voting for transaction fees. As a result, I will amend my proposal to merely implementing a system for voting on motions. Then we can use the motion system to measure consensus on implementing a mechanism to allow stakeholders to adjust the transaction fee by voting as they mint.

I just wanted to respond to this one point. Sunny said back at the end of June that Sigmike was just starting to work on implementing cold-locked minting and that his proposal was solid. Has something changed since then? I assumed we were just waiting for the release of v0.5. Here are a couple posts from Sunny on it…

http://www.peercointalk.org/index.php?topic=3040.msg28438#msg28438

I am in favor of this new proposal to add motions to the Peercoin network (and its subsequent use for a transaction fee motion).

I am in favor of this new proposal to add motions to the Peercoin network (and its subsequent use for a transaction fee motion).[/quote]

Yes, I think this is reasonable as well. It could come in handy to guage the opinion of stakeholders on various issues.

I am in favor of this new proposal to add motions to the Peercoin network (and its subsequent use for a transaction fee motion).[/quote]

I am also in favour.

Cold wallet minting is an important feature of Peercoin and many people are expecting cold wallet minting to come with v0.5.

I think that it is better to focus on implementing cold wallet minting first and then decide whether or not to implement motions and voting in Peercoin.

If somebody can successfully implement cold wallet minting, I will be happy to favor on implementing motions and voting in Peercoin. Otherwise, I oppose to implement motions and voting in Peercoin.

In principle I am in favor of implementing voting but I think we should wait until the software and procedures of voting in nu, which I think is very innovative, is sufficiently validated, debugged, and understood in nu before it is adapted in peercoin.

If the proposal was to integrate a system like grants in Peercoin, I would agree with this statement. Motions votes, however, only indicate the direction of consensus and do not (at current time) trigger anything in the protocol. Now that Jordan has removed the original provision to update the protocol to allow dynamically generated transaction fees, I believe the risk is minimal to the core application.

Basically it’s adding a way for proof of stake blocks to add extra metadata into the blockchain (representing the hash of the motion being voted for) and a way to recognize when enough votes have been received in a given blockframe (timeframe of reference) to consider that it has been “passed”.

I like the idea of adding vote function in peercoin, but the question is how to vote this idea. :slight_smile: Yes, always different opinions.

Ostrichism, is my conclusion on bitcoin style cryptos. Rewards halves every 4 years, 21 million total supply bla bla, this kind of design neglect the real world demands and at the same time they hope being accepted by real world. Isn’t it ridiculous?

What we should design is a system which breathes naturally with the real world, interact with real world and become an organic component of real world.

I am in favor of this new proposal to add motions to the Peercoin network (and its subsequent use for a transaction fee motion).[/quote]

I am also in favour.[/quote]

I am for it too, it seems a good way forward.
But would be ideal to limit what it is possible to change with motions and voting and made very clear in some sort of document. To keep the whole system competitive with timely improvements but with solid fundamentals that have to remain stable.