Skip to main content

Module block

Module block 

Source
Expand description

L2Block — full L2 block: header, transaction body (SpendBundles), slash proposal payloads, proposer signature.

Requirements:

§Usage

Build a block by assembling an L2BlockHeader (commitments, roots, counts) and the body fields. Canonical identity is L2Block::hashL2BlockHeader::hash only; spend bundles and slash bytes are committed via Merkle roots in the header, not mixed into this hash (SPEC §2.3 / BLK-003 notes).

§Rationale

  • SpendBundle comes from chia-protocol so CLVM spends match L1/Chia tooling (BLK-003).
  • Signature is the chia-bls type re-exported as crate::primitives::Signature (BLK-006) so callers import one dig_block surface.
  • slash_proposal_payloads are Vec<Vec<u8>> for opaque slash evidence (encoding evolves independently).

Structs§

L2Block
Complete L2 block: header plus body (spend bundles, slash payloads) and proposer attestation.