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

refactor data published over gossipnet #309

Closed
noot opened this issue Aug 23, 2023 · 2 comments
Closed

refactor data published over gossipnet #309

noot opened this issue Aug 23, 2023 · 2 comments
Assignees
Labels
conductor pertaining to the astria-conductor crate refactor code refactoring or maintainence sequencer-relayer pertaining to the astria-sequencer-relayer crate

Comments

@noot
Copy link
Collaborator

noot commented Aug 23, 2023

Currently, the data published over gossipnet is a SequencerBlockData, which is published over one topic, which conductor subscribes to.

There are two problems with this:

  1. conductor does no validation of the received SequencerBlockData rollup data (it can't, since it's missing inclusion proofs right now)
  2. conductor receives data for every rollup, even though it doesn't need to. it should only receive rollup data for its own rollup, along with block data needed for verification.

Gossip and the data published should be updated as follows:

  1. there should be a topic for sequencer block headers which sequencer block headers + last commits are published on (as one structure), all conductors will subscribe to this
  2. conductor should subscribe to the topic designated by its chain ID
  3. relayer should publish rollup data to the topic designated by its chain ID
  4. the rollup data published should be updated to include the merkle inclusion proof of itself inside the block's action tree root (for verification, the same way data is verified when read from DA right now) and conductor should verify this

A problem with this design is if rollup data is published on some topic, and the conductor somehow misses this data, there is no request-response protocol for it to fetch this data if it sees it's missing it. However this is ok as it can later get this data from DA. or if we want to implement a request-response protocol later, we can.

@noot noot added conductor pertaining to the astria-conductor crate sequencer-relayer pertaining to the astria-sequencer-relayer crate refactor code refactoring or maintainence labels Aug 23, 2023
@noot noot self-assigned this Aug 23, 2023
@noot
Copy link
Collaborator Author

noot commented Sep 5, 2023

blocked by decision on #325

@joroshiba
Copy link
Member

We are going to remove the gossipnet, which removes need to refactor data published over it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conductor pertaining to the astria-conductor crate refactor code refactoring or maintainence sequencer-relayer pertaining to the astria-sequencer-relayer crate
Projects
None yet
Development

No branches or pull requests

2 participants