Skip to content

Simplify ExecutionMode #196

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

Open
0xKitsune opened this issue Apr 29, 2025 · 1 comment · May be fixed by #198
Open

Simplify ExecutionMode #196

0xKitsune opened this issue Apr 29, 2025 · 1 comment · May be fixed by #198

Comments

@0xKitsune
Copy link
Collaborator

Rollup Boost supports four ExecutionMode variants that seek to control how rollup-boost interacts with the external builder during block production. Currently the four modes are Enabled, DryRun, Fallback, and Disabled where the differences between DryRun and Fallback are minimal. Execution modes could be simplified to the following:

  • Enabled

    • rollup-boost forwards all Engine API requests to both the builder and default execution client.
    • Optimistically selects the builder’s payload for validation and block publication.
    • Falls back to the local execution client only if the builder fails to produce a payload or the payload is invalid.
    • Default setting for normal external block production.
  • DryRun

    • rollup-boost forwards all Engine API requests to both the builder and default execution client.
    • Builder payloads are validated with the local execution client but the default execution client block will always be returned to op-node to propagate to the network.
    • Useful during deployments, dry runs, or to validate builder behavior without publishing builder blocks to the network.
  • Disabled

    • rollup-boost does not forward any Engine API requests to the builder.
    • Block construction is handled exclusively by the default execution client.
    • Useful as an emergency shutoff switch in the case of critical failures/emergencies.
pub enum ExecutionMode {
    /// Forward Engine API requests to the builder, validate builder payloads and propagate to the network 
    Enabled,
    /// Forward Engine API requests to the builder, validate builder payloads but
    /// fallback to default execution payload
    DryRun,
    // Do not forward Engine API requests to the builder 
    Disabled,
}
@varun-doshi
Copy link
Contributor

I can try to tackle this if it's available

@varun-doshi varun-doshi linked a pull request Apr 30, 2025 that will close this issue
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 a pull request may close this issue.

2 participants