apollo_consensus_orchestrator: wire SNIP-35 fee_proposal into build_proposal#13818
Conversation
e61ede6 to
fec5e8d
Compare
69fb04b to
8ccdfc9
Compare
8ccdfc9 to
fe3bed1
Compare
01831f2 to
e72260c
Compare
3fbc573 to
8842b22
Compare
381d654 to
8fdc1e0
Compare
8842b22 to
1d1a4ac
Compare
8fdc1e0 to
ed5cfb9
Compare
1d1a4ac to
1d52c47
Compare
ed5cfb9 to
e3c5db4
Compare
1d52c47 to
dfeb913
Compare
e3c5db4 to
b59452c
Compare
8cf6fde to
b15a802
Compare
PR SummaryMedium Risk Overview
Reviewed by Cursor Bugbot for commit 78fa661. Bugbot is set up for automated code reviews on this repo. Configure here. |
403f6c2 to
08c2f1e
Compare
0a69e61 to
5adf1d4
Compare
128fd49 to
b70aa35
Compare
5adf1d4 to
0b7d846
Compare
b70aa35 to
4373775
Compare
d86d400 to
f48b9c1
Compare
35a0ba2 to
90dacc3
Compare
f48b9c1 to
78fa661
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 78fa661. Configure here.
| // TODO(Asmaa): Put the real value once we have it. | ||
| version_constant_commitment: Default::default(), | ||
| fee_proposal_fri: None, | ||
| fee_proposal_fri: Some(args.fee_proposal), |
There was a problem hiding this comment.
Propose and sync paths compute different block commitments
High Severity
Setting fee_proposal_fri to a non-zero value in ProposalInit and storing it in BlockHeaderWithoutHash creates a commitment mismatch between the propose and sync paths. During propose/validate, the batcher's PartialBlockHashComponents::new always uses GasPrice::default() (zero) for fee_proposal_fri when computing the commitment hash. But when a node syncs the same block, the batcher reconstructs PartialBlockHashComponents from the stored header using the actual non-zero value. Since fee_proposal_fri is part of the PartialBlockHash hash chain, these paths produce different ProposalCommitment values for the same block, corrupting prev_proposal_commitment on syncing nodes.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 78fa661. Configure here.



No description provided.