New smart contract interaction flow

Objective: design and implement new update Incognito committee flow in smart contract for portal application

Length: 2 months
Resources: @duybao

Key results:

  • Smart contract interaction (@) -
    ** Design new flow by 12 June
    ** Implement new flow by 30 June
    ** Deploy on testnet by 30 July


– The new flow of consensus requires us to validate the finality of block, which also need to validate at smart contract side. We will also solve this issue in this proposal. The smart contract need to update committee, or execute any withdraw action if and only if block is finalized.


June update

The development phase includes 3 stages:

  1. Update block structure and blockchain’s storage to include finality proofs
  2. Update current Ethereum smart contracts to verify those proofs
  3. Optimize smart contract flow to reduce gas usage (since verifying finality would at least triple the gas consumption compare to previous versions)

For June, the new flow was presented and approved by core team members. Implementation of the first phase has also been concluded and we are testing it locally.

For July, we will implement the 2nd phase and deploy on devnet/testnet.
While the 1st and 2nd phase are being tested by QC, we will implement the 3rd phase (since it’s an optimization, it won’t affect the correctness of the solution).

Check out the code here: