Closed srosset81 closed 2 years ago
Ce serait une bonne chose non que toutes les instances SemApps supportent ActivityPub non ?
Je comprends l'intérêt de la modularité mais s'il y a des besoins d'interopérabilité et de fédération, je me dis qu'AP peut faire partie de la solution ...
Pour maintenir une instance avec ActivityPub depuis une année (pour Colibris), je peux dire que ça ajoute plus de complexité, notamment au niveau des données. Je pense pas qu'il faut obliger à utiliser ActivityPub, sauf s'il y a un réel besoin.
Commentaires suite à la réunion de ce jour (voir le CR complet):
Offer > Add > Relationship
vers l'acteur Relay
du serveur distantOffer
du côté du serveur B (accepter automatiquement, si ce bot existe)
Tension Lorsqu'on ajoute une relation vers une donnée d'un serveur fédéré, on ne peut pas, comme pour des données internes, ajouter la relation inverse directement dans le triple store. C'est dommage car cela permettrait de rendre visible les relations entre instances.
Proposition Au niveau de l'inference service, lorsqu'on détecte qu'une donnée fait partie d'un serveur distant, faire un appel PATCH sur la ressource avec la relation inverse. Si jamais l'appel échoue, réessayer plus tard (permettre d'utiliser une Queue, comme on fait pour ActivityPub). Lorsque la relation est supprimée, faire un PATCH pour supprimer la relation inverse sur le serveur distant.
Si les WebACL sont activés sur l'instance distante, il faudra peut-être un mécanisme de token entre serveurs "amis", indiquant qu'un serveur est autorisé à modifier les données sur un autre serveur.
Alternative Utiliser ActivityPub, avec une activité de type
Offer
(qui pourrait être acceptée ou refusée), mais cela obligerait toutes les instances SemApps à supporter ActivityPub. On pourra proposer cette option dans le futur, en complément à un appel direct LDP.