カスタムフィールドのタグ付け?

タグに関連付けられた ActivityPub データを、ActivityPub アクターの役割を果たすタグとして保存します。discourse/discourse のクライアントのどの部分にもシリアライズする必要はありません。ユーザーは通常の discourse/discourse クライアントのどの部分でもこのデータを見ることはありません。データは、プラグインが専用のプラグイン管理ルートで管理する他のデータと共に、管理クライアントにシリアライズされます。おっしゃる通り、既存の discourse/discourse タグルート(またはサイトシリアライザー)でのシリアライズは、様々な理由で困難であり、試したくないことなので、プリロードや編集可能な API メソッドを追加しませんでした。

安定した API を利用できることに加えて、ActivityPub プラグインでこれらが好ましい理由は、プラグインが ActivityPub アクティビティを discourse_activity_pub_* テーブルという別のデータモデルセットに保存し、それが定義されたプラグイン API とコアモデルのカスタムフィールドを介して discourse/discourse と統合されるためです。ここには、Discourse と ActivityPub の懸念事項を適切に分離するために、意図的な冗長性がいくつかあります。Discourse と ActivityPub には、関連しているが異なる概念とデータモデルのシリーズがあるため、ActivityPub データと discourse/discourse データの明確な区別を維持することは、大規模で複雑なプラグインの明瞭さ(そして正気)を保つために必要です。カスタムフィールドを統合ポイントとして使用することは、その分離をクリーンで安定した状態に保つのに非常に役立ちます。

これについての簡単な説明は、プラグインの README にあります。

「いいね!」 2