diff --git a/docs/base-chain/api-reference/flashblocks-api/eth_simulateV1.mdx b/docs/base-chain/api-reference/flashblocks-api/eth_simulateV1.mdx
index 18c24eccb..9c83cde4d 100644
--- a/docs/base-chain/api-reference/flashblocks-api/eth_simulateV1.mdx
+++ b/docs/base-chain/api-reference/flashblocks-api/eth_simulateV1.mdx
@@ -50,15 +50,19 @@ Only available on Flashblocks endpoints: `https://mainnet-preconf.base.org` / `h
Array of simulated block results, one per entry in `blockStateCalls`.
+ Simulated block number (hex).
+ Simulated block hash.
+ Total gas used across all calls in this simulated block (hex).
+ Base fee per gas for this simulated block (hex).
Array of individual call results.
`"0x1"` for success, `"0x0"` for failure.
- Gas used as a hexadecimal integer.
- Hex-encoded return data.
- Logs emitted (including ETH transfer logs if `traceTransfers` is `true`).
- Revert reason if the call failed. Optional.
+ Gas used by this call (hex).
+ Hex-encoded return data from the call.
+ Logs emitted by this call. Includes ETH transfer logs if `traceTransfers` is `true`.
+ Present if the call reverted. Contains `message` (string) and `code` (number).
@@ -97,11 +101,15 @@ curl https://sepolia-preconf.base.org \
"id": 1,
"result": [
{
+ "number": "0x29442bb",
+ "hash": "0xcefc6e6e...",
+ "gasUsed": "0x79ce",
+ "baseFeePerGas": "0xfa",
"calls": [
{
"status": "0x1",
- "gasUsed": "0x5208",
- "returnData": "0x",
+ "gasUsed": "0x79ce",
+ "returnData": "0x00000000000000000000000000000000000000000000000000000000011420f9",
"logs": []
}
]
diff --git a/docs/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.mdx b/docs/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.mdx
index e3c88fa5a..5e070b541 100644
--- a/docs/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.mdx
+++ b/docs/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.mdx
@@ -103,15 +103,19 @@ Contains the incremental block state changes for this specific Flashblock. Prese
**The `metadata` object is not stable.** Fields may be added, modified, or removed without prior notice. Do not build production dependencies on it — use the [`diff`](#diff-object) object or query finalized block data via standard RPC instead.
+
+**Azul breaking change:** The `new_account_balances` and `receipts` fields are removed from `metadata` as of the [Azul upgrade](/base-chain/protocol-api/specs/upgrades/azul/overview). After activation, the `metadata` object will only contain `block_number`.
+
+
Block number as a decimal integer.
-Map of addresses to their updated ETH balances (hex). Only includes accounts whose balances changed in this Flashblock.
-Map of transaction hashes to their [Receipt](#receipt-object) objects.
+**Removed in Azul.** Map of addresses to their updated ETH balances (hex). Only includes accounts whose balances changed in this Flashblock.
+**Removed in Azul.** Map of transaction hashes to their [Receipt](#receipt-object) objects. Use [`newFlashblockTransactions`](/base-chain/api-reference/flashblocks-api/newFlashblockTransactions) with `full: true` to access receipt fields instead.
### Receipt Object
-The abbreviated transaction receipt included in `metadata.receipts`. Check the `type` field to determine transaction type.
+The abbreviated transaction receipt included in `metadata.receipts`. **Removed from `metadata` in the Azul upgrade.** Receipt fields are now available on individual transaction objects via the [`newFlashblockTransactions`](/base-chain/api-reference/flashblocks-api/newFlashblockTransactions) subscription with `full: true`.
Transaction type: `0x0` Legacy, `0x1` Access List, `0x2` EIP-1559, `0x7e` Deposit (L1→L2).
@@ -124,14 +128,27 @@ The abbreviated transaction receipt included in `metadata.receipts`. Check the `
### Log Object
+Log objects appear in `newFlashblockTransactions` (full mode) and in `metadata.receipts` (infrastructure stream, pre-Azul).
+
Contract address that emitted the event.
Array of indexed event parameters. Topic 0 is typically the event signature hash.
ABI-encoded non-indexed event parameters.
+Hash of the partial block at time of pre-confirmation. Note: this is a Flashblock hash, not a final block hash.
+Block number this log belongs to (hex).
+Unix timestamp of the block (hex).
+Hash of the transaction that emitted this log.
+Index of the transaction within the block (hex).
+Index of this log within the block (hex).
+Always `false` for Flashblocks logs. Would be `true` if a reorg removed the log, which does not apply to Flashblocks.
### Complete Examples
+
+The examples below show the pre-Azul `metadata` format. After the [Azul upgrade](/base-chain/protocol-api/specs/upgrades/azul/overview), `metadata.new_account_balances` and `metadata.receipts` will no longer be present in the stream.
+
+
**Index 0** — includes the `base` object (block header):
```json
diff --git a/docs/base-chain/api-reference/flashblocks-api/newFlashblockTransactions.mdx b/docs/base-chain/api-reference/flashblocks-api/newFlashblockTransactions.mdx
index 582955e5f..334861e62 100644
--- a/docs/base-chain/api-reference/flashblocks-api/newFlashblockTransactions.mdx
+++ b/docs/base-chain/api-reference/flashblocks-api/newFlashblockTransactions.mdx
@@ -4,36 +4,149 @@ sidebarTitle: 'newFlashblockTransactions'
description: 'Subscribe to receive each transaction as it is pre-confirmed into a Flashblock. Only available on Flashblocks WebSocket endpoints.'
---
-Subscribe via `eth_subscribe` to receive each transaction as it is pre-confirmed into a Flashblock. Pass `true` as the second parameter to receive full transaction and log data.
+Subscribe via `eth_subscribe` to receive each transaction as it is pre-confirmed into a Flashblock. Pass `true` as the second parameter to receive the full transaction object, associated logs, and receipt fields.
Only available on Flashblocks WebSocket endpoints: `wss://mainnet-preconf.base.org` / `wss://sepolia-preconf.base.org`.
-Requires [base/base](https://github.com/base/base) minimum client version v0.3.1.
+Requires [base/base](https://github.com/base/base) minimum client version v0.8.0. Receipt fields in `full` mode were added in v0.8.0.
Each subscription emits **one item per WebSocket message**. Events arrive approximately every 200ms. If your handler performs heavy processing per event, throttle or debounce it to avoid blocking.
+
+**Breaking change in v0.8.0:** The `gasUsed` field changed from an optional integer (`null` or `123456`) to a required hex string (`"0x1e240"`). Existing consumers of `newFlashblockTransactions` with `full: true` must update their parsers before upgrading to v0.8.0.
+
+
## Parameters
Must be `"newFlashblockTransactions"`.
-
- If `true`, each notification includes the full transaction object and associated logs. Defaults to `false` (minimal data only).
+
+ Controls the notification content. Three modes are supported:
+
+ - **`false` (default)** — each notification delivers a transaction hash string.
+ - **`true`** — each notification delivers the full `TransactionWithLogs` object (transaction fields + logs + receipt fields).
+ - **Filter object** — pass `{ "address": "0x...", "topics": [...] }` to stream only transactions where at least one emitted log matches the filter. Each matching notification delivers the full `TransactionWithLogs` object. All logs for the transaction are included, not just the matching ones.
+
+ The filter object accepts the same `address` and `topics` fields as `eth_getLogs`.
## Returns
-
- Hex-encoded subscription ID.
+The initial `eth_subscribe` response returns a hex-encoded subscription ID string. After that, the node pushes one notification per WebSocket message for each pre-confirmed transaction.
+
+**When `full` is `false` (default):** each notification's `result` is a transaction hash string.
+
+**When `full` is `true`:** each notification's `result` is a transaction object with the following fields:
+
+
+ The pre-confirmed transaction object. Only present when `full` is `true`; otherwise `result` is a transaction hash string.
+
+
+ Transaction hash.
+ Sender address.
+ Recipient address. `null` for contract deployments.
+ ETH value transferred (hex).
+ Gas limit (hex).
+ Effective gas price (hex).
+ Max fee per gas for EIP-1559 transactions (hex).
+ Max priority fee per gas for EIP-1559 transactions (hex).
+ Sender nonce (hex).
+ ABI-encoded calldata.
+ Transaction type: `0x0` Legacy, `0x1` Access List, `0x2` EIP-1559.
+ Chain ID (hex). Base mainnet: `0x2105`.
+ Block number this transaction was pre-confirmed in (hex).
+ Index of this transaction within the block (hex).
+ Always `null` for Flashblocks (block not yet finalized).
+ EIP-2930 access list entries.
+ ECDSA signature r value.
+ ECDSA signature s value.
+ ECDSA signature v value.
+ Signature y-parity for EIP-1559/2930 transactions.
+ Gas actually used by this transaction (hex). **Required** as of v0.8.0 — previously this field was optional and returned as an integer. Update parsers accordingly.
+ `0x1` for success, `0x0` for failure. Added in v0.8.0.
+ Cumulative gas used in the block up to and including this transaction (hex). Added in v0.8.0.
+ Address of the deployed contract for contract-creation transactions. `null` otherwise. Added in v0.8.0.
+ Bloom filter for the logs in this transaction (hex). Added in v0.8.0.
+ Event logs emitted by this transaction. See the [Log Object](/base-chain/api-reference/flashblocks-api/flashblocks-api-overview#log-object) schema.
+
+## Notification Format
+
+When `full` is `false` (default), each notification delivers a transaction hash:
+
+```json Notification (default)
+{
+ "jsonrpc": "2.0",
+ "method": "eth_subscription",
+ "params": {
+ "subscription": "0x1887ec8b9589ccad00000000000532da",
+ "result": "0xabc123..."
+ }
+}
+```
+
+When `full` is `true`, each notification delivers the full transaction object. Receipt fields (`gasUsed`, `status`, `cumulativeGasUsed`, `contractAddress`, `logsBloom`) are included directly on the transaction object — there is no nested receipt sub-object:
+
+```json Notification (full=true)
+{
+ "jsonrpc": "2.0",
+ "method": "eth_subscription",
+ "params": {
+ "subscription": "0x4f029cbb4655559c37784ec4f3983914",
+ "result": {
+ "type": "0x2",
+ "chainId": "0x2105",
+ "nonce": "0x36f0",
+ "gas": "0x26b12",
+ "maxFeePerGas": "0x146a608",
+ "maxPriorityFeePerGas": "0xf4240",
+ "to": "0xda3983e1ea25051b242ec0df4acf18e68d08a212",
+ "value": "0x0",
+ "accessList": [],
+ "input": "0x67243482...",
+ "r": "0x82df735d...",
+ "s": "0x431fa018...",
+ "yParity": "0x1",
+ "v": "0x1",
+ "hash": "0xb2ce9822...",
+ "blockHash": null,
+ "blockNumber": "0x27920be",
+ "transactionIndex": "0xbe",
+ "from": "0x68acbb03...",
+ "gasPrice": "0xaae286",
+ "gasUsed": "0x1a4b2",
+ "status": "0x1",
+ "cumulativeGasUsed": "0x8f3a1",
+ "contractAddress": null,
+ "logsBloom": "0x00200000...",
+ "logs": [
+ {
+ "address": "0xda3983e1ea25051b242ec0df4acf18e68d08a212",
+ "topics": ["0xddf252ad..."],
+ "data": "0x",
+ "blockHash": "0x000...000",
+ "blockNumber": "0x27920be",
+ "blockTimestamp": "0x697c9e5f",
+ "transactionHash": "0xb2ce9822...",
+ "transactionIndex": "0xbe",
+ "logIndex": "0x2d9",
+ "removed": false
+ }
+ ]
+ }
+ }
+}
+```
+
## Example
@@ -45,7 +158,45 @@ Each subscription emits **one item per WebSocket message**. Events arrive approx
{"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe", "params": ["newFlashblockTransactions", true]}
```
+```json Subscribe (filtered by log)
+{
+ "jsonrpc": "2.0",
+ "id": 1,
+ "method": "eth_subscribe",
+ "params": [
+ "newFlashblockTransactions",
+ {
+ "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
+ "topics": ["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"]
+ }
+ ]
+}
+```
+
```json Subscription ID Response
{"jsonrpc": "2.0", "id": 1, "result": "0x1887ec8b9589ccad00000000000532da"}
```
+
+```javascript JavaScript
+import WebSocket from 'ws';
+
+const ws = new WebSocket('wss://mainnet-preconf.base.org');
+
+ws.on('open', () => {
+ ws.send(JSON.stringify({
+ jsonrpc: '2.0',
+ method: 'eth_subscribe',
+ params: ['newFlashblockTransactions', true],
+ id: 1
+ }));
+});
+
+ws.on('message', (data) => {
+ const msg = JSON.parse(data.toString());
+ if (msg.method === 'eth_subscription') {
+ const tx = msg.params.result;
+ console.log('Pre-confirmed tx:', tx.hash, '| status:', tx.status);
+ }
+});
+```
diff --git a/docs/base-chain/api-reference/flashblocks-api/newFlashblocks.mdx b/docs/base-chain/api-reference/flashblocks-api/newFlashblocks.mdx
index 1eea35ba8..1a1ddded9 100644
--- a/docs/base-chain/api-reference/flashblocks-api/newFlashblocks.mdx
+++ b/docs/base-chain/api-reference/flashblocks-api/newFlashblocks.mdx
@@ -4,7 +4,7 @@ sidebarTitle: 'newFlashblocks'
description: 'Subscribe to receive full Flashblock payload stream as each pre-confirmed block is built. Only available on Flashblocks WebSocket endpoints.'
---
-Subscribe via `eth_subscribe` to receive full block state updates as each Flashblock is built. Each message contains the accumulated pre-confirmed state for the block in progress.
+Subscribe via `eth_subscribe` to receive the current pending block state as each Flashblock is built. Each message is the **complete accumulated block** — a standard Ethereum block object containing all transactions pre-confirmed so far.
Only available on Flashblocks WebSocket endpoints: `wss://mainnet-preconf.base.org` and `wss://sepolia-preconf.base.org`.
@@ -15,7 +15,7 @@ Requires [base/base](https://github.com/base/base) minimum client version v0.3.1
-Each subscription emits **one Flashblock Object per WebSocket message**. Events arrive approximately every 200ms. If your handler performs heavy processing per event, throttle or debounce it to avoid blocking.
+Multiple notifications are emitted per block height. Each Flashblock (~200ms) triggers a new notification for the same block with more transactions added. This is **accumulating state**, not a diff — every message replaces the previous one. Your handler should treat each notification as the latest known state of the in-progress block.
## Parameters
@@ -26,8 +26,35 @@ Each subscription emits **one Flashblock Object per WebSocket message**. Events
## Returns
-
- Hex-encoded subscription ID. Each event notification delivers a **Flashblock Object** — not a standard block object. The payload contains `payload_id`, `index`, `diff`, and (on index 0) `base`. See the [Infrastructure Stream schema](/base-chain/api-reference/flashblocks-api/flashblocks-api-overview#flashblock-object) for the full structure.
+The initial `eth_subscribe` response returns a hex-encoded subscription ID. After that, the node pushes one notification per Flashblock (~200ms). Each notification's `result` is a **standard Ethereum block object** identical in shape to `eth_getBlockByNumber` with `hydrated=true`, but representing the pending (not yet sealed) block.
+
+Key differences from a sealed block:
+
+- `transactions` is a full array of transaction objects (always hydrated — hashes are never returned)
+- `hash`, `stateRoot`, `receiptsRoot`, `transactionsRoot` reflect the partial block state at time of emission and will differ from the final sealed block values
+- The same block `number` will appear in multiple notifications as new Flashblocks accumulate
+
+
+ Standard Ethereum block object. Fields match `eth_getBlockByNumber` with `hydrated=true`.
+
+
+ Block number (hex).
+ Partial block hash at the time of this Flashblock. Changes with each emission until the block is sealed.
+ Hash of the parent block.
+ Unix block timestamp (hex).
+ Maximum gas allowed (hex).
+ Cumulative gas used so far (hex). Increases with each Flashblock.
+ EIP-1559 base fee per gas (hex).
+ Fee recipient address (coinbase).
+ State root at the time of this Flashblock (partial).
+ Receipts root (partial).
+ Transactions root (partial).
+ Bloom filter for logs in the block so far.
+ Sequencer extra data field.
+ Full transaction objects for all transactions pre-confirmed so far. Same shape as transactions returned by `eth_getBlockByNumber` with `hydrated=true`.
+ Validator withdrawals (always empty on Base L2).
+ Always empty on Base L2.
+
## Example
diff --git a/docs/base-chain/api-reference/flashblocks-api/pendingLogs.mdx b/docs/base-chain/api-reference/flashblocks-api/pendingLogs.mdx
index b17e9c4a3..6bb20f1dc 100644
--- a/docs/base-chain/api-reference/flashblocks-api/pendingLogs.mdx
+++ b/docs/base-chain/api-reference/flashblocks-api/pendingLogs.mdx
@@ -39,10 +39,55 @@ Each subscription emits **one item per WebSocket message**. Events arrive approx
## Returns
-
- Hex-encoded subscription ID.
+The initial `eth_subscribe` response returns a hex-encoded subscription ID. After that, the node pushes one notification per matching log per WebSocket message.
+
+Each notification's `result` is a full log object:
+
+
+ A single log object matching the filter.
+
+
+ Contract address that emitted the log.
+ Indexed event parameters. Topic 0 is typically the event signature hash.
+ ABI-encoded non-indexed event parameters.
+ Hash of the partial block at time of pre-confirmation. Always `"0x0000...0000"` for Flashblocks logs (block not yet sealed).
+ Block number (hex).
+ Unix timestamp of the block (hex).
+ Hash of the transaction that emitted this log.
+ Index of the transaction within the block (hex).
+ Index of this log within the block (hex).
+ Always `false` for Flashblocks logs.
+
+## Notification Format
+
+```json Notification
+{
+ "jsonrpc": "2.0",
+ "method": "eth_subscription",
+ "params": {
+ "subscription": "0xe1f42d3d4c3e4a09c76c98857b01e50d",
+ "result": {
+ "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
+ "topics": [
+ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
+ "0x000000000000000000000000828bbaee2935085bbb9bc6b72fb65e867205e1b5",
+ "0x000000000000000000000000dbc6998296caa1652a810dc8d3baf4a8294330f1"
+ ],
+ "data": "0x0000000000000000000000000000000000000000000000000000000006bce5f9",
+ "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
+ "blockNumber": "0x27920d7",
+ "blockTimestamp": "0x697c9e91",
+ "transactionHash": "0xa98490d6c1b13a72e7753ba9217269a5059db631deab582b572c4d6c9399c240",
+ "transactionIndex": "0xb9",
+ "logIndex": "0x4ec",
+ "removed": false
+ }
+ }
+}
+```
+
## Example
@@ -61,7 +106,11 @@ Each subscription emits **one item per WebSocket message**. Events arrive approx
}
```
+```json Subscribe (all logs)
+{"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe", "params": ["pendingLogs"]}
+```
+
```json Subscription ID Response
-{"jsonrpc": "2.0", "id": 1, "result": "0x2a7bc8d4e3f5a6b1c2d3e4f5a6b7c8d9"}
+{"jsonrpc": "2.0", "id": 1, "result": "0xe1f42d3d4c3e4a09c76c98857b01e50d"}
```
diff --git a/docs/base-chain/llms-full.txt b/docs/base-chain/llms-full.txt
index f3401cbf9..d3fcd9737 100644
--- a/docs/base-chain/llms-full.txt
+++ b/docs/base-chain/llms-full.txt
@@ -43,12 +43,12 @@
### API Reference
- [Overview](https://docs.base.org/base-chain/api-reference/rpc-overview.md) — Networks, endpoints (Standard and Flashblocks), request/response format, error codes, block parameters, and full method index for all three API groups
- [Ethereum JSON-RPC API](https://docs.base.org/base-chain/api-reference/ethereum-json-rpc-api/eth_blockNumber.md) — Core Ethereum protocol methods: account state, blocks, transactions, gas, logs, chain info, and WebSocket subscriptions (28 methods total)
-- [Flashblocks API](https://docs.base.org/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.md) — Flashblocks-specific HTTP methods (eth_simulateV1, base_transactionStatus), WebSocket subscriptions (newFlashblockTransactions, pendingLogs, newFlashblocks), and the raw infrastructure stream schema
+- [Flashblocks API](https://docs.base.org/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.md) — Flashblocks-specific HTTP methods (eth_simulateV1, base_transactionStatus), WebSocket subscriptions (newFlashblockTransactions with receipt fields as of v0.8.0, pendingLogs, newFlashblocks), and the raw infrastructure stream schema
- [Debug API](https://docs.base.org/base-chain/api-reference/debug-api/debug_traceTransaction.md) — EVM execution tracing: debug_traceTransaction, debug_traceBlockByHash, debug_traceBlockByNumber
### Node Operators
- [Run a Base Node](https://docs.base.org/base-chain/node-operators/run-a-base-node.md) — Node setup
-- [Base Azul Upgrade](https://docs.base.org/base-chain/node-operators/base-v1-upgrade.md) — Migrate to base-reth-node and base-consensus for Azul
+- [Base Azul Upgrade](https://docs.base.org/base-chain/node-operators/base-v1-upgrade.md) — Migrate to base-reth-node and base-consensus for Azul; v0.8.0+ required, documents RPC concurrency tuning and WebSocket Engine RPC support
- [Performance Tuning](https://docs.base.org/base-chain/node-operators/performance-tuning.md) — Optimization
- [Snapshots](https://docs.base.org/base-chain/node-operators/snapshots.md) — Snapshot sync
- [Troubleshooting](https://docs.base.org/base-chain/node-operators/troubleshooting.md) — Common fixes
diff --git a/docs/base-chain/llms.txt b/docs/base-chain/llms.txt
index 8c790637b..ba1e81868 100644
--- a/docs/base-chain/llms.txt
+++ b/docs/base-chain/llms.txt
@@ -30,12 +30,12 @@
## API Reference
- [Overview](https://docs.base.org/base-chain/api-reference/rpc-overview.md) — Networks, endpoints, request/response format, and full method index
- [Ethereum JSON-RPC API](https://docs.base.org/base-chain/api-reference/ethereum-json-rpc-api/eth_blockNumber.md) — Core Ethereum protocol methods (eth_, net_, web3_)
-- [Flashblocks API](https://docs.base.org/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.md) — Flashblocks-specific methods, WebSocket subscriptions, and infrastructure stream schema
+- [Flashblocks API](https://docs.base.org/base-chain/api-reference/flashblocks-api/flashblocks-api-overview.md) — Flashblocks-specific methods, WebSocket subscriptions (including receipt fields in newFlashblockTransactions as of v0.8.0), and infrastructure stream schema
- [Debug API](https://docs.base.org/base-chain/api-reference/debug-api/debug_traceTransaction.md) — EVM execution tracing and block replay
## Node Operators
- [Run a Base Node](https://docs.base.org/base-chain/node-operators/run-a-base-node.md) — Setup and operations guide
-- [Base Azul Upgrade](https://docs.base.org/base-chain/node-operators/base-v1-upgrade.md) — Migrate to base-reth-node and base-consensus for Azul
+- [Base Azul Upgrade](https://docs.base.org/base-chain/node-operators/base-v1-upgrade.md) — Migrate to base-reth-node and base-consensus for Azul; requires v0.8.0+
- [Performance Tuning](https://docs.base.org/base-chain/node-operators/performance-tuning.md) — Optimize node performance
- [Snapshots](https://docs.base.org/base-chain/node-operators/snapshots.md) — Snapshot sync to speed up initial node setup
- [Troubleshooting](https://docs.base.org/base-chain/node-operators/troubleshooting.md) — Diagnose and fix common node issues
diff --git a/docs/base-chain/node-operators/base-v1-upgrade.mdx b/docs/base-chain/node-operators/base-v1-upgrade.mdx
index 56efdae6a..8c51e7f06 100644
--- a/docs/base-chain/node-operators/base-v1-upgrade.mdx
+++ b/docs/base-chain/node-operators/base-v1-upgrade.mdx
@@ -22,8 +22,8 @@ For full details on what's included, see the [Azul specification](/base-chain/sp
| Layer | Software | Version |
|-------|----------|---------|
-| Execution (EL) | [`base-reth-node`](https://github.com/base/base/releases/tag/v0.7.0) | v0.7.0+ |
-| Consensus (CL) | [`base-consensus`](https://github.com/base/base/releases/tag/v0.7.0) | v0.7.0+ |
+| Execution (EL) | [`base-reth-node`](https://github.com/base/base/releases/tag/v0.8.0) | v0.8.0+ |
+| Consensus (CL) | [`base-consensus`](https://github.com/base/base/releases/tag/v0.8.0) | v0.8.0+ |
Both clients are available from the [base/node](https://github.com/base/node/releases) repository, where most configuration is preconfigured and can be overridden via environment variables. See the `.env.mainnet` and `.env.sepolia` files for the full list of configurable options.
@@ -55,7 +55,7 @@ If you are already running OP Reth via [base/node](https://github.com/base/node)
docker compose up
```
-4. Verify client version: `web3_clientVersion` should include `base` in the version string (e.g. `reth/v1.11.3-.../base/v0.7.0`)
+4. Verify client version: `web3_clientVersion` should include `base` in the version string (e.g. `reth/v1.11.3-.../base/v0.8.0`)
### Migrating from another client
@@ -137,6 +137,7 @@ If you use [base/node](https://github.com/base/node), most variables are already
| `OP_NODE_RPC_PORT` | `BASE_NODE_RPC_PORT` |
| `OP_NODE_RPC_ENABLE_ADMIN` | `BASE_NODE_RPC_ENABLE_ADMIN` |
| `OP_NODE_RPC_ADMIN_STATE` | `BASE_NODE_RPC_ADMIN_STATE` |
+| — | `BASE_NODE_RPC_CONCURRENCY` |
| `OP_NODE_SAFEDB_PATH` | `BASE_NODE_SAFEDB_PATH` |
| `OP_NODE_SYNCMODE` | — |
| `OP_NODE_VERIFIER_L1_CONFS` | — |
@@ -149,6 +150,12 @@ If you use [base/node](https://github.com/base/node), most variables are already
| `OP_NODE_P2P_DISABLE` | — |
| `OP_NODE_P2P_NAT` | — |
+### Notable base-consensus Options (v0.8.0+)
+
+**`BASE_NODE_RPC_CONCURRENCY`** — Sets the maximum number of RPC queries processed in parallel. Increase this on nodes serving high request volumes to improve throughput. The default is conservative; tune it based on your available CPU and memory.
+
+**`BASE_NODE_L2_ENGINE_RPC`** — Now accepts WebSocket schemes (`ws://` or `wss://`) in addition to HTTP for the Engine API connection. Use a WebSocket scheme when your execution client is configured to serve the Engine API over WebSocket.
+
## FAQ
- **Do I need to re-sync?** Not if you are already running OP Reth. Existing data is compatible.
diff --git a/docs/docs.json b/docs/docs.json
index 241800d27..de13fa8db 100644
--- a/docs/docs.json
+++ b/docs/docs.json
@@ -9,14 +9,21 @@
},
"favicon": "/logo/favicon.png",
"contextual": {
- "options": ["copy", "view", "claude", "chatgpt"]
+ "options": [
+ "copy",
+ "view",
+ "claude",
+ "chatgpt"
+ ]
},
"api": {
"playground": {
"display": "simple"
},
"examples": {
- "languages": ["javascript"]
+ "languages": [
+ "javascript"
+ ]
}
},
"seo": {
@@ -32,7 +39,9 @@
"groups": [
{
"group": "Introduction",
- "pages": ["get-started/base"]
+ "pages": [
+ "get-started/base"
+ ]
},
{
"group": "Quickstart",
@@ -148,32 +157,32 @@
"group": "Ethereum JSON-RPC API",
"pages": [
"base-chain/api-reference/ethereum-json-rpc-api/eth_blockNumber",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getBalance",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionCount",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getCode",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getStorageAt",
"base-chain/api-reference/ethereum-json-rpc-api/eth_call",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_chainId",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_estimateGas",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_feeHistory",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_gasPrice",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getBalance",
"base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByHash",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockByNumber",
"base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockReceipts",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockTransactionCountByNumber",
"base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockTransactionCountByHash",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionByHash",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getBlockTransactionCountByNumber",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getCode",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getLogs",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getStorageAt",
"base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionByBlockHashAndIndex",
"base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionByBlockNumberAndIndex",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionByHash",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionCount",
"base-chain/api-reference/ethereum-json-rpc-api/eth_getTransactionReceipt",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_gasPrice",
"base-chain/api-reference/ethereum-json-rpc-api/eth_maxPriorityFeePerGas",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_feeHistory",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_estimateGas",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_getLogs",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_chainId",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_sendRawTransaction",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_subscribe",
"base-chain/api-reference/ethereum-json-rpc-api/eth_syncing",
+ "base-chain/api-reference/ethereum-json-rpc-api/eth_unsubscribe",
"base-chain/api-reference/ethereum-json-rpc-api/net_version",
- "base-chain/api-reference/ethereum-json-rpc-api/web3_clientVersion",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_subscribe",
- "base-chain/api-reference/ethereum-json-rpc-api/eth_unsubscribe"
+ "base-chain/api-reference/ethereum-json-rpc-api/web3_clientVersion"
]
},
{
@@ -409,7 +418,9 @@
"groups": [
{
"group": "Introduction",
- "pages": ["base-account/overview/what-is-base-account"]
+ "pages": [
+ "base-account/overview/what-is-base-account"
+ ]
},
{
"group": "Quickstart",
@@ -658,7 +669,9 @@
},
{
"group": "Growth",
- "pages": ["apps/growth/rewards"]
+ "pages": [
+ "apps/growth/rewards"
+ ]
},
{
"group": "Builder Codes",
@@ -676,7 +689,9 @@
"groups": [
{
"group": "Overview",
- "pages": ["ai-agents/index"]
+ "pages": [
+ "ai-agents/index"
+ ]
},
{
"group": "Quickstart",
@@ -799,7 +814,6 @@
]
},
"redirects": [
-
{
"source": "/base-chain/reference/json-rpc-api",
"destination": "/base-chain/api-reference/rpc-overview"
@@ -3090,4 +3104,4 @@
"measurementId": "G-TKCM02YFWN"
}
}
-}
+}
\ No newline at end of file