This is a bi-weekly update of all things concerning the protocol design and
reference implementation of State Channels.
The focus of the current iteration is the hardening of the implementation. Thus
there is lots of work on the test suites and a new test approach.
The previous report was End of September 2019.
Port of AE Universe Demo Changes to
Implementation: PR #2801
The accumulated changes which were previously made to a dedicated branch have
been ported to the
master branch. Thus the next minor release
include these changes. For more information on these changes take a look at the
report from End of September 2019.
System Test Hardening
The aeternity project runs a set of long-running system tests to stress test the
master branch. We’ve identified a few bugs in the test setup as well as
actual bugs in the implementation which have been dealt with. The result are
more stable system tests which indicate a stabilized implementation.
Integration Test Improvements
The integration tests are continuously being improved. More tests were added and
existing tests modified to improve coverage and fix incorrect assumptions. Most
changes have also led to simple bug-fixes in the process.
Refactor FSM message log and ensure early start of chain watcher
The order of log messages has been fixed. Moreover, the requirement, that the
chain watcher is started before performing actions which depend on it, is
handled by providing a helper function to ensure the ordering. This prevents
race conditions which were seen before.
Fix client re-establish notification when connecting to existing channel
channel_id was missing in the report which was confusing and required
clients to wait longer for the id to be known. This has been fixed.
Unify the WS and FSM client messages
Implementation: PR #2833
This PR unifies the info reports sent from the WS client and the FSM.
This results in a reduction of the amount of data copied between processes
when opening a channel and removes gproc from the FSM suite when opening a channel.
State Channel UAT Test Suite
The UAT has moved towards using the
ExUnit testing framework which is a
pre-requisite for setting up CI. The goal is to keep the UAT and feedback from
it as close to the aeternity
master branch as possible as well as offload
@aleksandar.chain from having to run the UAT manually.
Moreover, the further development of the UAT has been specified in issues on Github,
so anybody is welcome to chime in and comment.
Any other interesting bits
Implementation: PR #2825