2020-07
11
18:41:45
#接触確認アプリ #COCOA とオープンソースの危うい関係


前々回のと前回からの続きです。この話、意外にネタが尽きない…。

COVID-19Radar GitHubの活動が休止?

界隈ではGitHubでのCOVID-19Radarオープンソースプロジェクトの活動が休止したのではないか、と話題になっている。

実際確認してみると、6/30にバージョン1.1.1がアプリストアで公開された後、つまり7月以降はほとんどGitHubでの活動が停止している。

恐らくバージョン1.1.1向けの作業はほとんど完了していたと思われる6月まではサーバーサイド中心にコードへの変更のコミットも見受けられるが、

7月以降以降は一部「TEKリスト」のためのタイムスタンプ追加のコミットを除いては、ドキュメント修正程度しか行われていない。

これに先立つバージョン1.1.1向け?のプルリクエストのマージメッセージ(6/28)において、「デプロイ王子」こと廣瀬氏は「Maybe , final store build fix ver 1.1.1. Thanks to all the contributors who have been involved.」と記載していた。

https://github.com/Covid-19Radar/Covid19Radar/pull/711

もっとも例のメンタル破綻発言時に「次のリリースで皆、離れて、然るべき所に引継をします。私も普通の生活に早く戻りたいです」ともツイートしていたので、最初から「他のどこかへ」引き継ぐ予定ではあったのだろうが、まだそれがなされた形跡は現時点では無い。

引用元 「メンタルが破綻」 コロナ接触確認アプリ不具合の裏に安倍政権の”無理な発注”

オープンソースプロジェクト停止後の不具合修正は誰が行うのか?

そして、COVID-19RadarのGitHubはほぼ放置状態(7/11現在、89のIssuesと27のプルリクエストはそのまま残されている)となった。
これらは、接触確認アプリ COCOAが「無償のボランティアチームで開発された」とリリース初期に散々メディア露出して喧伝され、賛同した「本当の無償の有志」らが貢献を行った結果である。

オープンソースプロジェクトの最大の財産であるはずのIssuesとプルリクエストといった貢献への放置も大概だが、同時に「果たしてこのタイミングで何らかの不具合が起きた時どうなるだろうか」とは考えていた。
だがそれがまさしく起きてしまったようだ。

陽性になった場合でもシステムに登録できないケースが確認されたと発表した。アプリの不具合が原因という。

来週中の発行再開を目指すとしている。

同省によると、「登録しようとしてもエラーメッセージが出る」との問い合わせが、8日と9日に計3件寄せられた。原因調査をする中で不具合が判明した。6月19日に公開された初期版を導入し、その後に修正版に更新した場合、不具合が起きるとみられる。

接触確認アプリに不具合 陽性時に登録できず―厚労省

来週中、つまり7/19までに登録可能としたいようだが、果たしてCOVID-19Radarオープンソースプロジェクトが再稼働するのか、あるいは「他のどこか」が作業するのだろうか。その場合はCOVID-19Radarが当然にして修正されるだろうか。もしくはすでに着手されているのだろうか。

詳細は不明だが、こうしたオープンソースプロジェクトのコミュニティ自体が崩壊しプロダクトとしての寿命を迎えるというのはそれほど珍しいことではない。
問題はこれが歩みを止めてはならない政府公式のアプリ(またはシステム)だということだ。

https://twitter.com/piyokango/status/1275625554360668160 より引用

やはり分かり易いので、再度@piyokango氏によるCOVID-19Radarと公式の接触確認アプリCOCOAとの関係図を示そう。

接触確認アプリCOCOAはオープンソースであるCOVID-19Radarを元にしているだけで両者は別物だという「建て付け」と説明がされている。
このことはCOVID-19RadarのREADMEではっきりと明言されている。

https://github.com/Covid-19Radar/Covid19Radar/blob/master/README.ja.md

「こちらのGithubは、厚労省の公式アプリのコードそのものではなく、公式アプリの元になっているオープンソースコードです」と丁寧にも両者は別物であることが強調されている。この注意書き自体は6/19のリリース当時には無く、わざわざその後の6/21に追加されている。

すなわちこの建て付けは、そういうことにしておかないといけない絶対的なルールとして扱われていることが分かる。

しかしそうであれば、もしCOVID-19Radarオープンソースプロジェクトが「破綻」したならば、この先公式接触確認アプリCOCOAは一体どうなってしまうのだろうか?

理屈上はCOCOAも瓦解するので、新たな何らかの立て直しを行わなければならないはずだ。しかしその際の方法論はこれまでに明らかにはされていない。
あたかもCOVID-19Radarオープンソースプロジェクトは永遠にメンテナンスされる前提であるようだ。

しかし意外にも(予想通り?)早く不具合修正をCOCOAへ施さねばならないタイミングが到来してしまった。
廣瀬氏らは前言通り離脱しているとすれば、誰が修正を行うのか(筋から言えば受託しているパーソルとその再委託先であるマイクロソフトとFIXERであるべきだが)、その時COVID-19Radarオープンソースプロジェクトもメンテされるのかどうか。

来週中、7/19を期限とされてしまいどのように修正されるかで、「本当にCOVID-19Radarは公式接触確認アプリCOCOAとは別物か」「公式接触確認アプリCOCOAは(オープンソースではあるが)マイクロソフトの関与無く無償のボランティアチームがメンテナンスしてきたのか」が明らかになる

実はCOVID-19Radarと公式接触確認アプリCOCOAの関係性を問われる、一連の騒ぎの中でも大変重要な局面を迎えているのである。

刮目して推移を見守ろうではないか。

公式接触確認アプリCOCOACOVID-19Radarと別物であってはならない理由

ところが一方で、接触確認アプリCOCOAがCOVID-19Radarと別物であってはいけない理由が存在する。……またややこしい話だ。

WHOではコンタクトトレーシングアプリ(接触確認アプリ)のためのガイド ”Ethical considerations to guide the use of digital proximity tracking technologies for COVID-19 contact tracing”(“COVID-19接触追跡のためのデジタル近接追跡技術の使用をガイドするための倫理的考察”) を5/28付けで発表している。

この中の”Transparency and explainability” (“透明性と説明責任”) にて「オープンソースでは完全な透明性があるべきだ」としているのだ。

Data collection and processing shall be transparent, and individuals shall be provided with concise and reader-friendly information in clear and unambiguous language regarding the purpose of collection, the types of data collected, how data will be stored and shared, and how long data shall be retained. There should be full transparency about how the applications and application programming interfaces (APIs) operate, and publication of open source and open access codes. Individuals should also be provided with meaningful information about the existence of automated decision-making and how risk predictions are made, including how the algorithmic model was developed and the data used to train the model. Furthermore, there should be information about the model’s utility and insights as to the types of errors that such a model may make.

データの収集と処理は透明でなければならず、収集の目的、収集されたデータの種類、データがどのように保存され共有されるか、データがどのくらいの期間保持されるかについて、個人には簡潔で読者に優しい情報が明確かつ明確な言語で提供されなければならない。アプリケーションやアプリケーション・プログラミング・インターフェース(API)がどのように 動作するか、オープンソースやオープンアクセス・コードの公開については、完全な透明性があるべきである。また、アルゴリズムモデルがどのように開発されたか、モデルを訓練するために使用されたデータを含め、自動化された意思決定の存在とリスク予測がどのように行われているかについても、個人に意味のある情報が提供されるべきである。さらに、モデルの有用性と、そのようなモデルが犯す可能性のあるエラーの種類についての洞察に関する情報も提供されるべきである。

Ethical considerations to guide the use of digital proximity tracking technologies for COVID-19 contact tracing
(日本語訳はDeepLによる)

では果たして「日本の公式アプリであるCOCOAはオープンソースであり、完全な透明性を有している」だろうか?

答えは「否」である。何故なら、オープンソースとして公開しているのはCOVID-19Radarであって、COCOAでは無い。両者が同一で無いことはCOVID-19Radar公式が”厚労省の公式アプリのコードそのものではなく、公式アプリの元になっているオープンソースコードです”と明言してしまっているのだから。

他国は、例えばドイツのコンタクトトレーシングアプリであるCorona-Warn-Appは「それ自身」をGitHubで公開している。
Apple/Google API「Exposure Notification API」に対応し、独SAPとドイツテレコムが共同開発したと報じられている。

そう気付けば日本のCOCOAは不可思議なアプリそしてシステムだ。
最初から厚労省の公式アプリとしてオープンソースプロジェクトで開発しても良いのに、何故「一旦COVID-19Radarをはさむ」形にしなければならなかったのか?

その答えは前々回前回でも述べたようにマイクロソフト・ファミリーによる深謀遠慮がそこにあったから、では無いか。
体よく手っ取り早くアピールできメディアや大衆の受けも良さそうで厚労省の面目も立ちそうな自社社員が開発するオープンソースアプリがあり、関係するパートナーでAzureを中心に導入してくれるなら、あとはオープンソースの建て付けでアプリさえ押し込めればビジネスとしてクロージング出来そうだ…そんなところだったのでは無いか。

COVID-19RadarオープンソースプロジェクトとCOCOAが別物で「なくてはならない」のもそんなシナリオの前提が崩れるからだろうが、そのことがWHOに言われずともこうした信頼性が第一なアプリの透明性を保証できていないのは、なんとも皮肉、また監督官庁である厚労省にとっても失態だったと言えよう。

そしてプレビュー期間が終わる

今回の不具合修正の期限とされた7/19は、先月接触確認アプリCOCOAが最初にリリースされてからちょうど1ヶ月目である。
そして、リリース後最初の1ヶ月間はプレビュー期間であり、その後正式版へ移行するとされているので、不具合修正期限を7/19としたのもそれを見据えたことであろう。

と同時に恐らくは委託先であるパーソル(と再委託先のマイクロソフトとFIXERにとっても)への、COCOA含むシステム一式の検収完了が予定されているはずだ。
つまり完動する納品物として支払いを行うかどうかを厚労省や専門家チームが結論つけるのである。

一般論としては結論は最初から決まっている。一定のバグも修正されたとして検収は滞りなく完了するはずだ。

どのような代物であっても。

それで良いのかどうか?
COVID-19Radarオープンソースプロジェクトは今後も滞ること無く維持できるのだろうか?
マイクロソフト・ファミリーとAzureに完全にロックインされたシステムへ今後運用費用を言い値で払い続ける結論でよいのか?
COCOA自体はオープンソースでもなく、透明性を保持せず信頼性を担保しないままで良いのか?
何よりも、我々の税金で「このような代物」を買い取って本当に良いのだろうか?

フランスの接触通知アプリの誤算 隣国が方向転換、孤立も

何事にも遅すぎるということは無い。
間違ったならそれはただ正せば良いのだ。
「誤りを認めない文化の方がよほど日本を技術後進国に」するのだ。

この話題はテーマ(ネタともいう)に事欠かない……。
あと二つ三つほどバックログはあるのだけど、折を見て、また続く…?

1 thoughts on “#接触確認アプリ #COCOA とオープンソースの危うい関係

  1. > オープンソースプロジェクト停止後の不具合修正は誰が行うのか?

    不具合についていろいろ調べてたらこの記事にたどり着いたので
    githubに該当のissueを挙げられてました。
    https://github.com/Covid-19Radar/Covid19Radar/issues/773

    修正されてますが、デプロイ王子という方はもうプロジェクトに関わっていないのでこのissueに反応する人もいなさそうですね
    https://megalodon.jp/2020-0807-0447-35/https://github.com:443/Covid-19Radar/Covid19Radar/releases/tag/v1.1.2

匿名 へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください