Invariants / DC-CONS-18

DC-CONS-18

DC derived enforced

Header bytes announced via chain-sync RollForward{header,tip} are the header sub-segment of the AcceptedBlock whose body bytes are subsequently servable via block-fetch. block_body_hash applied to the served body MUST equal the body-hash field of the announced header.

Source

docs/planning/phase4-n-a-successor-invariants.md §1 (I-2)

Cluster
PHASE4-N-G
Authority surface
producer-side chain-sync RollForward header projection

Enforcement trace

Tests 5

  • producer_chain_sync_serve_roll_forward_header_equals_accepted_block_header_bytes
  • session_transcript_announced_header_matches_served_body_recipe
  • accepted_block_header_bytes_equals_validator_split_on_corpus
  • forge_block_accepts_empty_mempool
  • unsigned_header_preimage_matches_decode_block_extraction_for_corpus

Cross-references

Strengthened in

Evidence

  • End-to-end transcript test session_transcript_announced_header_matches_served_body_recipe asserts the rolled header bytes equal accepted_block_header_bytes over the same AcceptedBlock the matching block-fetch range subsequently serves.

  • The single canonical header splitter is enforced by ci_check_no_parallel_header_splitter.sh; the GREEN adapter imports accepted_block_header_bytes (positive grep in ci_check_broadcast_to_served_purity.sh).