Status: Approved on the 17.01.2022, submitted on the 14.01.2022
Last updated: 14.1.2022
**Submited by Dimitar Ivanov, dimitar.chain
Team: Ulf Wiger, Hans Svensson, Dincho Todorov, Sean Hinde, Craig Everett, Fabian Krol, Chandru Mullaparthi, Michal Bargowski, Dimitar Ivanov
Approved Budget (in h):
Used Budget (in h):
Open Source Development
Core team application Jan-Mar 2022
We are the Aeternity core devs.
We are developing new features, improving the current state of the node and fixing bugs. During the next quarter we plan on focusing on HyperChains. There is a lot of work there to be do be done but it is a relatively narrow field. We expect 3 or 4 people to be working on it without stepping on each other’s toes. We do not expect them to be finished in the scope of this application. We will also be working on various ongoing tasks like:
- GUI launcher
- RocksDB refactoring
- aeCanary improvements
- docker support for M1
- Rosetta API
- Advanced State Channels
- Sync improvements
Here is a more detailed description of the mentioned features:
- HyperChains - this is the new protocol we will implement. It will be developed in phases and tested heavily both in private and public testnets. It will require updating some of the tools in the ecosystem.
- GUI launcher - a native application that compiles and runs the node. This is a really cool project we expect to be able to show soon
- RocksDB refactoring - we are using a RocksDB plugin but so far we’ve been limited only to using a small subset of its API. There is a huge effort from our side - we had to refactor significant portions of our code. We also fixed some C++ bugs in the plugin itself. Stay tuned.
- aeCanary - our monitoring tool needs some more work so we can automatically trace accounts and some other fancy features
- docker support for M1 ARM architecture - currently the node builds on Apple’s M1 and runs great. We should extend our docker support - we currently publish x86 docker images and those do not work in the new ARM context
- Rosetta API - we are using this as an onboarding project for Chandru, he just started working on it.
- Plugins - as we now have support for proper plugins, a number of ideas have come up for example- and utility plugins.
- Advanced State Channels - Develop the concept of State Channel markets and perhaps other advanced State Channels use cases. This may involve improving the client-side experience.
- MultiSig - Implement and test MuSig2 for ed25519; this will produce transaction signatures indistinguishable from “normal” signatures. To test and showcase this we also need rudimentary wallet/key support which means AEX-3, AEX-10 and a couple of more things.
- Sync improvements - there is some known low hanging fruit with regard to improving peer broadcasting and sync
None of this is present.
Once we have enough features implemented, we will make official releases.
We would be working full time on this, although some of the team (Hans, Dincho and Chandu) already have other commitments and would help us depending on their availability.
We do not expect finishing the HC and GUI. Given Chandru’s availability, the Rosetta API might also not be fully implemented. Plugins and State Channel markets are evolving work.
HyperChains have been a long standing goal of ours but due to polishing of the idea, there is still a lot of work left to be done. It would be great showing some of the progress we’ve made so far.
I personally think the GUI would be a game changer in the ecosystem: it will allow node operators to interact with their nodes in radically different ways and it would present the information in a user-friendly manner.
We publish our work in the official AE repositories.