SocialHub において、@keunes 氏は、Discourse が ActivityPub をサポートすれば 、インターネット上の 1 つ以上の Discourse インスタンスで蓄積された既存の評判を活用して、新しい掲示板に参加する際に初期の信頼レベル 0 や 1 を飛び越え、直接レベル 2(メンバー)へ移行できるという形で、評判のフェデレーション を提案しました。
この Discourse インスタンスで最初の投稿を作成したばかりですが、新規ユーザーであるためリンクを 2 つまでしか貼れません。理解はできますが、やや煩わしいです。そこで考えたのですが、Discourse を、特に私の評判を「フェデラティブ」にする方法はないでしょうか?
例えば、AntennaPod フォーラムでは SocialHub を「信頼できる信頼ソース」として設定し、ユーザーが他の場所で獲得した信頼レベルの恩恵を受けられるようにするといった具合です。
確かに、評判の良い著名なネットユーザーにとって、新しいフォーラムに参加する際に低い信頼レベルによる制限は負担になることがあります。一方で、悪い評判を獲得した場合、それが新しい掲示板での権限付与を妨げる可能性もあります(信頼レベルの昇格にマイナスの重みとして作用するなど。ただし、新しいアイデンティティを使用すれば簡単に回避できます)。
したがって、このアイデアの核心は、Discourse インスタンス間で良好な行動の評判を共有しやすくすることにあります。すでに Discourse インスタンスのグローバルネットワークが存在し、Meta 上の多くのユーザーが複数の他のインスタンスにも所属している状況下では、会話の流動性を高めるため、一般ユーザーの間でインスタンス横断的なアイデンティティの統一がますます望ましくなっています。ActivityPub はその手段の一つであり、現在、Discourse に ActivityPub サポートを追加するプラグインを作成する方法を探求中です。これにより、今回のような機能を含む、他のフェデレーション機能の基盤となることが期待されています。
過去の類似の提案
@erlend_sh 氏は、3 年前に行われたこの突発的な提案を思い出させてくれました。
hellekin:
ユーザーの信頼レベルシステムについて考えると、ユーザーの重複や相互リンクに基づいて、友好的なコミュニティを特定するまで拡張できるかもしれません。悪質なコミュニティの例は見つかりません(もし知っている方がいれば、教えてください)。しかし、ハブが志を同じくするコミュニティを相関付けることができるようになるでしょう…
将来的には、1 つのメールアドレスで複数の Discourse インスタンスに接続できるようになった際、ハブは公開ユーザープロフィールを維持する手段となり、新しく参加したコミュニティがユーザーのプロフィール作成のためにそれを参照し、ユーザーを煩わすことなく済むようになるかもしれません。ただし、仕事とプライベートのようにアカウントや参加を分離したい場合もあり、それもサポートされるべきです。しかし、これは単純なハブの概念を超えているかもしれません。
提案された興味深い機能のまとめ
オプトイン
TheBestPessimist:
「評判の移行」に関する最初の考え:
フォーラムごとにオプトインであるべき
ユーザーごとにオプトインであるべき(1 を参照)
信頼ネットワーク
TheBestPessimist:
許可されたフォーラムの編集可能なホワイトリスト(Discourse 自身によって提供される場合もあり)があるべき
許可されたフォーラムの編集可能なブラックリストがあるべき
発見可能性
投稿 #4 において、@erlend_sh 氏は他のユーザーとの「共通コミュニティ」を追加し、最終的にはコミュニティ間でバッジを移植することで、メンバーが新しいコミュニティを発見しやすくすることを提案しました。
「いいね!」 9
「評判の移行」に関する私の最初の考え:
フォーラムごとにオプトインとする
ユーザーごとにオプトインとする(1参照)
許可されたフォーラムの編集可能なホワイトリスト(Discourse 自体が提供するものでも可)を用意する
許可されたフォーラムの編集可能なブラックリストを用意する
1: これは、ユーザーがフォーラムを使い始めて最初の5分間に、そのことを促すメッセージを表示するかどうかという疑問を提起します。
「いいね!」 4
私は信頼レベルは、個々のフォーラムのルールや慣習を学ぶことに関わるものだと思っていました。他のフォーラムのルールに基づいて、デフォルトの 2 週間/15 回の訪問による「慣らし」期間をスキップできるようにするのは、うまくいかないかもしれません。
中央ディレクトリハブに登録されているフォーラムやユーザーに適用できる、追加の「準会員」信頼レベルがあってもいいと思います。これにより、多くのフォーラムを閲覧でき、場合によっては投票や「いいね」ができるようになる一方で、投稿や信頼レベルの進展など完全なメンバーシップを得るには、特定のフォーラムに登録する必要がある、といった仕組みです。
「いいね!」 2
erlend_sh
(Erlend Sogge Heggen)
2021 年 9 月 16 日午前 10:47
4
私はいくつかの小さな Discord インスタンスを運営しており、スパムやその他の悪意のある行為を防ぐためにモデレーションボットをいじらなければならない日が来るのを恐れています。
Discord のモデレーションにおける多くの課題は、コミュニティソフトウェアでまだ十分に活用されていない「信頼レベル(Trust Levels)」によって解決できるはずです。
複数の相互運用可能なインスタンス間で共有されるネットワーク化(フェデレーション)された信頼レベルは、以下の2つの重要な機能を実現します。
信頼のネットワーク
Meta で TL 2 に達したユーザーは、meta.discourse.org を「信頼されたフォーラム」として登録しているフォーラムに参加する際、自動的に TL 1 に昇格します。これは本質的に、Let experienced users skip "new to Discourse" features で提案された次のステップです。
これは非常にシンプルな、PageRank に似たシステムです。
発見可能性
Discord には、あなたと他のユーザーが共通して参加しているチャットコミュニティ(サーバー)を確認できる便利な機能があります。
これは、私が今でも最も魅力的なユースケースだと考えている、まだ実現されていないDiscourse Hub の用途を思い出させます。
他のインスタンスからバッジを引き継ぐような仕組みも非常に役立ちます。誰かが最初の「Helpful 」バッジ(現時点ではデフォルトでは存在しないバッジ)を取得すると、そのバッジが表示されるすべての追加インスタンスが、その人にとっての思い出となり、確認の機会となります。つまり、自分は他者を支援するタイプのコミュニティメンバーであるという認識を強めるのです。
「いいね!」 6
信頼ネットワークが導入されるのであれば、信頼フォーラムに加えて「信頼トラストリスト」のサポートも実現してほしいです。つまり、Discourse インスタンスが信頼フォーラムリストを公開し、例えば私のインスタンスで meta.discourse.org/trusted-forums.json を信頼として選択できるようにするといった具合です(おそらく再帰的ではない形で)。
「いいね!」 3
osioke
(Osioke Itseuwa)
2021 年 9 月 20 日午前 11:03
6
Simon_Manning:
信頼できるフォーラムのリストを公開する
これはどのように機能するとお考えですか?ユーザーデータを一切含まない匿名での運用でしょうか、それとも…?
信頼されたフォーラムリストに具体的にどのユーザーデータが関連するかは確信が持てません。信頼されたフォーラムは、インスタンスの管理者が選択するものだと想定しています。管理者がそれを公開することを選んだ場合、meta.discourse.org/trusted-forums.json(または該当する URL)をリクエストすると、以下のような内容が返されると考えられます。
{
"trustedForums": [
"meta.discourse.org",
"bestforum.com",
"marvellousdiscussions.org",
...
]
}
そして、インスタンスの管理者として、特定のインスタンス(それが信頼する他のインスタンスは含まず)のみを信頼したい場合は、信頼されたフォーラムに meta.discourse.org を入力します。あるいは、より適切な名前の「信頼された信頼リスト」に入力することで、そのインスタンスおよびそれが信頼する他のインスタンス全体を信頼することもできます。
実際には、この JSON に自インスタンスへの参照は含まれないでしょう。これは単に、他のインスタンスからのリストを信頼することが、そのインスタンス自体への信頼も意味することを示すための例です。
ユーザーデータについて言及されていることから、信頼の仕組みそのものについてお話ししていると推察します。これは私のコメントの範囲を超えていますが、@erlend_sh の TL1 へのユーザー昇格というアイデアを踏まえると、インスタンスはサインアップ時(あるいはより現実的には、サインアップ後の Sidekiq ジョブにおいて)に、信頼されるフォーラムとメールアドレスの SHA256 ハッシュ値のようなものを共有する必要があるでしょう。
これはユーザーデータを直接共有しないという点で回避策となりますが、上記の JSON を例に挙げれば、すぐに一つの欠点が見えてきます。ユーザーが bestforum.com にアカウントを持ち、その後 meta.discourse.org にサインアップした場合、前者に対してユーザーが後者にアカウントを作成したことが露呈し、後者に対してユーザーが既に前者にアカウントを持っていることが露呈する可能性があります。これは望ましくない状況です。
この問題に対処する方法はよくわかりません。サインアップ時にユーザーにオプトインをさせることは、この仕組みを悪用しようとするインスタンスがそれを単に削除してしまう可能性があるため、頼りになりません。
おそらく「Discourse Hub」は、ハッシュ化されたメールアドレスと関連するインスタンスおよび信頼レベルのみを保持(そして受け取る)することで、この問題を主に解決できるでしょう。インスタンスはハッシュ化されたメールアドレスでハブにクエリを送り、そのハッシュがどのインスタンスで観測され、どのような信頼レベルに達したかに基づいてスコアベースのシステムを採用するかもしれません。これにより、インスタンスはどの他のインスタンスが関与しているかを知ることはなく、結果としてのスコアのみを知ることになります。
ただし、そのようなハブの明白な運営者が Civilized Discourse Construction Kit, Inc. (CDCK) であるという点において、この仕組みには依然として重要な問いが残ります。meta および他のインスタンスの利用者である私にとって、CDCK に自分が利用している他のインスタンスを見られることを望むでしょうか?(インスタンスとハブの運営者が、自インスタンスのユーザーとハブ内のエントリを結びつけることが可能になるためです)
要約すると、信頼の仕組みは、この混乱した頭脳には複雑すぎるようです。
「信頼できるフォーラム」というアプローチは興味深く有用だと感じますが、セキュリティ上の潜在的な問題も認識しています。攻撃者が、直接アクセスできない真正のターゲットに到達するため、監視が比較的緩い「信頼できるフォーラム」を標的とする可能性があるからです。したがって、そのような「移行的信頼」メカニズムを実装する場合は、容易に「追跡可能」であってはならず、攻撃者に対してインスタンス間で停止処分を下すような強力な報復メカニズムを伴うべきです。これは実装上の複雑さを相当増大させる制約条件であり、開発の第2フェーズに委ねる方が適切だと考えます。
一方、各フォーラムにおけるメンバーのリモート評判がローカルでのステータスを強化する「信頼できるフォーラムのプライベートリスト」を維持する方が(見かけ上は)容易かもしれません。もしかすると、「信頼レベル」の概念をユーザーだけでなくインスタンスにも拡張できるでしょうか?例えば、Meta というインスタンスが TL3 なら、そこからやってくるユーザーは最初は TL2 とし、ユーザーが参加しない場合は「減衰係数」を適用する、といった具合です。これまた複雑さを一段階増しますが、インスタンス全体を信頼する代替案をいくつかスケッチするために、思いつくままに発言しています。
どのインスタンスを利用しているかについての秘密保持については同意します。これは考慮すべき点ですが、パブリックなインスタンスに投稿することは、結果としてそのインスタンスを利用している事実を公表することと同義になる可能性があります。これはプライベートなボードには当てはまらないかもしれません。
「いいね!」 2
まだディレクトリレベルでのユーザーリストの案を練っています。
https://DiscourseDiscovery.org -
匿名ユーザーは、公開リストへの登録を済ませたフォーラムのディレクトリ(カテゴリまたは「フォーラムタグ」で検索可能)を表示でき、ディレクトリ内のすべてのインスタンスにわたってキーワード検索も可能です。
DiscourseDiscovery のユーザーアカウントを作成するには、サインアップしてください。新規アカウントは Hub_Level_0 から始まり、必要なスキルを網羅した適応型 Discobot の「フォーラムトレーニング」を完了することで、残りの Hub_Levels を順に達成できます。
異なる Hub_Levels によって、ディレクトリ全体で利用可能な機能の範囲が広がります。例えば、通常は匿名ユーザーには表示されないカテゴリの閲覧、「いいね」や投票などのアクションの実行(アバター画像の周囲を赤い円で囲んで、連携メンバー/Hub_Level メンバーであることを示すことも可能)、トピック内容に関する通知の受信など。アバターをタップすると、そのユーザーの DiscourseDiscovery ユーザーカードが表示されます。
ユーザーは、任意の「フルメンバー」フォーラムアカウントを、連結された DiscourseDiscovery ユーザーページに追加できます(不要なアカウントは除外するオプションもあります)。ここではバッジの集計や最新のアクティビティなどを確認できます。
フォーラム側でも、セキュリティ設定でカテゴリや投票などへのアクセスを「フルメンバー」のみに制限するオプションを提供できます。また、公開ディレクトリへの掲載、ユーザーの Hub_Levels に基づくよりプライベートなディレクトリへの掲載、あるいは掲載しないことを選択することも可能です。
以上、いくつかのアイデアです。
「いいね!」 3