glamsterdam-devnet-6 support#194
Merged
Merged
Conversation
Isolates the onboard_builders_from_pending_deposits path: deposit builders via the standard validator deposit contract with 0x03 creds a few slots before GLOAS, then verify the fork dequeues the still-pending deposits into builders. Fails fast if started after the pre-fork window.
Drop the 'wait until SLOTS_PER_EPOCH/3 before the fork' gate; just deposit as soon as the test starts. Guard now only requires that GLOAS hasn't activated yet so the deposit can still be pending at the transition.
The post-fork onboard check used expectActive+failOnCheckMiss one slot after the fork. expectActive requires deposit_epoch < finalized_epoch, which can never hold for a deposit onboarded AT the fork, so it failed instantly. Make phase 2 an existence-only polling check (proves the 0x03->builder dequeue happened), and make the phase 3 active check poll instead of single-shot.
…uilder Depositing ASAP let the 0x03 deposit finalize and get drained into the validator registry as a regular validator before the fork, so the GLOAS onboarding (which only scans still-pending deposits, and skips pubkeys that are already validators) never converted it. Restore depositing ~1 epoch before the fork, within the unfinalized window, so it survives in state.pending_deposits until upgrade_to_gloas onboards it. Verified against consensus-specs v1.7.0-alpha.11 (process_pending_deposits finalized-slot gate; onboard_builders_from_pending_deposits; no min amount).
…as epoch Fills the front of the pending-deposit queue with junkCount (>16) regular 1 ETH deposits at epoch F-3, then a 0x03 builder deposit behind the wall. The boundary drain (16/epoch) can't reach the builder deposit, so it stays pending and is onboarded already-finalized (deposit_epoch=F-3 < finalized@fork), making it active in epoch F. Asserts active-in-epoch-F as the experiment.
…c+index Add builderMnemonic + builderKeyIndex config to both pre-fork playbooks so the 0x03 deposit can target an external builder's key (e.g. buildoor's), letting that builder bid on the onboarded builder. Defaults to a random mnemonic (unchanged standalone behaviour). In queuefill the builder uses a separate mnemonic from the junk wall to avoid index collisions.
…d-test test(gloas): add pre-fork builder onboarding test (0x03 -> builder)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.