Open zachpmanson opened 4 months ago
Solutions: Problem B can be mitigated by recursively getting replies from child posts. This will fill the entire tree as known by the root instance, then the children instances it links to, then the children those instances link to and so on. This works to fill 100% on the assumption that posts' instances know all their direct replies (though this appears not to be the case, see problem A)
Problem A may not be mitigable if the URL to a root post is passed into unroller, since there's no way to find replies that root post's instance doesn't know about in that case.
When a child post is passed in such as 3, we can recurse up and down the tree to get the entire tree as post 1, post 2, and post 3 are aware of it and their known children.
Unless octodon.social and mstdn.social are defederated/users blocked each other I do not know why 1 and 2 are severed.
Interesting how toot.cafe knows more about the replies than octodon.social though
A thing trying to solve this issue: https://combine.social
This may be a problem with fedi/mastodon itself.
Problem A
These three posts are a reply chain, but you cannot see the 2 and 3 posts in the replies to 1. You can see 1,2,3 from 2 and 3.
External servers such as toot.cafe appear to be able to see all three: https://toot.cafe/@craigmaloney@octodon.social/111926435093871758
This is reflected in unroller. Going to /tree/{1} does not show 2,3. Going to /tree/{2} shows 2,3 (parents not shown). Going to /tree/{3} shows 3 (parents not shown). Viewing /tree/toot.cafe/{1} shown 1,2,3.
Problem B
Viewing /tree/{3} shows this post by @rysiek@mstdn.social. This post is missing when viewing /tree/toot.cafe/{1} and /tree/toot.cafe/{3}.
This shows toot.cafe doesn't have a full copy of the conversation either, though this is expected. I thought the original post's instance would have a full copy of all the children, no matter how deeply nested though it appears they don't (as shown by problem B). It also appears that original post's instance can miss a direct reply, as shown in problem A.