-
Notifications
You must be signed in to change notification settings - Fork 57
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
[abstraction] Add support for AccountAbstraction #622
base: main
Are you sure you want to change the base?
Conversation
65d541a
to
4a6ea55
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm in general.
Just 2 cents:
- serialize fixed bytes for authenticator?
- verify sdk for permissioned delegation works.
serializer.serializeStr(functionName); | ||
serializer.serializeU32AsUleb128(AbstractionAuthDataVariant.V1); | ||
serializer.serializeBytes(this.signingMessageDigest.toUint8Array()); | ||
serializer.serializeFixedBytes(this.authenticator.toUint8Array()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why this one is fixed bytes?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
serializeBytes
will add a length prefix to the start which may not be needed. Permission delegation also doesn't account for the length prefix.
By using serializeFixedBytes
, the developer has 100% full control over the bytes for the authenticator.
f77d79e
to
5645212
Compare
5645212
to
99176a8
Compare
99176a8
to
538bc15
Compare
Description
This pull request introduces several new features and improvements related to account abstraction. The changes include adding new examples, new tests, and updating core account classes to support account abstraction.
AbstractedAccount
which enables signing AA transactions using a custom signeraccount.abstraction
namespace which supports basic authentication function apis including adding functions, removing functions, and checking for whether functions exist.Test Plan
tests/e2e/abstraction.test.ts
Related Links
Checklist
pnpm fmt
?CHANGELOG.md
?