コンテンツへスキップ
0%

User Operation Overridesのご紹介

著者: Alchemy Team

最終更新日: 2024年1月17日1分で読めます
User Operation Overrides リリース: ガス代をきめ細かく制御

Account Abstractionにより、ユーザーは従来のExternally Owned Accounts(EOA)の代わりに、スマートコントラクトアカウントをウォレットとして使用できます。スマートコントラクトアカウントからトランザクションを開始する場合、User Operations(UserOpsまたはUOs)には、通常のトランザクションと同様にトランザクションの詳細が含まれます:sender、to、calldata、maxFeePerGas、maxPriorityFee、signature、nonce。

スマートコントラクトアカウントは、代わりにトランザクションを実行するためにBundlerに依存しているため、user operationにはガスを見積もったりpaymasterでガスをスポンサーしたりするための新しいフィールドセットも含まれています:callGasLimit、verificationGasLimit、preVerificationGas、paymasterAndData。

本日、開発者がガス料金をきめ細かく制御できるようにするUser Operation Overridesをローンチします。L2上ではガス料金市場が急速に変動するため、それが起こると保留中のUOが失敗することがあります。

UO Overridesを使用すると、ガス見積もりをオーバーライドできるため、実際のガスコストと乖離したガス見積もりに関係なく、UserOpsがマイニングされるというより強力な保証を得られます。

user operation overridesの機能

ガス料金の見積もりは多くの複雑な入力を組み込んでいるため正確に見積もるのが難しいのですが、これをオーバーライドすることで、絶対値ベースまたは倍率ベースのオーバーライド値を設定し、ガスの変動に関係なくUserOpが正常にマイニングされるというより強力な保証を得られます。

user operation overridesの利点は何ですか?

UO Overridesの主な開発者向けの利点は2つあります。ガスとpaymasterの値の見積もりの複雑さを簡素化することと、手数料市場が不安定な時期にUOがマイニングされる可能性を高めることです。

1. 複雑さの簡素化

現在、適切なガス料金を見積もるには6種類の異なるガスタイプを組み込む必要があり、ガス見積もりを「正しく」行うのが難しくなっています。Fee Overridesを使えば、開発者はガス見積もりを一定の閾値でオーバーライドするパラメータを設定できるため、見積もりの精度に関係なくUserOpsがマイニングされます。

2. 結果を自分で制御する

これまでaa-sdkを使用する際の悩みの種の一つは、ネットワークが混雑すると、チームがAlchemyのエンジニアにガス見積もりとUserOpの成功を代わりに処理してもらうよう依頼せざるを得なかったことです。

User Operation Overridesにより、チームはどのUserOpsを最も重要視するかを選択し、カスタムオーバーライド値を設定してより高い制御性を持てるようになり、UOが正常にマイニングされる可能性を高めることができます。

user operation overridesの機能にはどのようなものがありますか?

User Operation Overridesでは、以下についてオーバーライド値を指定できます:

  1. maxFeePerGas
  2. maxPriorityFeePerGas
  3. callGasLimit
  4. preVerificationGas
  5. verificationGasLimit
  6. paymasterAndData

AlchemyのAA SDKを使って開発している方は、あらゆるBundlerやPaymasterでUser Operation Overridesを利用できます!

user operation overridesはどのように機能しますか?

オーバーライド値は、SmartAccountProviderの各ミドルウェアから利用できます。例えば、デフォルトのmiddlewares(gasEstimatorやfeeDataGetterなど)は、オーバーライド値が指定されている場合、その値を見積もり値に適用します。

paymasterAndDataフィールド以外のオーバーライドフィールドは、絶対値または倍率値のいずれかになります。デフォルトのミドルウェアでは、オーバーライド値が絶対値の場合、単純に見積もり値を上書きします。

オーバーライド値が倍率値の場合、見積もり値は指定された倍率値で_引き上げ_られます。例えば、maxPriorityFeePerGasフィールドのオーバーライド値が\{ multiplier: 1.1 \}の場合、user operationの見積もりmaxPriorityFeePerGasに1.1倍、つまり10%の増加が適用されます。

始めるには、User Operation Overrideのドキュメントをご覧ください!

Alchemy Newsletter

リリース情報をいち早く受け取る

ニュースレターに登録する

Alchemyの最新のプロダクト情報とリソースをお届けします

A
O
D
+
80,000人以上が購読中

メールアドレスを入力すると、当社のマーケティング情報およびプロダクト最新情報の受信に同意したことになります。Alchemyが受け取った情報をプライバシー通知に従って取り扱うことに同意するものとします。購読はいつでも解除できます。