From 15cca7599aa3c8ee6a109aed47b8651aca945b6c Mon Sep 17 00:00:00 2001 From: Claire Date: Wed, 22 Jul 2026 16:29:39 +0200 Subject: [PATCH] Fix `ActivityPub::Activity::Create` trying to re-create known statuses when author changes (#39916) --- app/lib/activitypub/activity/create.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb index b7c7eff65f..d160819e09 100644 --- a/app/lib/activitypub/activity/create.rb +++ b/app/lib/activitypub/activity/create.rb @@ -36,6 +36,9 @@ class ActivityPub::Activity::Create < ActivityPub::Activity if @status.nil? process_status + elsif @status.account_id != @account.id + Rails.logger.debug { "Not processing #{object_uri}: authorship change is not supported" } + return reject_payload! elsif @options[:delivered_to_account_id].present? postprocess_audience_and_deliver end @@ -91,7 +94,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity def find_existing_status status = status_from_uri(object_uri) status ||= Status.find_by(uri: @object['atomUri']) if @object['atomUri'].present? - status if status&.account_id == @account.id + status end def process_status_params