Skip to content
This repository has been archived by the owner on Dec 31, 2020. It is now read-only.

Relationship post type fragment #221

Open
quentez opened this issue Feb 10, 2014 · 0 comments
Open

Relationship post type fragment #221

quentez opened this issue Feb 10, 2014 · 0 comments

Comments

@quentez
Copy link
Contributor

quentez commented Feb 10, 2014

In Tent 0.3, and from what I understand, a relationship post is assigned different types depending on the state of the relationship. Those states are the following:

  • initial
  • nothing
  • subscriber
  • subscribing
  • mutual

The first two make sense to me, they respectively indicate a relationship that is currently being created (where the handshake hasn't completed yet), and an established, healthy relationship.

The next three I can't really wrap my head around, here's two reasons why:

  1. They're not really useful for apps. At some point, there's going to be hundreds, if not thousands, of different post types in the Tent ecosystem. For most apps, it'll be irrelevant to know if I'm a subscriber to a specific user, they'll want to know if I have a subscription with that user for a specific post type. I may be following someone's achievements on that new chart-topping game, but I don't want status to display that person as someone I'm following for micro-blogging posts. Same goes for mutual: me being subscribed to someone's podcast, and him following my status feed doesn't make us "friends".
  2. They add complexity. Whenever a new subscription is created/deleted/received, the server needs to update the state of the relationship accordingly, creating new versions that will need to be propagated to the targeted user's server. And since meta subscriptions are always established for every new relationship, they don't count towards the state of the relationship, adding even more special cases. Also if I mention someone with a private post, this is going to create a relationship post, should this post be private or public? Should it be made public later when a subscription is created? More complexity.

The way I see it, apps should never know about relationship posts, those should be private and only used between servers. Apps would deal with subscription posts to know about a user's network.

Now there's one issue with this: while it's possible to retrieve the subscriptions a remote user created, it's not currently possible to retrieve the subscriptions mentioning that user (because a server never sends to another server posts that weren't create by its own user), this is why status currently uses a subscription request for "followings" and a relationship request for "followers". I don't have a clear cut answer to that question... A solution could be to make an exception for subscription posts, another to have a different endpoint altogether, but those aren't optimal.

Anyway, let me know what you think ;) !

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant