Skip to content

feat(sepolia): upgrade SystemConfig to increase MAX_GAS_LIMIT to 2B#677

Merged
leopoldjoy merged 8 commits into
mainfrom
sepolia/increase-max-gas-limit-2000m
May 7, 2026
Merged

feat(sepolia): upgrade SystemConfig to increase MAX_GAS_LIMIT to 2B#677
leopoldjoy merged 8 commits into
mainfrom
sepolia/increase-max-gas-limit-2000m

Conversation

@leopoldjoy
Copy link
Copy Markdown
Contributor

Summary

  • Upgrades the Sepolia SystemConfig implementation to increase MAX_GAS_LIMIT from 500M to 2B
  • Patches base-contracts SystemConfig v3.13.2 at commit be7c7a6 to change the constant and version string
  • Includes deploy script (DeploySystemConfig.s.sol) and upgrade script (UpgradeSystemConfig.s.sol)
  • No storage changes — only MAX_GAS_LIMIT constant and version() are modified

Prerequisite For

This is a prerequisite for the Sepolia 1.2B gas limit + elasticity 15 task (separate PR), which sets gas_limit = 1,200,000,000. The current maximumGasLimit of 500M rejects that value.

Parameter Changes

Parameter Current New
MAX_GAS_LIMIT 500,000,000 2,000,000,000
version() 3.13.2 3.13.2+max-gas-limit-2000M

Signing Flow

This upgrade goes through the ProxyAdmin owner Safe (0x0fe884546476dDd290eC46318785046ef68a0BA9), which requires signatures from both Base and OP signers.

Prerequisite for the 1.2B gas limit + elasticity 15 task. The current
maximumGasLimit of 500M rejects setGasLimit(1200000000).

Patches base-contracts SystemConfig v3.13.2 to set MAX_GAS_LIMIT = 2B,
deploys a new implementation, and upgrades the proxy via ProxyAdmin.
@cb-heimdall
Copy link
Copy Markdown
Collaborator

cb-heimdall commented May 6, 2026

✅ Heimdall Review Status

Requirement Status More Info
Reviews 2/2
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 2
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 2
2
1 if commit is unverified 0
Sum 2

leopoldjoy added 6 commits May 6, 2026 16:43
…d GEN_VALIDATION

Replace outdated eip712sign/state-diff approach with the modern signer-tool
workflow used by recent tasks (multiproof, zk-config):

- Rewrite Makefile to use GEN_VALIDATION, MULTISIG_APPROVE, MULTISIG_EXECUTE
- Add SIGNER_TOOL_PATH, validate-config, gen-validation-base/op targets
- Add FACILITATOR.md with deployment/signing/execution instructions
- Update README to reference make sign-task instead of manual eip712sign
- Add RECORD_STATE_DIFF=true and signer-tool re-export comments to .env
- Clean up deps to extend root Makefile targets instead of duplicating them
Comment thread sepolia/2026-05-06-increase-max-gas-limit/validations/base-signer.json Outdated
Comment thread sepolia/2026-05-06-increase-max-gas-limit/validations/op-signer.json Outdated
@leopoldjoy leopoldjoy merged commit 55c7312 into main May 7, 2026
14 checks passed
@leopoldjoy leopoldjoy deleted the sepolia/increase-max-gas-limit-2000m branch May 7, 2026 15:02
leopoldjoy added a commit that referenced this pull request May 7, 2026
… gas+elasticity task

Add EIP-1967 implementation slot override to _simulationOverrides so the
simulation can set gasLimit to 1.2B before the prerequisite MAX_GAS_LIMIT
upgrade (PR #677) is executed on-chain. The override points the SystemConfig
proxy to the new implementation (0x4ABA707D) with MAX_GAS_LIMIT=2B.

Generate base-signer.json validation file via signer-tool.
leopoldjoy added a commit that referenced this pull request May 7, 2026
* feat(sepolia): increase gas limit to 1.2B and elasticity to 15

Preserves the current gas target at 80M while increasing burst capacity:
  current:  gas_limit=400M,   elasticity=5  -> target=80M
  proposed: gas_limit=1200M,  elasticity=15 -> target=80M

DA footprint gas scalar set to 446, anchored to L1 blob limit:
  1,200,000,000 / (21 * 128,000) = 446

Depends on sepolia/2026-05-06-increase-max-gas-limit (PR #677) to raise
MAX_GAS_LIMIT from 500M to 2B first.

* refactor(sepolia): add SIGNER_TOOL_PATH and gen-validation section to gas+elasticity task

- Add SIGNER_TOOL_PATH = ../../signer-tool for consistency with latest tasks
- Update FACILITATOR.md with gen-validation/gen-validation-rollback instructions
  and concrete task directory paths

* chore: update BASE_CONTRACTS_COMMIT to latest (4ff644d5)

* chore: update BASE_CONTRACTS_COMMIT to latest (415a6a8c) and fix import paths

* chore: update BASE_CONTRACTS_COMMIT to latest (e8fe64dc)

* feat(sepolia): add validation file and SystemConfig impl override for gas+elasticity task

Add EIP-1967 implementation slot override to _simulationOverrides so the
simulation can set gasLimit to 1.2B before the prerequisite MAX_GAS_LIMIT
upgrade (PR #677) is executed on-chain. The override points the SystemConfig
proxy to the new implementation (0x4ABA707D) with MAX_GAS_LIMIT=2B.

Generate base-signer.json validation file via signer-tool.

* fix(sepolia): add pre-checks for FROM values in gas+elasticity script

Address review feedback: verify current on-chain values match expected
FROM values (gas limit, elasticity, denominator, DA footprint gas scalar)
before building the transaction calls.

* feat(sepolia): add rollback validation file and fix pre-checks for rollback compatibility

Add base-signer-rollback.json validation file for the rollback scenario
(swapped OLD/NEW values, nonce offset +1).

Fix pre-checks in _buildCalls: guard with a condition that detects
rollback simulation (on-chain values differ from FROM values). Since
_buildCalls runs before _simulationOverrides are applied, the raw
on-chain values are visible. The pre-checks now pass through when
simulation overrides are active, relying on _postCheck for final
state validation.

* docs(sepolia): improve DA footprint gas scalar comment with soft/hard cap formulas

Incorporate Niran's formulas and concrete cap values into a neutral
documentation comment that describes what the current scalar (446)
produces without implying correctness of alternative approaches.
leopoldjoy added a commit that referenced this pull request May 9, 2026
* chore(sepolia): remove SYSTEM_CONFIG_IMPL override and regenerate validations

The prerequisite MAX_GAS_LIMIT upgrade (PR #677) is now executed on-chain,
so the SYSTEM_CONFIG_IMPL simulation override is no longer needed.

- Remove SYSTEM_CONFIG_IMPL from .env and Makefile gen-validation targets
- Simplify _simulationOverrides() to only handle rollback overrides
- Regenerate base-signer.json and base-signer-rollback.json
- Add task creator signature (creator-signature.json)

* fix: restore human-readable descriptions in validation files

* fix: re-sign task creator signature after validation description fix

* chore: add base and SC facilitator signatures

* fix: replace SC facilitator signature

* fix: replace SC facilitator signature (attempt 3)

* chore(sepolia): mark gas limit + elasticity increase as executed

Add execution artifact and update README status to EXECUTED with
Etherscan link: 0x62f0de50c147128a4faa7c8c93686f8fd716a18824678e93f72b6c4c979d132e
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants