Chainflip Development Update — May 14th 2021
Feels like just yesterday that I was damaging my delicate fingernails in order to produce the last dev update. Nevertheless, I’m back with another nail-chipping post.
Progress Since Last Update
Since last fortnight we’ve successfully closed another engineer. They will be joining us as a Protocol Research Engineer, bolstering our ability to deep dive into some complex topics such as a V3-like range order system, and our swap-matching implementation. We’re now at pretty much full capacity for our protocol team, and the engine is revving up.
Our in-house designer also started work this week, he’s already been knocking out some excellent work on a small brand refresh. If you have any Chainflip merch ideas throw them my way — on the list at the moment is a tracksuit. We are based in Berlin after all…
Research since the last update has included some preliminary work on enumerating slashing conditions and their penalties, as well as starting to solidify our spam-prevention plan for the State Chain. There’s still a good amount of discussion to have about these internally, but we’re getting closer to an acceptable solution on both fronts.
Staking / unstaking are now feature complete as far as the State Chain is concerned (there’s still some work to do on the Engine before the funds are truly managed by the Validators though). We’re also pretty much happy with our Epoch transitions and Active Set rotations, which means auctions can happen on-chain and the winners be governed by the State Chain itself.
We’ve chosen to delay working on a validator_status extrinsic for now, in favour of a simple heartbeat. We’ll likely come back to it but there’s a few open questions about how valuable it really is.
CFE has come on a long way since the last update. We’ve got most of the work done for witnessing events on both the State Chain and the Ethereum Stake Manager Contract, and we’ve made some very solid headway on coordinating the signing of Ethereum transactions with Schnorr signatures. Hopefully by next update we will have a chain whose validators are signing transactions in a distributed way. Ambitious but possible!
Staking Web App
The web app is chugging along. With an extra pair of hands this week the pace has been picking up. We’re currently building out a set of components in preparation for then utilising them to build the specific pages we need (like the auction information and statistics about your own nodes). These components will also be very useful when we come to build other applications in the future.
Nothing to report as far as our infra is concerned. Keep your beaks out.
I’m sure everyone will be very excited to know that the FLIP token has been implemented. We chose to go with ERC777 as it will speed up the process of staking your FLIP tokens to a Validator (only one transaction as opposed to two with ERC20). The standard is backwards compatible, so all your favourite dapps will still support it out-of-the-box. We can leverage the benefits of 777 in future with other contracts that we might deploy.
Goals for the Next Fortnight
Some quick bullet points about what we hope to achieve by the time the next dev update rolls around.
- [SC] Documentation for our custom P2P module
- [SC] Ensure we’re handling edge cases in our Validator Pallet smoothly
- [SC] Validate the generated Schnorr signatures on-chain
- [SC] Weight calculations (fee calculations) for our extrinsics
- [ETH] Replay protection for ETH signatures (rollover)
- [ETH] Vesting contracts for investors
- [CFE] Integration testing for our ETH witnesser
- [CFE] ETH signing via Schnorr signatures
- [APP] Component library fleshed out
Very happy with progress this fortnight. Chainflip is starting to come together. We’re aware of most of the challenges that lay ahead, and I don’t think (touch wood) that there are going to be any horrible surprises.
Excited for our researcher to begin work, there’s a lot to dive into when it comes to Chainflip, and I want to start tackling some of these ~capital efficiency~ questions that our big lumbering beast of a protocol throws up. Very likely that we’ll launch with V3-like range orders, but watch this space.
Until next time.