Chainflip Development Update — Apr 28th 2023

Chainflip Development Update — Apr 28th 2023

My Dear Chainflippers,

Oh how far we have come together. I’m back again while Martin is out, and this week I thought I’d take you behind the curtain a little. April has been a month with admittedly limited visible progress. Perseverance 0.7 has been up for weeks now, and no swaps have been activated. A CPU bug is causing slashing and instability in the chainflip-engine, and all seems quiet on the western front.

“WHAT THE HELL?” I hear you complain.

Fear not, my dear child. Allow me to let you in on a secret…

Perseverance 0.8 is Coming

Right off the back of the 0.7.3 release, we decided to switch focus almost exclusively to Perseverance 0.8 immediately. We realised that the swapping interfaces, smart contracts, and a few other bits and pieces off the back of the Audit which has been completed as of today that maintaining 0.7.3 was just slowing us down with no real benefit. It also would not be that useful for the half-dozen external partners that want to start building on Chainflip for Market making and Aggregation.

Thus, Perseverance 0.8 will be a network relaunch to avoid 6 weeks of migration work that benefits no one. There are breaking changes to the smart contracts, and upgrading them using the current network without breaking it would require incredible effort. So, like many other projects, we are “phoenixing” perseverance.

Everyone’s Validators, stakes, vanity names, ethereum addresses, and nearly everything else will be carried over. We’ll even provide a Bitcoin testnet endpoint for you autoMagically! All you’ll have to do is run the upgrade, and watch the block count reset to zero.

You’ll enjoy immediate Bitcoin support, Cross-chain messaging, and the JIT AMM fully implemented and ready to roll.

We’ll do a bigger post on this in the next week or two once we are happy with initial testing, which has been delayed by all these breaking changes, including the previously mentioned initiative of:

Renaming Stuff

When you “stake” to the state chain, you don’t actually “stake.” That’s why we’ve renamed it to Fund State Chain Account, which is exactly what you’re doing when you interact not with the StakeManager, but the shiny brand new State Chain Gateway…. (it’s the name contract, just renamed).

This, and many other small naming changes to our terminology will hopefully mean that it is way easier for developers to understand how our system works and what they need to call to make things happen. Along with that, a complete overhaul of the Concept Docs is taking place alongside it. If we didn’t do these changes now, they would never be done. Once we go live, that’s it.

Other Progress

  • 360 reviews were completed with some amazing goals and outcomes
  • The 8 week audit was finally completed - we’re pretty happy with the results overall!
  • The Chainflip Bouncer now runs in the CI every single time we do a new commit, making it far more likely we’ll catch functional regressions before they are merged.
  • We started using Linear.app to track our tickets and tasks, everyone is loving it so far!

Outlook

  • Well, I think you know what we’re looking to do now! 0.8 is big.
  • Identify and fix the 0.7.3 CPU bug and set up a profiling tool so we can track down these very deep performance issues much easier in the future
  • Work is going strong on developing the Chainflip SDKs and APIs for our external partners, we’re hopefully able to release them by the time you read the next update!

Vibe check

It’s nearly the 1st of May, which in Berlin is a big deal. Literally all around our office will be raves, parties, street drinking, and of course good old RIOTS. It’s international workers day, and so if you don’t hear from us by the end of next week, now you know why:

Until next time,

Simon