Re: Agenda items for Friday

If we have time for it, I'd like to kick off a conversation about tradeoffs
between different approaches in copying content in a data transfer. Here's
some of the context.  And if we don't have time, I plan to schedule the
next Portability TF call anyway & work on it.

We have significant tradeoffs in portability between two approaches:
1.  Trying to reproduce a change log
2.  Trying to reproduce a content repository.

Assume in either of these cases we'd figure out how to transfer likes,
replies, listens, read etc.  The question remains still how we treat
content objects.

To *reproduce a change log*, we'd specify that the destination AP server
copies over Create activities holding Note objects - but also Update and
Delete activities.   Consequences:

   - Destination servers would have to understand, parse, and know how to
   transform the envelopes around content as well as the content items.
   - I believe this would automatically result in 3rd parties notifying
   their users of "new" posts even though the users had seen them before.
   - It wouldn't be a simple copy of changelog intact.  Every changelog
   entry would have to be parsed and transformed for its new context.

To *reproduce a content repository*, we'd specify that the destination AP
server copies over "Note" objects (and other content objects too of course)

   - The destination server can now put content objects in an Outbox with
   an activity wrapper if it decides to.
   - It may be possible to put the Note in the outbox without an activity
   wrapper ( I think some implementations do this) - I would love to know more
   from implementers how this works in the wild
   - The destination server can also copy the content somewhere else
   entirely, not just to an outbox. This approach could also more easily be
   used by systems other than AP servers -- it would have greater generality
   than the change-log copy approach.

I'd especially like to know more about the amount of implementation work
for each of these.  It seems at the surface that it's cheaper to transfer
the outbox, but as I dig into the details of that I don't think it's really
as simple as it seems to copy the outbox.  Many kinds of events in the
outbox, the destination server would not want to copy over at all, or can
get in another way that might be easier (the Likes collection, for example,
on an Actor).

Related, I'd also love to know what implementations do to present the "back
catalog" of content.  Do implementations do anything besides allowing
friendly servers to page back through outbox history?

Lisa



On Wed, May 1, 2024 at 8:03 PM Evan Prodromou <evan@prodromou.name> wrote:

> I have three agenda items for Friday.
>
> 1. I'd like to discuss the upcoming work I'll be doing for Summer of
> Protocols on implementing E2EE direct messages in AP.
>
> 2. I'd like to collect feedback on the Miscellaneous Terms document,
> solicit implementations, and consider moving it forward as a CG draft.
>
> https://swicg.github.io/miscellany/
>
> 3. I'd like to continue the conversation about adding publicKey,
> publicKeyPem, owner and Key to the Activity Streams 2.0 context document.
>
> We have a lot of other projects (Webfinger, HTTP Signatures,
> Forums/Threaded, Data Portability) to report out on, but I'd love to get
> these three items covered.
>
> Evan
>

Received on Thursday, 2 May 2024 16:44:35 UTC