Over the course of the week the following tasks were completed and merged into the master branch:

Forcing Progress on-chain when closing a state channel. In order to provide this we had to:

-> Implement proof of inclusion that provides all the required information for contract execution so that a contract can be forced on-chain

-> Introduce a new transaction type, channel_force_progress as part of the protocol

-> Include contract account in contract’s proof of inclusion

We also simplified force progress on-chain transaction:

Initially the force progress required a complete and signed off-chain transaction to describe the update to be applied and the new state (both state_hash and a round). It came with the following conditions:

-> Only one update is applied at a time

-> Only the From is allowed to be the caller

-> Round of the solo_payload must be the next round from the co-signed payload

-> solo_payload is signed by the from

We made this much simpler by replacing the solo_payload with the following fields:

-> update — the update to be applied, caller must still be the From account

-> state_hash — the expected next state hash of the channel

-> round — the next valid off-chain channel round if the update had been successful

Also, we set key block’s coinbase to Bitcoin-NG benefactor to reward mining according to Bitcoin-NG consensus algorithm

Finally, we also completed a number of bug fixes and made minor optimizations.

Members of the marketing team were also present during the workshop and are currently working on a more in-depth summary. It will be published in the blog very soon, so stay tuned!