このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
https://mastodon.social/@dansup/111617703110836835
> Soon we will be selectively enforcing authorized fetch for accounts with domain blocks so as to provide the best of both worlds.
なるほどなあと思うと同時に、むしろMastodonにおいて`AUTHORIZED_FETCH`がアカウント単位の設定でなくサーバ全体の設定になっている理由が気になってくるな。`AUTHORIZED_FETCH`のデメリットというとオブジェクトの署名の無効化によるinbox forwardingやらリレーやらの配送効率の低下であって、そのコストを負うのはサーバの管理者であるからとか? エンドユーザにとってのデメリットというと互換性の低下くらいだろうか [参照]
個人的にはリクエストを何でもかんでも署名するのはプライバシー上の問題がないか心配なのだよなあ。まあ署名には基本的にsystem actorの鍵対を使うとして、それでも問題になるとすると個人用サーバの振る舞いがその管理者による操作をリアルタイムに反映してしまうことくらいだろうけど、それは元々IPアドレスから分かることではあるだろうから、署名によって新たな問題が生じるかというと微妙かも知れないけど
Backfill statuses from remote accounts when first subscribed · Issue #34 · mastodon/mastodon
https://github.com/mastodon/mastodon/issues/34#issuecomment-1703650033
System actorでなく個々のアカウントの鍵を使う動機のある機能の提案もあるので、そのあたりはどう実装されるか気になっている
ActivityPubのC2Sプロトコル(Social API)ではクライアントが直接アクティビティを生成するからFEP-ae97 (Client-side activity signing; <https://codeberg.org/fediverse/fep/src/branch/main/fep/ae97/fep-ae97.md>)のような面白そうなことが可能になるのだけど、その利点を活かすにはサーバはクライアントから送られたアクティビティのオブジェクトをそのまま配信する必要があるわけで、バリデーションやらデータベースにおける扱いやらがややこしくなりそうである
バリデーションの問題についてはFederation Protocolにも言えることだし、案外同じ要領で処理できたりするだろうか。`published`の値なども任意に設定可能にするのは過激かも知れないけど、例えばproxy object(FEP-fffd)のようなユースケースではそのレベルの自由度も妥当なのでは。まあ汎用のサーバであらゆるユーザにそれを許すのは微妙かも知れないけど……
しかしクライアントサイドの署名を求める場合において`Update`アクティビティの扱いはどうなるのだろう。`Update`アクティビティの`object`プロパティはSocial APIとFederation Protocolの間でかなり異なるわけだけど。具体的には、Social APIにおいて`object`は元のオブジェクトからの差分として扱われるのに対して、Federation Protocolにおいては更新後のオブジェクト全体を`object`に含めることが求められているし、そもそも更新後に`object`のURIを参照外しした場合はその結果は更新後のオブジェクト全体になることが期待されるわけで
まあFederation Protocolと違ってSocial APIは<del>あまり流行っていないし、</del>互換性の影響範囲が特定のサーバとそのユーザの間に閉じているから多少は勧告と異なる要件を含めてもワンチャン許されそうだし(ホンマか?)、`Update`は部分的な更新でなく完全な置き換えとして扱う対応もアリかな? そもそも部分的な更新は特にプロパティの削除に関してRDF的に扱いに怪しさがあるし(<https://github.com/w3c/activitypub/issues/396>)。まあ部分的な更新が出来ないと何かと面倒そうな気がしないでもないけど……
クライアントAPIの仕様がMastodonだのMisskeyだのといった特定の実装に紐付いていたり、例えばリアクション機能をMastodon APIで実現しようとしたときにFederation Protocolから独立して拡張が乱立したりするのはつらみがあるからActivityPubのSocial APIももう少し流行ってくれると良い気がするけど、実際のところとしてはいまいちパッとしないのだよなあ。「インスタンス」だのドメインブロックだののようにSocial APIの枠組みでは扱いづらそうな概念も多いし