Fix off-by-one error when creating collection items (#38394)

This commit is contained in:
David Roetzel 2026-03-25 15:29:11 +01:00 committed by GitHub
parent 864d7b1267
commit a0f6b6d365
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 2 deletions

View File

@ -51,7 +51,7 @@ class ActivityPub::ProcessFeaturedCollectionService
items = @json['orderedItems'] || []
items.take(ITEMS_LIMIT).each_with_index do |item_json, index|
uris << value_or_id(item_json)
ActivityPub::ProcessFeaturedItemWorker.perform_async(@collection.id, item_json, index, @request_id)
ActivityPub::ProcessFeaturedItemWorker.perform_async(@collection.id, item_json, index + 1, @request_id)
end
uris.compact!
@collection.collection_items.where.not(uri: uris).delete_all

View File

@ -52,7 +52,8 @@ RSpec.describe ActivityPub::ProcessFeaturedCollectionService do
expect(new_collection.discoverable).to be true
expect(new_collection.tag.formatted_name).to eq '#people'
expect(ActivityPub::ProcessFeaturedItemWorker).to have_enqueued_sidekiq_job.exactly(2).times
expect(ActivityPub::ProcessFeaturedItemWorker).to have_enqueued_sidekiq_job.with(new_collection.id, 'https://example.com/featured_items/1', 1, nil)
expect(ActivityPub::ProcessFeaturedItemWorker).to have_enqueued_sidekiq_job.with(new_collection.id, 'https://example.com/featured_items/2', 2, nil)
end
end