Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/adr/0003-governance-configuration-and-validation.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,15 @@

Arc's block parameters — gas limit, base fee parameters, and reward beneficiary — are configured via the `ProtocolConfig` governance smart contract (`0x3600000000000000000000000000000000000001`). The proposer reads these values when building blocks, and other full nodes accept the resulting headers with minimal verification.

Three governance-controlled values are dervied from `ProtocolConfig` values and end up in block headers:
Three governance-controlled values are derived from `ProtocolConfig` values and end up in block headers:

| Value | Header Field | Current Validation |
|-------|--------------|--------------------|
| Gas limit | `gas_limit` | Clamped to hardcoded [1M, 1B] by proposer; no consensus validation |
| Base fee | `base_fee_per_gas` (child), `extra_data` (parent) | Parent extra_data → child base_fee check, but silently skipped if extra_data is malformed |
| Reward beneficiary | `beneficiary` | None — proposer can set any address |

This design has several gaps, mainly around validation, intentionally ommitted until this time. This ADR focuses on the `gasLimit` in particular.
This design has several gaps, mainly around validation, intentionally omitted until this time. This ADR focuses on the `gasLimit` in particular.

### Gap 1: No consensus-level gas limit validation

Expand Down
2 changes: 1 addition & 1 deletion docs/adr/0004-base-fee-validation.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ The value of 1) is that it is familiar and well-understood. The value of 2) is t

The combination of these makes it challenging for integrators to precisely understand the next block base fee as the calculation is more involved. To address this, Arc includes the next block base fee in the header, computed at the end of the parent's block execution, since it is fully known at that point.

Currently, the implementation has several gaps in validation. This ADR, similar to ADR-003, seeks to document solutions to these gaps.
Currently, the implementation has several gaps in validation. This ADR, similar to ADR-0003, seeks to document solutions to these gaps.

### Gap 1: No validation of the base fee computation

Expand Down
2 changes: 1 addition & 1 deletion docs/running-an-arc-node.md
Original file line number Diff line number Diff line change
Expand Up @@ -697,7 +697,7 @@ Check out [reth system requirements](https://reth.rs/run/system-requirements/) f

**Note**: during periods of sustained high load, such as during startup or extended sync if the node is far behind, the execution layer memory may surge on some hardware. This should not be an issue if running with the suggested System Requirements. However, if you do observe this, you can enable backpressure to throttle the pace of execution according to the speed of disk writes, which will constrain memory growth.

To enable this, the `reth_` namespace should enabled on the **execution layer**:
To enable this, the `reth_` namespace should be enabled on the **execution layer**:

```sh
--http.api eth,net,web3,txpool,trace,debug,reth
Expand Down