転送に失敗した場合のデバッグ

転送のライフサイクルを理解する

動かなくなった転送をデバッグする場合、クロスチェーン取引のライフサイクルを理解することが重要です。

The NXTP crosschain transaction lifecycle.

The NXTP crosschain transaction lifecycle.

3つのフェーズがあります。

  1. **オークション:**このフェーズでは、あなた(ユーザー)はルーター(流動性プロバイダー)とペアになり、あなたの転送のための出口流動性を提供します。例えば、OptimismからArbitrumにDAIを転送する場合、ルーターはOptimismに供給するDAIと引き換えにArbitrumにDAIを供給します。
  2. **準備する:**このフェーズでは、送信側チェーンのユーザーと受信側チェーンのルーター、両者が送金のための資金をロックする。ルーターは、サブグラフ(複雑なチェーンのデータを簡単に処理するためのインフラストラクチャの一部)がユーザーの送金を表示するのを待ってから、受信側のチェーンで流動性をロックアップする。
  3. **履行:**このフェーズでは、両当事者が送金のための資金をロック解除します。ユーザーは受信側のチェーンで資金のロックを解除するために使用する署名を提供し、ルーターは送信側のチェーンで資金のロックを解除するために同じ署名を使用します。

一度作成した振込は、期限を過ぎても履行されない場合は、どちらか一方が取り消すことができます。また、資金を借りている人は、履行するのではなく、期限が切れる前に送金を取り消すことができる。つまり、取引が準備されると同時に、ユーザーは受信チェーン上で送金をキャンセルすることができ、ルーターは送信チェーン上で送金をキャンセルすることができるのです。

デバッグの手順

以下はxpollinate.ioからの画像ですが、別のウェブサイトから開始されたNXTPトランザクションでも同じ手順でデバッグすることができます。

  1. 資産がウォレットから出たこと、そしてあなたが懸念している取引がxpollinateに関連するものであることを確認してください。私たちが推奨するエクスプローラはtenderlyですが、どのエクスプローラでもprepareのトランザクションを確認することができるはずです

  2. UIからTransaction Idをコピーする

    トランザクションID(txid)は、クロスチェーントランザクションの一意の識別子です。エクスプローラーを使って特定の転送に関する情報を見つけるのに最も便利です。

    トランザクションID(txid)は、クロスチェーントランザクションの一意の識別子です。エクスプローラーを使って特定の転送に関する情報を見つけるのに最も便利です。

  3. connextscan.ioでIDを使用してトランザクションを検索します。

  4. エクスプローラ上にトランザクションが表示されない場合は、xpollinate.ioのサブグラフの同期状態を確認してください。ステータスがunsyncedである場合、トランザクションがネットワークに拾われるまでもう少し待つ必要があります。

    xpollinateのウェブサイトから簡単にサブグラフの同期状態を確認できます。送信または受信チェーンのサブグラフが「unsynced」と表示されている場合、転送にかかる待ち時間が長くなることが予想されます。

    xpollinateのウェブサイトから簡単にサブグラフの同期状態を確認できます。送信または受信チェーンのサブグラフが「unsynced」と表示されている場合、転送にかかる待ち時間が長くなることが予想されます。

  5. エクスプローラでトランザクションを見つけたら、受信チェーンのステータスを確認します(この写真では、Pendingと表示されています)。トランザクションには下記のようにいくつかのステータスがあります。

  6. トランザクションが長い間Pending状態のままになっている場合は、エクスプローラでルーターをクリックして、ルーターの健康状態を確認してください。ルーターがしばらくトランザクションに失敗している場合、待つ必要があるかもしれません。注意:資金は常に安全です 最悪の場合、お客様の資金は72時間以内に返却されます。

    健全なルーターでは、トランザクションの大部分がまたは の状態にあるのに対し、不健全なルーターでは、多くのトランザクションが の状態のまま滞留していることがわかります。

    健全なルーターでは、トランザクションの大部分がFulfilledまたはPrepared の状態にあるのに対し、不健全なルーターでは、多くのトランザクションがPreparing の状態のまま滞留していることがわかります。

  7. この手順がすべてうまくいかない場合は、以下のリンクからチームに連絡してください。私たちはいつでも問題解決のお手伝いをさせていただきますが、まずはご自身で解決していただいたければ幸いです🙂