- 
                Notifications
    You must be signed in to change notification settings 
- Fork 518
Fix reorgBack: send back FCU only after payload verification #594
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
        
          
                simulators/ethereum/engine/clmock.go
              
                Outdated
          
        
      | OnForkchoiceBroadcast func() | ||
| OnSafeBlockChange func() | ||
| OnFinalizedBlockChange func() | ||
| OnVerificationEnd func() | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This addition seems fine to me, but perhaps the name is not accurate. This is more like OnBlockProductionEnd.
| I've realised that my previous reasoning was wrong because of the following rule from the Engine API spec: Client software MAY skip an update of the forkchoice state and MUST NOT begin a payload build process if  | 
🤖 I have created a release *beep* *boop* --- ## [3.1.0](ethpandaops/ethereum-package@3.0.0...3.1.0) (2024-06-07) ### Features * add http url to el context ([ethereum#656](ethpandaops/ethereum-package#656)) ([4e69a4c](ethpandaops/ethereum-package@4e69a4c)) * add prefunded accounts to output ([ethereum#657](ethpandaops/ethereum-package#657)) ([bc06e2a](ethpandaops/ethereum-package@bc06e2a)) * add tracoor ([ethereum#651](ethpandaops/ethereum-package#651)) ([b100cb6](ethpandaops/ethereum-package@b100cb6)) * add vc_count to increase the number of validators per participant ([ethereum#633](ethpandaops/ethereum-package#633)) ([4272ff3](ethpandaops/ethereum-package@4272ff3)) * allow setting custom dora image & env variables ([ethereum#623](ethpandaops/ethereum-package#623)) ([08a65c3](ethpandaops/ethereum-package@08a65c3)) * **apache:** Serve all config files ([ethereum#606](ethpandaops/ethereum-package#606)) ([3f1f5e1](ethpandaops/ethereum-package@3f1f5e1)) * **config:** add peerdas vars ([ethereum#619](ethpandaops/ethereum-package#619)) ([22f1498](ethpandaops/ethereum-package@22f1498)) * expose network-params ([ethereum#659](ethpandaops/ethereum-package#659)) ([b0820dd](ethpandaops/ethereum-package@b0820dd)) * forky ([ethereum#625](ethpandaops/ethereum-package#625)) ([ded68bd](ethpandaops/ethereum-package@ded68bd)) * Support participants_matrix ([ethereum#620](ethpandaops/ethereum-package#620)) ([3a57467](ethpandaops/ethereum-package@3a57467)) * use `peer-das` image for dora when eip7594 is active ([ethereum#593](ethpandaops/ethereum-package#593)) ([1b4bd3d](ethpandaops/ethereum-package@1b4bd3d)) ### Bug Fixes * add additional prefund addresses ([ethereum#655](ethpandaops/ethereum-package#655)) ([6d2cdb6](ethpandaops/ethereum-package@6d2cdb6)) * add cl log level to builders ([ethereum#638](ethpandaops/ethereum-package#638)) ([ad46dbd](ethpandaops/ethereum-package@ad46dbd)) * Add EIP-7002 & EIP-2935 bytecode to ethereum-genesis-generator ([ethereum#597](ethpandaops/ethereum-package#597)) ([3d316ef](ethpandaops/ethereum-package@3d316ef)) * add http to teku endpoint ([ethereum#622](ethpandaops/ethereum-package#622)) ([085b6e1](ethpandaops/ethereum-package@085b6e1)) * add peer_das_epoch to egg ([ethereum#603](ethpandaops/ethereum-package#603)) ([91694df](ethpandaops/ethereum-package@91694df)) * add sha256 as an image label (if present) ([ethereum#637](ethpandaops/ethereum-package#637)) ([3dcf888](ethpandaops/ethereum-package@3dcf888)) * add static port config for apache ([ethereum#608](ethpandaops/ethereum-package#608)) ([b96e502](ethpandaops/ethereum-package@b96e502)) * **apache:** only set static port if wanted ([ethereum#610](ethpandaops/ethereum-package#610)) ([2c6b7b1](ethpandaops/ethereum-package@2c6b7b1)) * blockscout fix for json variant ([ethereum#662](ethpandaops/ethereum-package#662)) ([e79c510](ethpandaops/ethereum-package@e79c510)) * churn adjustments ([ethereum#614](ethpandaops/ethereum-package#614)) ([12ca872](ethpandaops/ethereum-package@12ca872)) * default config ([ethereum#632](ethpandaops/ethereum-package#632)) ([14be117](ethpandaops/ethereum-package@14be117)) * drop everythign after [@sha](https://github.com/sha) from image labels ([ethereum#636](ethpandaops/ethereum-package#636)) ([5d35463](ethpandaops/ethereum-package@5d35463)) * erigon v3 - new default image ([ethereum#629](ethpandaops/ethereum-package#629)) ([72cf150](ethpandaops/ethereum-package@72cf150)) * genesis generator bump ([ethereum#611](ethpandaops/ethereum-package#611)) ([5460f6f](ethpandaops/ethereum-package@5460f6f)) * nightly tests ([ethereum#595](ethpandaops/ethereum-package#595)) ([76c31e9](ethpandaops/ethereum-package@76c31e9)) * pectra example ([ethereum#605](ethpandaops/ethereum-package#605)) ([67e3da0](ethpandaops/ethereum-package@67e3da0)) * prysm vc key manager ports ([ethereum#639](ethpandaops/ethereum-package#639)) ([81c1ee7](ethpandaops/ethereum-package@81c1ee7)) * re-add images to labels ([ethereum#634](ethpandaops/ethereum-package#634)) ([71f6e28](ethpandaops/ethereum-package@71f6e28)) * README has invalid configs ([ethereum#631](ethpandaops/ethereum-package#631)) ([e33b971](ethpandaops/ethereum-package@e33b971)) * readme indentation ([ethereum#600](ethpandaops/ethereum-package#600)) ([583db1b](ethpandaops/ethereum-package@583db1b)) * registration flags when using beacon node only ([ethereum#618](ethpandaops/ethereum-package#618)) ([c12506b](ethpandaops/ethereum-package@c12506b)) * repair check workflow for external PRs ([ethereum#616](ethpandaops/ethereum-package#616)) ([a584682](ethpandaops/ethereum-package@a584682)) * seperate vc service names ([ethereum#654](ethpandaops/ethereum-package#654)) ([a5ffe14](ethpandaops/ethereum-package@a5ffe14)) * tune Besu options to work with tx_spammer ([ethereum#612](ethpandaops/ethereum-package#612)) ([b395189](ethpandaops/ethereum-package@b395189)) * update dora images ([ethereum#598](ethpandaops/ethereum-package#598)) ([dd28d61](ethpandaops/ethereum-package@dd28d61)) * update prysm image ([ethereum#599](ethpandaops/ethereum-package#599)) ([0a38114](ethpandaops/ethereum-package@0a38114)) * use `electra-support` image for assertoor when electra fork epoch is set ([ethereum#607](ethpandaops/ethereum-package#607)) ([cdeab93](ethpandaops/ethereum-package@cdeab93)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This improves "Re-Org Back into Canonical Chain" test. The FCU pointing to the previous block sent by
reorgBackshould be sent after the payload verification inproduceSingleBlock. When the back FCU is sent too early, it might render the newly created block unaccessible byeth_getBlockByNumber("latest"), thus leading to "CLMocker: None of the clients accepted the newly constructed payload".