The Rex6 specification introduces fourteen changes to gas metering, resource accounting, execution behavior, and system contracts. Most changes are consensus-visible, with the exception of the CREATE-family early-halt ordering (trace-visible only) and the KeylessDeploy occupancy read (affects transaction read set only). Key updates include:
- Unified Gas Metering: Establishes a canonical order for storage-affecting opcodes to charge storage gas and record compute gas, including
CREATE2. - EIP-7702 Authorization: Consolidates authorization accounting via a single applied-authorization scan during transaction validation.
- CREATE-frame Accounting: Corrects creator nonce-bump and net-new state-growth accounting for the
CREATE frame. - KeylessDeploy Hardening: Rescues unused gas for the outer sender if a dispatch hits the compute-gas limit; reports constructors that self-destruct as empty-code deployments.
- Fee-Reward Accounting: Includes account writes from the post-execution beneficiary fee-reward step in resource accounting.
- System Transaction Exemption: Exempts protocol-originated transactions from per-transaction resource metering to ensure protocol-mandated state changes are not pushed out of gas as SALT buckets grow.