ethereum-optimism / ethereum-optimism/optimism
proposer: Recheck the game UUID before clearing a pending creation tx
- 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
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