From 2e1026ebb5cef34527c75361ff9d48d960071b21 Mon Sep 17 00:00:00 2001 From: silverpill Date: Tue, 30 Jan 2024 20:08:52 +0000 Subject: [PATCH] FEP-7628: Update proposal (#236) - Change "Summary" to make clear that only followers are migrated. - Change primary audience in examples to Public. - Improve wording. - Correct formatting of references. - Add context.jsonld file. Reviewed-on: https://codeberg.org/fediverse/fep/pulls/236 Co-authored-by: silverpill Co-committed-by: silverpill --- fep/7628/context.jsonld | 12 +++++++++++ fep/7628/fep-7628.md | 47 +++++++++++++++++++++++++++++++---------- 2 files changed, 48 insertions(+), 11 deletions(-) create mode 100644 fep/7628/context.jsonld diff --git a/fep/7628/context.jsonld b/fep/7628/context.jsonld new file mode 100644 index 0000000..1e48706 --- /dev/null +++ b/fep/7628/context.jsonld @@ -0,0 +1,12 @@ +{ + "@context": { + "movedTo": { + "@id": "https://w3id.org/fep/7628#movedTo", + "@type": "@id" + }, + "copiedTo": { + "@id": "https://w3id.org/fep/7628#copiedTo", + "@type": "@id" + } + } +} diff --git a/fep/7628/fep-7628.md b/fep/7628/fep-7628.md index 3b5edf6..d095a95 100644 --- a/fep/7628/fep-7628.md +++ b/fep/7628/fep-7628.md @@ -9,7 +9,7 @@ discussionsTo: https://codeberg.org/fediverse/fep/issues/168 ## Summary -Migration of social graph from one [ActivityPub](https://www.w3.org/TR/activitypub/) server to another. +Migration of followers from one [ActivityPub][ActivityPub] actor to another. ## History @@ -25,11 +25,11 @@ The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "S ## Linked actors -One persona can be represented by one or more actors. Different actors are considered associated with one persona if they are **linked**. Possible ways to link actors: +One persona can be represented by one or more actors. Different actors are considered associated with one persona if and only if they are **linked**. Possible ways to link actors: - `alsoKnownAs` property of an actor object. This method is used by [Mastodon](https://docs.joinmastodon.org/user/moving/#aliases). -- [FEP-c390](https://codeberg.org/fediverse/fep/src/branch/main/fep/c390/fep-c390.md) identity proofs. Actors are linked if they have identity proofs with the same `subject` property. -- [rel-me](https://indieweb.org/rel-me) links. Actors are linked if their profile metadata contains verified rel-me links pointing to the same website. +- [FEP-c390][FEP-c390] identity proofs. Actors are linked if they have identity proofs with the same `subject` property. +- [rel-me][rel-me] links. Actors are linked if their profile metadata contains verified rel-me links pointing to the same website. ## Migration @@ -39,7 +39,7 @@ Among actors associated with a persona, there MUST be one **primary** actor. **M `Move` activity is used to notify other actors about the migration. It MUST have the following properties: -- `type`: the type of activity must be `Move`. +- `type`: the type of activity MUST be `Move`. - `actor`: the actor performing the migration. - `object`: the old primary actor ID. - `target`: the new primary actor ID. @@ -63,7 +63,8 @@ Example (activity subtype 1): "actor": "https://server1.example/users/alice", "object": "https://server1.example/users/alice", "target": "https://server2.example/users/alice", - "to": "https://server1.example/users/alice/followers" + "to": "https://www.w3.org/ns/activitystreams#Public", + "cc": "https://server1.example/users/alice/followers" } ``` @@ -77,7 +78,8 @@ Example (activity subtype 2): "actor": "https://server2.example/users/alice", "object": "https://server1.example/users/alice", "target": "https://server2.example/users/alice", - "to": "https://server2.example/users/alice/followers" + "to": "https://www.w3.org/ns/activitystreams#Public", + "cc": "https://server2.example/users/alice/followers" } ``` @@ -85,13 +87,36 @@ Example (activity subtype 2): If previous primary actor is deactivated after migration, it MUST have `movedTo` property containing the ID of the new primary actor. Publishers SHOULD NOT deliver activities to actor's inbox if `movedTo` property is present. -If it is not deactivated, `copiedTo` property MUST be used. +If previous primary actor is not deactivated, `copiedTo` property MUST be used. + +
+
movedTo
+
+

The location of the new primary actor. The actor containing this property should be considered inactive.

+
    +
  • URI: https://w3id.org/fep/7628#movedTo
  • +
+
+
copiedTo
+
+

The location of the new primary actor.

+
    +
  • URI: https://w3id.org/fep/7628#copiedTo
  • +
+
+
## References -- [ActivityPub] Christine Lemmer Webber, Jessica Tallon, [ActivityPub](https://www.w3.org/TR/activitypub/), 2018 -- [Activity Vocabulary] James M Snell, Evan Prodromou, [Activity Vocabulary](https://www.w3.org/TR/activitystreams-vocabulary/), 2017 -- [FEP-c390] silverpill, [FEP-c390: Identity Proofs](https://codeberg.org/fediverse/fep/src/branch/main/fep/c390/fep-c390.md), 2022 +- Christine Lemmer Webber, Jessica Tallon, [ActivityPub][ActivityPub], 2018 +- James M Snell, Evan Prodromou, [Activity Vocabulary][ActivityVocabulary], 2017 +- silverpill, [FEP-c390: Identity Proofs][FEP-c390], 2022 +- indieweb.org editors, [rel-me][rel-me], 2013 + +[ActivityPub]: https://www.w3.org/TR/activitypub/ +[ActivityVocabulary]: https://www.w3.org/TR/activitystreams-vocabulary/ +[FEP-c390]: https://codeberg.org/fediverse/fep/src/branch/main/fep/c390/fep-c390.md +[rel-me]: https://indieweb.org/rel-me ## Copyright