Skip to content

Conversation

@legion2002
Copy link
Collaborator

@legion2002 legion2002 commented Sep 30, 2025

Implements a new batch execution mode for calls that share a common target address and a 0 value field.
This is calldata optimally efficient for most day to day transaction to the same account. Most DApps don't require the use of a value field in batches. The only thing differing between the executions in the batch are the data fields.

hanges

Core Implementation:

  • New execution mode
    0x0100000000007821000300000000000000000000000000000000000000000000
  • _executeBatchCalldataOptimal() function in ERC7821Ithaca
  • If the to address passed to the function is set to address(0), it is replaced with address(this) onchain.

We have to port over the ERC7821 lib as a vendor lib inside the repository to add these changes, until these are merged in Solady.

Maybe it is better to just port over and own this lib in the long term, as it will allow us to simplify all of the '_execute()' overloading complexity in the account.

@github-actions
Copy link
Contributor

🤖 Bytecode changes detected! EIP-712 domain versions have been automatically updated for: IthacaAccount

@legion2002 legion2002 closed this Sep 30, 2025
@legion2002 legion2002 reopened this Sep 30, 2025
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

Successfully merging this pull request may close these issues.

2 participants