aztec-packages icon indicating copy to clipboard operation
aztec-packages copied to clipboard

feat: Handle reorgs on sequencer

Open spalladino opened this issue 1 year ago • 1 comments

Tweaks the archiver so it can detect when a prune will happen and can start unwinding blocks then. This is then leveraged by the sequencer, so it builds the next block accounting for a reorg to happen. This also required tweaks on the L1 rollup contract so validations and checks account for pruning.

spalladino avatar Oct 11 '24 16:10 spalladino

Changes to public function bytecode sizes

Generated at commit: 0a58ece39e84f3ef5e5d6a9a3dc260cf3a65866d, compared to commit: f95bcff9902b7e28bffcf96fbd7159b2da88e89c

🧾 Summary (100% most significant diffs)

Program Bytecode size in bytes (+/-) %
Token::public_dispatch -349 ✅ -1.28%
Uniswap::public_dispatch -329 ✅ -1.40%
TokenBlacklist::public_dispatch -354 ✅ -1.45%
AvmTest::bulk_testing -354 ✅ -1.47%
NFT::public_dispatch -354 ✅ -1.66%
TokenBridge::public_dispatch -354 ✅ -1.80%
AvmTest::public_dispatch -1,272 ✅ -2.34%
Auth::public_dispatch -354 ✅ -3.34%
FPC::public_dispatch -354 ✅ -3.88%
TokenBlacklist::constructor -354 ✅ -4.43%
StatefulTest::public_dispatch -354 ✅ -4.58%
Crowdfunding::public_dispatch -354 ✅ -5.55%
EasyPrivateVoting::public_dispatch -354 ✅ -5.66%
Token::constructor -354 ✅ -6.49%
AppSubscription::public_dispatch -354 ✅ -6.60%
NFT::constructor -354 ✅ -6.92%
Claim::public_dispatch -354 ✅ -7.72%
InclusionProofs::public_dispatch -354 ✅ -7.91%
PrivateFPC::public_dispatch -354 ✅ -8.01%
AppSubscription::constructor -354 ✅ -8.61%
Crowdfunding::init -354 ✅ -8.93%
StatefulTest::public_constructor -354 ✅ -9.24%
AvmInitializerTest::public_dispatch -354 ✅ -9.42%
EasyPrivateVoting::constructor -354 ✅ -9.64%
Claim::constructor -354 ✅ -9.64%
TokenBridge::constructor -354 ✅ -9.70%
Auth::constructor -354 ✅ -10.03%
FPC::constructor -354 ✅ -10.08%
Uniswap::constructor -354 ✅ -10.08%
PrivateFPC::constructor -354 ✅ -10.09%
InclusionProofs::constructor -354 ✅ -11.49%
AvmInitializerTest::constructor -354 ✅ -11.68%
AvmTest::test_get_contract_instance -354 ✅ -30.31%
AvmTest::test_get_contract_instance_raw -442 ✅ -54.64%
AvmTest::pedersen_commit -747 ✅ -67.79%

Full diff report 👇
Program Bytecode size in bytes (+/-) %
Token::public_dispatch 26,905 (-349) -1.28%
Uniswap::public_dispatch 23,177 (-329) -1.40%
TokenBlacklist::public_dispatch 24,029 (-354) -1.45%
AvmTest::bulk_testing 23,704 (-354) -1.47%
NFT::public_dispatch 20,955 (-354) -1.66%
TokenBridge::public_dispatch 19,332 (-354) -1.80%
AvmTest::public_dispatch 53,189 (-1,272) -2.34%
Auth::public_dispatch 10,259 (-354) -3.34%
FPC::public_dispatch 8,767 (-354) -3.88%
TokenBlacklist::constructor 7,630 (-354) -4.43%
StatefulTest::public_dispatch 7,367 (-354) -4.58%
Crowdfunding::public_dispatch 6,030 (-354) -5.55%
EasyPrivateVoting::public_dispatch 5,897 (-354) -5.66%
Token::constructor 5,102 (-354) -6.49%
AppSubscription::public_dispatch 5,009 (-354) -6.60%
NFT::constructor 4,759 (-354) -6.92%
Claim::public_dispatch 4,231 (-354) -7.72%
InclusionProofs::public_dispatch 4,122 (-354) -7.91%
PrivateFPC::public_dispatch 4,063 (-354) -8.01%
AppSubscription::constructor 3,759 (-354) -8.61%
Crowdfunding::init 3,612 (-354) -8.93%
StatefulTest::public_constructor 3,478 (-354) -9.24%
AvmInitializerTest::public_dispatch 3,402 (-354) -9.42%
EasyPrivateVoting::constructor 3,320 (-354) -9.64%
Claim::constructor 3,317 (-354) -9.64%
TokenBridge::constructor 3,296 (-354) -9.70%
Auth::constructor 3,177 (-354) -10.03%
FPC::constructor 3,157 (-354) -10.08%
Uniswap::constructor 3,157 (-354) -10.08%
PrivateFPC::constructor 3,154 (-354) -10.09%
InclusionProofs::constructor 2,726 (-354) -11.49%
AvmInitializerTest::constructor 2,676 (-354) -11.68%
AvmTest::test_get_contract_instance 814 (-354) -30.31%
AvmTest::test_get_contract_instance_raw 367 (-442) -54.64%
AvmTest::pedersen_commit 355 (-747) -67.79%

github-actions[bot] avatar Oct 21 '24 14:10 github-actions[bot]