hrefna ,
@hrefna@hachyderm.io avatar

Ugggggghhhhhh. Whhyyyyyy.

I know I've ranted about this before, but still, looking at it tonight and just… why.

hrefna OP ,
@hrefna@hachyderm.io avatar

For those who are playing at home, two questions across a few examples should illustrate the frustration:

Q1. What should happen?
Q2. What do you think would happen with implementations today?

Scenarios.

S1. Replying to two separate posts.
S2. Replying to itself.
S3. Providing a Link object reference.
S4. Providing a Link*
S5. Providing an Actor.
S6. Providing an Activity.

What actually happens isn't a mystery but it isn't pretty: https://funfedi.dev/support_tables/generated/in_reply_to/

julian ,
@julian@community.nodebb.org avatar

@hrefna just waiting for someone to totally abuse this by shoving all previous replies in the chain into inReplyTo

After all, the protocol doesn't forbid it, no? Haha

hrefna OP ,
@hrefna@hachyderm.io avatar

@julian I'm wondering how much processing systems naïvely do to understand the result here.

If I provide a link to a 10 MB object do you have safeties in place?

Does it traverse? If so that has lots of exciting edge cases.

If it refers into a loop will it catch that?

etc.

julian ,
@julian@community.nodebb.org avatar

@hrefna Actually, this gets me thinking...

This might simultaneously amuse and/or horrify you, from an SRE perspective, but a "chaos monkey" type ActivityPub implementor that randomly shuffles through all possible permutations of data structures for any given object... would be good for the ecosystem.

Short term pain!!!

julian ,
@julian@community.nodebb.org avatar

@hrefna

{
   ...
   "inReplyTo": -9283747823,
   ...
}
hrefna OP ,
@hrefna@hachyderm.io avatar

@julian brb, implementing something that builds arbitrary B-tree structures of ActivityPub objects for Reasons™

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • test
  • worldmews
  • mews
  • All magazines