推出 User Operation Overrides
作者:Alchemy Team

Account Abstraction 让用户可以使用智能合约账户作为钱包,而不是传统的外部拥有账户(EOA)。从智能合约账户发起交易时,User Operations(UserOps 或 UOs)包含与常规交易类似的交易细节:sender、to、calldata、maxFeePerGas、maxPriorityFee、signature 和 nonce。
由于智能合约账户依赖 Bundlers 代为执行交易,user operation 还包含一组用于估算 gas 和通过 paymaster 赞助 gas 的新字段,包括:callGasLimit、verificationGasLimit、preVerificationGas 和 paymasterAndData。
今天,我们推出 User Operation Overrides,让开发者能够精细控制 gas 费用。L2 上的 gas 费用市场变化很快,一旦发生变化,待处理的 UO 可能会失败。
UO Overrides 让你可以覆盖 gas 估算值,从而在 gas 估算与实际 gas 成本不符的情况下,更有把握地确保 UserOp 被打包上链。
user operation overrides 的作用
通过覆盖 gas 费用估算值(其涉及许多复杂输入,因此很难准确估算),你可以设置绝对值或基于乘数的覆盖值,从而在 gas 波动的情况下更有把握地确保你的 UserOp 被成功打包上链。
user operation overrides 有哪些优势?
UO Overrides 为开发者带来的两个主要好处是:简化 gas 和 paymaster 数值估算的复杂度,以及在费用市场波动期间提高 UO 被打包上链的可能性。
1. 简化复杂度
如今,估算合适的 gas 费用需要综合考虑六种不同的 gas 类型,很难做到估算“准确”。有了 Fee Overrides,开发者可以设置参数,在某个阈值上覆盖 gas 估算值,从而使 UserOp 无论估算准确与否都能被打包上链。
2. 掌控结果
迄今为止,使用 aa-sdk 的一个痛点是,网络繁忙时,团队往往需要请 Alchemy 工程师帮忙处理 gas 估算和 UserOp 成功率的问题。
有了 User Operation Overrides,团队现在可以选择哪些 UserOp 最重要,并设置自定义覆盖值,以更强的控制力提高其 UO 成功打包上链的可能性。
user operation overrides 有哪些特性?
User Operation Overrides 允许为以下字段指定覆盖值:
maxFeePerGasmaxPriorityFeePerGascallGasLimitpreVerificationGasverificationGasLimitpaymasterAndData
使用 Alchemy 的 AA SDK 进行开发的开发者,可以将 User Operation Overrides 与任意 Bundler 或 Paymaster 搭配使用!
user operation overrides 是如何工作的?
覆盖值可以在 SmartAccountProvider 的各个中间件中使用。例如,默认的 middlewares(如 gasEstimator 或 feeDataGetter)会在提供了覆盖值的情况下,将其应用到估算值上。
除了 paymasterAndData 字段外,覆盖字段可以是绝对值,也可以是乘数值。在默认中间件中,如果覆盖值是绝对值,则直接覆盖估算值。
如果覆盖值是乘数值,则会用指定的乘数对估算值进行上调。例如,如果 maxPriorityFeePerGas 字段的覆盖值为 \{ multiplier: 1.1 \},那么会对该 user operation 估算的 maxPriorityFeePerGas 应用 1.1 倍的乘数,即上调 10%。
要开始使用,请查阅 User Operation Override 文档!
Alchemy 新闻通讯
第一时间获取发布信息
订阅我们的新闻通讯
获取 Alchemy 的最新产品更新和资源
填写您的电子邮箱地址即表示您同意接收我们的营销通讯和产品更新。您确认 Alchemy 按照我们的隐私声明处理我们收到的信息。您可以随时取消订阅。


