Hey ALICE & BOB community!
Thanks to the great initiative of @chepreghy, I have created a proposal to upgrade the BOB mother node.
What’s new?
This proposal adds support to fetch a range of past blocks produced on the BOB blockchain. This is necessary to verify and check the blocks that the BOB blockchain produced in the past, which is essential for every blockchain!
In particular, the function get_block_by_index
takes an index and returns the block if it exists. Similarly, the get_blocks
method returns a range of blocks. To see the details, check out this PR.
In addition, there is a second PR that fixes deterministic builds on Apple Silicon, verification instructions, integration tests (there were some erroneous paths after adding alice to the repo) and linting issues preventing the pipeline to run successfully.
Anything else?
These PRs got merged into a fork of the bob repo. The two PRs also exist on the original bob repo (here and here). Since they have been stale for quite some time, it is up to us, the ALICE & BOB community, to become active and get our hands dirty! When Robert (@bobdotfun) is back, he can merge the PRs and will end up in the same state as the fork.
Verifying the Wasms
Here’s a guide how to verify the new Wasms.
Make sure you have Docker installed and running and run the following commands to verify the build:
git clone https://github.com/fxgst/bob.git
cd bob
git checkout 27cb713d2ff8ccffc72ed94d65f926fe737f097e
docker build -t rust-dev .
docker run -v $(pwd):/app -it rust-dev bash /app/build.sh
sha256sum target/wasm32-unknown-unknown/release/bob_minter_v2.wasm.gz
sha256sum target/wasm32-unknown-unknown/release/bob_miner_v2.wasm
Here are the expected Wasm hashes:
1581f71d41d43e4cf64631c282cd84ff0717276fc15c01d0f828d4b0e703b81f target/wasm32-unknown-unknown/release/bob_minter_v2.wasm.gz
6b39a61b5545b2906cfbb18b1d423d06637e94078a0e296a45d5b46b975be706 target/wasm32-unknown-unknown/release/bob_miner_v2.wasm
You can also check the hashes on the CI run, but make sure to verify it on your machine too.
What’s next?
Please consider voting on Proposal 24 if you want to make it easier for people to verify BOB’s blocks. I’m a voting member of the CodeGov team, and the other team members intend to, on successful verification, accept this proposal too. To many more community contributions!