Many fixes

This commit is contained in:
Eitan Seri-Levi
2026-05-09 18:58:08 +03:00
parent 2356bdd256
commit 1b2cf3ba01
45 changed files with 667 additions and 1328 deletions

View File

@@ -23,10 +23,12 @@ use types::{
ChainSpec, ContributionAndProof, Domain, Epoch, EthSpec, ExecutionPayloadEnvelope, Fork,
FullPayload, Graffiti, Hash256, InclusionList, PayloadAttestationData,
PayloadAttestationMessage, SelectionProof, SignedAggregateAndProof, SignedBeaconBlock,
SignedContributionAndProof, SignedExecutionPayloadEnvelope, SignedInclusionList, SignedRoot,
SignedValidatorRegistrationData, SignedVoluntaryExit, Slot, SyncAggregatorSelectionData,
SyncCommitteeContribution, SyncCommitteeMessage, SyncSelectionProof, SyncSubnetId,
ValidatorRegistrationData, VoluntaryExit, graffiti::GraffitiString,
SignedContributionAndProof, SignedExecutionPayloadEnvelope,
SignedExecutionPayloadEnvelopeGloas, SignedExecutionPayloadEnvelopeHeze, SignedInclusionList,
SignedRoot, SignedValidatorRegistrationData, SignedVoluntaryExit, Slot,
SyncAggregatorSelectionData, SyncCommitteeContribution, SyncCommitteeMessage,
SyncSelectionProof, SyncSubnetId, ValidatorRegistrationData, VoluntaryExit,
graffiti::GraffitiString,
};
use validator_store::{
AggregateToSign, AttestationToSign, ContributionToSign, DoppelgangerStatus,
@@ -1504,9 +1506,19 @@ impl<T: SlotClock + 'static, E: EthSpec> ValidatorStore for LighthouseValidatorS
.await
.map_err(Error::SpecificError)?;
Ok(SignedExecutionPayloadEnvelope {
message: envelope,
signature,
Ok(match envelope {
ExecutionPayloadEnvelope::Gloas(message) => {
SignedExecutionPayloadEnvelope::Gloas(SignedExecutionPayloadEnvelopeGloas {
message,
signature,
})
}
ExecutionPayloadEnvelope::Heze(message) => {
SignedExecutionPayloadEnvelope::Heze(SignedExecutionPayloadEnvelopeHeze {
message,
signature,
})
}
})
}
}

View File

@@ -654,6 +654,7 @@ impl<S: ValidatorStore + 'static, T: SlotClock + 'static> BlockService<S, T> {
// Fetch the envelope from the beacon node. Use builder_index=BUILDER_INDEX_SELF_BUILD for local building.
// TODO(gloas): Use proposer_fallback once multi-BN is supported.
let fork_name = self.chain_spec.fork_name_at_slot::<S::E>(slot);
let envelope = self
.beacon_nodes
.first_success(|beacon_node| async move {
@@ -661,6 +662,7 @@ impl<S: ValidatorStore + 'static, T: SlotClock + 'static> BlockService<S, T> {
.get_validator_execution_payload_envelope_ssz::<S::E>(
slot,
BUILDER_INDEX_SELF_BUILD,
fork_name,
)
.await
.map_err(|e| {
@@ -674,7 +676,7 @@ impl<S: ValidatorStore + 'static, T: SlotClock + 'static> BlockService<S, T> {
info!(
slot = slot.as_u64(),
beacon_block_root = %envelope.beacon_block_root,
beacon_block_root = %envelope.beacon_block_root(),
"Received execution payload envelope, signing"
);
@@ -718,7 +720,7 @@ impl<S: ValidatorStore + 'static, T: SlotClock + 'static> BlockService<S, T> {
info!(
slot = slot.as_u64(),
beacon_block_root = %signed_envelope.message.beacon_block_root,
beacon_block_root = %signed_envelope.message().beacon_block_root(),
"Successfully published signed execution payload envelope"
);