Skip to content
This repository has been archived by the owner on Sep 30, 2024. It is now read-only.

Add compression plugin #120

Merged
merged 1 commit into from
Oct 17, 2023
Merged

Add compression plugin #120

merged 1 commit into from
Oct 17, 2023

Conversation

voltrevo
Copy link
Contributor

Resolves #113.

(#113 would originally have included applying this in the in-page wallet as well, but I made that a separate issue that can build on top of this work: #119).

Copy link
Contributor

@JohnGuilding JohnGuilding left a comment

Choose a reason for hiding this comment

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

LGTM!

@JohnGuilding JohnGuilding merged commit a55cea7 into main Oct 17, 2023
2 checks passed
@JohnGuilding JohnGuilding deleted the wax-113-compression-plugin branch October 17, 2023 16:39
const userOpCallData = compressionAccount.interface.encodeFunctionData(
"decompressAndPerform",
[compressedActions],
);
Copy link
Contributor

Choose a reason for hiding this comment

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

Current implementation requires dApps (wallets or SDKs) to be compression-aware and wrap users' functions in decompressAndPerform. For broader use, this can eventually be implemented in an 'aggregator'?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think the wallet will always need to be compression-aware, similar to how it needs to be 4337-aware. Compression means that you actually sign a different message, so you can't give control over what message is signed to a third party. However, the same is true for using 4337 itself, so I'm not sure I understand your concern.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Use compression: safe plugin
3 participants