flashbots/suave-specs

Generalize SUAVE Execution Namespace

开放

#79 创建于 2024年1月25日

 (7 条评论) (0 个反应) (2 位负责人) (7 个派生)auto 404
good first issuehelp wanted

仓库指标

星标
 (42 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

Problem Statement

The current implementation of SUAVE is limited to interacting with Dencun Compatible L1 blockchains and only supports one chain at a time. This limitation restricts SUAVE to operate in a multi-chain manner. The Open Question is how to generalize the execution namespace within SUAVE to enable routing execution calls to nodes on any chain supporting this namespace.

https://github.com/flashbots/suave-specs/blob/main/specs/rigil/mevm.md#suavex-namespace

Design Goals

  1. Multi-Chain Compatibility: Enable SUAVE to interact seamlessly with multiple blockchain networks with nodes that support the execution namespace.

  2. Flexible Payload Crafting: Develop a system within SUAVE to efficiently craft and manage payloads for different chains .

Challenge

  1. One of the main challenges is that a SUAPP must be aware of the execution services that the kettle exposes. For example, a SUAPP that uses Eth L1 and Optimism Execution Nodes should fail when it attempts to be run on a Kettle that only supports Eth L1. Even further, a kettle should simply not even attempt to serve this RPC request, which is even tougher considering CCRs are eventually encrypted.
  2. One important consideration is the eventual capability to send JSON RPC requests for buildEthBlock using the doHttpRequest precompile, which allows the smart contract to craft the payload flexibly and require less defined at the SUAVE protocol and precompile layer.

贡献者指南