[OP Stack Deployment] Unable to deploy L2 contracts on devnet with op-deployer v0.5.0-rc.2 due to DeployImplementations ABI mismatch. #900
Unanswered
gologo13
asked this question in
Deploying the OP Stack
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Did you check the documentation?
Did you check for duplicate questions?
Issue Description
Hello, I’m trying to run Ethereum + Optimism dev networks with Osaka/Fusaka-ready clients.
I run into an ABI mismatch with op-deployer v0.5.0-rc.2 and officially published contract artifacts bundle.
As of now, https://console.cloud.google.com/artifacts/docker/oplabs-tools-artifacts/us/images/op-deployer/sha256:152cb9409d2d885f287bd2caa947a1ea2e9e921e124c3782c7fe297fa2614130 has tags: 77f31c359f9b3608bf48a8b0981e79b67bd95cb4 and
v0.5.0-rc.2.op-deployer v0.5.0-rc2 supports op-contracts/v5.0.0-rc.2. So, there should be compatibility, but it does not appear so.
I’d appreciate guidance and can move this if it belongs in a different repo.
Bug Description
op-deployer:v0.5.0-rc.2assumes theDeployImplementationsscript exposes arunWithBytes(bytes)entry point and encodes deployment inputs as a single byte array. The Go caller (opcm.DeployImplementationsInput) was updated accordingly and attempts to invoke runWithBytes. However, the officially published contract artifacts bundle (artifacts-v1-fffcbb0e…) that ships with the devnet tooling still contains an ABI whereDeployImplementations.run(address _dii, address _dio)is the only entry point;runWithBytesis absent. As a result,op-deployerfails to load the script at runtime with the error “ABI has 2 arguments, Go has 1”, making L2 contract deployment impossible when using the latestop-deployerimage together with the published artifacts.Steps to Reproduce
network-config.yamlattached belowExpected behavior
Optimism dev-net is launched successfully.
The published artifacts for
op-deployer v0.5.0-rc.2should include aDeployImplementationsABI that exposesrunWithBytes(bytes), matching the Go caller introduced in this release. With a matching ABI,op-deployer applyshould complete successfully.Environment Information:
d44bbea2407f4308f9fda20cf776bcb6dff7ff08recorded inside the bundle)Configurations:
network-config.yaml:
What matters most in this context is
op_contract_deployer_params.Logs:
Additional context
op-deployer/pkg/deployer/opcm/implementations.gonow expects to call runWithBytes(bytes):forge-artifacts/DeployImplementations.s.sol/DeployImplementations.jsonincluded inartifacts-v1-fffcbb0e…still exposes only:while lacking any runWithBytes entry.
d44bbea2407f4308f9fda20cf776bcb6dff7ff08, which predates therunWithBytesupdate. To unblock deployments, a new artifact bundle built fromop-contracts v5.0.0-rc.2(whererunWithBytesis implemented) needs to be published and referenced by the default URLs.Logs
Included in the Issue Description
Additional Information
I originally posted this in ethereum-optimism/optimism#18222, but later found ethereum-optimism/developers repo hearing that this is the better place to ask tech questions.
Feedback
No response
Beta Was this translation helpful? Give feedback.
All reactions