Skip to content

feat: integrate publish preconf fn to permissionless node#873

Merged
mskrzypkows merged 4 commits intoNethermindEth:masterfrom
PoulavBhowmick03:node_preconfirmation_publish
Feb 24, 2026
Merged

feat: integrate publish preconf fn to permissionless node#873
mskrzypkows merged 4 commits intoNethermindEth:masterfrom
PoulavBhowmick03:node_preconfirmation_publish

Conversation

@PoulavBhowmick03
Copy link
Contributor

Summary

  • Addedget_secret_key() to Signer for commitment signing
  • Built L2BlockV2Payload from slot info and anchor block
  • Called post_preconf_requests from preconfirmation_drivet in main_block_preconfirmation_step fn
  • Added a preconfirmation_driver function to Operator as it is one of the fields in Node, to use while calling the PreconfirmationDriver

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR integrates preconfirmation publishing functionality into the permissionless node by enabling it to construct L2 block payloads and submit preconfirmation commitments to the preconfirmation driver.

Changes:

  • Added get_secret_key() method to Signer for extracting secp256k1 private keys needed for commitment signing
  • Implemented L2BlockV2Payload construction in main_block_preconfirmation_step using slot info and anchor block data
  • Integrated post_preconf_requests call to publish both transaction lists and signed commitments to the preconfirmation driver

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
common/src/signer/mod.rs Added get_secret_key() method to extract secp256k1::SecretKey from PrivateKey signer variant
common/Cargo.toml Added secp256k1 dependency required for commitment signing
Cargo.lock Updated with secp256k1 dependency
permissionless/src/node/config.rs Added coinbase and l1_height_lag fields to NodeConfig for L2 payload construction
permissionless/src/lib.rs Initialized new NodeConfig fields with preconfer address and l1_height_lag
permissionless/src/node/operator/mod.rs Added getter method preconfirmation_driver() to access the driver for posting requests
permissionless/src/node/mod.rs Implemented preconfirmation publishing logic in main_block_preconfirmation_step
permissionless/src/l2/preconfirmation_driver.rs Changed rpc_client visibility to public and removed dead_code annotation from post_preconf_requests

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@mskrzypkows mskrzypkows mentioned this pull request Feb 24, 2026
@mskrzypkows mskrzypkows merged commit 6054bd6 into NethermindEth:master Feb 24, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants