Augurのローンチ時に想定される混乱(続報)

以前、こちらの投稿で「ローンチ後にAugurでREPを使いたければ、まずその保有するREPをジェネシスユニバースに移行しなくてはならない」とお伝えしましたが、その移行方法に変化があったので報告します。

ジェネシスユニバースへのREPの移行は自動で行われる

Augur開発チームは、Lecacy REPの移行を各ユーザー自身に行わせるのではなく、コントラクトで自動的に移行させることに決めたようです。

その処理を行うコントラクトは既にmasterにマージされており、こちらで確認できます。伴ってUIも変更されており、ベータ版のアカウントページにあった「migrate REP」ボタンも消えていました。

自動移行の問題点

自動移行により、REP保有者の作業は無くなりましたが、問題はあります。それは、関係者間の調整コストが非常に高くなることです。調整とは、取引所、ウォレット、ブロックエクスプローラー(EtherScanなど)など、サービスプロバイダーにAugur開発チームがコンタクトし、REPの移行を通知して足並みを揃える作業のことです。

もしサービスプロバイダーの対応の遅延や、誤った対応が行われた場合は混乱が予想されます。また、移行中は取引所のトレードが停止する可能性があるため、REPの流動性が顕著に低下すると思われます。

また、調整コストが高いということは、その作業に割く時間も多くなるため、開発が滞るでしょう。

自動移行は過去にも行われている

ご存知の方も多いと思いますが、同様の移行作業(=REPコントラクトの変更)は、去年の夏にSerpentに脆弱性が発見された時に、Solidityへの移行で実施されています。その時の概要はBTCNewsさんの記事でまとめられています。

この時も移行は自動的に行われ、私が知る限り大きな混乱はありませんでしたし、チームメンバーも「把握している限りでは、移行で状態が破壊されるユーザーや、取り残されるユーザーはおらず、成功だった」と語っています。(しかし、元開発者の一人は「前回の移行が成功と言えるかは怪しい。私は移行のサポートの大部分を担当したが、その時エンドユーザーにとっての悪夢がどれぐらい多くあったかをチームメンバーは覚えていないからだ。」と語っており、担当者は裏方として多大な苦労していたのかもしれません。)

(今更ですが)手動移行にもメリットはあった

手動での移行は、ユーザー一人ひとりが作業しなくてはならないというデメリットがありますが、メリットもあります。

手動の場合は、ユーザーが任意のタイミングで移行できるように、現在のREPコントラクト(Lecacy REP)と、ジェネシスユニバースに対応する新しいREPコントラクトが共存することとなります。この状況がメリットと言えます。

何故かというと、Augurでは機能としてのフォークが発生し得ることを考えると、ローンチ時の早い段階で「2つのバージョンのREPが存在する」という状況が試せるためです。もしフォークが起こると、否が応でも「2つのバージョンのREPが存在する」という状態になるため、フォークが起きてから初めてその状況を経験するよりは、比較的影響の少ないと思われる早期に経験した方よい=その時ユーザーやサービスプロバイダーがどのような行動を起こすかの予行演習ができる、という点がメリットと言えます。

以前までは「2つのバージョンのREPが存在する状況はデメリットでしかない」と考えていましたが、フォークの予行演習ができると思うと、その経験はいざフォークを迎えた時に「ジェネシスユニバースへの移行時に起きたことを想定して対処すれば良い」という安心感につながると思うに至りました。(既に自動移行に決まったのでこの気付きは今更ですが)

移行はいつ行われるか?

移行時には事前に公式発表される予定です。時期は現時点では不明ですが、ローンチ前までには行われるはずです。

対策は?

繰り返しになりますが、ERC20に対応しているウォレットでREPを所有しておくことだと思います。
どうしても不安な人はREPを手放すことも選択肢の一つだと思います。(個人的にはとても悲しいですが)

また状況が変わればこのブログで報告します。

追伸
Augurの用語集を翻訳したので是非見てください。アクセスがほとんど無く心が折れそうです(笑)。(こちらからどうぞ)