[go: up one dir, main page]

Alpha allow tz4 delegates

What

This MR enable the use of BLS address as delegates.

Depends on !15311 (merged)

Why

For future works related to aggregation of consensus operation, we need delegate to use BLS addresses. This work is the first step to reach this goal.

How

By removing the check that forbid Tz4 BLS address to be delegates.

Manually testing the MR

Run the test that needed to be adapted since now, in alpha, BLS addresses are allowed as delegate and consensus keys.

You can also manually test that in sandbox following these steps:

  • Run a sandboxed node with ./src/bin_node/octez-sandboxed-node.sh 1 --connections 0
  • Run a sandboxed client with eval `./src/bin_client/octez-init-sandboxed-client.sh 1`
  • Activate alpha with octez-activate-alpha
  • Create a BLS account with octez-client gen keys alice -s bls
  • Ensure that alice it a tz4 account with octez-client show address alice
  • Fund the account with octez-client --wait none transfer 1000000 from bootstrap1 to alice --fee 1 --burn-cap 0.07
  • Bake a block octez-client bake for --minimal-timestamp
  • Check the account balance with octez-client get balance for alice
  • Register the account as a delegate octez-client --wait none register key alice as delegate
  • Make Alice stake octez-client --wait none stake 800000 for alice
  • Bake some blocks until the account has rights to bake octez-client bake for --minimal-timestamp -n 30
  • Check that the account as rights to bake with octez-client bake for alice --minimal-timestamp

Now we want to test consensus key with BLS

  • Create another BLS account with octez-client gen keys bob -s bls
  • Set the consensus of a bootstrap account to this new BLS account with octez-client --wait none set consensus key for bootstrap3 to bob
  • Bake some blocks until the consensus key of the bootstrap account is activated octez-client bake for --minimal-timestamp -n 30
  • Check that the account as rights to bake on behalf of the bootstrap account with octez-client bake for bob --minimal-timestamp you should see something like:
Oct 15 15:08:41.739: block BKs9uUPTDX8pUTZKaMeukAzL75i4m3PcFdMRJ6bX5tq9P8BFJWN at level 54, round
Oct 15 15:08:41.739:   10 injected for bob (tz4WkYUdy7h8idevvUgNG8rQppshrCM58Raf)
Oct 15 15:08:41.739:   on behalf of tz1faswCTDciRzE4oJ9jn2Vm2dvjeyA9fUzU

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, CHANGES.rst at the root of the repository 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 Albin Coquereau

Merge request reports

Loading