Reaching consensus on the new SNX monetary policy
Feat. community member Deltatiger!
Hi everyone, I’m DeltaTiger, a Synthetix community member. I played a key role in a recent community decision that's going live this week in the Capella release, so the team reached out and asked if I could write up the process the community has gone through to reach consensus around an important system change: the inflationary monetary policy.
I’m going to talk about the existing monetary policy, its problems, the solutions we explored, and the process for finding consensus and choosing a solution.
The existing Synthetix monetary policy
Having originally had a fixed supply of 100m SNX tokens, Synthetix altered its monetary policy in March 2019 to inflate the supply to about 250m over the next five years. You can read in detail about why they made that change in the original blog post, but essentially it was to incentivize SNX holders to bootstrap the network to give it time for trading fees from Synthetix.Exchange to become a sufficient incentive to collateralize the network.
This policy was front-loaded, so about half of all the additional supply would be distributed in the first year, halving each year after that. Here's what the initial distribution schedule looked like:
Since this new monetary policy was introduced, it has had an enormously positive result in terms of active participation in the network and has played a key role in attracting a large number of additional stakers. It has also become obvious that there are additional applications for inflation beyond staking, including the arb pool rewards and Uniswap liquidity rewards.
The issue with the existing policy
After spending quite a lot of time thinking about Synthetix, I started having flashbacks to my electrical engineering classes (control theory + step response), and I started to get concerned because:
“from a practical standpoint, knowing how the system responds to a sudden input is important because large and possibly fast deviations from the long term steady state may have extreme effects on the component itself and on other portions of the overall system dependent on this component”.
So I started thinking of potential ways to mitigate these risks and on August 29th I posted the following in the Governance channel in the Synthetix Discord:
“When rewards drop off a cliff I think it will have some adverse effects that are hard to predict. Thoughts on implementing some kind of exponential backoff on rewards after the first year?”
Initially, there was a fairly lively debate with very mixed responses which I will paraphrase to basically:
- Changing monetary policy is a bad idea because people will lose trust in the system if we keep changing it
- Reward halving works for BTC, so why shouldn’t it work for us?
- He might have a point, maybe we should think about it…
- If we do change the schedule, we should probably consider including tail emissions in the new schedule
So after modelling various alternative scenarios and sharing them with the community, I was asked by the team to participate in the September 12th Governance call (13:50) to explain the thinking behind the proposed change. During this call the Synthetix founder Kain, who was initially against the idea, said “I am actually coming around to the change provided it includes a continuous emission mechanism as the end state. But that opens up another conversation.”
For me this was a turning point in the process. Having the team open to giving me the opportunity to articulate my perspective even though there was resistance to the idea made me think, “maybe I can effect change here.” Given this and the broad community support, I decided to write up a draft SIP (Synthetix Improvement Proposal) that articulated my thoughts.
The solution that I proposed was to have rewards gradually declining each week, vs having them halve every year, and community member gmgh explained why this might make sense:
“a smooth inflation reduction solves this by removing an "event" to trigger this people will just come and go and do all the above actions based on their own accord, rather than being "forced" to take action in response to an obvious future event. A lot of the game theory of what other people will do, and when they do it, will be removed.”
In this initial draft I proposed a model that starts reducing weekly rewards by 1.3% at week 30 (although my math was wrong so technically I was proposing week 32) and then introduce ongoing terminal inflation of 3% per year thereafter starting at week 208 (210). Here's the proposed schedule:
The process for finding consensus
After the draft SIP was posted as Issue-36 there was a lively but constructive debate in Github and the Governance channel in Discord, and the idea was slowly refined with multiple versions of the model updated and discussed based on feedback. I was invited back by the team to summarise the discussion to-date on the October 25th governance call (56:15) — the key points I made were that the community’s general consensus was that:
- Inflation smoothening is probably the right way to go
- When we introduce it we should probably do it as soon as possible
- Terminal inflation should be a fixed amount vs absolute amount
- We should have separate SIPs for smoothing and terminal inflation, but we should implement them at the same time if both approved
After this call Vance from Framework Ventures, who had also presented thoughts on inflation smoothing and terminal inflation in the governance call, offered to help me draft up formal SIP’s and help coordinate a more formal community decision making process. We collaborated to draft SIP-23 and SIP-24 which were merged and published to the community on October 29th.
After further community discussion on the November 19th governance call (35:50) AndrewK shared his perspective and some of his early work around how he thought we needed to establish a plan on how inflation was distributed. But broad consensus was reached in the call to get SIP-23 and 24 passed first, and then move on to determining which incentive programs the inflationary rewards should be directed at to ensure that these new conversations didn’t derail the process.
Furthermore, partly due to suggestions on the call, one of the key outcomes was that we decided to switch terminal inflation from a fixed terminal inflation to %-based, and that it should be between 2-3% annual.
During and after this governance call, there was some concern in the community that it seemed like we couldn’t know for sure what the perfect inflation schedule would look like, and a number of suggestions were made for how perhaps to mitigate the risk of getting it wrong. However we reached broad consensus that it is probably better to keep it simple and take a best guess given the information we have now, with a view to revisiting in a few years if it’s clear we got it wrong.
On November 25 the community voted on Github and Discord for a 1.25% weekly rewards decline starting at week 40 (December 11, 2019). Note the emoji reactions beneath the posts:
And also on November 25th the community voted for a 2.5% annual terminal inflation rate starting at week 235 (September 6, 2023), with strong support for both SIP’s:
So, the final inflation schedule was updated per below.
In parallel to this, the team reached out as they had started working on implementing these changes per their final model. It was awesome to see how quickly they punched through this community driven initiative.
When I started out on this journey, I didn’t actually think anything would come of it. I had assumed that as an individual with a fairly radical idea, without the initial support of the founder or many community members, it would never get past the light of day. However, it was totally awesome to see it take a life of its own and slowly but surely build momentum until eventually it received community and team support. It was an honor to be a part of the process and I’m excited to see what other community driven initiatives are put forward, debated, and eventually implemented.