WIP: Add remote replies collection refresh #7888

Draft
lambadalambda wants to merge 1 commit from ap-replies-refresh into develop

Summary

  • Store advertised remote replies collections internally and schedule bounded delayed refreshes for public remote posts.
  • Add reply-triggered, debounced ancestor refreshes with same-origin, visibility, depth, page, item, and cycle bounds.
  • Cover validation, federation serialization, worker pagination/error handling, triggered refreshes, and refetch regressions.

Verification

  • mix test test/pleroma/object/fetcher_test.exs test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs test/pleroma/web/activity_pub/views/object_view_test.exs test/pleroma/web/activity_pub/transmogrifier/note_handling_test.exs test/pleroma/workers/remote_replies_fetcher_worker_test.exs
  • mix test test/pleroma/web/activity_pub/activity_pub_controller_test.exs:464
  • mix test test/pleroma/workers/remote_fetcher_worker_test.exs
  • mix format --check-formatted
  • git diff --check
## Summary - Store advertised remote replies collections internally and schedule bounded delayed refreshes for public remote posts. - Add reply-triggered, debounced ancestor refreshes with same-origin, visibility, depth, page, item, and cycle bounds. - Cover validation, federation serialization, worker pagination/error handling, triggered refreshes, and refetch regressions. ## Verification - mix test test/pleroma/object/fetcher_test.exs test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs test/pleroma/web/activity_pub/views/object_view_test.exs test/pleroma/web/activity_pub/transmogrifier/note_handling_test.exs test/pleroma/workers/remote_replies_fetcher_worker_test.exs - mix test test/pleroma/web/activity_pub/activity_pub_controller_test.exs:464 - mix test test/pleroma/workers/remote_fetcher_worker_test.exs - mix format --check-formatted - git diff --check
Add remote replies collection refresh
Some checks failed
ci/woodpecker/pr/changelog Pipeline failed
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/unit-testing-elixir-1.15 Pipeline was successful
ci/woodpecker/pr/unit-testing-elixir-1.18 Pipeline was successful
c633de8425
Schedule bounded refreshes for advertised remote replies collections so replies discovered after initial federation can be fetched without unbounded crawling.
Some checks failed
ci/woodpecker/pr/changelog Pipeline failed
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/unit-testing-elixir-1.15 Pipeline was successful
ci/woodpecker/pr/unit-testing-elixir-1.18 Pipeline was successful
This pull request has changes conflicting with the target branch.
  • lib/pleroma/web/activity_pub/object_validators/article_note_page_validator.ex
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin ap-replies-refresh:ap-replies-refresh
git switch ap-replies-refresh

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch develop
git merge --no-ff ap-replies-refresh
git switch ap-replies-refresh
git rebase develop
git switch develop
git merge --ff-only ap-replies-refresh
git switch ap-replies-refresh
git rebase develop
git switch develop
git merge --no-ff ap-replies-refresh
git switch develop
git merge --squash ap-replies-refresh
git switch develop
git merge --ff-only ap-replies-refresh
git switch develop
git merge ap-replies-refresh
git push origin develop
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pleroma/pleroma!7888
No description provided.