Skip to content

Confirm that BlindedExecutionPayloadEnvelope stays an SSV-internal container #3003

Description

@ovidiu-ssv-labs

Summary

The beacon-APIs specification does not have the BlindedExecutionPayloadEnvelope container. PR ethereum/beacon-APIs#624 removed it. SIP-94 §6 and the node still use this container. We must confirm that this is correct.

Facts

  1. The specification has no Gloas.BlindedExecutionPayloadEnvelope schema. Only the pre-Gloas blinded block types stay in the specification.
  2. The node publishes the full signed envelope to /eth/v1/beacon/execution_payload_envelopes (beacon/goclient/gloas_envelope.go:75). This agrees with the specification. Issue ePBS §6: treat EXECUTION_PAYLOAD_ENVELOPE_ERROR_ALREADY_KNOWN as success on the envelope publish (§6 analog of #2922) #2923 made this change.
  3. The node uses the blinded container as the QBFT value for the §6 duty (protocol/v2/ssv/value_check.go:202-211).

Effect

There is no known effect on the wire today. The container is internal to SSV consensus. But the container name is the same as the name of a removed specification type. This can cause confusion for a reader.

Request

  1. Confirm that the blinded container stays an SSV-internal type.
  2. If the container stays, add a comment in the code and a note in SIP-94. The comment and the note must say that beacon-APIs removed the type, and that SSV keeps the type for consensus only.
  3. If the container does not stay, give the replacement container.

Found during Glamsterdam QA research (test plan P0.1 / P0.11). Verified against ethereum/beacon-APIs master on 2026-08-26.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions