Skip to content

Support Fulu data columns and Gloas gossip topic forwarding #28

Description

@swarna1101

Context

GloasForkEpoch is still disabled on mainnet and Hoodi today, so there is no production impact yet. The gateway currently bridges only beacon_block and beacon_attestation_* gossip topics.

data_column_sidecar_* topic descriptor validation already exists in pkg/entities/eth_topics.go, but those topics are not subscribed or forwarded.

Scope

1. Fulu - data_column_sidecar_* forwarding

  • Subscribe, validate, and bridge CL ↔ mump2p for data column sidecar topics
  • Extend TopicMeta / topic filters beyond blocks + attestations
  • Decide aggregation strategy (raw forward vs pack, per column index)
  • Validation should follow consensus spec SSZ rules, not a single client implementation

2. Gloas - new gossip topics

Topic SSZ type
payload_attestation_message PayloadAttestationMessage
execution_payload_bid SignedExecutionPayloadBid
proposer_preferences SignedProposerPreferences
execution_payload_envelope SignedExecutionPayloadEnvelope
beacon_block SignedBeaconBlockGloas
  • Add topic descriptors, subscription wiring, and CL <-> mump2p bridging for each
  • Gate activation on fork epoch configuration

3. Gloas attestation fast-path

  • Review ParseAttestationSSZTopic byte-offset parsing - Gloas changes attestation index semantics per the spec
  • Ensure subnet routing and aggregation remain correct post-fork

Non-goals

  • No client-specific validation logic copied from a single CL codebase
  • No production enablement until fork epochs are scheduled on target networks

Acceptance

  • Topic list and filters cover Fulu data columns and Gloas gossip where the gateway is active
  • Hoodi (or fork testnet) smoke test confirms subscribe + forward without breaking existing block/attestation paths
  • Fork gating documented in config / release notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions