1
0
mirror of https://codeberg.org/fediverse/fep.git synced 2026-08-05 11:46:04 +00:00

efda: relax MUST -> SHOULD have followers collection

This commit is contained in:
a
2025-03-22 23:15:25 -05:00
parent b393d5f6b6
commit 468708f4f5
+11 -2
View File
@@ -36,15 +36,24 @@ We may therefore express Mastodon's requirements as follows:
A proposed modified requirement and algorithm are as follows:
- The object MUST have a `followers` collection present.
- The object SHOULD have a `followers` collection present. (If it does not, then it is unknown whether it is followable.)
- If the object does not have an `inbox`, then you MAY recurse upwards through `attributedTo` until you find a resource with an `inbox`. The maximum recursion depth SHOULD be 1.
## Algorithm
Given an object O and a recursion limit L, a general algorithm for following it can be expressed like so:
Inputs:
- O (Object): an object that may be followable
- L (integer): a recursion limit.
Outputs:
- Error OBJECT_HAS_UNKNOWN_FOLLOWERS_COLLECTION
- Error MAX_RECURSION_LIMIT
- Success
(1) Initialize a variable INBOX.
(2) If `O.followers` is not present, return an error OBJECT_CANNOT_BE_FOLLOWED.
(2) If `O.followers` is not present, optionally return an error OBJECT_HAS_UNKNOWN_FOLLOWERS_COLLECTION.
(3) If `O.inbox` is present, set INBOX to the referenced IRI.
(4) If INBOX is unset, then initialize a variable R whose initial value is O.
(5) While INBOX is unset: