Repository navigation
fix: follow the Heze slot duration in the wallclock and UI - #93
Open
barnabasbusa wants to merge 5 commits into
Open
barnabasbusa wants to merge 5 commits into
barnabasbusa wants to merge 5 commits into
Conversation
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.
Heze shortens slots from
HEZE_FORK_EPOCHonwards (SLOT_DURATION_MS_HEZE), but forky computes every slot asgenesis + slot * SECONDS_PER_SLOT, so on heze-devnet-3 (9s slots from epoch 5) its wallclock reports slot ~14.3k while the chain is at ~19k. This bumps ethwallclock to v0.5.0 and passes the Heze schedule to both wallclocks: the configured one via the new optionalheze_fork_epoch/slot_duration_ms_hezespec keys, and the per-beacon-node one fromHEZE_FORK_EPOCH/SLOT_DURATION_MS_HEZEin/eth/v1/config/spec. SinceSECONDS_PER_SLOTis deprecated, slot length now comes fromSLOT_DURATION_MSeverywhere: the beacon node source reads it from the node, and the config keyseconds_per_slotand the/api/v1/ethereum/specfield are replaced byslot_duration_ms(existing configs needseconds_per_slot: 12→slot_duration_ms: 12000). The Heze keys are exposed on the same endpoint, and the web UI moves its slot/time math (focus, slot dial, controls, events) onto shared schedule helpers so the rulers switch to the shorter slot length at the fork. CI: Playwright moves to 1.64.1 (1.60 cannot install Chromium on the Ubuntu 26.04ubuntu-latestrunners), all actions move to their Node 24 releases,checkoutnow runs beforesetup-goso the module cache findsgo.sum, and the invalidbranchesfilter onworkflow_dispatchis dropped.Tested live against heze-devnet-3 (9s Heze slots) and heze-devnet-2 (Heze with 12s slots):
/api/v1/ethereum/nowmatches the beacon node head on both, frames land on the right slots, and the slot rulers show 9s and 12s respectively.Before (live heze-devnet-3):
After, heze-devnet-3 / heze-devnet-2: