Conversation
de6bd09 to
0e4b621
Compare
55249c7 to
654b5ab
Compare
0c5fae4 to
4ec5d7f
Compare
d588069 to
cf77369
Compare
| entryPoint = _entryPoint; | ||
| } | ||
|
|
||
| function simulateValidation(UserOperation calldata userOp) external returns (FailedOpStatus memory, Response memory) { |
There was a problem hiding this comment.
one thing I noticed when using this why we don't have the same return types for this and the actual entryPoint simulateValidation.
There was a problem hiding this comment.
can you elaborate?
the return of entrypoint does not matter much, because all code paths use custom revert (ValidationResultWithAggregation, ValidationResult, FailedOp)
| } | ||
| // await EntryPoint__factory.connect(this.config.entryPoint,this.provider).callStatic.addStake(0) | ||
|
|
||
| // const err = await EntryPoint__factory.connect( |
There was a problem hiding this comment.
we might want to support this via the Wrapper contract, currently we cannot run this!
There was a problem hiding this comment.
| break | ||
| // custom errors post bedrock! | ||
| // case 'eth_estimateUserOperationGas': | ||
| // result = await this.methodHandler.estimateUserOperationGas( |
There was a problem hiding this comment.
shouldn't we instead return an error that informs the user that the method exists but is not currently supported?
There was a problem hiding this comment.
otherwise it's just the generic not supported/not exists error
There was a problem hiding this comment.
i think this is the same endpoint you are working on? so we can add this back? "estimateUserOperationGas"
There was a problem hiding this comment.
yeah, that can be fixed later on. for now I added a new error type and throw an error for not supported
souradeep-das
left a comment
There was a problem hiding this comment.
this is super, lets go 🚀
| docker-compose -f <<parameters.docker_compose_file>> -f docker-compose-side.yml up -d bobalink aa_deployer bundler | ||
| working_directory: ops | ||
| - run: | ||
| name: Start background logging |
There was a problem hiding this comment.
L257 - lets uncomment test_flow_bundler_and_depcheck?
There was a problem hiding this comment.
this actually does not exist in upstream anymore! will remove completely
| DeterministicDeployer, | ||
| HttpRpcClient, | ||
| SimpleAccountAPI, | ||
| } from '../../../bundler_sdk/dist' |
There was a problem hiding this comment.
external dep (although isok, i dont think runop is used extensively)
There was a problem hiding this comment.
resolved nevertheless!
|
|
||
| const ctr = hexValue(new SampleRecipient__factory(ethers.provider.getSigner()).getDeployTransaction().data!) | ||
| DeterministicDeployer.init(ethers.provider, testWallet) | ||
| console.log(DeterministicDeployer.init(ethers.provider, testWallet)) |
There was a problem hiding this comment.
maybe we want to remove log?
(here and L36)
| accountAPI = new SimpleAccountAPI({ | ||
| provider: env.l2Provider, | ||
| entryPointAddress, | ||
| senderCreatorAddress: senderCreator.address, |
There was a problem hiding this comment.
minor: since we are passing accountAddress, do we need to pass senderCreator additionally?
( if we dont need it we could remove it from L141)
(applies to the other tests files)
|
|
||
| before('the user approves the paymaster to spend their $BOBA token', async () => { | ||
| // deploy a 4337 Wallet and send operation to this wallet | ||
| SimpleAccount__factory = new ContractFactory( |
There was a problem hiding this comment.
super minor: should we call it 'SimpleAccountFactory__factory'?
(applies to the other tests files)
| console.log(log.args.msgSender) | ||
| console.log(account) |
There was a problem hiding this comment.
unless this was added on purpose :D
| entryPointAddress, | ||
| senderCreatorAddress: senderCreator.address, | ||
| owner: env.l2Wallet, | ||
| factoryAddress: accountFactory.address, |
There was a problem hiding this comment.
lets remove factoryAddress and senderCreatorAddress here since we specify accountAddress?
| to: await op.sender, | ||
| }) | ||
|
|
||
| //what is this supposed to be? |
There was a problem hiding this comment.
minor: a comment we can rem now 😄
| target: recipient.address, | ||
| data: recipient.interface.encodeFunctionData('something', ['hello']), | ||
| }) | ||
| await env.l2Wallet.sendTransaction({ |
There was a problem hiding this comment.
minor: we are sending eth two times? on L181 too?
9c0ddd1 to
ba17f52
Compare
ba17f52 to
8794c88
Compare
8794c88 to
a589698
Compare
* bump bundler, limit dependency bumps * uncomment bundler related stuff * build bundler in docker * build fixes * fix tests * fix bundler building * uncomment _disableInitializers * fix running DTL * v1.0.0 * fixing starting bundler and tests, default config * local unsafe, linting fix in intg tests * custom errors fixes * new api for simple account contract * use simple account factory proxy * use simple account factory proxy in SimpleAccountAPI * use simple account factory proxy in SimpleAccountAPI * use wrappers to get around custom errors * update entrypoint wrapper (#745) * sponsoring fee fixed * stricter validation for staking * remove debug namespace, fix return for unaavailable rpc methods * addressing Souradeeps comments --------- Co-authored-by: Souradeep Das <dsouradeep2@gmail.com> (cherry picked from commit 6368c72)
* Inomurko/bump bundler (#698) * bump bundler, limit dependency bumps * uncomment bundler related stuff * build bundler in docker * build fixes * fix tests * fix bundler building * uncomment _disableInitializers * fix running DTL * v1.0.0 * fixing starting bundler and tests, default config * local unsafe, linting fix in intg tests * custom errors fixes * new api for simple account contract * use simple account factory proxy * use simple account factory proxy in SimpleAccountAPI * use simple account factory proxy in SimpleAccountAPI * use wrappers to get around custom errors * update entrypoint wrapper (#745) * sponsoring fee fixed * stricter validation for staking * remove debug namespace, fix return for unaavailable rpc methods * addressing Souradeeps comments --------- Co-authored-by: Souradeep Das <dsouradeep2@gmail.com> (cherry picked from commit 6368c72) * fix: qsp30 (#773) fix: BOB1-30 (cherry picked from commit 7feda88) * run op fix (#771) (cherry picked from commit 176cd3c) * close-server (#768) (cherry picked from commit 72021af) * [AA]: fix inconsistent userOpHash (#757) * add token callback handler on SimpleAccount * fix: userOpHash packing * prevent recursive calls into handleOps * move nonce validation from individual Account to EntryPoint * add bundler changes for nonce change to EP (cherry picked from commit cc4e205) * ValidationManager account for signature expiration (#775) * resolve #753 * Update packages/boba/bundler/src/modules/ValidationManager.ts Co-authored-by: Ino Murko <ino.murko.github@protonmail.com> * fix bool * validAfter/Until integrationt tests, validAfter * cleanup * regex * integration_tests * integration & unit tests --------- Co-authored-by: Ino Murko <ino.murko.github@protonmail.com> (cherry picked from commit ef02bee) * npm release workflow for bundler-sdk (#749) (cherry picked from commit 718141f) * Fix/banxa and bridges (#772) * adding boba network * fixing boba bridge url * fixing bridge integration * replace code by selectors * remove hardcoded symbol * enable banxa only for mainnet * Available bridge inable only for mainnet * adding support for testnet * update conditional for other bridges * implemented the available bridges with typescript * unit test cases for available bridges * typo in Available bridges --------- Co-authored-by: alvaro-ricotta <alvaro.e.ricotta@gmail.com> Co-authored-by: alvaro-ricotta <81116391+alvaro-ricotta@users.noreply.github.com> Co-authored-by: Ino Murko <ino.murko.github@protonmail.com> (cherry picked from commit dcf9b7e) * add validation of entryPoint and wrapper (#779) * add validaiton of entryPoint and wrapper (cherry picked from commit 41f3150) --------- Co-authored-by: Souradeep Das <dsouradeep2@gmail.com> Co-authored-by: Riedl Kevin, Bsc <kevin.riedl@wavect.io> Co-authored-by: Sahil K <86316370+sk-enya@users.noreply.github.com>
This PR brings in 0.5.0 Bundler changes from upstream.
It also introduces a wrapper contract
EntryPointWrapperfor the purpose of EntryPoint interaction through custom errors that our l2geth currently does not support.Overview
Re-enabled and fixed tests:
boba_aa_wallet.spec
boba_aa_sponsoring_fee.spec
boba_aa_fee_boba.spec
boba_aa_fee_alt_token.spec
Changes
Describe your changes and implementation choices. More details make PRs easier to review.
Testing
Unit tests and integration tests are in the PR