citycoins/governance

Upgrade to pox-3

Rapha-btc opened this issue · 7 comments

I am passing on an issue that has been raised in the community discussion. The community has voiced their interest in upgrading Citycoins to pox-3. Based on suggestions from various community members, a CCIP could be initiated to cover the following points:

  • Migrate to .pox-3 for delegated stacking
  • Implement the CCIP-011 style voting mechanism through a DAO proposal
  • Provide retroactive payment of STX rewards for the stacking contract bug.

Hey @Rapha-btc - thanks for raising this! Copying over some info from the pinned messages in Discord:

MIGRATING TO POX-2

With the upgrade to Stacks 2.1, the STX in the mining treasury was automatically unstacked, and can no longer be stacked by calling the .pox contract. This is because with the 2.1 upgrade, all calls to the .pox contract will now fail and require all stacking to be done through .pox-2.

This will require creating a v2 of the treasury contract (CCD002), which would call the .pox-2 contract for delegated stacking. The change is pretty straight-forward, but will also require a change to the mining contract (CCD006), since it transfers to the treasury contract for mining operations.

This change was anticipated as part of the Stacks 2.1 upgrade, and more detail can be found at the link below outlining the transition from .pox to .pox-2. Rewards will be reactivated when this change is complete.
https://www.hiro.so/blog/how-the-stacks-2-1-transition-impacts-stacking

IMPLEMENTING COMMUNITY VOTING

With the new DAO structure we have a lot more flexibilty in how we implement these type of updates, and the Clarity code will need to be defined by a CCIP and completed before the proposal can be put out for approval.

In addition to this, we should implement a voting mechanism to include community sentiment in the decision making process. Initially, this could be included in the structure of the proposal, such that the contract will fail execution unless a certain threshold is met.

We've used CCIP-011 for our votes in the past, and can use that as a template for voting within the proposal. With this idea, the proposal would have to be first be approved by the community before it can be executed through CCD001.

Linking this PR for the Clarity implementation:
citycoins/protocol#59

I think Freidger is correct to think community sentiment was overwhelmingly for stacking the treasury regardless of contract. As long as the same conditions are same this fix should be done quickly. If a vote I necessary then I agree that we don’t need a long voting window.

Now users just have to wait until voting is active?
Or is there another procedure?
whoabuddy seems to have prepared everything.

Now users just have to wait until voting is active? Or is there another procedure? whoabuddy seems to have prepared everything.

@PhillipJFryz main discussion is in #path-forward on the Discord, what's posted above is a high level overview, and we're all working out the details to get the CCIP created + code implemented alongside some changes happening on the Stacks blockchain.

Closing this out as CCIP-014 was successfully ratified and pox-3 is now active!