Pourquoi les discussions fédérées via ActivityPub seraient-elles inaccessibles via des clients AP externes ?

Exemple

Si j’entre https://meta.discourse.org/t/uris-to-the-origin-of-a-thread-that-has-since-been-merged-should-503-to-the-merged-comment/342417?u=rokejulianlockhart (ou https://meta.discourse.org/ap/object/bc8f042ccca5ef56734c5f2460aa45cc) [1] dans mastodon.social/search, cela renvoie une erreur 404 : [2] [3]

Si ce n’est pas la faute de Discourse, je vais porter cela sur Mastodon. Cependant, la plupart des autres plateformes AP que j’ai essayées (et dont je m’attendais à ce qu’elles fonctionnent) ont fonctionné.


  1. https://meta.discourse.org/t/uris-to-the-origin-of-a-thread-that-has-since-been-merged-should-503-to-the-merged-comment/342417?u=rokejulianlockhart ↩︎

  2. search?q=https%3A%2F%2Fmeta.discourse.org%2Fap%2Fobject%2Fbc8f042ccca5ef56734c5f2460aa45cc ↩︎

  3. search?q=https%3A%2F%2Fmeta.discourse.org%2Ft%2Furis-to-the-origin-of-a-thread-that-has-since-been-merged-should-503-to-the-merged-comment%2F342417%3Fu%3Drokejulianlockhart ↩︎

1 « J'aime »

Cela me manque aussi. Sans cela, il est difficile ou impossible d’interagir avec des posts fédérés à moins qu’ils ne soient déjà dans votre fil d’actualité.

@rokejulianlockhart, juste par curiosité, avez-vous essayé avec des URL d’instances WordPress utilisant le plugin WP ActivityPub ?

1 « J'aime »

Que s'est-il passé ici ? Je n'ai jamais écrit comme ci-dessous :

RokeJulianLockhart:

Discutez-en sur notre forum.

... et quelqu'un a utilisé une masse pour détruire mon balisage.

1 « J'aime »

Oh ! Ils sont maintenant fédérés ! Je n’ai pas posté ce commentaire ici. [^1] Ils sont juste plutôt défectueux dans leur fédération :

  1. La mise en forme n’est pas conservée.

  2. Je suis capable d’aimer mes propres publications.

    C’est un compte utilisateur séparé, car il est enregistré sur un autre domaine.

[^1] : socialhub.activitypub.rocks/t/5123/3

@icaria36, non. En connaissez-vous ?

Je crois qu’il s’agit d’un site WordPress, et je viens de tester avec un article récent, et je trouve effectivement l’URL sur Mastodon : Nature Holds Awe, Man – NHAM Mixtape 11 – NHAM

@icaria36, Je ne pense pas. Discourse a une intégration AP native.

@rokejulianlockhart Pour faire écho à votre point lorsque vous avez créé ce sujet, en attendant, https://meta.discourse.org/t/why-are-supposedly-activitypub-federated-discourse-threads-inaccessible-via-external-ap-clients/356997 est introuvable sur Mastodon.

1 « J'aime »

@icaria36, c’est probablement un défaut de Mastodon, alors, puisque Discourse le fédère :

1 « J'aime »

github.com/mastodon/mastodon/discussions/34600#discussioncomment-13031935 indique :

Le plugin Discourse AP rend les objets ActivityPub disponibles lorsque vous cliquez sur le logo vert ActivityPub et sur le bouton « Note » pour copier l’URL : Why are supposedly ActivityPub-federated Discourse threads inaccessible via external AP clients? - #9 by rokejulianlockhart - Bug - Discourse Meta

Discourse AP doit faire en sorte que le lien url renvoie à l’id d’une manière ou d’une autre, de préférence via une redirection sur les requêtes avec l’en-tête de négociation de contenu Accept correct.

Par conséquent, je vais provisoirement marquer cela comme un Bug. (Je ne peux pas. Trop ancien.)

Mais les URL fournies par l’icône « Notes » ne donnent aucun résultat lorsqu’elles sont collées sur, par exemple, mastodon.social/search.

Problème non résolu.

1 « J'aime »

@icaria36, veuillez commenter cela sur la discussion GitHub. Avoir quelqu’un d’autre qui remet en question la réponse lui confère plus de crédibilité que si j’étais l’intermédiaire.

1 « J'aime »

Ça ressemble à ça :

1 « J'aime »

Eh bien, non, il semble qu’il s’agisse finalement d’un bug de Discourse : Posts from Discourse do not resolve via the Search API · Issue #34632 · mastodon/mastodon · GitHub

En enquêtant un peu plus, Mastodon demande la ressource avec l’en-tête Accept suivant :

Accept: application/activity+json, application/ld+json; profile="https://www.w3.org/ns/activitystreams", text/html;q=0.1

La requête de Discourse avec cela renvoie une réponse HTTP 400.

Omettre text/html;q=0.1 renvoie un objet ActivityStreams. Il semble donc s’agir d’un bug de Discourse, qui renvoie un 400 dès lors que text/html fait partie des types acceptés…

1 « J'aime »

@rokejulianlockhart ou un mod pouvez-vous supprimer la « Solution », s’il vous plaît ? Et déplacez ce sujet vers Bug (ou créez un nouveau rapport de bug) en vous basant sur l’évaluation de Mastodon sur Posts from Discourse do not resolve via the Search API · Issue #34632 · mastodon/mastodon · GitHub.

2 « J'aime »

Je ne suis pas sûr qu’il s’agisse d’un bug dans Discourse. J’ai répondu sur le problème sur Mastodon. Publication croisée ici pour plus de commodité :

La raison pour laquelle nous renvoyons un 400 dans ce scénario est que la spécification ActivityPub semble l’exiger.

Les requêtes POST (par exemple, vers la boîte de réception) DOIVENT être faites avec un Content-Type de application/ld+json; profile=“ActivityStreams 2.0 Terms” et les requêtes GET (voir aussi 3.2 Récupération d’objets) avec un en-tête Accept de application/ld+json; profile=“ActivityStreams 2.0 Terms

@ClearlyClaire Faut-il ajouter text/html;q=0.1 à l’en-tête Accept ?

2 « J'aime »

Cela sera résolu bientôt. Voir plus loin :

3 « J'aime »