-
Notifications
You must be signed in to change notification settings - Fork 315
template for gas & elasticity increase #491
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
template for gas & elasticity increase #491
Conversation
🟡 Heimdall Review Status
|
…easeGasLimit.s.sol
…e in root README.md
| BASE_CONTRACTS_COMMIT=TODO # Recommend using the latest version of https://github.com/base-org/contracts | ||
|
|
||
| # TODO: ensure `SYSTEM_CONFIG` is correct on the given network | ||
| SYSTEM_CONFIG=0x73a79Fab69143498Ed3712e519A88a918e1f4072 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it should be fine to have both the mainnet and sepolia values in here so the task creator can just delete the other network that is not needed
|
|
||
| ### 3. (**ONLY** if needed) Execute upgrade rollback | ||
|
|
||
| > [!IMPORTANT] THIS SHOULD ONLY BE PERFORMED IN THE EVENT THAT WE NEED TO ROLLBACK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: this doesn't display properly. "THIS SHOULD ONLY BE PERFORMED IN THE EVENT THAT WE NEED TO ROLLBACK" should be moved to a new line below the important tag. So
> [!IMPORTANT]
>
> THIS SHOULD ONLY BE PERFORMED IN THE EVENT THAT WE NEED TO ROLLBACK
| TO_GAS_LIMIT=$(TO_GAS_LIMIT) \ | ||
| FROM_ELASTICITY=$(FROM_ELASTICITY) \ | ||
| TO_ELASTICITY=$(TO_ELASTICITY) \ | ||
| $(call MULTISIG_EXECUTE,$(SIGNATURES)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The env var setting here is unnecessary, no?
| cd $(SIGNER_TOOL_PATH); \ | ||
| npm ci; \ | ||
| bun run scripts/genValidationFile.ts --rpc-url $(L1_RPC_URL) \ | ||
| --workdir .. --forge-cmd 'forge script --rpc-url $(L1_RPC_URL) \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use RPC_URL in this command since it's assigned above
| TO_ELASTICITY=$(TO_ELASTICITY) \ | ||
| $(call MULTISIG_EXECUTE,$(SIGNATURES)) | ||
|
|
||
| # Manually swap the old and new values for the gas limit and elasticity when passing them in for the rollback |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this comment old?
| npm ci; \ | ||
| bun run scripts/genValidationFile.ts --rpc-url $(L1_RPC_URL) \ | ||
| --workdir .. --forge-cmd 'forge script --rpc-url $(L1_RPC_URL) \ | ||
| $(SCRIPT_NAME) --sig "sign(address[])" [] --sender $(SENDER)' --out ../validations/base-signer-upgrade.json; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd prefer to just name the file base-signer.json
| DENOMINATOR = ISystemConfig(SYSTEM_CONFIG).eip1559Denominator(); | ||
| } | ||
|
|
||
| function setUp() external view { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this works as expected when simulating the rollback transaction. I'd remove the setUp function
|
|
||
| You may now kill the Signer Tool process in your terminal window by running `Ctrl + C`. | ||
|
|
||
| ## Approving the Rollback transaction |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the rollback transaction approval should just be an extension of the previous section. No need to tell the signer to Ctrl + C the app after signing the upgrade. Instead just click the button to 'run another validation'
This PR adds a template for a combined gas & elasticity increase and is also compatible with the new Signer Tool.
NOTE: This PR remains WIP until the Signer Tool can support directly adding a config parameter that contains the full command to be run. This is because simulating rollbacks requires reversal of the environment variables which currently isn't possible (e.g. via the Makefile).