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

Add v1alpha1 proto auctioneer apis #1553

Closed
Tracked by #1533
itamarreif opened this issue Sep 23, 2024 · 0 comments · Fixed by #1519
Closed
Tracked by #1533

Add v1alpha1 proto auctioneer apis #1553

itamarreif opened this issue Sep 23, 2024 · 0 comments · Fixed by #1519
Assignees

Comments

@itamarreif
Copy link
Contributor

itamarreif commented Sep 23, 2024

Need to define the interfaces for the optimistic block and bundle services used by the auctioneer. See this document for more info.

┆Issue Number: ENG-840

@itamarreif itamarreif self-assigned this Sep 23, 2024
github-merge-queue bot pushed a commit that referenced this issue Oct 2, 2024
## Summary
This adds the protobuf definitions for optimistic block stream and the
bundle stream.

## Background
The Auctioneer will auction off a bundle slot which will be placed at
the top of the rollup block deterministically during execution. The APIs
in this PR are used to drive the bundle auction (detailed in [this
document](https://www.notion.so/astria-org/20240919-Status-Update-1066bd31a90c80b68bb2ea9b898645d0)).
At a high level:

The Auctioneer receives blocks optimistically from the sequencer in
order to maximize the auction duration.

While the auction is running, the Auctioneer receives orders from the
rollup node that have been validated against the optimistic block.

After a block is committed, the Auctioneer will submit the highest
paying bundle for inclusion by the sequencer.

### Optimistic Block Stream
1. The Sequencer will stream blocks to the Auctioneer optimistically,
i.e. before they are finalized (ProcessProposal).
2. The Sequencer will also stream block commitments to the Auctioneer,
which mark blocks as final thanks to CometBFT's single slot finality.

### Bundle Stream
1. The Auctioneer will stream optimistic blocks to the rollup node for
execution. The rollup will execute the block and return the resulting
header info.
2. The rollup node will stream bundles (indexed by parent block hash) to
the Auctioneer.

## Changes
- Add the bundle service to the composer apis
- Add the optimistic block service to the sequencer block apis

## Breaking Changelist
- Bulleted list of breaking changes, any notes on migration. Delete
section if none.

## Related Issues
closes #1553
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant