d5d650e Vocabulary: Add 'managedBy' property for objects to specify parent actor (#159)

Authored and Committed by fr33domlover 2 years ago
    Vocabulary: Add 'managedBy' property for objects to specify parent actor (#159)
    
    When an ActivityPub client or server wants to interact with some remote
    object, it needs to identify *which actor controls this object*, and
    send the activity (at least) to that actor. Right now, as far as I can
    tell, the way to identify that actor is case-specific:
    
    - When commenting on a Note, notify the Note's `attributedTo`
    - When interacting with a Ticket, its `context` specifies the tracker
      actor
    - When interacting with a Commit, its `context` specifies the Repository
      that contains it
    - When sending a Grant providing access to some resource... hmm no
      generic way to determine who the actor (who controls the resource) is!
    
    Q: Why not use the `context` property for this?
    
    A: Because it's a standard general-purpose commonly used/abused/overloaded
    property. It's much safer and more friendly to have a dedicated property
    for this, allowing devs to continue using `context` for whatever stuff
    they're already using it for.
    
    Q: `managedBy` isn't specific to forges, why put it in ForgeFed?
    
    A: It's indeed not specific to forges. At a later time, I'd like it to
    be elsewhere, in its own spec or Fediverse Enhancement Proposal. For
    now, to make it already available for experimentation and implementation, for
    now it's in ForgeFed, along with some other properties and types (such as
    Grant).
    
    Co-authored-by: fr33domlover <fr33domlover@riseup.net>
    Reviewed-on: https://codeberg.org/ForgeFed/ForgeFed/pulls/159
    Reviewed-by: Anthony Wang <xy@noreply.codeberg.org>
    
        
file modified
+39 -0