Blockspace Overview
Abstract
This specification defines the structure of valid blocks in the Tempo blockchain.
Motivation
Tempo blocks extend the Ethereum block format in multiple ways: there are new header fields to account for payment lanes and shared gas accounting, and system transactions are added to the block body for the fee AMM and other protocol operations. This specification contains all the modifications to the block format.
Specification
Header fields
Tempo extends an Ethereum header with three extra scalars.
pub struct Header {
pub general_gas_limit: u64,
pub shared_gas_limit: u64,
pub timestamp_millis_part: u64,
pub inner: Header,
}inneris the canonical Ethereum header (parent_hash, state_root, gas_limit, etc.).general_gas_limitandshared_gas_limitpartition the canonicalgas_limitfor payment and non-payment capacity (see payment lane specification).timestamp_millis_partstores the sub‑second component; the full timestamp isinner.timestamp * 1000 + timestamp_millis_part.
Block body
The block body in Tempo retains the canonical Ethereum block body structure, with the addition of system transactions. Transactions are ordered in the following sections:
- Start-of-block system transaction(s) (must begin with the rewards registry call).
- Proposer lane transactions, subject to
general_gas_limiton non-payment transactions. - Remaining transactions that consume the shared gas budget.
- Protocol-defined end-of-block system transactions, when required.
System transactions
A valid tempo block must contain the following system transaction:
- Rewards Registry (start-of-block) — must be the first transaction in the block body; refreshes validator rewards metadata before user transactions begin. Detailed specification here.
Was this helpful?