Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Note deletion #12551

Closed
6 tasks done
julianlam opened this issue May 7, 2024 · 1 comment
Closed
6 tasks done

Note deletion #12551

julianlam opened this issue May 7, 2024 · 1 comment
Assignees
Milestone

Comments

@julianlam
Copy link
Member

julianlam commented May 7, 2024

When remote objects are received, they are parsed and a local representation is saved to the database.

Occasionally, we may want to delete these notes (e.g. pruning, received deletion, etc.)

Existing NodeBB logic should be updated so that if an existing remote post is passed in, all additional references added by src/activitypub/notes.js are handled.

  • When fetched via S2S, a Tombstone object should be served for deleted posts
  • When local posts are deleted, an Update(Tombstone) should be federated out
  • Likewise for post restoration
  • Upon receipt of an Update(Tombstone), the local representation of the Note should be soft deleted
  • When posts are purged, a Delete(Note) should be federated out
  • Upon receipt of a Delete(Note), the Note should be re-retrieved. If 404/410, purge. If Tombstone, delete.
@julianlam julianlam self-assigned this May 7, 2024
@julianlam julianlam added this to the 4.0.0 milestone May 7, 2024
@julianlam
Copy link
Member Author

Nomenclature-wise, an ActivityPub delete corresponds to a NodeBB purge. The local representation of that remote content is removed from the database completely. kaniini argues that you could treat it as a cache invalidation instead, and so re-fetch if able.

Re: Tombstones there's a rough parallel between serving a Tombstone on a soft delete, and a 404 after a purge.

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

No branches or pull requests

1 participant