Week #20 - Aeternity Protocol Development Update

In this post the core team, as usually, highlights the most important and interesting developments that took place over the course of the last two weeks (weeks 20-21).

During those weeks our focus war finalising features relevant for Fortuna hard fork that is to be activated at the beginning of June. During week 21 all consensus- and api-breaking features were merged in to master and released as Release Candidate 1 of Fortuna release, that is versioned as 3.0.0-rc.1. The RC1 will trigger a hard fork of the testnet on Monday 20th of May making the latest features available for developers provide an opportunity to test compatibility their software agains the Fortuna release. The final release 3.0.0 is scheduled for 22th of May.

Most significant updates were finalising developer reward, removal of deprecated APIs and improvements to State Channels.

Developer Reward

The community vote on Block Reward Initiative (also known as Developer Reward) was concluded on 15th of May and its results were merged to master, becoming the part of the protocol. We deployed it to open testnet and additional testing environments. Maintenance effort covered updating configurations and documentation regarding protocol braking changes. We verified new protocol braking mechanisms.

State Channels

Regarding State Channels, following tasks have been completed:

  • Finished the refactoring of off-chain updates being part of the noise and not part of of the on-chain protocol. This opens the possibilities of different protocols being used and lowers the amount of data posted on-chain in a dispute,
  • Fixed a serialization issue in channels WebSocket API that could cause inconsistencies in off-chain contract execution,
  • Removed WebSocket legacy API,
  • Increased the Force Progress base price to be corresponding with what a regular call would be,
  • Added a logs searching script (@sergei not really client intended, not sure if belongs to the list),
  • Revisited WebSocket error responses and made them more consistent,
  • Teaching FSM how to treat Generalized Accounts (still work in progress),
  • Improving the WebSocket API regarding solo closing sequence (work in progress as well).

We have also merged number of bug fixes. Part of the team keep working on stratum implementation. This week we were occupied with integrating it with our testing framework and debugging reward payment contract to pool miners.