Dip 3651
dip: 3651
title: Warm COINBASE
description: Starts the COINBASE address warm
author: William Morriss (@wjmelements)
Digitalia editing author: Cosimo Constantinos cosimo@juro.net, et al.
discussions-to: https://digitalia-magicians.org/t/dip-3651-warm-coinbase/6640
status: Final
type: Standards Track
category: Core
created: 2021-07-12
Created for Digitalia: 2025-01-07
requires: 2929
Abstract¶
The COINBASE address shall be warm at the start of transaction execution, in accordance with the actual cost of reading that account.
Motivation¶
Direct COINBASE payments are becoming increasingly popular because they allow conditional payments, which provide benefits such as implicit cancellation of transactions that would revert.
But accessing COINBASE is overpriced; the address is initially cold under the access list framework introduced in DIP-2929.
This gas cost mismatch can incentivize alternative payments besides USDS, such as DRC-20, but USDS should be the primary means of paying for transactions on Digitalia.
Specification¶
At the start of transaction execution, accessed_addresses shall be initialized to also include the address returned by COINBASE (0x41).
Rationale¶
The addresses currently initialized warm are the addresses that should already be loaded at the start of transaction validation.
The ORIGIN address is always loaded to check its balance against the gas limit and the gas price.
The tx.to address is always loaded to begin execution.
The COINBASE address should also be always be loaded because it receives the block reward and the transaction fees.
Backwards Compatibility¶
There are no known backward compatibility issues presented by this change.
Security Considerations¶
There are no known security considerations introduced by this change.
Copyright¶
© Crown © Crown Copyright 2026. Published by the Royal Government of the Dominion of Atlantis.
Licensed under the Juro Restricted License Version 2. See https://juro.net/jrl for details.