EspressoSystems / EspressoSystems/espresso-rollup-node-proxy
EspressoState holds block number instead of hash
- Dominant language
- Go
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Lots of care is taken during verification to ensure that the hash of the block served by the L2 node matches that derived from the espresso network, but then when actually serving that block to a consumer it is fetched by number, meaning the rollup node proxy can serve incorrect blocks. The `EspressoState` should hold the block hash and the hash should be used to retrieve the block that is returned to the consumer.
```
type EspressoState struct {
L2BlockNumber uint64 `json:"l2_block_number"`
FallbackHotshotHeight uint64 `json:"fallback_hotshot_height"`
UpdatedAt time.Time `json:"updated_at"`
}
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Search for the EspressoState definition and follow the verification and block-serving paths in the rollup node proxy. Confirm where the verified block hash is available, then ensure the returned consumer block is retrieved using that hash rather than only the block number; existing tests should cover the corrected lookup.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 72/100