-
Notifications
You must be signed in to change notification settings - Fork 84
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
SIP-015: Upgrading Proof-of-Transfer Consensus #53
Conversation
…tro, add boiler plate for 1805: pox anchor forking
sips/sip-013/sip-013-pox-upgrade.md
Outdated
check this method's return value and set the locked amount in the | ||
stacker's STX account to correspond to the increased amount. | ||
|
||
### 5. `stack-unlock` |
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.
Does this method exist yet? Also, I'm not sure this is a desirable feature (at least, not without a steep early-withdrawal penalty). Part of the appeal of PoX's current behavior is that it compels people to hodl. Also, the number of reward cycles the stacker locks for is a strong signal to miners and the ecosystem that this stacker has full confidence in PoX for the lock-up duration. If we take that away, then it means that everyone is potentially just locking for the next reward cycle (since they can just exit afterwards), and there's not really a point to having a lock-up duration.
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.
I think this would be fine if you unlocked your tokens in-between when you locked them and when your first payout reward cycle begins, however (is that what this is for?).
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.
Looking at the example below, if the purpose of this method is to facilitate changing the PoX reward address, then why not just have a method to do that with the already-locked tokens?
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.
Does this method exist yet?
Some methods of this SIP have been implemented in next
, most haven't yet. But, I think as far as getting feedback on the SIP goes, we should ignore what has or hasn't been implemented: I think feedback on the SIP should inform what and how things get implemented, rather than the inverse.
Part of the appeal of PoX's current behavior is that it compels people to hodl. Also, the number of reward cycles the stacker locks for is a strong signal to miners and the ecosystem that this stacker has full confidence in PoX for the lock-up duration. If we take that away, then it means that everyone is potentially just locking for the next reward cycle (since they can just exit afterwards), and there's not really a point to having a lock-up duration.
This is a very useful feature in and of itself -- obviously, it would break incentives to allow users to unlock during a reward cycle, but before one that hasn't occurred yet shouldn't alter incentives. Rather, without this feature, PoX would encourage users that wish to have the freedom to unlock to only stack for one cycle at a time, continuously invoking stack-extend
to get the same support, but with much more overhead (and stress about timing transactions before prepare phases).
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.
Rather, without this feature, PoX would encourage users that wish to have the freedom to unlock to only stack for one cycle at a time, continuously invoking stack-extend to get the same support, but with much more overhead (and stress about timing transactions before prepare phases).
I think that's desirable, actually. If you want the option to stack for a shorter amount of time, and want the freedom to decide whether or not to extend in each cycle, then the system should require you to send a transaction in each cycle to extend your lock. Put another way, the system should offer you a better deal for locking up for longer, since you locking up your tokens provides a service to the ecosystem (i.e. you signal confidence to miners that the network will be stable during your lockup). In general, we want people locking up their STX for as long as possible, since it makes liquid STX more valuable, which in turn makes it easier for miners to sell their newly-minted STX at a profit.
sips/sip-013/sip-013-pox-upgrade.md
Outdated
"uncommit" from the operator's pool would introduce denial-of-service vectors | ||
to the pool. | ||
|
||
### 8. `stack-aggregation-rollback` |
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.
Under what circumstances would an operator use this method?
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.
If they wanted to increase the amount that they committed, but the increase by itself wouldn't be enough to get another entry in the rewards table.
sips/sip-013/sip-013-pox-upgrade.md
Outdated
PoX-2 contract and also provides new use cases that demonstrate how | ||
the new PoX-2 contract could be used. | ||
|
||
## New methods in PoX-2 |
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.
Can this section include the signatures and return values for each new method?
the SIP-013 name is also being used here: #42 how do we prevent these conflicts? |
Yeah -- let's call this SIP 015. |
@jcnelson I thought draft sips never have a number until the draft is accepted according to sip-000 |
@friedger You are correct; I'm working under the assumption that SIP 011, SIP 012, and SIP 013 will eventually be accepted, but none of them officially have SIP numbers yet. Also, SIP 000 does not say anything about the order in which numbers are assigned; it only requires that they are unique. |
Is this the SIP for the Stacks 2.1 update? I noticed that one of the functions in the proposal ( |
Yep -- this SIP is for 2.1 updates. The PRs in the stacks-blockchain repo should all be open against the |
Okay, so after several rounds of communication in the blockchain meeting and architecture calls, the plan for this SIP is as follows:
|
Closing in favor of #95. Please continue discussion there. |
This SIP draft proposes a set of upgrades to Stacking and PoX -- most of the current draft contents cover a proposed
pox-2
contract, and how it interacts with Stacking in thestacks-node
and Clarity VM. However, this SIP also includes a proposal to address stacks-network/stacks-core#1805 -- some of the PR description text was copied into the draft as placeholder text; clearly that portion of the SIP needs to be more fleshed out. Because this SIP is incorporating that proposal, the draft also lists @jcnelson as an author (who opened the draft PR for addressing that issue).