Skip to content

Draft: Proto: Mumbai Variant "Fund the foundation"

Nicolas Ochem requested to merge nochem@mumbai_ftf into master

This is a variant of the Mumbai proposal. Its protocol is identical to PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc except:

An invoice is added to mint 100,000 tez (one hundred thousand tez) and credit them to one of the addresses of the Tezos Foundation: Foundation Baker 1 (https://tzstats.com/tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9).

Its hash is PtMumbaiveNjgvoAng9E3AtNqtBtCQWqpXJdPEdAanAYCZbCgey.

To be merged only if this variant of the proposal passes.

More details are on Tezos agora

Below are verification steps taken, following the example of !7382 (merged).

Update Snapshot

Update the protocol hash everywhere

git grep --name-only PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc | xargs -d '\n' sed -i "s/PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc/PtMumbaiveNjgvoAng9E3AtNqtBtCQWqpXJdPEdAanAYCZbCgey/g"
git commit -a -m "Everywhere: update protocol hash"

Verify the protocol hash

nochem@peck ~/workspace/tezos () $ ./octez-protocol-compiler -hash-only src/proto_016_*/lib_protocol
PtMumbaiveNjgvoAng9E3AtNqtBtCQWqpXJdPEdAanAYCZbCgey
nochem@peck ~/workspace/tezos () $ tail -1 src/lib_protocol_compiler/final_protocol_versions
PtMumbaiveNjgvoAng9E3AtNqtBtCQWqpXJdPEdAanAYCZbCge

Update regression test traces

Still TODO (broken with python 3.11, must use build container)

Manual Testing

Import a recent rolling node snapshot.

wget https://mainnet-v15.xtz-shots.io/mainnet-3061232.rolling
./octez-node snapshot import mainnet-3061232.rolling --in-memory --block BL1BQMMojcDqqpB1xqCgcCMBRs5hzkC5iMwmocoB8Joebx9JNVj

Patch the files for yes wallet/node.

dune exec devtools/yes_wallet/yes_wallet.exe -- create from context ~/.tezos-node in /tmp/yes-wallet --active-bakers-only
patch -p1 < scripts/yes-node.patch

Patch the node configutation such that it upgrades the protocol.

git apply <<EOF
diff --git a/src/lib_node_config/config_file.ml b/src/lib_node_config/config_file.ml
index 78cc555bf3..8b044339f0 100644
--- a/src/lib_node_config/config_file.ml
+++ b/src/lib_node_config/config_file.ml
@@ -88,6 +88,7 @@ let mainnet_user_activated_upgrades =
   [
     (28082l, "PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt");
     (204761l, "PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP");
+    (3061233l, "PtMumbaiveNjgvoAng9E3AtNqtBtCQWqpXJdPEdAanAYCZbCgey");
   ]

 (* END_PATCHING_ZONE_FOR_MAINNET_USER_ACTIVATED_UPGRADES *)
EOF
make

Run the following in on terminal to start the node.

./octez-node run --synchronisation-threshold 0 --connections 0 --rpc-addr localhost

On another terminal bake one block and verify that the Foundation Baker 1 balance has increased by 100k tez:

nochem@peck ~/workspace/tezos () $ ./octez-client get balance for tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9
768229.137867 ꜩ
nochem@peck ~/workspace/tezos () $ ./octez-client -d /tmp/yes-wallet bake for --minimal-timestamp
Jan 16 11:44:08.522 - 015-PtLimaPt.baker.actions: Voting pass for liquidity baking toggle vote
Jan 16 11:44:15.345 - 015-PtLimaPt.baker.actions: block BM5FXEAtQMW8U6aGGwRgzocV4o2aVKEQazWvPC1Yswo8Pqxyau9 at level 3061233,
Jan 16 11:44:15.345 - 015-PtLimaPt.baker.actions:   round 0 injected for baker_1 (tz1aRoaRhSpRYvFdyvgWLL6TGyRoGF51wDjM)
Injected block at minimal timestamp
nochem@peck ~/workspace/tezos () $ ./octez-client get balance for tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9
868229.137867 ꜩ
Edited by Raphaël Cauderlier

Merge request reports