From 99bccac532010c79eb9426f62b8b95d3fb01f019 Mon Sep 17 00:00:00 2001 From: Youssef Date: Thu, 8 Oct 2026 13:57:22 +0100 Subject: [PATCH 1/3] docs: sync upgrade, RPC, and node operator pages after Cobalt --- .../ethereum-json-rpc-api/eth_getBlockByHash.mdx | 2 +- .../ethereum-json-rpc-api/eth_getBlockByNumber.mdx | 7 ++++++- .../ethereum-json-rpc-api/eth_getBlockReceipts.mdx | 4 ++++ .../eth_getTransactionReceipt.mdx | 6 +++++- .../ethereum-json-rpc-api/eth_sendRawTransaction.mdx | 4 ++++ docs/base-chain/api-reference/rpc-overview.mdx | 2 +- .../network-information/configuration-changelog.mdx | 1 + docs/get-started/connect-to-base.mdx | 4 ++++ docs/specifications/b20/changelog.mdx | 12 +++++------- .../specifications/base-protocol/proofs/proposer.mdx | 10 ++++++++++ docs/specifications/node-operators/run-a-node.mdx | 4 +++- docs/specifications/node-operators/snapshots.mdx | 6 ++---- .../transactions/transaction-finality.mdx | 6 +++--- docs/upgrades/azul/proofs.mdx | 4 ++++ docs/upgrades/beryl/reth-v2.mdx | 2 ++ 15 files changed, 55 insertions(+), 19 deletions(-) diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx index 08c64d2d6..3079ec3fd 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx @@ -19,7 +19,7 @@ Returns information about a block by its hash. ## Returns - A block object, or `null` if no block was found. The response shape is identical to [`eth_getBlockByNumber`](/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber) — see that page for the full field list. + A block object, or `null` if no block was found. The response shape is identical to [`eth_getBlockByNumber`](/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber) — see that page for the full field list, including the optional `timestampMs` field planned for [Denim](/upgrades/denim/200ms-blocks#block-and-header-timestamps). ## Example diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx index 3f49e1ef7..abcd026d7 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx @@ -10,6 +10,10 @@ Returns information about a block by its number. **Flashblocks:** Query `https://mainnet.base.org` with `"pending"` to fetch the live Flashblock in progress — a real block object updated every ~200ms with new pre-confirmed transactions. The response shape is identical; the block is simply not yet sealed. + +**Denim (planned):** With 200ms blocks, block responses add an optional `timestampMs` field with the full Unix timestamp in milliseconds, and mined transaction objects add an optional `blockTimestampMs`. The `timestamp` field stays in seconds. See [200ms Native Blocks](/upgrades/denim/200ms-blocks#rpc). + + ## Parameters @@ -42,7 +46,8 @@ Returns information about a block by its number. Block size in bytes (hex). Maximum gas allowed in this block (hex). Total gas used in this block (hex). - Unix timestamp (hex). + Unix timestamp in seconds (hex). + Planned for [Denim](/upgrades/denim/200ms-blocks#block-and-header-timestamps). Optional full Unix timestamp in milliseconds (hex). Omitted when the block's BaseTime metadata is unavailable, including pre-Denim blocks. Array of transaction hashes or full transaction objects. Always `[]` on Base. Always `[]` on Base. diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx index a9f98faf0..c907c7205 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx @@ -26,6 +26,10 @@ This method returns HTTP 403 on the public Base RPC endpoints (`mainnet.base.org Array of receipt objects for each transaction in the block. See [`eth_getTransactionReceipt`](/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt) for the receipt object shape. + +**Denim (planned):** Receipts do not gain a top-level timestamp. Instead, each mined log in a receipt adds an optional `blockTimestampMs` field with the block's full Unix timestamp in milliseconds. See [Log and receipt timestamps](/upgrades/denim/200ms-blocks#log-and-receipt-timestamps). + + ## Example diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx index 78bbd7956..641ff8472 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx @@ -10,6 +10,10 @@ Returns the receipt for a transaction by its hash. Returns `null` for transactio Receipts are only available for mined transactions. To monitor a transaction before it is sealed, use [`base_transactionStatus`](/base-chain/api-reference/flashblocks-api/base_transactionStatus) to confirm it is in the mempool, or subscribe to [`newFlashblockTransactions`](/base-chain/api-reference/flashblocks-api/newFlashblockTransactions) to detect its pre-confirmation in a Flashblock. + +The planned Denim upgrade replaces Flashblocks with 200ms native blocks, so the `newFlashblockTransactions` subscription stops after activation. To detect inclusion after Denim, use `eth_subscribe("newHeads")` and fetch the transactions for each canonical block. See [Migrate From Flashblocks](/upgrades/denim/migrate-from-flashblocks). + + ## Parameters @@ -32,7 +36,7 @@ Receipts are only available for mined transactions. To monitor a transaction bef Actual gas price paid per unit of gas for this transaction (hex). Gas used by this specific transaction (hex). Address of the created contract, or `null` if not a deployment. - Array of log objects emitted by this transaction. + Array of log objects emitted by this transaction. Planned for [Denim](/upgrades/denim/200ms-blocks#log-and-receipt-timestamps): each mined log adds an optional `blockTimestampMs` field with the block's full Unix timestamp in milliseconds. 256-byte bloom filter for the logs in this receipt. Transaction type: `"0x0"` Legacy, `"0x1"` Access List, `"0x2"` EIP-1559, `"0x7e"` Deposit (L1→L2). `"0x1"` for success, `"0x0"` for failure (revert). diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx index 3cb233f9a..545a221b2 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx @@ -10,6 +10,10 @@ Submits a pre-signed, RLP-encoded transaction to the network and returns its has **Flashblocks:** Submit to `https://mainnet.base.org` to have your transaction considered for the next Flashblock (~200ms). Use [`base_transactionStatus`](/base-chain/api-reference/flashblocks-api/base_transactionStatus) to confirm receipt in the mempool and subscribe to [`newFlashblockTransactions`](/base-chain/api-reference/flashblocks-api/newFlashblockTransactions) to detect pre-confirmation. + +The planned Denim upgrade replaces Flashblocks with 200ms native blocks, so the `newFlashblockTransactions` subscription stops after activation. To detect inclusion after Denim, use `eth_subscribe("newHeads")` and fetch the transactions for each canonical block. See [Migrate From Flashblocks](/upgrades/denim/migrate-from-flashblocks). + + ## Parameters diff --git a/docs/base-chain/api-reference/rpc-overview.mdx b/docs/base-chain/api-reference/rpc-overview.mdx index e64f5750f..e645642d4 100644 --- a/docs/base-chain/api-reference/rpc-overview.mdx +++ b/docs/base-chain/api-reference/rpc-overview.mdx @@ -74,7 +74,7 @@ Pre-confirmation methods for sub-second transaction signals on Base. These metho ### Debug API -Development and debugging utilities for deep transaction inspection and block replay. Debug methods replay transactions and are computationally expensive — availability and rate limits vary among providers in the [Builder Stack](/get-started/builder-stack). +Development and debugging utilities for deep transaction inspection and block replay. Debug methods replay transactions and are computationally expensive — availability and rate limits vary among providers in the [Builder Stack](/get-started/builder-stack). The public `https://mainnet.base.org` endpoint does not serve the `debug`, `trace`, or `txpool` namespaces. | Method | Description | | --- | --- | diff --git a/docs/base-chain/network-information/configuration-changelog.mdx b/docs/base-chain/network-information/configuration-changelog.mdx index e62537023..28c9b0fe5 100644 --- a/docs/base-chain/network-information/configuration-changelog.mdx +++ b/docs/base-chain/network-information/configuration-changelog.mdx @@ -10,6 +10,7 @@ This page tracks configuration changes to the Base networks, including updates t | Date | Change | Documentation | |------|--------|---------------| +| October 8, 2026 | Public RPC endpoint `mainnet.base.org` stopped serving the `debug`, `trace`, and `txpool` namespaces and lowered its read rate limit | [Connect to Base](/get-started/connect-to-base) | | May 28, 2026 | Azul: Reduced per-transaction gas maximum to 16,777,216 (2^24) via EIP-7825 | [Per-Transaction Gas Maximum](/specifications/transactions/throughput-and-limits#per-transaction-gas-maximum) | | February 19, 2026 | Increased Minimum Base Fee to 5,000,000 wei | [Minimum Base Fee](/specifications/transactions/network-fees#minimum-base-fee) | | February 4, 2026 | Increased EIP-1559 Denominator to 125 | [EIP-1559 Fee Parameters](/specifications/transactions/network-fees#eip-1559-fee-parameters) | diff --git a/docs/get-started/connect-to-base.mdx b/docs/get-started/connect-to-base.mdx index 235cca3eb..e1c4fb6a1 100644 --- a/docs/get-started/connect-to-base.mdx +++ b/docs/get-started/connect-to-base.mdx @@ -20,6 +20,10 @@ Base is a standard EVM chain, so any Ethereum tool, wallet, or library works unc Use the transaction submission endpoint only to send transactions. Use the RPC endpoint for all other requests. + +The public RPC endpoints are free, rate limited, and best effort, and are not suitable for production apps. Since October 8, 2026, `https://mainnet.base.org` no longer serves the `debug`, `trace`, or `txpool` namespaces, and read requests have a lower rate limit. If your app uses these namespaces or needs higher throughput, use a dedicated RPC provider from the [Builder Stack](/get-started/builder-stack). + + ## Next Steps diff --git a/docs/specifications/b20/changelog.mdx b/docs/specifications/b20/changelog.mdx index 0f32c7516..af5bd2da4 100644 --- a/docs/specifications/b20/changelog.mdx +++ b/docs/specifications/b20/changelog.mdx @@ -52,10 +52,10 @@ Shipped with the [Beryl upgrade](/upgrades/beryl/overview). - The B20 standard as a native precompile: a superset of ERC-20 with full selector and behavior parity for `transfer`, `transferFrom`, `approve`, `allowance`, `balanceOf`, `totalSupply`, `name`, `symbol`, `decimals`, `Transfer`, and `Approval` - [Role-based access control](/specifications/b20/concepts/roles-and-pause#2-roles) with built-in roles, user-defined roles in the role graph, and `renounceLastAdmin` for permanent admin-less operation - [PolicyRegistry](/specifications/b20/concepts/policies#21-the-registry-and-the-token) singleton precompile with `BLOCKLIST`, `ALLOWLIST`, `UNION`, and `INTERSECT` policy types, two-step admin transfer, and the `ALWAYS_ALLOW` and `ALWAYS_BLOCK` built-ins -- [Six policy scopes](/specifications/b20/concepts/policies#32-policy-scopes) on every token, covering transfer sender, receiver, and executor, mint receiver, and seize holder and receiver -- [`seizeWithMemo`](/specifications/b20/reference/interfaces/ib20/seize-with-memo) for compliance-driven balance transfers -- [Memo variants](/specifications/b20/reference/interfaces/ib20) of transfer, transferFrom, mint, burn, and seize, emitting `Memo` immediately after the primary event -- [Granular pausing](/specifications/b20/concepts/roles-and-pause#3-pause) by `PausableFeature`: `TRANSFER`, `MINT`, `BURN`, and `SEIZE` +- [Four policy scopes](/specifications/b20/concepts/policies#32-policy-scopes) on every token, covering transfer sender, receiver, and executor, and mint receiver +- [Memo variants](/specifications/b20/reference/interfaces/ib20) of transfer, transferFrom, mint, and burn, emitting `Memo` immediately after the primary event +- [Granular pausing](/specifications/b20/concepts/roles-and-pause#3-pause) by `PausableFeature`: `TRANSFER`, `MINT`, and `BURN` +- `burnBlocked` and `BURN_BLOCKED_ROLE` for administrative removal of a blocked holder's balance - [Optional supply caps](/specifications/b20/reference/interfaces/ib20/supply-cap), with `type(uint128).max` as the uncapped sentinel and maximum supply - [ERC-2612 `permit`](/specifications/b20) with an EIP-712 domain at version `"1"` - [ERC-7572 `contractURI`](/specifications/b20/reference/interfaces/ib20/contract-uri) and `METADATA_ROLE`-gated name, symbol, and URI updates @@ -64,6 +64,4 @@ Shipped with the [Beryl upgrade](/upgrades/beryl/overview). - The [`ASSET` variant](/specifications/b20/concepts/token-types#4-asset): `OPERATOR_ROLE`, WAD-precision UI multipliers with scheduled and instant updates, announcements, `batchMint`, and issuer-defined extra metadata - The [`STABLECOIN` variant](/specifications/b20/concepts/token-types#5-stablecoin): fixed 6 decimals and a `currency()` code set once at creation -**Deprecated** - -- `burnBlocked` and `BURN_BLOCKED_ROLE`, retained for backwards compatibility. New seizure flows use `seizeWithMemo`. +`seizeWithMemo`, the `SEIZE` pause feature, the two seize policy scopes, and the deprecation of `burnBlocked` shipped later with Cobalt. See the [seize changelog entry](/base-chain/specs/reference/b20/changelog/02-cobalt-b20-seize). diff --git a/docs/specifications/base-protocol/proofs/proposer.mdx b/docs/specifications/base-protocol/proofs/proposer.mdx index 53e57f15e..59d00e173 100644 --- a/docs/specifications/base-protocol/proofs/proposer.mdx +++ b/docs/specifications/base-protocol/proofs/proposer.mdx @@ -65,6 +65,16 @@ proposal is: BLOCK_INTERVAL / INTERMEDIATE_BLOCK_INTERVAL ``` +On Base Mainnet, the [`AggregateVerifier`](/specifications/reference/base-contracts) implementation registered +for game type `621` sets `BLOCK_INTERVAL` to `600` and `INTERMEDIATE_BLOCK_INTERVAL` to `30`. With +2-second blocks, a new proposal covers about 20 minutes of L2 blocks. You can read the current values +onchain: + +```bash Read the Mainnet Proposal Interval +cast call 0xeF9eCeA15265321753047EBF7D54C858D53cB94f "BLOCK_INTERVAL()(uint256)" --rpc-url +cast call 0xeF9eCeA15265321753047EBF7D54C858D53cB94f "INTERMEDIATE_BLOCK_INTERVAL()(uint256)" --rpc-url +``` + The proposer defaults to finalized L2 state. If explicitly configured to allow non-finalized proposals, it may use the rollup node's safe L2 state instead. diff --git a/docs/specifications/node-operators/run-a-node.mdx b/docs/specifications/node-operators/run-a-node.mdx index 85558d255..bc7979ed8 100644 --- a/docs/specifications/node-operators/run-a-node.mdx +++ b/docs/specifications/node-operators/run-a-node.mdx @@ -22,7 +22,7 @@ If you're just getting started and need an RPC URL, you can use our free endpoin - **Mainnet**: `https://mainnet.base.org` - **Testnet (Sepolia)**: `https://sepolia.base.org` -**Note:** Our RPCs are rate-limited, they are not suitable for production apps. +**Note:** Our RPCs are rate-limited, they are not suitable for production apps. The public Mainnet endpoint does not serve the `debug`, `trace`, or `txpool` namespaces. If you're looking to harden your app and avoid rate-limiting for your users, choose an RPC provider from the [Builder Stack](/get-started/builder-stack). @@ -198,6 +198,8 @@ Your Flashblocks-aware node supports all standard Ethereum JSON-RPC methods plus To serve methods like `eth_getProof`, `debug_executionWitness` and `debug_executePayload` efficiently, you'll need to set up the historical proofs execution extension (ExEx). This ExEx manages a separate database with data required to serve these methods. This database can add hundreds of GB of additional storage and requires a machine with higher I/O throughput. Most people do not need these RPCs to be available. +Without the proofs ExEx, `eth_getProof` only serves blocks within `--rpc.eth-proof-window` blocks of the chain tip. Reth's default window is `0`, so only the latest block can be proven, and the maximum is `1209600` blocks (28 days at 2-second blocks). The `.env.mainnet` and `.env.sepolia` files in [base/base](https://github.com/base/base) do not set this flag. To serve historical proofs, use the proofs ExEx described below. + In order to run the historical proofs ExEx, you simply need to set this environment variable: ```bash Terminal diff --git a/docs/specifications/node-operators/snapshots.mdx b/docs/specifications/node-operators/snapshots.mdx index 86ac9f88c..45c6a27e1 100644 --- a/docs/specifications/node-operators/snapshots.mdx +++ b/docs/specifications/node-operators/snapshots.mdx @@ -9,14 +9,12 @@ Using a snapshot significantly reduces the initial time required to sync a Base If you're a prospective or current Base node operator, you can restore from a snapshot to speed up your initial sync. Follow the steps below carefully. -**Action required: migrate to reth V2 storage.** Base Mainnet operators must upgrade and migrate to reth V2 storage **by mid-August**. V1 snapshots are being decommissioned over the next few weeks, so plan to migrate soon. +**V1 snapshots are no longer published.** Base stopped publishing V1 node database snapshots on October 5, 2026 ([status notice](https://status.base.org/incidents/jx4p15jppftm)). Only reth V2 storage snapshots are available, from [chain.base.org/snapshots](https://chain.base.org/snapshots). -You have two migration paths: +If your node still uses V1 storage, upgrade to `base-reth-node` [v1.2.0](https://github.com/base/base/releases/tag/v1.2.0) or later and migrate to V2 storage using one of two paths: - **Download a fresh V2 snapshot** (recommended, faster) — use `base-reth-node download` as described in [Restoring from Snapshot](#restoring-from-snapshot) below. - **Migrate existing V1 data in place** — run `base-reth-node db migrate-v2`. This is expected to take **much** longer than downloading, and non-archival nodes are not supported. - -Because migration can take a while, we strongly recommend starting now. For details, see the [v1.2.0 release notes](https://github.com/base/base/releases/tag/v1.2.0). ## Restoring from Snapshot diff --git a/docs/specifications/transactions/transaction-finality.mdx b/docs/specifications/transactions/transaction-finality.mdx index 1f051bc65..4d4584eda 100644 --- a/docs/specifications/transactions/transaction-finality.mdx +++ b/docs/specifications/transactions/transaction-finality.mdx @@ -24,8 +24,8 @@ For transactions on Base, finality is not a single time to wait for. Instead, th After roughly 200ms, the transaction is included in a preconfirmation block (Flashblock) by the Base sequencer. - -* Flashblocks reorg less than 0.001% of the time + +* Base targets a Flashblock reorg rate of less than 0.1%, as listed in [Throughput and Limits](/specifications/transactions/throughput-and-limits#flashblock-performance) * You can see the reorg history in our [public stats page.](https://base.org/stats) @@ -58,7 +58,7 @@ This describes finality of transactions that move funds from Base to Ethereum **Only withdrawals to Ethereum must wait for a finalization window before the funds can be released to the address on Ethereum L1.** This allows Base's proof system to provide extremely high security guarantees for funds bridged to Base. -Since the [Beryl upgrade](/upgrades/beryl/reducing-canonical-withdrawal-delay), the finalization window is 5 days for a single-proof dispute game and 1 day on the dual-proof fast path, when both a TEE proof and a ZK proof back the same proposal. The window accounts for most of the end-to-end time; waiting for the relevant Base state to be proposed on Ethereum usually adds only about 20 to 60 minutes, plus the prove and finalize transactions. Third-party bridges that release funds faster use their own liquidity and do not change this window. +Since the [Beryl upgrade](/upgrades/beryl/reducing-canonical-withdrawal-delay), the finalization window is 5 days for a single-proof dispute game and 1 day on the dual-proof fast path, when both a TEE proof and a ZK proof back the same proposal. The window accounts for most of the end-to-end time; waiting for the relevant Base state to be proposed on Ethereum usually adds only about 20 to 60 minutes, plus the prove and finalize transactions. Each proposal on Base Mainnet covers 600 L2 blocks (about 20 minutes at 2-second blocks); see [Proposer](/specifications/base-protocol/proofs/proposer#startup-configuration) for details. Third-party bridges that release funds faster use their own liquidity and do not change this window. After a withdrawal is initiated on Base, a proposer submits a checkpoint claim on Ethereum through an `AggregateVerifier` game with a TEE or ZK proof. An independent challenger can dispute an invalid claim with a ZK proof. The game's finalization window gives other participants time to verify the claim; when TEE and ZK proofs support the same proposal, the dual-proof path is shorter. See the [Azul proof system](/upgrades/azul/proofs) for the proof flow. diff --git a/docs/upgrades/azul/proofs.mdx b/docs/upgrades/azul/proofs.mdx index 968d40142..75c0976f7 100644 --- a/docs/upgrades/azul/proofs.mdx +++ b/docs/upgrades/azul/proofs.mdx @@ -37,6 +37,10 @@ The Azul design supports three settlement paths for a proposal on Ethereum: | ZK only | Long window | 7 days | Permissionless path without TEE reliance | | TEE + ZK | Short window | 1 day | Faster finality when both systems agree | + +The [Beryl upgrade](/upgrades/beryl/reducing-canonical-withdrawal-delay) later reduced the single-proof long window from 7 days to 5 days. The TEE + ZK window remains 1 day. + + The long window gives independent provers time to verify a claim and dispute it if needed. The short window is available only when both proof systems back the same proposal. A ZK prover can also dispute an invalid TEE-backed claim and claim the TEE prover's bond as a reward. In Azul, that delay diff --git a/docs/upgrades/beryl/reth-v2.mdx b/docs/upgrades/beryl/reth-v2.mdx index 10b0310e8..89a9658cc 100644 --- a/docs/upgrades/beryl/reth-v2.mdx +++ b/docs/upgrades/beryl/reth-v2.mdx @@ -14,3 +14,5 @@ Reth V2 replaces the previous Reth execution client as the reference implementat ## Migration Node operators should upgrade to the Reth V2 binary before Beryl activation. No application-level changes are required. + +Nodes must also use reth V2 storage. Base no longer publishes V1 node snapshots, so download a V2 snapshot or migrate existing data with `base-reth-node db migrate-v2`. See [Node Snapshots](/specifications/node-operators/snapshots) for both paths. From 608c451a915806da9ce302d299dd9020ad9dda90 Mon Sep 17 00:00:00 2001 From: Youssef Date: Thu, 8 Oct 2026 16:28:33 +0100 Subject: [PATCH 2/3] docs: drop Denim notes from JSON-RPC reference pages --- .../ethereum-json-rpc-api/eth_getBlockByHash.mdx | 2 +- .../ethereum-json-rpc-api/eth_getBlockByNumber.mdx | 7 +------ .../ethereum-json-rpc-api/eth_getBlockReceipts.mdx | 4 ---- .../ethereum-json-rpc-api/eth_getTransactionReceipt.mdx | 6 +----- .../ethereum-json-rpc-api/eth_sendRawTransaction.mdx | 4 ---- 5 files changed, 3 insertions(+), 20 deletions(-) diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx index 3079ec3fd..08c64d2d6 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash.mdx @@ -19,7 +19,7 @@ Returns information about a block by its hash. ## Returns - A block object, or `null` if no block was found. The response shape is identical to [`eth_getBlockByNumber`](/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber) — see that page for the full field list, including the optional `timestampMs` field planned for [Denim](/upgrades/denim/200ms-blocks#block-and-header-timestamps). + A block object, or `null` if no block was found. The response shape is identical to [`eth_getBlockByNumber`](/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber) — see that page for the full field list. ## Example diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx index abcd026d7..3f49e1ef7 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber.mdx @@ -10,10 +10,6 @@ Returns information about a block by its number. **Flashblocks:** Query `https://mainnet.base.org` with `"pending"` to fetch the live Flashblock in progress — a real block object updated every ~200ms with new pre-confirmed transactions. The response shape is identical; the block is simply not yet sealed. - -**Denim (planned):** With 200ms blocks, block responses add an optional `timestampMs` field with the full Unix timestamp in milliseconds, and mined transaction objects add an optional `blockTimestampMs`. The `timestamp` field stays in seconds. See [200ms Native Blocks](/upgrades/denim/200ms-blocks#rpc). - - ## Parameters @@ -46,8 +42,7 @@ Returns information about a block by its number. Block size in bytes (hex). Maximum gas allowed in this block (hex). Total gas used in this block (hex). - Unix timestamp in seconds (hex). - Planned for [Denim](/upgrades/denim/200ms-blocks#block-and-header-timestamps). Optional full Unix timestamp in milliseconds (hex). Omitted when the block's BaseTime metadata is unavailable, including pre-Denim blocks. + Unix timestamp (hex). Array of transaction hashes or full transaction objects. Always `[]` on Base. Always `[]` on Base. diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx index c907c7205..a9f98faf0 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts.mdx @@ -26,10 +26,6 @@ This method returns HTTP 403 on the public Base RPC endpoints (`mainnet.base.org Array of receipt objects for each transaction in the block. See [`eth_getTransactionReceipt`](/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt) for the receipt object shape. - -**Denim (planned):** Receipts do not gain a top-level timestamp. Instead, each mined log in a receipt adds an optional `blockTimestampMs` field with the block's full Unix timestamp in milliseconds. See [Log and receipt timestamps](/upgrades/denim/200ms-blocks#log-and-receipt-timestamps). - - ## Example diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx index 641ff8472..78bbd7956 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt.mdx @@ -10,10 +10,6 @@ Returns the receipt for a transaction by its hash. Returns `null` for transactio Receipts are only available for mined transactions. To monitor a transaction before it is sealed, use [`base_transactionStatus`](/base-chain/api-reference/flashblocks-api/base_transactionStatus) to confirm it is in the mempool, or subscribe to [`newFlashblockTransactions`](/base-chain/api-reference/flashblocks-api/newFlashblockTransactions) to detect its pre-confirmation in a Flashblock. - -The planned Denim upgrade replaces Flashblocks with 200ms native blocks, so the `newFlashblockTransactions` subscription stops after activation. To detect inclusion after Denim, use `eth_subscribe("newHeads")` and fetch the transactions for each canonical block. See [Migrate From Flashblocks](/upgrades/denim/migrate-from-flashblocks). - - ## Parameters @@ -36,7 +32,7 @@ The planned Denim upgrade replaces Flashblocks with 200ms native blocks, so the Actual gas price paid per unit of gas for this transaction (hex). Gas used by this specific transaction (hex). Address of the created contract, or `null` if not a deployment. - Array of log objects emitted by this transaction. Planned for [Denim](/upgrades/denim/200ms-blocks#log-and-receipt-timestamps): each mined log adds an optional `blockTimestampMs` field with the block's full Unix timestamp in milliseconds. + Array of log objects emitted by this transaction. 256-byte bloom filter for the logs in this receipt. Transaction type: `"0x0"` Legacy, `"0x1"` Access List, `"0x2"` EIP-1559, `"0x7e"` Deposit (L1→L2). `"0x1"` for success, `"0x0"` for failure (revert). diff --git a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx index 545a221b2..3cb233f9a 100644 --- a/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx +++ b/docs/base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction.mdx @@ -10,10 +10,6 @@ Submits a pre-signed, RLP-encoded transaction to the network and returns its has **Flashblocks:** Submit to `https://mainnet.base.org` to have your transaction considered for the next Flashblock (~200ms). Use [`base_transactionStatus`](/base-chain/api-reference/flashblocks-api/base_transactionStatus) to confirm receipt in the mempool and subscribe to [`newFlashblockTransactions`](/base-chain/api-reference/flashblocks-api/newFlashblockTransactions) to detect pre-confirmation. - -The planned Denim upgrade replaces Flashblocks with 200ms native blocks, so the `newFlashblockTransactions` subscription stops after activation. To detect inclusion after Denim, use `eth_subscribe("newHeads")` and fetch the transactions for each canonical block. See [Migrate From Flashblocks](/upgrades/denim/migrate-from-flashblocks). - - ## Parameters From fc80c45a183f16c234ac57c94e87272ddf35b3f6 Mon Sep 17 00:00:00 2001 From: Youssef Date: Thu, 8 Oct 2026 16:33:59 +0100 Subject: [PATCH 3/3] docs: drop public RPC entry from configuration changelog --- docs/base-chain/network-information/configuration-changelog.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/base-chain/network-information/configuration-changelog.mdx b/docs/base-chain/network-information/configuration-changelog.mdx index 28c9b0fe5..e62537023 100644 --- a/docs/base-chain/network-information/configuration-changelog.mdx +++ b/docs/base-chain/network-information/configuration-changelog.mdx @@ -10,7 +10,6 @@ This page tracks configuration changes to the Base networks, including updates t | Date | Change | Documentation | |------|--------|---------------| -| October 8, 2026 | Public RPC endpoint `mainnet.base.org` stopped serving the `debug`, `trace`, and `txpool` namespaces and lowered its read rate limit | [Connect to Base](/get-started/connect-to-base) | | May 28, 2026 | Azul: Reduced per-transaction gas maximum to 16,777,216 (2^24) via EIP-7825 | [Per-Transaction Gas Maximum](/specifications/transactions/throughput-and-limits#per-transaction-gas-maximum) | | February 19, 2026 | Increased Minimum Base Fee to 5,000,000 wei | [Minimum Base Fee](/specifications/transactions/network-fees#minimum-base-fee) | | February 4, 2026 | Increased EIP-1559 Denominator to 125 | [EIP-1559 Fee Parameters](/specifications/transactions/network-fees#eip-1559-fee-parameters) |