Skip to content
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

Initial UserOperation Fails due to initCode in Account Abstraction v0.7 #490

Closed
kishantrikon opened this issue Jun 20, 2024 · 4 comments
Closed

Comments

@kishantrikon
Copy link

Description:

I am encountering an issue when deploying a smart account wallet using the initCode functionality in the initial UserOperation. Despite following standard practices for generating initCode, I consistently receive errors. Only getting errors with Account Abstraction version v0.7 Previous versions worked without this issue.

Context:

To run the Useroperation I'm Manually deploying the smart account wallet using the SimpleAccountFactory & after that subsequent UserOperations function seamlessly, including paymaster functionalities.

Issue:
The problem persists solely with the first UserOperation that includes the initCode.

Errors Encountered:
From Bundler: "AA20 account not deployed"
Direct Stimulation on EntryPoint Contract: "AA13 initCode failed or OOG" error.

InitCode Generation Process:
const initCode = ethers.utils.hexConcat([ Config.SIMPLE_ACCOUNT_FACTORY_ADDRESS, contract.newsimpleAccountFactory.interface.encodeFunctionData("createAccount", [owner.address, 0]) ]);

The initial UserOperation with initCode should deploy the smart account wallet and allow subsequent UserOperations to function correctly without manual intervention.

I am looking for guidance to resolve this issue. Any help or pointers would be immensely helpful.

@yamel22s
Copy link

Nckljgh

@yamel22s
Copy link

Jghoohggffjko

@yamel22s
Copy link

Vcjoooo

@drortirosh
Copy link
Contributor

It is a little tricky to debug deployment failure.

  • try call the factory directly, to see the calldata indeed creates the account
  • make sure the verificationGasLimit is high enough, to cover deployment (and validation)
  • you can try to use an SDK to create account, instead of directly creating UserOperations.
  • If you have further errors, you can ask on the discord channel: https://discord.gg/PVt4dn7zcQ

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

No branches or pull requests

3 participants