> ## Documentation Index
> Fetch the complete documentation index at: https://docs.optimism.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Regolith

> Hardfork registry entry for the Regolith network upgrade, which corrected deposit processing after Bedrock.

export const NormativeSpec = ({what, title, href, note}) => <Info>
    <strong>Normative spec:</strong> {what} is normatively defined in the{" "}
    <a href={href}>{title}</a>. {note}
  </Info>;

<NormativeSpec what="This upgrade" title="Regolith specification" href="https://specs.optimism.io/protocol/regolith/overview.html" note="This page records activation data and operational pointers; it does not restate the spec." />

Regolith made minor corrections to deposit processing based on audit findings
after Bedrock. It activates at timestamp `0` on OP Mainnet and OP Sepolia —
that is, from the Bedrock migration onward — which predates the
superchain-registry's superchain-wide hardfork defaults.

|                                         |                                                                                |
| --------------------------------------- | ------------------------------------------------------------------------------ |
| Status                                  | Active                                                                         |
| Governing spec                          | [specs.optimism.io](https://specs.optimism.io/protocol/regolith/overview.html) |
| Mainnet activation (superchain default) | Genesis / at Bedrock                                                           |
| Sepolia activation (superchain default) | Genesis / at Bedrock                                                           |

## What changed

Per the [spec overview](https://specs.optimism.io/protocol/regolith/overview.html):

* Disabled the `isSystemTx` boolean; system transactions use the same gas
  accounting rules as regular deposits.
* Records actual deposit gas usage in the deposit transaction receipt and
  subtracts it from the L2 block gas pool (unused deposit gas is not refunded).
* Adds the optional `depositNonce` receipt field and uses it to correct
  transaction and receipt metadata in RPC responses.
* Commits `gas` and `depositNonce` into the consensus representation of the
  receipt so the data syncs safely between L2 nodes.
* Corrects the L1 cost function to more closely match pre-Bedrock behavior.
