17:30:49
icon

FEP-521a (Representing actor's public keys)のmotivationとして(既存)実装が典型的に単一の鍵対しか受け入れないことを挙げているけど、これがよく理解できていない。`publicKey`が複数指定された場合の対応としてはMastodonのようにJSON表現の配列における先頭の鍵のみを受け入れるのが典型的[^1]であるわけだけど、2番目以降の鍵が無視される分には先頭にRSA鍵を入れておけば後方互換性は保てるし

17:31:02
icon

[^1]: 現行のMisskeyのように配列を上手く処理できない実装もあるけど、そもそも開世界仮説的なJSON-LDの意味論においては複数の値が渡された途端にエラーを吐くというのが正しくないわけで、ここでは考慮しないものとする。先行例として、FEP-fffd (Proxy Object)とかも同様の理屈でゴリ押して(?)`url`に配列を突っ込んだりしているようだし

17:37:59
icon

廃止されたプロパティを使いたくないよねというのはまあ理解できるけど

17:51:08
icon

@hongminhee 一般論としてJSON-LDの意味論の完全な尊重を求めるのは過剰な要求であるという意見については私も同意しますが、特に配列の扱いに関してはMastodonの`JsonLdHelper#first_of_value`のようなhelperを利用するというのはそこまで複雑でもないですし、FEP-fffdのような拡張に有利という実益もあるので、トレードオフとしてはやはり正しく処理できるに越したことはないのではないかなと個人的には思っています

17:53:37
icon

`url`や`publicKey`が配列で受け取れたら便利だよねというのは分かるけど、だったら初めから`"container": "@set"`で定義しろよという話なのだよなあ(<github.com/w3c/activitystreams>)。今さら言っても遅いのだけど

Web site image
Force non-functional properties to always be arrays · Issue #535 · w3c/activitystreams
17:56:11
icon

なので我々は配列とその他の値がくるケースの両方に対応する必要があるという……

17:57:29
icon

@hongminhee そのPRについてはその後にrevertされてしまったようですね……
github.com/misskey-dev/misskey

19:28:17
icon

Fediverse上のボットに任意のActivity Streamsの拡張プロパティを喋らせたいとか考え出すとボット実装自身に直接ActivityPubを喋らせるしかないよなあなどと考えていたけど、ActivityPubのC2Sプロトコル(Social API)をサポートしているサーバがあれば済む話か

19:30:38
icon

Social APIなあ……。主要なマイクロブログサーバ実装でサポートしているのはPleromaくらいか?

19:44:27
icon

ThreadsがMastodonを無視して(標準が認めている通りに)usernameを可変にしているらしいことについて、個人的にはいいぞもっとやれと思っている(?)。
ちょっとpotus@threads.netさん、試しにPOTUS@threads.netに改名してみません?(?)

19:47:32
icon

この調子で(`acct:` URIスキームのRFCが認めている通りに)usernameに非ASCII文字を混ぜたりしようぜ💪(?)

19:55:35
icon

ActivityPubのeditorの人たちによる評価などを見るに、Threadsの開発者はかなり標準を尊重する姿勢らしい

19:55:45
icon

<del>何なら勝手に`fediverse:creator`のような独自仕様を追加するMastodonよりよっぽど尊重しているまであるのでは</del>

20:00:36
icon

まあ超巨大企業なので開発者の姿勢とマネジメントの方針が整合するとも限らないだろうし、実際Fediverse共有を無効化するようにユーザに促してくるなどの報告が聞こえているわけだけど