Skip to content

Draft: Tx_rollup: Implement the base semantics of the layer-2

Thomas Letan requested to merge tx_rollup@l2-operations into tx_rollup@l1-inbox

Context

This is the Merge Request #2.B (see the related document for more information).

The goal is to add the L2 implementation that will be needed by the rejection operation.

Changes with oru@main:

  • There is no more “full” and “compressed” versions of the L2 operations
    • The true focus of this MR is to implement a correct apply function, wrt. available features and safety.
    • If a compressed version can be correctly signed at a given point, but incorrectly signed later (e.g., it is possible because the counter is not included in the compressed version of the operation), it is possible to discard a complete batch with a single operation. Indeed, with aggregated BLS signatures, it is not possible to know which operation is wrongly signed, so one need to discard the whole batch.
  • The notion of “atomic transaction” (made of several operations) is implemented.
  • Note that we have shown that this new implementation of the apply function is compatible with traced_storage. If necessary, the related commit can be added to the MR.

A second MR is expected to focus on improve the theoretical throughput of transaction rollup by finding the best compromise between proof size and operation size.

Manually testing the MR

cd src/proto_alpha/lib_protocol/test && dune exec ./main.exe -- test "^tx rollup$"; cd -

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, the Development Version section of CHANGES.md for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Thomas Letan

Merge request reports