Skip to content

Comments

op-chain-ops: update config#3871

Merged
tynes merged 9 commits intodevelopfrom
fix/config-update
Nov 8, 2022
Merged

op-chain-ops: update config#3871
tynes merged 9 commits intodevelopfrom
fix/config-update

Conversation

@tynes
Copy link
Contributor

@tynes tynes commented Nov 3, 2022

Description
We need config options for the recipients of the fee vaults. This adds it to the config parsing.

Also adds a helper function to read the correct deployment
artifacts from disk given a hardhat.Hardhat instance.
This code was being repeated throughout the codebase
so its better to consolidate it into a single location.
Now the DeployConfig has the L1 contract addresses
required to build a L2 genesis. These addresses do not
need to be present in the JSON file itself and instead
can be read from disk dynamically.

Also add a check function that will error on a config
that is not sane. This can be made more strict in the
future, currently do not want to break anything in the
process of introducing this.

@changeset-bot
Copy link

changeset-bot bot commented Nov 3, 2022

⚠️ No Changeset found

Latest commit: 7fa30a0

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@tynes tynes requested review from mslipper, protolambda and trianglesphere and removed request for protolambda November 3, 2022 20:41
@mergify
Copy link
Contributor

mergify bot commented Nov 4, 2022

Hey @tynes! This PR has merge conflicts. Please fix them before continuing review.

@mergify mergify bot added the conflict label Nov 4, 2022
Copy link
Contributor

@protolambda protolambda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, updating the hardhat deploy configs with the new l1 recipient addresses would be nice to add though.

@mergify
Copy link
Contributor

mergify bot commented Nov 4, 2022

This PR has been added to the merge queue, and will be merged soon.

@mergify
Copy link
Contributor

mergify bot commented Nov 4, 2022

Hey @tynes, this pull request failed to merge and has been dequeued from the merge train. If you believe your PR failed in the merge train because of a flaky test, requeue it by commenting with @mergifyio requeue.
More details can be found on the Queue: Embarked in merge train check-run.

@mergify mergify bot removed the on-merge-train label Nov 4, 2022
@tynes tynes force-pushed the fix/config-update branch from fa41a48 to 5e8f639 Compare November 4, 2022 16:55
@github-actions github-actions bot added 2-reviewers A-pkg-contracts-bedrock Area: packages/contracts-bedrock labels Nov 4, 2022
@tynes
Copy link
Contributor Author

tynes commented Nov 4, 2022

I've updated the deploy config files to contain the correct values

@mergify mergify bot removed the conflict label Nov 4, 2022
@mergify
Copy link
Contributor

mergify bot commented Nov 8, 2022

Hey @tynes! This PR has merge conflicts. Please fix them before continuing review.

@mergify mergify bot added the conflict label Nov 8, 2022
tynes added 7 commits November 8, 2022 08:36
We need config options for the recipients of the fee vaults.
This adds it to the config parsing.
Adds a helper function to read the correct deployment
artifacts from disk given a `hardhat.Hardhat` instance.
This code was being repeated throughout the codebase
so its better to consolidate it into a single location.
Now the `DeployConfig` has the L1 contract addresses
required to build a L2 genesis. These addresses do not
need to be present in the JSON file itself and instead
can be read from disk dynamically.

Also add a check function that will error on a config
that is not sane. This can be made more strict in the
future, currently do not want to break anything in the
process of introducing this.
@tynes tynes force-pushed the fix/config-update branch from 5e8f639 to 9c7e99d Compare November 8, 2022 17:41
@tynes tynes changed the title op-chain-ops: parse the new config op-chain-ops: update config Nov 8, 2022
return err
}

if err := config.Check(); err != nil {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this check duplicated on line 145 below?

Copy link
Contributor Author

@tynes tynes Nov 8, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is a different command, both need the check

@mslipper
Copy link
Collaborator

mslipper commented Nov 8, 2022

Looks like the devnet has an expected failure given these changes:

CRIT [11-08|17:46:05.867] Application failed                       message="invalid deploy config: ProxyAdminOwner cannot be address(0)"

@tynes
Copy link
Contributor Author

tynes commented Nov 8, 2022

Looks like the devnet has an expected failure given these changes:

CRIT [11-08|17:46:05.867] Application failed                       message="invalid deploy config: ProxyAdminOwner cannot be address(0)"

Will fix each issue

@tynes
Copy link
Contributor Author

tynes commented Nov 8, 2022

Getting a segfault in op-geth in TestL2Verifier_SequenceWindow

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xbd10bf]

goroutine 5087 [running]:
github.com/ethereum/go-ethereum/core/types.(*Block).NumberU64(...)
	/go/pkg/mod/github.com/ethereum-optimism/op-geth@v0.0.0-20221104231810-30db39cae2be/core/types/block.go:299
github.com/ethereum/go-ethereum/core/txpool.(*TxPool).reset(0xc006406600, 0xc01165ed80, 0xc01165fd40)
	/go/pkg/mod/github.com/ethereum-optimism/op-geth@v0.0.0-20221104231810-30db39cae2be/core/txpool/txpool.go:1268 +0xf3f
github.com/ethereum/go-ethereum/core/txpool.(*TxPool).runReorg(0xc006406600, 0xc0171e10e0, 0xc0026213e0, 0x0, 0xc00c74cf90)
	/go/pkg/mod/github.com/ethereum-optimism/op-geth@v0.0.0-20221104231810-30db39cae2be/core/txpool/txpool.go:1172 +0x26b
created by github.com/ethereum/go-ethereum/core/txpool.(*TxPool).scheduleReorgLoop
	/go/pkg/mod/github.com/ethereum-optimism/op-geth@v0.0.0-20221104231810-30db39cae2be/core/txpool/txpool.go:1101 +0x1b3

@trianglesphere
Copy link
Contributor

trianglesphere commented Nov 8, 2022

Getting a segfault in op-geth in TestL2Verifier_SequenceWindow

@tynes this is a known flake in the action tests

@tynes
Copy link
Contributor Author

tynes commented Nov 8, 2022

Flake with the devnet + deploy:

Starting withdrawal
An unexpected error occurred:

Error: transaction failed [ See: https://links.ethers.org/v5-errors-CALL_EXCEPTION ] (transactionHash="0x3b7453282ec8cb1f26f0cb8b98f5a2e441589d3716fd0850f4c52519371e6849", transaction={"type":2,"chainId":901,"nonce":1,"maxPriorityFeePerGas":{"type":"BigNumber","hex":"0x59682f00"},"maxFeePerGas":{"type":"BigNumber","hex":"0x59685f30"},"gasPrice":null,"gasLimit":{"type":"BigNumber","hex":"0x028c73"},"to":"0x4200000000000000000000000000000000000010","value":{"type":"BigNumber","hex":"0x00"},"data":"0x32b7006d0000000000000000000000007c6b91d9be155a6db01f749217d76ff02a7227f20000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000","accessList":[],"hash":"0x3b7453282ec8cb1f26f0cb8b98f5a2e441589d3716fd0850f4c52519371e6849","v":0,"r":"0xd368ebcf1b0947e99b046acbddd5cd507ce3c1986fdc163f36bb171ca58290fb","s":"0x00d94dbc489a905ed61385087a4acb56267b36d1d2762a82688643789e7c9341","from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","confirmations":0}, receipt={"to":"0x4200000000000000000000000000000000000010","from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","contractAddress":null,"transactionIndex":2,"gasUsed":{"type":"BigNumber","hex":"0xa42d"},"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","blockHash":"0x368b7c99a293adc3319f48ee0306329b2d9cd45fa3454581b811a256838f3ed9","transactionHash":"0x3b7453282ec8cb1f26f0cb8b98f5a2e441589d3716fd0850f4c52519371e6849","logs":[],"blockNumber":76,"confirmations":22,"cumulativeGasUsed":{"type":"BigNumber","hex":"0x11c43d"},"effectiveGasPrice":{"type":"BigNumber","hex":"0x59685f30"},"status":0,"type":2,"byzantium":true}, code=CALL_EXCEPTION, version=providers/5.7.1)
    at Logger.makeError (/home/circleci/project/node_modules/@ethersproject/providers/node_modules/@ethersproject/logger/src.ts/index.ts:269:28)

This has become really flakey lately, not sure why

@tynes tynes merged commit 0da966c into develop Nov 8, 2022
@tynes tynes deleted the fix/config-update branch November 8, 2022 18:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-pkg-contracts-bedrock Area: packages/contracts-bedrock

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants