Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Holocene: experimental - deposit queue #82

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from
Draft

Conversation

tynes
Copy link
Contributor

@tynes tynes commented Mar 5, 2024

Description

Adds an experimental spec for a deposit queue.

This feature is meant to solve:

  • Complexity of ResourceMetering
  • No deposit transaction frontrunning grief
  • Consistent amount of gas used on L1 when depositing

An additional consideration is to be able to handle L3s with equal or higher block time than the L2. (issue currently is that those chains can’t catch up their L1BlockInfo to the latest block). It isn't clear if this should be included as part of this or be its own spec yet

Adds an experimental spec for a deposit queue.

This feature is meant to solve:
- Complexity of `ResourceMetering`
- No deposit transaction frontrunning grief
- Consistent amount of gas used on L1 when depositing
@kaleb-keny
Copy link

appreciate pushing for a change on this @tynes 🙏🏼

@BlocksOnAChain BlocksOnAChain changed the title experimental: deposit queue granite: experimental - deposit queue Jul 23, 2024
@BlocksOnAChain BlocksOnAChain changed the title granite: experimental - deposit queue Holocene: experimental - deposit queue Jul 23, 2024
@tynes
Copy link
Contributor Author

tynes commented Aug 12, 2024

It would be good to also include a nonce with each deposit event so that we don't need to observe all logs that create deposit txs during the fault proof program to be sure that we have not skipped a deposit. It would also be ideal to have a nonce on L2 that increments for each deposit consumed, so that we can look at the L1 nonce and know how many not yet pulled in deposits there are on L2.

We would also want to do the same nonce strategy for the system config ConfigUpdate event, its possible that given the static config change in #122 we can deprecate ConfigUpdate in favor of simply making calls to L1Block as a special identity, similar to how custom gas token works

@mdehoog
Copy link
Contributor

mdehoog commented Sep 12, 2024

+1 on including a nonce with each deposit event, and also with config updates. This would allow us to skip processing L1 blocks that don't have any L2-relevant events in them, speeding up derivation and proving.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Todo
Development

Successfully merging this pull request may close these issues.

5 participants