ethereum-optimism / ethereum-optimism/optimism

proposer: Recheck the game UUID before clearing a pending creation tx

Open
#22,140 0 comments 0 reactions 0 assignees View on GitHub
proofs: ZK
Dominant language
Go
Stars
6.5k
Forks
4k
Avg merge
2d 15h
Merged PRs (30d)
145

Description

After a create times out, the game can land between the UUID lookup and the nonce checks. In that case the txpool appears drained, so we clear the pending game creation record without noticing the game. If the pinned game cache is still behind, the proposer could then create another sibling.

Before clearing, check the UUID once more and adopt the game if it appeared.

See this convo for more details - https://github.com/ethereum-optimism/optimism/pull/22097#discussion_r3678252921

Contributor guide

Open the contributing guide

Research direction

Start by tracing the proposer flow that clears a pending game creation after a timeout, focusing on the UUID lookup and nonce checks. Review the linked discussion for the intended ordering. Done means a game appearing between checks is detected and adopted before the pending creation record can be cleared, with coverage for that race.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
blockchain
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.