Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

EVM: Set FinalizedHash correctly in `forkChoiceUpdatedV3` call in ExecuteTxs

未关闭
#2,402 4 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
go
领域
blockchain

调研方向

从 ExecuteTxs 的 EVM 实现中的第一次 forkChoiceUpdatedV3 调用开始,然后阅读 issue 中提到的 PR 2394 以及 Rollkit Store 和 engineClient 的启动路径。确定 finalized state 应来自 DA Included Height 还是持久化的哈希,并定义启动时对 head、safe 和 finalized 哈希的 sanity checks。完成标准是重启和索引器能够收到一致的区块哈希。

由索引模型根据 Issue 内容生成。

描述

C:evm T:code-hygiene

In https://github.com/rollkit/rollkit/pull/2394, in order to have sequencer restarts work well, we modified the first call to forkChoiceUpdatedV3 in the ExecuteTxs EVM implementation to assign the previous block hash to HeadBlockHash, SafeBlockHash, and FinalizedBlockHash.

We should revisit this and take one or more of the following approaches:

  1. Set the FinalizedBlockHash based on the DA Included Height from the Rollkit Store. For the Head and Safe block hashes, use the Rollkit height which should be the same as the reth block height but it might be good to actually sanity check that on startup and set them in engineClient correctly on start.
  2. Persist the current versions of head, safe, and finalizedBlockHashes somewhere so on restarts they can be loaded back easily.

The concrete consequences of setting finalizedHash incorrectly are unknown currently but it'll likely be at least an issue in indexers and block explorers showing inconsistent finalized block hashes for a small period of time.

主要语言
Go
星标
361
派生
281
平均合并
2 天 23 小时
30 天内合并 PR
15

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

evstack/ev-node 的其他 Issue

查看 evstack/ev-node 的全部 Issue

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。