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

Support all network configs #6351

Open
nflaig opened this issue Jan 24, 2024 · 3 comments
Open

Support all network configs #6351

nflaig opened this issue Jan 24, 2024 · 3 comments
Labels
prio-medium Resolve this some time soon (tm). scope-ux Issues for CLI UX or general consumer UX.

Comments

@nflaig
Copy link
Member

nflaig commented Jan 24, 2024

After reviewing the spec values I noticed we are still missing plenty of network values which should be part of the config (configs/mainnet.yaml#L113-L150). We either don't support them or those are defined as constants.

I looked into refactoring this to move all of the constants into config but not all parts of the code that use those values can get access to configs easily, for example values used in rateLimitQuotas

export const rateLimitQuotas: Record<ReqRespMethod, InboundRateLimitQuota> = {

While it should be possible to refactor the code to make this work, I think we should avoid large changes before the Deneb hard fork as current configuration is well tested already and there is no specific requirements to move those values from constants to config.

From #6328

@nflaig nflaig added the prio-low This is nice to have. label Jan 24, 2024
@philknows philknows added the scope-ux Issues for CLI UX or general consumer UX. label Jan 29, 2024
@nflaig
Copy link
Member Author

nflaig commented Dec 13, 2024

To get a better overview of what's missing we need to add p2p-interface.md to documents we pull config values from

for (const docName of ["beacon-chain.md", "validator.md"]) {

The following constants are missing right now

DOMAIN_APPLICATION_MASK
NODE_ID_BITS
GOSSIP_MAX_SIZE
MAX_REQUEST_BLOCKS
EPOCHS_PER_SUBNET_SUBSCRIPTION
MIN_EPOCHS_FOR_BLOCK_REQUESTS
MAX_CHUNK_SIZE
TTFB_TIMEOUT
RESP_TIMEOUT
ATTESTATION_PROPAGATION_SLOT_RANGE
MAXIMUM_GOSSIP_CLOCK_DISPARITY
MESSAGE_DOMAIN_INVALID_SNAPPY
MESSAGE_DOMAIN_VALID_SNAPPY
SUBNETS_PER_NODE
ATTESTATION_SUBNET_EXTRA_BITS
ATTESTATION_SUBNET_PREFIX_BITS
MAX_REQUEST_BLOCKS_DENEB
BLOB_SIDECAR_SUBNET_COUNT

@nflaig
Copy link
Member Author

nflaig commented Dec 13, 2024

I looked into refactoring this to move all of the constants into config but not all parts of the code that use those values can get access to configs easily, for example values used in rateLimitQuotas

This will be (partially) addressed by #7294

@nflaig
Copy link
Member Author

nflaig commented Feb 6, 2025

(PS we're missing a lot of the network config entries from the consensus specs)

@wemeetagain I started tracking those here, we've added a bunch for electra fork since those changed but I think this is rather low prio to add all of them unless there is demand for it

@wemeetagain wemeetagain marked this as a duplicate of #7434 Feb 6, 2025
@nflaig nflaig added prio-medium Resolve this some time soon (tm). and removed prio-low This is nice to have. labels Mar 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
prio-medium Resolve this some time soon (tm). scope-ux Issues for CLI UX or general consumer UX.
Projects
None yet
Development

No branches or pull requests

2 participants