Skip to content

Conversation

SozinM
Copy link
Collaborator

@SozinM SozinM commented Aug 28, 2025

closes #393

Removed custom traits for APIs, now we are using reth traits directly. This ensures that we will catch all updates.
Fixed issue with vulnerable crate.
Temporary removed flashblocks-rpc from workspace, as it severely outdated.
Bumped reth to 1.7.0

Copy link

vercel bot commented Aug 28, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
rollup-boost Ignored Ignored Preview Sep 15, 2025 1:06pm

@SozinM SozinM force-pushed the msozin/websocket-connection-to-op-node branch from e0bfa68 to 5a090e5 Compare September 4, 2025 13:37
@SozinM SozinM changed the title WIP add websocket support Add websocket support Sep 4, 2025
#[metric(describe = "Count of times flashblocks get_block_by_number is called")]
pub get_block_by_number: Counter,
#[metric(describe = "Count of times flashblocks block_by_number is called")]
pub block_by_number: Counter,
Copy link
Collaborator

Choose a reason for hiding this comment

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

are there any docs that need updating for this?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

will check

Copy link
Collaborator

@avalonche avalonche left a comment

Choose a reason for hiding this comment

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

why are we removing the proxy layer? the implementation is brittle to breaking when new rpc methods come through from op-node

@SozinM
Copy link
Collaborator Author

SozinM commented Sep 5, 2025

@avalonche

  1. Using pure http proxy breaks websocket
  2. When i tried using rpc proxy i found that it's very limited in functionality it supports, there is no easy way to so the same proxying that we were doing with http
  3. Authrpc method number is limited, if needed i could just implement all of them (i think i removed couple of them, but could bring them back)

@avalonche
Copy link
Collaborator

all methods goes through the authrpc, so any method through the regular rpc will also break like miner_, eth_


#[rpc(server, client)]
#[rpc(server, client, namespace = "engine")]
pub trait EngineApi {
Copy link
Collaborator

Choose a reason for hiding this comment

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

maybe we can move all the method we don't have custom logic for (all the methods we just forward to l2) to a separate file to not clutter the server.rs file

@SozinM
Copy link
Collaborator Author

SozinM commented Sep 11, 2025

I won't fix kurtosis in this PR
It would be fixed in followup pr, it requires updating on latest kurtosis

Removed previous http proxy implmenetaion
Bump reth
Disable flashblocks-rpc
@SozinM SozinM force-pushed the msozin/websocket-connection-to-op-node branch 2 times, most recently from ceb634c to f96f9f9 Compare September 15, 2025 13:06
}

async fn block_by_hash(&self, hash: B256, full: bool) -> RpcResult<Option<RpcBlock<Optimism>>> {
Ok(self.builder_client.block_by_hash(hash, full).await?)
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

remove before merge

@SozinM SozinM force-pushed the msozin/websocket-connection-to-op-node branch from f96f9f9 to 0c1fb4c Compare September 15, 2025 15:54
@SozinM SozinM closed this Sep 17, 2025
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.

Add web socket connection with op-node

2 participants