Skip to content
This repository was archived by the owner on Jul 23, 2025. It is now read-only.

Required quorums glitch#255

Merged
samlaf merged 8 commits intoLayr-Labs:mainfrom
gastonponti:required-quorums-glitch
Jan 24, 2025
Merged

Required quorums glitch#255
samlaf merged 8 commits intoLayr-Labs:mainfrom
gastonponti:required-quorums-glitch

Conversation

@gastonponti
Copy link
Contributor

Fixes Issue

Closes #252

Changes proposed

As is stated in the issue, it avoids the quorum 1 check for the range of blocks [2950000, 2960000) for Holesky

Note to reviewers

Instead of using a flag passed through the cli, I'm checking the svc address, which will change for the v2, but I'm assuming that this issue will be only for the v1 users.
This check avoids cascading a flag in a lot of places just because of this particular bug. With this approach the custom changes live only in the verifier.

This is a new PR required because the original one (#253 ) was pointing to a different branch that after being merged it was closed

Copy link
Collaborator

@samlaf samlaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM after you fix the lint issues. Also let's make sure not to merge before celo has actually succesfully tested this (to make sure the range is wide enough mainly).

@samlaf
Copy link
Collaborator

samlaf commented Jan 24, 2025

@gastonponti confirmed that the archive sync worked smoothly with this change. Good to merge once CI passes.

@samlaf
Copy link
Collaborator

samlaf commented Jan 24, 2025

CodeQL is acting up for some reason... going to merge anyways.

@samlaf samlaf merged commit 5715ace into Layr-Labs:main Jan 24, 2025
7 checks passed
ethenotethan added a commit that referenced this pull request Jan 30, 2025
* fix(#251): better error logging for RPC lookup errors against service manager (#254)

* chore: modify verifier to not require eth archive node (#241)

* chore: force verifier's EthConfirmationDepth to be <64

We panic in the flag's action, as well as in the verifier's constructor when this condition is not respected.

This will make sure that an archival node is not required.

* chore: modify verifier to load quorum parameters only once at initialization

This removes the need for running with an eth archive node.

* style: fix minor lint issue

* docs: update README to mention that archival node is no longer needed

* docs: clean-up README archival node requirement explanation

* docs: fix verify/cert.go comment typo

Co-authored-by: Ethen <ethen@eigenlabs.org>

* docs: for eg -> e.g.

* style(cert): remove unecessary bound checks from inside loop

* style: create consts package with EthHappyPathFinalizationDepthBlocks = 64

* style: change panic into error return

* docs: change op reference for eth reference

* docs: make flag comment simpler

* Update verify/cert.go

Co-authored-by: EthenNotEthan <ethen@eigenlabs.org>

---------

Co-authored-by: Ethen <ethen@eigenlabs.org>

* docs: pimp out readme with blob lifecycle diagrams (#233)

* chore: move pull_request_template.md under .github/ dir

* docs: reorder README sections to feel more natural (move flags to bottom)

* docs (wip): add blob lifecycle diagrams to README

* docs: remove Sidecar from README title (proxy is not necessarily a side)

* docs: add blob lifecycle section to README

* docs: add TOC to README

* style(routing): rename raw_commitment -> payload

We changed the name in README so should be consistent in the code

* docs: update README sections to use Payload instead of Blob

Posting Blobs -> Posting Payloads
Retrieving Blobs -> Retrieving Payloads

* docs: remove "obviously" word

* Required quorums glitch (#255)

* Avoid quorum 1 check on range of Holesky blocks

* Improve SVC address check

* Update verify/verifier.go

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>

* Update verify/verifier.go

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>

* Avoid unnecessary cast

* Rename constant

* Fix lint

---------

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>

* docs: update README posting payload image (#256)

* fix: remove last eth_call that required archive node (#259)

Forgot this one in #241

* docs: update SECURITY.md with audit commit + fix small typos (#263)

* docs: update SECURITY.md

* docs: update SECURITY.md with audited release number + release where findings were addressed

* feat: EigenDAV2 commitment processing and generation

* feat: EigenDAV2 commitment processing and generation - add note describing follow up todo

---------

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>
Co-authored-by: Gaston Ponti <pontigaston@gmail.com>
litt3 added a commit that referenced this pull request Mar 5, 2025
* feat: Initial V2 scaffolds

* feat: Initial V2 scaffolds - add boilerplate dependency injection and feature flag

* feat: Initial V2 scaffolds - go fmt

* feat: Initial V2 scaffolds - wire up disperser and retriever clients

* feat: EigenDAV2 commitment processing and generation (#265)

* fix(#251): better error logging for RPC lookup errors against service manager (#254)

* chore: modify verifier to not require eth archive node (#241)

* chore: force verifier's EthConfirmationDepth to be <64

We panic in the flag's action, as well as in the verifier's constructor when this condition is not respected.

This will make sure that an archival node is not required.

* chore: modify verifier to load quorum parameters only once at initialization

This removes the need for running with an eth archive node.

* style: fix minor lint issue

* docs: update README to mention that archival node is no longer needed

* docs: clean-up README archival node requirement explanation

* docs: fix verify/cert.go comment typo

Co-authored-by: Ethen <ethen@eigenlabs.org>

* docs: for eg -> e.g.

* style(cert): remove unecessary bound checks from inside loop

* style: create consts package with EthHappyPathFinalizationDepthBlocks = 64

* style: change panic into error return

* docs: change op reference for eth reference

* docs: make flag comment simpler

* Update verify/cert.go

Co-authored-by: EthenNotEthan <ethen@eigenlabs.org>

---------

Co-authored-by: Ethen <ethen@eigenlabs.org>

* docs: pimp out readme with blob lifecycle diagrams (#233)

* chore: move pull_request_template.md under .github/ dir

* docs: reorder README sections to feel more natural (move flags to bottom)

* docs (wip): add blob lifecycle diagrams to README

* docs: remove Sidecar from README title (proxy is not necessarily a side)

* docs: add blob lifecycle section to README

* docs: add TOC to README

* style(routing): rename raw_commitment -> payload

We changed the name in README so should be consistent in the code

* docs: update README sections to use Payload instead of Blob

Posting Blobs -> Posting Payloads
Retrieving Blobs -> Retrieving Payloads

* docs: remove "obviously" word

* Required quorums glitch (#255)

* Avoid quorum 1 check on range of Holesky blocks

* Improve SVC address check

* Update verify/verifier.go

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>

* Update verify/verifier.go

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>

* Avoid unnecessary cast

* Rename constant

* Fix lint

---------

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>

* docs: update README posting payload image (#256)

* fix: remove last eth_call that required archive node (#259)

Forgot this one in #241

* docs: update SECURITY.md with audit commit + fix small typos (#263)

* docs: update SECURITY.md

* docs: update SECURITY.md with audited release number + release where findings were addressed

* feat: EigenDAV2 commitment processing and generation

* feat: EigenDAV2 commitment processing and generation - add note describing follow up todo

---------

Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>
Co-authored-by: Gaston Ponti <pontigaston@gmail.com>

* feat: Initial V2 scaffolds - dependency injection working, current bug with G2 point ingestion

* feat: Initial V2 scaffolds - E2E proof of concept sort've

* feat: Initial V2 scaffolds - bump EigenDA

* feat: Initial V2 scaffolds - update dependency injection

* feat: Initial V2 scaffolds - hardcode quorums

* feat: Initial V2 scaffolds - working mvp

* feat: Initial V2 scaffolds - working lint and tests

* feat: Initial V2 scaffolds - add todo around G2 ingestion

* feat: Initial V2 scaffolds - change all usage of directory path to just path

* feat: Initial V2 scaffolds - refactor manager

* feat: Initial V2 scaffolds - refactor commitments

* chore(V2): Refactor dependency injection && config mgmt (#296)

* chore(V2): Refactor dependency injection && config mgmt

* chore(V2): Refactor dependency injection && config mgmt - address config.go feedback

* chore(V2): Refactor dependency injection && config mgmt - update polynomial form flag

* chore(V2): Refactor dependency injection && config mgmt - loader --> builder

* feat: Initial V2 scaffolds - add verification && more verbose logging

* feat: Initial V2 scaffolds - update e2e setup to use memconfig

* chore(V2): update config checks and fix custom quorum injection (#298)

* feat: Initial V2 scaffolds - update e2e setup to use memconfig

* chore(V2): update config checks and fix custom quorum injection

* chore(V2): update config checks and fix custom quorum injection - update flag descriptions && add  flag

* chore(V2): update config checks and fix custom quorum injectiom - address PR feedback

* chore(V2): update config checks and fix custom quorum injectiom - update tls flag description

* chore(V2): update config checks and fix custom quorum injectiom - pc --> proxyCfg

* chore(V2): update config checks and fix custom quorum injectiom - private builder fields and comment

* feat(v2): memstore (#305)

* feat(V2): memstore

* feat(V2): memstore - code comments, fix v2 wiring bugs, update monorepo dep

* feat(V2): memstore - E2E tests

* feat(V2): memstore - minor updates

* feat(V2): memstore - address PR feedback

* feat(V2): memstore - add CLI comment

* feat(V2): memstore -address pr comments

* feat: Initial V2 scaffolds - lint fixes and minor refactors

* Update EigenDA version, and fix linter issues (#315)

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* V2: fix e2e tests (#316)

fix(E2E): Update oversized cert test to assert lookup error instead

* Rework v2 initialization (#317)

* Rework v2 initialization

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Use snake case for imports

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Adopt latest eigenDA changes

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Fix error messages

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Tweak import

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Check signer account balance

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

---------

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Rename EigenDACommit to EigenDACommitmentType

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Strive for naming consistency

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Do general cleanup

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Fix bug found by copilot

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Further separate out secrets

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Reduce diff size

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Return error instead of panicking

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Fix log

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Only read v2 config if enabled

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Put back check for redis password

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Make configs not use pointers

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Remove reference to arbitrum

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Clean up Builder

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Do more cleanup on StorageManagerBuilder

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Move CertVerifierAddress into config struct

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Return struct instead of interface

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Convert len to symbols

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Add TODO

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Describe future improvements

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

* Add additional config check

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>

---------

Signed-off-by: litt3 <102969658+litt3@users.noreply.github.com>
Co-authored-by: Ethen Pociask <ethen@eigenlabs.org>
Co-authored-by: Samuel Laferriere <samlaf92@gmail.com>
Co-authored-by: Gaston Ponti <pontigaston@gmail.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: requiredQuorums glitch on holesky

3 participants